<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>GitHub Copilot on 大体動かない</title><link>https://daitai.dev/tags/github-copilot/</link><description>Recent content in GitHub Copilot on 大体動かない</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Thu, 14 May 2026 21:55:46 +0900</lastBuildDate><atom:link href="https://daitai.dev/tags/github-copilot/index.xml" rel="self" type="application/rss+xml"/><item><title>VS Code 1.120 のターミナル出力圧縮とリスク評価がなかなかよさそう</title><link>https://daitai.dev/posts/vscode-1120-terminal-compress/</link><pubDate>Thu, 14 May 2026 21:55:46 +0900</pubDate><guid>https://daitai.dev/posts/vscode-1120-terminal-compress/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — VS Code 1.120 でプレビュー追加されたターミナル出力圧縮（&lt;code&gt;chat.tools.compressOutput.enabled&lt;/code&gt;）とリスク評価（&lt;code&gt;chat.tools.riskAssessment.enabled&lt;/code&gt;）。圧縮はコンテキスト管理、リスク評価は実行前の安全確認と役割が違う。特に圧縮は RTK と処理レイヤーが完全に別なので共存できる（らしい）。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="何が追加されたか"&gt;何が追加されたか&lt;/h2&gt;
&lt;p&gt;VS Code 1.120 のリリースノートを眺めていたら、エージェント周りで自分の関心をひく機能が 2 つ入っていた。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ターミナル出力の自動圧縮&lt;/strong&gt;と&lt;strong&gt;ターミナルコマンドのリスク評価&lt;/strong&gt;だ。&lt;/p&gt;
&lt;h2 id="ターミナル出力の自動圧縮"&gt;ターミナル出力の自動圧縮&lt;/h2&gt;
&lt;p&gt;設定は &lt;code&gt;Chat › Tools › Compress Output: Enabled&lt;/code&gt;。これはプレビュー。&lt;/p&gt;
&lt;p&gt;Claude さんの解説は以下。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;有効にすると、エージェントがターミナルコマンドを実行したあと、その出力をモデルに送る前に VS Code 側で自動的に削減してくれる。具体的には以下の処理が入る。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;git diff&lt;/code&gt; の差分で変更のない部分を折りたたむ&lt;/li&gt;
&lt;li&gt;lockfile や snapshot の差分を丸ごと除外&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ls -l&lt;/code&gt; をファイル名だけに削減&lt;/li&gt;
&lt;li&gt;&lt;code&gt;npm install&lt;/code&gt; の進捗バー・非推奨警告・audit サマリーを除去&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;圧縮された出力には先頭にバナーが付く。「どのフィルタが適用されたか」「生のテキストが必要なら圧縮を無効にできる」という情報をモデルに伝えるためのやつ。モデルが圧縮済みであることを認識できるのは地味に大事。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;いや、これ RTK と同じじゃね？&lt;/p&gt;
&lt;p&gt;AI を提供している会社のどれかがそのうち自社で実装するかもなー、とか思ってたけど案外早かったな。&lt;/p&gt;
&lt;h2 id="リスク評価"&gt;リスク評価&lt;/h2&gt;
&lt;p&gt;設定は &lt;code&gt;Chat › Tools › Risk Assessment: Enabled&lt;/code&gt;。こちらはエクスペリメンタル。&lt;/p&gt;
&lt;p&gt;おなじみの Claude さんの解説は以下。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;エージェントがターミナルコマンドを実行しようとしたとき、確認ダイアログにリスクバッジと AI 生成の説明が表示されるようになる。バッジは 3 段階。&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;バッジ&lt;/th&gt;
 &lt;th&gt;意味&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;🟢 Safe&lt;/td&gt;
 &lt;td&gt;ファイルの読み取りや出力のみ。変更なし&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;🟠 Caution&lt;/td&gt;
 &lt;td&gt;ワークスペースへの変更やネットワーク呼び出しを含む&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;🔴 Review carefully&lt;/td&gt;
 &lt;td&gt;force push や外部への削除など、要注意な操作&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;バッジの横に 1 文のサマリーが出る。「このコマンドが何をするか」を一言で教えてくれるやつ。自動承認の判断材料として使える。&lt;/p&gt;</description></item><item><title>VS Code の Chronicle 機能が結構便利だった</title><link>https://daitai.dev/posts/vscode-chronicle/</link><pubDate>Tue, 12 May 2026 23:34:46 +0900</pubDate><guid>https://daitai.dev/posts/vscode-chronicle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Chronicle は Copilot Chat のチャット履歴をローカルで記録・分析する実験的機能。&lt;code&gt;/chronicle:standup&lt;/code&gt; でその日の作業サマリー、&lt;code&gt;/chronicle:tips&lt;/code&gt; で自分の使い方フィードバックが出せる。これがなかなか良い。Claude にはこういう公式機能はないけど、自宅では QMD で履歴検索は実現してる。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;職場で VS Code を使っていて、ふと試してみた機能の話。&lt;/p&gt;
