kunchenguid/gnhf

Before I go to bed, I tell my agents: good night, have fun

解決する課題

gnhfは、コーディングエージェント向けの自律型オーケストレーターです。人間が常に監視しなくても、夜間などの長時間にわたってコードベースの作業を継続させることができます。一度に巨大でリスクの高い変更を試みるのではなく、目標に向けて小さく、コミットされ、文書化されたインクリメンタルな変更を確実に行うことで、「朝起きたら何も進んでいない」という問題を解決します。

仕組み

このツールは、既存のコーディングエージェントのCLIをループ内でラップします。各イテレーションで以下の処理を行います:

  1. エージェントへのプロンプト: 目標と notes.md ファイル(イテレーション間で共有メモリとして機能)を注入します。
  2. 実行: 非対話モードでエージェントを実行します。
  3. 検証とコミット: エージェントが成功した場合、gnhfはgitコミットを作成し、ノートに追記します。失敗した場合は、git reset --hard を使用して変更をロールバックします(コミットの失敗を除く。これは修復のために保持されます)。
  4. 制限の管理: APIのレート制限(Claudeの使用制限など)を自動的に管理し、リセット時間を待ってから再開します。
  5. 状態管理: 専用の gnhf/ ブランチ、現在のブランチ、または分離されたgit worktreeで実行できるため、複数のエージェントが同じリポジトリで同時に作業可能です。

対象ユーザー

AIコーディングエージェントを使用しており、数分おきにターミナルを監視することなく、長時間かかるリファクタリング、機能実装、コードベースのクリーンアップを自動化したい開発者。

ハイライト

  • エージェント非依存: 一般的なコーディングエージェントCLIやあらゆるACPターゲットで動作します。
  • インクリメンタルな進捗: 成功したすべてのステップがgitにコミットされるため、チェリーピックやリバートが容易です。
  • Worktreeサポート: 複数のエージェントを同じリポジトリ内の分離されたディレクトリで同時に実行できます。
  • スマートなレート制限処理: APIの使用制限時間を自動的に待機し、作業を再開します。
  • 再開機能: 中断された場合でも、既存のブランチから前回の実行を再開できます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト