![[2026-03-30-07-30-19.webp|cover-picture]] # 🗞️Topics ## KOKUKOKU v0.3.0 〜 v0.6.0 [[🦉KOKUKOKU]]の機能追加リリースを4回しました。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://github.githubassets.com/favicons/favicon.svg" /> <span class="link-card-v2-site-name">GitHub</span> </div> <div class="link-card-v2-title"> GitHub - tadashi-aikawa/kokukoku: A Hammerspoon Spoon for tracking time spent on each project. </div> <div class="link-card-v2-content"> A Hammerspoon Spoon for tracking time spent on each project. - tadashi-aikawa/kokukoku </div> <img class="link-card-v2-image" src="https://opengraph.githubassets.com/2f8347b46360213e995cfe6cf3743457431083651a000453099a11b3a3a24b8c/tadashi-aikawa/kokukoku" /> <a href="https://github.com/tadashi-aikawa/kokukoku"></a> </div> 主な変更内容です。 - **v0.3.0** - 累積時間の手動編集 (`e` キー) - **v0.4.0** - 連続稼働時間の手動編集 (`Shift+E`) - 測定結果コピー (`c` キー) - **v0.5.0** - 休憩中の連続稼働時間を `00:00:00` ベースで表示 - **v0.6.0** - コピーテキストのフォーマット設定 - バージョン表示切り替え設定 (`v` キー) これらのバージョンアップで、公私に必要な機能は一通り実装完了したと思っています。さらに1ヶ月くらい使ってみて問題なければv1.0をリリースするつもりです。 ## Another Quick Switcher v14.6.0 [[🦉Another Quick Switcher]]のv14.6.0をリリースしました。[[プロパティ (Obsidian)|プロパティ]]([[フロントマター]])による検索ができるようになりました。 <div class="bluesky-embed-container"> <iframe height="750px" class="bluesky-embed" src="https://embed.bsky.app/embed/did:plc:bi2l5vkitdtgw364ixidbint/app.bsky.feed.post/3mi4sm3mx6s2l?colorMode=system" scrolling="no" frameborder="0" loading="lazy"> </iframe> </div> 構文は少しクセがあり、以下のようになっています。 - **`@status:done`** - `status` プロパティに `done` が含まれているファイルを検索する - **`@status:`** - `status` プロパティに何らかの値が設定されている(空ではない)ファイルを検索する - **`keyword @status:done`** - ファイル名に `keyword` を含み、**かつ** `status` が `done` であるファイルを検索する - **`@status: -@status:done`** - `status` に値が設定されているファイルのうち、その値が `done` **ではない**ものを検索する ## GitHub Copilot CLI の調査に本腰を入れる 仕事で、当面の間は引き続き[[GitHub Copilot]]を使うことになりそうなので、[[GitHub Copilot CLI]]の調査に本腰を入れ始めました。 まずは、ハマりがちな[[フック (GitHub Copilot)|フック]]についての調査から。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📜GitHub Copilot CLIのhookライフサイクル調査 </div> <div class="link-card-v2-content">GitHub Copilot CLIのデバッグログを解析し、userPromptSubmittedからsessionEndまでのhookイベント発火順序を特定した。mermaidシーケンス図を作成し、CLIセッションとエージェントセッションの二重の「セッション」概念を整理した。sessionStart/sessionEndがインタラクティブモードでプロンプトごとに発火する挙動と、バグ報告copilot-cli#991の事実を確認した。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/claudine-task.webp" /> <a data-href="📜GitHub Copilot CLIのhookライフサイクル調査" class="internal-link"></a> </div> %%[[📜GitHub Copilot CLIのhookライフサイクル調査]]%% 特に、[[agentStop (GitHub Copilot)|agentStop]]と[[sessionEnd (GitHub Copilot)|sessionEnd]]の違いはややこしかったので、実際に動作も確認したうえで整理しました。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📰GitHub Copilot CLIにおけるagentStop、sessionEnd、sessionStartの違い </div> <div class="link-card-v2-content">GitHub Copilot CLIのhooksであるsessionStart・sessionEnd・agentStopの違いと発火タイミング、設定方法やユースケースを解説するレポートである。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/report-colot.webp" /> <a data-href="📰GitHub Copilot CLIにおけるagentStop、sessionEnd、sessionStartの違い" class="internal-link"></a> </div> %%[[📰GitHub Copilot CLIにおけるagentStop、sessionEnd、sessionStartの違い]]%% <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📰GitHub Copilot CLIのhooksによる動作を実際に確認 </div> <div class="link-card-v2-content">GitHub Copilot CLI 1.0.11のhooks挙動を検証し、sessionStart・sessionEnd・agentStopなど各フックの発火タイミングとライフサイクルを整理したレポートである。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/report.webp" /> <a data-href="📰GitHub Copilot CLIのhooksによる動作を実際に確認" class="internal-link"></a> </div> %%[[📰GitHub Copilot CLIのhooksによる動作を実際に確認]]%% [[GitHub Copilot CLI]]はまだ開発途上のため、ドキュメントが間違っていたり、不具合や仕様と実装が異なる場合も多いです。しかも[[OSS]]ではなく、[[Claude Code]]と比べてユーザー数も少ないため、調査は難航することが多いです。 なので、少しでも調査や理解の助けとなるよう、[[GitHub Copilot CLI]]を使ったミニマムなSandboxプロジェクトを作成しました。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📜GitHub Copilot CLI Sandboxの作成 </div> <div class="link-card-v2-content">GitHub Copilot CLIの動作確認用リポジトリを新規作成し、仕様・技術の2種類のカスタムエージェントと、それらを並列実行して結果を集約するレビュー用スキルを実装した経緯と成果を記録した</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/activity.webp" /> <a data-href="📜GitHub Copilot CLI Sandboxの作成" class="internal-link"></a> </div> %%[[📜GitHub Copilot CLI Sandboxの作成]]%% 今後、[[GitHub Copilot CLI]]に関する調査はこのリポジトリで行う予定です。 ## sunagimo - Slack連携によるレビュー自動化 sunagimoという実験的な[[Slackアプリ]]を作成しました。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://github.githubassets.com/favicons/favicon.svg" /> <span class="link-card-v2-site-name">GitHub</span> </div> <div class="link-card-v2-title"> GitHub - tadashi-aikawa/sunagimo </div> <div class="link-card-v2-content"> Contribute to tadashi-aikawa/sunagimo development by creating an account on GitHub. </div> <img class="link-card-v2-image" src="https://opengraph.githubassets.com/c823e0d70fe0aa0bafb5493c8b41bf9be179cf4e27f2bcc88a9d83be5ed98f98/tadashi-aikawa/sunagimo" /> <a href="https://github.com/tadashi-aikawa/sunagimo"></a> </div> Slackスラッシュコマンド (`/sunagimo <PR_URL> [BRANCH]`) を実行すると、ローカル環境で[[cmux]]のワークスペースを起動し、レビューする想定のつくりです。 技術スタックは[[Deno]]+[[Bolt (JavaScript)|Bolt]]です。エンドポイントは公開せず、ローカルで動かす想定のため[[Socket Mode (Slack)|Socket Mode]]を使っています。 # 👀Reading ## Claude Codeを「最小構成」で飼い慣らす — CLAUDE.md + Skills + Hooks のハーネス設計|ミーツ|m2AI <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://assets.st-note.com/poc-image/manual/note-common-images/production/icons/android-chrome-192x192.png" /> <span class="link-card-v2-site-name">note(ノート)</span> </div> <div class="link-card-v2-title"> Claude Codeを「最小構成」で飼い慣らす — CLAUDE.md + Skills + Hooks のハーネス設計|ミーツ|m2AI </div> <div class="link-card-v2-content"> *人間が読む用に書いてません。お手持ちのClaude Codeに読ませてください。 ハーネスの全体像:3つの構成要素 ユーザーがプロンプトを送信 │ ▼① Hook(settings.json)──── プロンプト ... </div> <img class="link-card-v2-image" src="https://assets.st-note.com/production/uploads/images/262199081/rectangle_large_type_2_bd4753614db8e80b7b0cad674bff9929.png?fit=bounds&quality=85&width=1280" /> <a href="https://note.com/m2ai_jp/n/na3869c615096"></a> </div> ~~~ わかりみ。ただGitHub Copilotとかだとこの手法は使えないのでもうひと工夫必要。 ~~~ # ✅Done - **KOKUKOKU** - **[[SpoonブランチのGitHub Pages配布はバージョン指定インストールに対応しているか調査する]]** - Hammerspoon の Spoon 配布について、GitHub Pages の `spoons` ブランチ運用では最新版固定で版指定インストールできないことを確認した - **[[各プロジェクトで記録した時間を手動変更する機能を追加]]** - Hammerspoon Spoon「kokukoku」に、プロジェクトの累積時間を `e` キーで手動編集できる機能を追加した - **kokukokuリリース** - v0.3.0をリリース(累積時間の手動編集対応、バージョン指定インストール対応)し、Bluesky投稿文を作成 - **kokukoku UIパネルのフッターレイアウト修正** - Hammerspoon Spoon「kokukoku」の休憩ボタンの左余白削除と、休憩・リセットボタンの絵文字・テキストの上下中央揃えを修正 - **[[KOKUKOKU - jkなどのプロジェクト上下移動で休憩・リセットにはフォーカスしないようにする]]** - j/kキーの移動範囲をプロジェクト行のみに制限し、休憩・リセットへのフォーカスをスキップするよう修正 - **[[KOKUKOKU プロジェクトや休憩リセットにホバーしても計測中の時間が更新されるとホバーが解除される]]** - Hammerspoon の Spoon「kokukoku」で、プロジェクト行と休憩・リセットボタンのホバー状態が毎秒更新で消えないよう修正 - **kokukokuリリース** - v0.3.1 をリリース。version 更新、busted の全件成功確認、タグ push を完了 - **[[READMEと実装の差分確認・対応]]** - `persistence.path` の `~/` 展開対応とREADME差分修正を行い、実装変更とドキュメント更新を2コミットに分離して反映した - **[[KOKUKOKU 連続稼働時間もプロジェクト計測時間のように編集できるようにする]]** - 連続稼働時間をShift+Eキーで手動編集できる機能を実装した - **[[KOKUKOKU 連続稼働時間の編集ダイアログ表示位置・フォーカス問題]]** - 時間編集ダイアログ表示前にHammerspoonをactivateしてフォーカスが当たるように修正 - **[[KOKUKOKU 測定結果を箇条書きテキストでコピー]]** - パネル表示中にcキーで測定結果を箇条書きテキストとしてクリップボードにコピーする機能を追加 - **KOKUKOKU v0.4.0 リリース** - v0.4.0 をリリースし、Hammerspoon向け配布物の公開確認と Bluesky 投稿文の作成を行った - **[[KOKUKOKU 休憩(break)のときはハイフン表示ではなく00時表示にする]]** - 連続稼働時間を常に `00:00:00` ベースで扱うように実装し、停止中の編集対応・README更新まで完了 - **[[🦉KOKUKOKU]] v0.5.0リリース** - **[[目立たない形でバージョンを確認できるようにしたい]]** - UIパネルにバージョン表示の初期設定と `v` キーでの切替を追加し、README更新まで完了 - **[[KOKUKOKU 記録のコピー機能について、コピーテキストのフォーマットを設定で指定できるようにする]]** - コピー機能で `copyTextFormat` / `copyTextSeparator` 設定によりフォーマットを指定可能にした。プレースホルダー対応 - **[[🦉KOKUKOKU]] v0.6.0をリリース** - バージョン更新、v0.6.0 タグ push、GitHub Actions の公開成功確認、Bluesky 投稿文のコピーを行った - **GitHub Copilot CLI** - **[[GitHub Copilot CLIでマルチエージェントタスク管理の動作確認]]** - `copilot-instructions.md` をバージョン管理に追加 - **[[GitHub Copilot v1.0.7〜1.0.10 更新内容まとめ]]** - GitHub Copilot CLI v1.0.7〜v1.0.10 の changelog を調査し、各バージョンの主な更新内容を日本語でまとめた - **GitHub Copilot CLI未解決ノートの再調査** - GitHub Copilot CLI 関連の未解決ノート6件を再調査し、進展があった5件に追記 - **[[Copilot CLI hooks調査]]** - GitHub Copilot CLIのhooksシステムにおけるagentStop、sessionEnd、sessionStartの違いを調査しレポートにまとめた - [[📰GitHub Copilot CLIのhooksによる動作を実際に確認]] - [[📰GitHub Copilot CLIにおけるagentStop、sessionEnd、sessionStartの違い]] - [[📝GitHub Copilot CLIで応答が終わる直前に ● Response was interrupted due to a server error. Retrying... と5回表示されてエラーになる]] - **[[GitHub Copilot CLIのserver errorリトライ問題の調査]]** - ソースコード解析により、応答完了後のツールコールでstreaming_errorが発生する原因を特定し、指示タイミング変更で解消 - **[[📜GitHub Copilot CLIのhookライフサイクル調査]]** - デバッグログからhookイベントの発火順序を解析しMermaidシーケンス図を作成。「セッション」の定義の曖昧さとper-prompt発火のバグ報告(#991)を確認 - **[[📜GitHub Copilot CLI Sandboxの作成]]** - [[GitHub Copilot CLI]] のサンドボックスリポジトリを作成し、`hooks.json` 設定・`spec-reviewer`/`technical-reviewer` custom agent ファイル・`review` スキルを追加した - **sunagimo / Slack連携自動化** - **[sunagimo](https://github.com/tadashi-aikawa/sunagimo) の作成** - GitHubリポジトリを作成してpush - **[[Slack投稿からローカルcmuxコマンド自動実行の技術検討]]** - Slack投稿をトリガーにローカルのcmux・GitHub Copilot CLIを自動実行する仕組みの技術選定を行い、Deno (TypeScript) + npm:@slack/bolt v4 (Socket Mode) を推奨スタックとして決定した - Workflow Builderカスタムファンクション方式からSlackスラッシュコマンド(`/sunagimo`)方式へ移行し、`/sunagimo <PR_URL> [BRANCH]` でcmuxワークスペースを起動できるようにした - **[[handleReviewRequestでccコマンドとレビュータスク実行]]** - cmuxワークスペース作成後にGitHub Copilot CLI(`colot`)を自動起動し`/task`でPRレビューを開始する機能を実装。プロンプトインジェクション対策も追加 - **Another Quick Switcher** - **[[Another Quick Switcherにプロパティ検索機能を追加]]** - 検索クエリ内で `@key:value` / `@key:` と入力してフロントマターのプロパティで絞り込める機能を追加。レビューFBで `:` 必須化・null値判定修正も実施 - **[[another-quick-switcher-releaseタスクに必要なghトークン権限の調査]]** - another-quick-switcher-release 用に GitHub CLI の必要権限を整理し、Fine-grained personal access token の最小権限と classic PAT の要件をまとめた - **[Another Quick Switcherのv14.6.0をリリース](https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/releases/tag/14.6.0)** - **[[Another Quick Switcherのライブラリのバージョンアップ]]** - 依存ライブラリ7パッケージを最新バージョンにアップデート。ts-deepmergeはv3→v7でAPI変更あり - **cmux** - **[[📜2026-03-29 cmux v0.63.0にバージョンアップ]]** - v0.62.1からバージョンアップ。プロンプトラグ問題は解消 - **[[📰cmux 0.62.1から0.63.1のリリース内容調査]]** - cmux 0.62.1 -> 0.63.1 の変更点を分類して重要度付きで要約し、未解決問題の解消有無と `#2011` の cmux.json 機能・workspace icons の状況を確認 - **[[cmux.jsonでsplitを指定しても分割の比率が変わらない問題の調査]]** - cmux.json で split を指定しても比率が反映されない件を調査。原因は custom layout 適用直後の divider 反映タイミング不備が有力で、upstream 修正が必要と整理 - **Obsidian** - **[[📝Codex CLIからObsidian CLIを呼び出すと『Obsidianが予期しない理由で終了しました』と表示される]]** - Obsidian v1.12.7 をインストールしなおしてObsidian CLIとの再連携で解決 - **[[otmコマンドにVaultのファイル検索コマンドを追加]]** - `otm file <keyword>` を追加し、Tasks Vault 向けのファイル検索ラッパーを実装した - **[[Obsidian 1.12.7 CLI 変更調査]]** - Obsidian 1.12.7 の CLI 変更について、changelog・docs・forum・ローカル環境を確認し、obsidian-cli への実体分離と更新方法を整理 - **Zellij** - **[[Zellijの終了済みcommand paneにおけるCtrl-cの挙動を調査する]]** - 終了済みcommand paneで `<Ctrl-c>` がpaneクローズになる挙動を調査し、専用UIの仕様であることと関連issue 3件が未解決であることを整理 - **[[🧠Zellijで本当に表示すべきペインについて考える]]** - Zellijのペイン構成を見直し、cmuxやAIエージェント前提で本当に表示すべき情報やGit操作の必要性を考察 - **Jumeaux** - **[Jumeaux v6.1.1リリース](https://tadashi-aikawa.github.io/jumeaux/ja/releases/v6/#611)** - 依存関係のセキュリティアップデート(requests, deepdiff, tornado)をPyPIにリリース - **[[jumeaux-releaseスキルのallowed-tools更新]]** - リリース作業中に不足していたClaude Codeスキルのallowed-tools 6件を追加 - **その他** - **[[3月16日〜3月22日のweekly reportのTOPICS作成]]** - 📰2026年12週 Weekly Report を新規作成し、4本のTOPICSを作成 - **`cc` `chappy` `colot` のGIF表示を削除** - 起動速度UPのため - **AI Agent wrapper CLIの起動用静止画を設定** - GitHub Copilot CLI、Claude Code、Codex CLIにそれぞれmini系キャラを追加 - **GitHub Issuesの返信** - Various Complements 1件、Another Quick Switcher 3件。不具合報告はsandbox環境で再現せず - **[[📒Gitleaksのユースケース]]の追加** - チェックコマンド、`RuleID` による除外設定などを追加 - **[[NeovimでGitHub Copilotが動かない]]** - OAuthトークンの失効が原因と特定し、`:Copilot auth` で再認証して解決 - **[[🧠AI全般に思うこと]]** - 月1万弱のAIに対する投資は、月10万以上の損失を防ぐためのリスクヘッジだ - **Weekly Reportのskill作成** - https://github.com/tadashi-aikawa/skills/commit/43091a6e85e0a56e77993b5ba895a6c68c2473a6