v1.0.0
このリリースでは、Rust製のCLI/TUIツール「usagi」がバージョン1.0.0に到達し、ユーザーインターフェースの改善やパフォーマンスの向上が図られました。
✨ 新機能
- スプラッシュ画面をウェルカムメッセージと同じうさぎのアスキーアートに変更し、タイトルのフェードインを追加。
- 切替モードでCtrl-Bを使ってサイドバーを開閉できるようにし、レール時の作成や改名入力を右ペインに表示。
- 左セッションサイドバーをCtrl-Bで開閉できる機能を追加。
- Markdownプレビューを右ペインに表示するpreviewコマンドを追加。
- セッション作成・削除をバックグラウンドで実行し、右上にタスクパネルを表示。
- ヘッダーとタブの間に区切り線を追加し、アイデンティティを固定幅化。
- 日付軸ガントチャートでissueを表示する機能を追加。
- 没入モードでタブの追加・削除をCtrl-T/Ctrl-G/Ctrl-Wで行えるように。
🐛 修正
- 中断された端末入力の読み取りを終了扱いせず再試行するよう修正。
- worktreeが消失した際もブランチを削除し、同名の再作成を可能に。
- セッション名の先頭にハイフンを拒否し、gitのオプション誤認を防止。
- 監視スレッドの異常終了やワーカースレッドのpanicをエラーログに記録。
- アニメーション中のキー入力取りこぼしを修正。
🔧 内部改善
- 描画ホットパスの不要なクローンを削減し、パフォーマンスを向上。
- セッション操作の二重実装を解消し、コードの整合性を向上。
- TUIのエラー記録を単一シンクに集約し、ファイルにも永続化。
📝 ドキュメント
- usagiセッション内でのworktree作成やブランチ名規約の矛盾を解消するためのドキュメントを更新。
What's Changed
- feat(tui): 没入モードで Ctrl-T/Ctrl-G/Ctrl-W によるタブ追加・削除を可能にする by @kkyosuke in #208
- fix(tui): ルート行では close を実行できないようにする by @kkyosuke in #209
- feat(tui): 切替・没入の右ペインでヘッダーとタブを同一行に表示 by @kkyosuke in #210
- docs: usagi セッション内での worktree 作成・ブランチ名規約の矛盾を解消 by @kkyosuke in #212
- feat(tui): issue を日付軸ガントチャートで表示する by @kkyosuke in #211
- feat(tui): ヘッダーとタブの間に divider を入れ identity を固定幅化 by @kkyosuke in #214
- feat(tui): 走り回る/増えるうさぎと起動スプラッシュ+ usagi run ギャラリー by @kkyosuke in #213
- feat(tui): セッション作成・削除をバックグラウンド実行し右上にタスクパネルを表示 by @kkyosuke in #215
- docs: コードレビュー指摘を issue として登録 (#55-#64) by @kkyosuke in #216
- feat(mcp): issue を実行プロンプト化する issue_to_prompt tool を追加 by @kkyosuke in #207
- fix(tui): セッションタスクのスピナーを最低0.7秒回してから完了表示にする by @kkyosuke in #217
- fix(session): worktree 実体の無いセッションも session rm で削除できるようにする by @kkyosuke in #218
- fix(tui): スプラッシュを run2 化し短縮、タスクパネルを枠付き固定幅にする by @kkyosuke in #221
- refactor(domain): エージェント起動コマンド生成を infrastructure/agent へ退避 by @kkyosuke in #220
- refactor(session): セッション操作の二重実装を解消する(破棄・inspect・dirty 判定) by @kkyosuke in #223
- refactor(tui-home): 右ペイン状態(view/tabs/バッジ)の二重書き込みを単一所有化する (#55) by @kkyosuke in #225
- fix(tui): ライブ埋め込み端末の上にタスクパネル・更新通知を重ねない by @kkyosuke in #226
- refactor: 層責務の漏れを是正(agent_phase 遷移ポリシー・gitignore 編集・doctor の CommandRunner 統一) by @kkyosuke in #222
- refactor(tui-home): home の起動・イベント配線を Wiring 構造体で集約 (#57) by @kkyosuke in #227
- fix(tui): 起動スプラッシュのうさぎを画面中央に表示する by @kkyosuke in #228
- refactor(presentation): CLI/MCP の JSON 整形を SSoT 化し mcp 共通ヘルパを統合する by @kkyosuke in #229
- refactor(tui-home): HomeState の神オブジェクトを解体する (#56) by @kkyosuke in #230
- feat(tui): preview コマンドで右ペインに Markdown プレビューを追加 by @kkyosuke in #231
- feat(session): session_prompt を右ペインのエージェントへ流し込む by @kkyosuke in #224
- chore(issues): コードレビュー所見を issue 登録する (#65-#69) by @kkyosuke in #233
- feat(tui): bg タスク表示をヘッダー右の1行・進捗バー付きにする by @kkyosuke in #235
- feat(error-log): TUI のセッション失敗もエラーログに記録する by @kkyosuke in #236
- fix(tui): 統括/在席で背景セッションのバッジ・update通知が次のキー入力まで遅延する問題を修正 (#66) by @kkyosuke in #237
- chore(issues): エラーログ拡充のフォローアップ issue を登録する (#70-#73) by @kkyosuke in #238
- perf(tui): 埋め込みターミナルの描画ホットパスを最適化する (#65) by @kkyosuke in #234
- fix(tui): live セッションがある切替/統括/在席で矢印・j/k キーが効かない問題を修正 (#74) by @kkyosuke in #240
- fix(tui): 監視スレッドの異常終了とワーカースレッドの panic をエラーログに記録する (#73) by @kkyosuke in #243
- feat(tui): bg タスク表示を上部2行に分割しラベル欄の横幅を広げる by @kkyosuke in #241
- fix(tui): アニメーション中のキー入力取りこぼし(スピナー停止・完了未反映・c 二度押し)を修正 by @kkyosuke in #245
- refactor(tui): TUI のエラー記録を単一シンクへ集約しファイルにも永続化する by @kkyosuke in #244
- feat(mcp): MCP 経由のセッション作成失敗もエラーログに記録する (#72) by @kkyosuke in #242
- fix(pty): エージェント/シェルの異常終了をエラーログに記録する by @kkyosuke in #239
- chore(issues): エラーログ拡充の issue #70-#73 を done に更新する by @kkyosuke in #246
- fix(mcp): issue/memory をセッション worktree に保存し採番をワークスペース横断にする by @kkyosuke in #253
- fix(pty): ペイン破棄時にプロセスグループごと終了しエージェントの孤児化を防ぐ by @kkyosuke in #247
- fix(tui): 在席メニューの選択コマンド取得を panic しない Option に変更する by @kkyosuke in #249
- fix(session): repo 探索でシンボリックリンクを追わず無限再帰を防ぐ by @kkyosuke in #250
- fix(domain): frontmatter の値の改行を中和しメタデータ注入を防ぐ by @kkyosuke in #251
- fix(pty): parser ロックの poison でクラッシュせずリカバリする by @kkyosuke in #252
- fix(store): issue/memory ストアの atomic write を一意な temp 名に統一する by @kkyosuke in #248
- fix(domain): frontmatter リストのカンマ・括弧をエスケープし round-trip を無損失にする by @kkyosuke in #256
- fix(session): セッション名先頭のハイフンを拒否し git のオプション誤認を防ぐ by @kkyosuke in #255
- fix(store): history の append を並行書き込みでも失わないようにする by @kkyosuke in #259
- fix(store): atomic write で rename 前に fsync し電源断耐性を持たせる by @kkyosuke in #261
- fix(store): agent prompt の take で所有確認後にのみ削除し他 worktree の prompt 消失を防ぐ by @kkyosuke in #258
- fix(tui): terminal_pool のロック poison をクラッシュせず回復する by @kkyosuke in #254
- fix(doctor): --fix が local-LLM チェックをパッケージマネージャに渡さないようにする by @kkyosuke in #257
- fix(store): issue/memory ストアの並行 read-modify-write をプロセス間ロックで直列化する by @kkyosuke in #260
- feat(tui): 左セッションサイドバーを Ctrl-B で開閉できるようにする by @kkyosuke in #262
- feat(tui): 切替モードでも Ctrl-B でサイドバーを開閉し、レール時の作成/改名入力を右ペインに出す by @kkyosuke in #263
- fix: コードレビューで見つかった 3 件の不具合を修正 by @kkyosuke in #264
- fix(session): dangling worktree 登録を掃除して同名セッションの再作成を可能にする by @kkyosuke in #265
- fix: コードレビューで見つかった並行更新・整合性の不具合を修正 by @kkyosuke in #266
- fix(agent): ツール実行フックを running に割り当て waiting 貼り付きを解消 by @kkyosuke in #268
- perf(tui): 統括の無変化アイドルティックで全フレーム再構築を省く by @kkyosuke in #272
- perf(tui): 描画フレーム構築の毎回ヒープ確保を削減する by @kkyosuke in #267
- refactor: 責務・SSoT レビューの高・中指摘を解消する by @kkyosuke in #271
- perf(tui): ペイン離脱時の git 再同期をバックグラウンド化して操作の固まりを解消 by @kkyosuke in #273
- fix(session): 削除/作成失敗で同名セッションが再作成できなくなる不具合を修正 by @kkyosuke in #270
- perf(tui): ホーム画面の起動ブロッキングと設定の重複読込を解消する by @kkyosuke in #269
- refactor: 責務・SSoT レビューの低優先指摘を解消する by @kkyosuke in #274
- perf(tui): 描画ホットパスの不要なクローンを削減する by @kkyosuke in #277
- perf(git,issue): 一覧・採番のサブプロセスと全文走査を削減する by @kkyosuke in #278
- feat(tui): スプラッシュをウェルカムと同じうさぎ AA + タイトルのフェードインにする by @kkyosuke in #276
- fix(session): worktree 消失時もブランチを削除して同名再作成を可能にする by @kkyosuke in #275
- perf: 低リスクなマイクロ確保削減(描画・整形・phase 読取) by @kkyosuke in #280
- fix(tui): 中断された端末入力読み取りを終了扱いせず再試行する by @kkyosuke in #281
- chore(release): v1.0.0 by @kkyosuke in #279
Full Changelog: v0.1.0...v1.0.0