&lt;h2 id="chronicle-とは"&gt;Chronicle とは&lt;/h2&gt;
&lt;p&gt;VS Code v1.118 で実験的に追加された GitHub Copilot Chat の機能。Copilot とのやり取り、編集したファイル、参照した PR や Issue あたりをローカルの SQLite データベースに記録しておいて、あとから振り返ったり分析したりできる。&lt;/p&gt;
&lt;p&gt;で、早速使ってみた。&lt;/p&gt;
&lt;p&gt;有効化は &lt;code&gt;github.copilot.chat.localIndex.enabled&lt;/code&gt; を &lt;code&gt;true&lt;/code&gt; にするだけ。&lt;/p&gt;
&lt;p&gt;GUI の設定じゃないのはまだプレビュー段階だからかな。&lt;/p&gt;
&lt;p&gt;使えるコマンドは主に 3 つ。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;/chronicle:standup&lt;/code&gt;&lt;/strong&gt;
過去 24 時間の作業内容をまとめてくれる。「このブランチでこのファイル触って、この PR を参照した」みたいな感じで出てくる。朝会の準備が秒で終わるらしい(使ったことはない)。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;/chronicle:tips&lt;/code&gt;&lt;/strong&gt;
7 日間の使い方を分析して、「お前こういうプロンプトの書き方してるけど、こうしたほうが良くね？」みたいなフィードバックをくれる。自分の癖を指摘してもらえるのがおもしろいし、フィードバックがまあまあためになる。これはよき。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;/chronicle [query]&lt;/code&gt;&lt;/strong&gt;
自然言語で過去の履歴を検索できる。「先週やってたあれ、なんだっけ」が出てくる。&lt;/p&gt;
&lt;h2 id="試してよかったのは-tips"&gt;試してよかったのは tips&lt;/h2&gt;
&lt;p&gt;「同じような質問を繰り返してる」とか「毎回コンテキストを初めから説明してる」みたいな自分のパターンを指摘してくれる。ほう、わかってんじゃねーかこいつ…&lt;/p&gt;
&lt;p&gt;Copilot との対話の仕方に改善余地があると気づかせてくれるのが嬉しい。&lt;/p&gt;
&lt;p&gt;やるじゃん。&lt;/p&gt;
&lt;h2 id="claude-だと"&gt;Claude だと？&lt;/h2&gt;
&lt;p&gt;で、家で使ってる Claude Code でこういう機能があるかというと、公式にはない。
そこんとこどうなんよ？と Claude さんに聞いてみた結果が以下。&lt;/p&gt;</description></item><item><title>WSL + VSCode Copilot Chat で RTK インストールしたら動かなかった話</title><link>https://daitai.dev/posts/rtk-copilot-chat/</link><pubDate>Tue, 21 Apr 2026 20:34:40 +0900</pubDate><guid>https://daitai.dev/posts/rtk-copilot-chat/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — RTK のフックが vscode の Copilot Chat では動かない（2つの理由がある）。フックをやめてグローバルインストラクションに &lt;code&gt;.github/copilot-instructions.md&lt;/code&gt; の内容を転記すれば Copilot が自発的に &lt;code&gt;rtk&lt;/code&gt; プレフィックスを使うようになった。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;職場の WSL 環境に RTK をインストールして VSCode Copilot Chat と組み合わせようとしたら、フックが全然動かなかった。調査した結果と、現状の対策を書いておく。&lt;/p&gt;
&lt;h2 id="rtk-とは"&gt;RTK とは&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/rtk-ai/rtk"&gt;RTK（Rust Token Killer）&lt;/a&gt; は CLI プロキシで、コマンド出力を 60〜90% 圧縮して AI エージェントのトークン消費を削減するツール。&lt;code&gt;git status&lt;/code&gt; の代わりに &lt;code&gt;rtk git status&lt;/code&gt; を使うと、AI に渡る出力がコンパクトになる。&lt;/p&gt;
&lt;p&gt;前の記事でも紹介したなこれ。書かなくてもいいかと思ったけど一応書いておく。&lt;/p&gt;
&lt;h2 id="rtk-init--g-は-copilot-向けではない"&gt;&lt;code&gt;rtk init -g&lt;/code&gt; は Copilot 向けではない&lt;/h2&gt;
&lt;p&gt;RTK のセットアップで &lt;code&gt;rtk init -g&lt;/code&gt; を実行すると Claude Code 向けのフックしか設置されない。Copilot 向けは &lt;code&gt;--copilot&lt;/code&gt; フラグが必要：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;rtk init -g --copilot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ただし &lt;code&gt;-g&lt;/code&gt;（グローバル）をつけても実質プロジェクトスコープで、このコマンドを実行したディレクトリの &lt;code&gt;.github/&lt;/code&gt; 以下に &lt;code&gt;copilot-instructions.md&lt;/code&gt; と &lt;code&gt;hooks/rtk-rewrite.json&lt;/code&gt; が生成される。&lt;/p&gt;</description></item><item><title>VSCode Copilot Chat と Claude Code、bash の扱いが違う</title><link>https://daitai.dev/posts/copilotchat-claudecode-bash/</link><pubDate>Fri, 03 Apr 2026 00:00:00 +0900</pubDate><guid>https://daitai.dev/posts/copilotchat-claudecode-bash/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — oh-my-posh v28.1.1 以降は VSCode Shell Integration と競合してエージェントモードが固まる。&lt;code&gt;.bashrc&lt;/code&gt; に &lt;code&gt;$TERM_PROGRAM=vscode&lt;/code&gt; の早期リターンを入れれば解決。Claude Code の PATH は &lt;code&gt;.profile&lt;/code&gt; 経由で解決している。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;午前中、Copilot Chat のエージェントモードでコマンド実行したら止まるという事象が頻発した。.bashrc に仕掛け作って凌いだ。定時過ぎに Claude Code の仕組みを調べたらなんか知らんけど上手く動いてた、という一日の話。&lt;/p&gt;
&lt;h2 id="午前copilot-chat-のエージェントモードでコマンド実行すると以後進まない"&gt;午前：Copilot Chat のエージェントモードでコマンド実行すると以後進まない&lt;/h2&gt;
&lt;p&gt;VSCode の Copilot Chat をエージェントモードで使っていたら、コマンドを実行させるとそこで「Preparing」が点滅し続けてそこから進まなくなった。&lt;/p&gt;
&lt;p&gt;なんだよこれと思って調べてみると、oh-my-posh が原因。oh-my-posh v28.1.1 以降で VSCode Shell Integration と競合するようになったらしく、エージェントが叩いた bash がそのまま固まる。&lt;/p&gt;
&lt;p&gt;解決策として &lt;code&gt;.bashrc&lt;/code&gt; に VSCode 向けの早期リターンを仕込んだ。&lt;code&gt;$TERM_PROGRAM&lt;/code&gt; は VSCode が統合ターミナルを開くときにセットする変数で、WSL・ネイティブ Ubuntu どちらでも &lt;code&gt;vscode&lt;/code&gt; になる。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# mise shims（全環境で必要）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;eval&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;mise activate bash --shims&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# VSCode 統合ターミナルはここで早期リターン&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="o"&gt;[[&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="nv"&gt;$TERM_PROGRAM&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;vscode&amp;#34;&lt;/span&gt; &lt;span class="o"&gt;]]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="k"&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 以降はインタラクティブ専用（Tabby / GNOME Terminal など）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;eval&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;oh-my-posh init bash ...&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# ghq, fzf など...&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これで Copilot Chat のエージェントモードは直った。さくさく進むようになった。でも午前の業務は溶けた。う○こですよ。&lt;/p&gt;</description></item></channel></rss>