BACKGROUND
GitHub Issuesは便利ですが、実装中のコードやAIエージェントからは少し遠く感じます。一方、TODOをひとつのファイルへ集めると、複数の作業が重なったときにGitの競合が起きやすくなります。
APPROACH
ローカルの操作はSQLiteへ、共有する状態は1タスク1JSONへ分けました。人が読むためのTUIと、AIが扱うための構造化コマンドを、同じデータの上に載せています。
HOW IT WORKS
- 01
置く
リポジトリ直下に.lissueを初期化
- 02
引き受ける
作業者が担当を宣言し状態を更新
- 03
進める
TUIまたはCLIでメモと文脈を追加
- 04
合わせる
Git経由でJSONを他環境と同期
ARCHITECTURE
DESIGN DECISIONS
SQLiteとJSONのハイブリッド構成
手元の高速な検索や一覧表示にはSQLiteを使い、チームや複数端末での同期にはGit管理しやすい1タスク1JSONファイルを書き出します。
Ratatuiによる専用TUI
ブラウザを開かずにターミナル内で作業を完結させるため、キーバインド主体のTUIを標準で組み込みました。
AIエージェント向けの出力モード
人間用の整形表示だけでなく、AIがパースしやすいフラットなJSON出力をすべての主要サブコマンドに用意しました。
VERIFICATION
- crates.ioでの一般公開と複数環境での動作確認
- 41件の単体・統合テストの自動実行
- 実際の開発現場での日常利用によるドッグフーディング
STATUS & NEXT
基本機能は安定しており、自分自身の日々の開発タスク管理において主力ツールとして稼働しています。
今後の予定
- 外部イシュートラッカーとの双方向同期ブリッジ
- 複数リポジトリを跨いだアグリゲーション表示
- プラグイン機構によるカスタムフィールド対応
