こんにちは、CLI の実験機能を見るとつい記事ネタにしてしまうアーキテクトのやまぱん!です 😅
補足コメントや質問、いいね、拡散、ぜひお願いします 🥺!
間違っていたら 優しく 教えてください!
先日、GitHub Copilot CLI 実機ヘルプから作る完全版チートシート を書きました。
その後、GitHub Copilot CLI の Experimental mode を触っていたら、チートシート本編の 1 行では足りないコマンドがありました。
中心は /after / /every / /loop と、横道の質問を投げる /ask(alias: /btw)です。
/after は「あとで 1 回」、/every は「今の CLI セッション中に繰り返し」。/ask は、本筋の会話に混ぜたくない短い質問用です。今回はこの 2 系統を、実機表示と公式 Docs から整理します。
この記事は 2026/06/30 時点 の GitHub Copilot CLI 1.0.66-2 と GitHub Docs の記載をもとにしています。Experimental features は安定版ではないので、名前・挙動・提供範囲が変わる可能性があります。参考程度に「試してみる」くらいの温度で読んでください。
TL;DR
- GitHub Copilot CLI の Experimental mode に、セッション内スケジューリング 用の
/afterと/everyが出ている -
/afterは 1 回だけ、/every//loopは繰り返し。どちらも OS の cron ではなく、現在の Copilot CLI セッション内 schedule -
/ask(alias:/btw)は、会話履歴に足さない横道質問用として説明されている。履歴から完全に外れるかは今回は見ていない -
/autopilot//goal、/worktree、/sandboxなども同じ一覧に出るが、この記事では補足に回す - 手元では
/after 3s ...と/every 1m おはようの発火を確認できた
この記事の読み筋
この記事は、既存の 3 本の間に置く GitHub Copilot CLI Experimental 補遺 です。
| 読みたいこと | 記事 |
|---|---|
| GitHub Copilot CLI のコマンド全体を引きたい | GitHub Copilot CLI 実機ヘルプから作る完全版チートシート |
| ゴールまで回す Skill の設計を見たい | AI エージェントを「最後までやり切らせる」 goal-loop という Agent Skill を作った話 |
| ループを設計する考え方全体を見たい | Loop Engineering とは? エージェントに「指示する側」を卒業する設計の話 |
今回の記事では、その中でも GitHub Copilot CLI の /experimental に増えていた入口 に絞ります。
実機で見えたもの
今回確認した環境です。
| 項目 | 内容 |
|---|---|
| OS | Windows 11 |
| Shell | PowerShell 7 系 |
| GitHub Copilot CLI | 1.0.66-2 |
| 確認日 | 2026/06/30 |
copilot --version では次のバージョンでした。
GitHub Copilot CLI 1.0.66-2.
/experimental を打つと、on / off / show が補完候補として出てきます。ここから Experimental mode を有効化したり、今の環境で有効になっている実験機能を確認できます。
通常の copilot help commands では /experimental などの入口が見えます。一方で、/experimental show を開くと、次のような Experimental slash commands が並んでいました。
実際の `/experimental show` 出力
Experimental Features
Experimental mode is enabled. The following features are available:
Slash Commands:
/after [delay] [prompt...] - Schedule a one-shot prompt, skill, or schedulable slash command for this session (e.g. /after 30s ping me, /after 10m /tuikit-new, /after 1h /chronicle standup)
/ask, /btw <question> - Ask a quick side question without adding to conversation history
/autopilot, /goal [on|off|<objective>] - Toggle autopilot mode or set an explicit objective
/every, /loop [interval] [prompt...] - Schedule a recurring prompt, skill, or schedulable slash command for this session (e.g. /every 5m run tests, /every 1h /my-skill); omit the time to let the model self-pace, choosing the delay before each run (e.g. /every watch the deploy)
/extensions, /extension [manage|mode] - Manage CLI extensions
/fork, /branch [name] - Fork the current session into a new session, optionally with a name
/sandbox [enable|disable] - Configure sandbox policy
/search, /find [query] - Search the conversation timeline
/worktree, /move [branch name, task to start, or blank to auto-name] - Create a new git worktree and switch into it, moving uncommitted changes. Pass a branch name, a task to start, or nothing to auto-name.
Feature Flags:
AUTOPILOT_OBJECTIVES - Enable explicit autopilot objectives via /autopilot <objective>
AUTOPILOT_NO_PROGRESS_STOP - Stop autopilot early when it makes no tool progress across consecutive continuation turns
ASK_USER_ELICITATION - Replace the standard ask user tool with a structured form-based variant
MULTI_TURN_AGENTS - Enable multi-turn subagents that stay alive after responding, accepting follow-up messages via write_agent
EXTENSIONS - Enable extensions — programmatic tools and hooks via @github/copilot-sdk, scaffolded and managed by the agent itself
TOOL_SEARCH - Enable tool search with deferred loading for MCP and external tools
AVAILABLE_TOOLS_HINT - Inject the available-tools reminder message listing deferred tools to load via tool search
BACKGROUND_SESSIONS - Enable multiple concurrent sessions with background session management
SANDBOX - Enable shell command sandboxing to restrict file and network access for executed commands
EVERY_AND_AFTER - Enable /every and /after slash commands for scheduling recurring or one-shot prompts within the session
CLI_CLOUD_SESSIONS - Enable the CLI startup flow for cloud sandbox sessions
CLI_WORKTREE - Enable the --worktree flag to start the session in an isolated git worktree
INLINE_IMAGES - Enable native inline image rendering in the timeline via the Kitty graphics protocol (inside and outside tmux)
MCP_TASKS - Enable MCP Tasks support (spec 2025-11-25): tools the server marks `taskSupport: "required"` run as background subagents via `callToolAsTask`
MCP_APPS - Enable MCP Apps (SEP-1865) UI extension passthrough — io.modelcontextprotocol/ui capability, ui:// resource auto-fetch, /mcp-app/* proxy endpoints
WORKTREE - Enable /worktree slash command (aliased /move) to create a new git worktree and switch into it, moving any uncommitted changes along
REWIND_V2 - Tools-based rewind: restore files Copilot changed (edits, shell, sub-agents) on /rewind: conversation, or conversation + files
DIFF_V2 - Tools-based /diff: build the diff from files Copilot changed this session, so /diff works in non-git folders (git cwd keeps the uncommitted/branch toggle)
These features are not stable, may have bugs, and may be removed in the future.
Usage: /experimental show - Show this help
/experimental on - Enable experimental mode
/experimental off - Disable experimental mode
| コマンド | 役割 | この記事での見方 |
|---|---|---|
/after [delay] [prompt...] |
セッション内で 1 回だけ prompt / skill / slash command を予約 | one-shot schedule |
/every [interval] [prompt...] |
セッション内で prompt / skill / slash command を繰り返し予約 | recurring schedule |
/loop [interval] [prompt...] |
/every の alias |
recurring schedule の別名 |
/ask <question> |
会話履歴に足さず、横道の質問をする | side question |
/search [query] |
conversation timeline 検索 | 履歴確認 |
/autopilot [on|off|objective] |
autopilot mode の切替、または objective 設定 | 今回は補足。autopilot 自体は通常機能 |
/goal [on|off|objective] |
/autopilot の alias |
今回は補足 |
/worktree |
Git worktree を作って移動 | 今回は補足 |
/sandbox |
shell command sandboxing の制御 | 今回は補足。safety boundary |
/extensions |
CLI extensions を管理 | 今回は補足 |
/fork |
現在のセッションを分岐 | 今回は補足 |
同じ行にカンマ区切りで出ているものは alias です。alias 関係を抜き出すと、次のようになります。
| 主コマンド | alias | 見え方 |
|---|---|---|
/ask |
/btw |
横道の質問。by the way の略として自然 |
/every |
/loop |
繰り返し schedule。/loop 15m ... は every schedule として登録できた |
/autopilot |
/goal |
autopilot mode / objective 指定。通常 autopilot 自体は Experimental 専用ではない |
/extensions |
/extension |
CLI extensions 管理 |
/fork |
/branch |
現在セッションの分岐。Git branch ではなく session fork の alias |
/search |
/find |
conversation timeline 検索 |
/worktree |
/move |
Git worktree を作って移動 |
Feature Flags 側を見ると、単に slash command が増えただけではなく、複数の実行基盤まわりが Experimental 扱いになっていることが分かります。以下は /experimental show に表示された flag の要約 で、公式 Docs で個別仕様を確認できた一覧ではありません。
| まとまり | 該当する主な flag | 何が増えるか |
|---|---|---|
| 自走・停止条件 |
AUTOPILOT_OBJECTIVES / AUTOPILOT_NO_PROGRESS_STOP
|
objective 指定と、進捗がないときの早期停止 |
| スケジューリング | EVERY_AND_AFTER |
セッション内の one-shot / recurring prompt |
| 分離・巻き戻し |
CLI_WORKTREE / WORKTREE / REWIND_V2 / DIFF_V2
|
worktree 隔離、tool layer ベースの diff / rewind |
| 安全境界 | SANDBOX |
shell command のファイル・ネットワークアクセス制限 |
| 拡張・MCP |
EXTENSIONS / TOOL_SEARCH / MCP_TASKS / MCP_APPS
|
extensions、deferred tool loading、MCP の background task / UI 化 |
| セッション拡張 |
MULTI_TURN_AGENTS / BACKGROUND_SESSIONS / CLI_CLOUD_SESSIONS
|
長生きする subagent、複数 session、cloud sandbox session |
| 表示・入力 |
INLINE_IMAGES / ASK_USER_ELICITATION / AVAILABLE_TOOLS_HINT
|
画像表示、構造化 ask、available tools のヒント |
公式の GitHub Copilot CLI command reference にも、/after と /every は Only available in experimental mode として載っています。一方で、/loop alias や self-pace の説明、Feature Flags の細かい名前は、手元の /experimental show に出ていたものとして紹介します。
ここまで見ると、GitHub Copilot CLI のコマンド体系に セッション内スケジューラ が入り始めています。
手元では、/after 3s ... の発火と /every 1m おはよう の繰り返し発火まで見られました。/ask / /btw も横道質問として応答するところまでは確認しています。
一方で、この記事の主役ではない /diff、/rewind、/sandbox、/fork などは、一覧に出ていることへ軽く触れるだけにします。詳しい挙動は別で見た方がよさそうです。
/after: 1 回だけ未来の自分に投げる
/after は one-shot です。
公式 Docs の説明では、現在のセッションに対して、指定した時間後に prompt / skill / schedulable slash command を 1 回だけ実行します。
例としては、こんな使い方が想定されています。
/after 30m remind me the time
/after 1h /chronicle standup
1 行目は、今の CLI セッションに「30 分後に remind me the time というプロンプトを 1 回だけ投げる」予約を置きます。2 行目は、1 時間後に /chronicle standup という schedulable slash command を 1 回だけ実行する例です。
手元では /after 3s ... も登録され、数秒後に [Scheduled prompt #1] として実行されました。短い秒指定でも動きます。
この手の予約は OS のタスクスケジューラや cron ではなく、Copilot CLI セッション内の schedule です。引数なしの /after で schedule manager を開けます。
Loop Engineering 的に見ると、これは Scheduling の一番小さい部品 です。
毎日・毎時の自動化までは要らない。でも「30 分後にもう一度確認して」「1 時間後に standup をまとめて」は欲しい。そういう 軽い reminder / delayed trigger を、外部 cron や OS タスクではなく、Copilot CLI のセッション内に置けるようになる。
小さい機能に見えますが、待ち時間のある作業では使う場面がありそうです。
なぜなら、エージェント作業では「今すぐ実行する」よりも、少し待ってからもう一度見る 方が自然な場面が多いからです。
- CI が終わったころに結果を見る
- デプロイ反映を数分待ってから smoke test する
- 長い調査中に、あとで
/chronicle standupを出す - ユーザー確認待ちの前に、一定時間後の整理を入れる
これまでなら、人間が覚えておくか、別の scheduler を使う必要がありました。/after は、その小さな穴を CLI セッション内で塞ぎに来ています。
/every / /loop: 繰り返し prompt が Experimental に入ってきた
/every は recurring です。/loop はその alias です。
公式 Docs の例では、次のような形です。
/every 1h run tests
/every 1d /chronicle standup
1 行目は、今の CLI セッションで 1 時間ごとに run tests を投げる recurring schedule を作ります。2 行目は、1 日ごとに /chronicle standup を実行する例です。
/after と同じく、/experimental show には /every 5m ... のような短い間隔の例が出ます。今回の検証では /every 15m ... が Scheduled #1 every 15m ... として登録できました。/loop 15m ... も同じく every schedule として登録できたので、/loop は /every の alias です。
手元の PowerShell で直接操作した場合は、/every 1m おはよう のような 1 分指定も受理され、1 分ごとに [Scheduled prompt #1] として実行されました。上の画面では、22:56 と 22:57 に同じ schedule が発火し、Copilot が「おはようございます!」と返しています。
/after と違い、/every は繰り返しなので、試すときは 止め方までセット で考えたいです。引数なしの /every で schedule manager を開けるので、予約状態を見てから使うのがよさそうです。
ここは期待値を分けておきたいところです。/every / /loop は、cron のような外部の定期実行基盤ではなく、開いている GitHub Copilot CLI セッションの中に置く schedule です。公式 Docs も /every を "for the current session" と説明しています。セッションを閉じたり別セッションに移ったりすれば、その予約もそこで切れます。強制力のある自動実行というより、作業中に「しばらく同じ確認を回しておく」ための軽いループです。
/experimental show には、もう 1 つ気になる説明がありました。
omit the time to let the model self-pace, choosing the delay before each run
この表示上は、間隔を省略すると、モデルが 次の実行までの delay を自分で選ぶ という説明です。
ここが Loop Engineering っぽいところです。
従来の cron は、人間が「5 分おき」「1 時間おき」を決めます。でもエージェントの作業では、毎回同じ間隔が最適とは限りません。
- CI 待ちは 5 分後でいい
- overnight research は 1 時間後でいい
- デプロイ反映確認は最初だけ短く、安定したら長くしたい
- 失敗が続くなら、いったん間隔を伸ばしたい
この説明どおりに動くなら、固定 interval ではなく、状況に合わせて次の実行間隔を変える loop に近づきます。
もちろん、ここは Experimental なので過信は禁物です。特に recurring prompt は、AI 利用枠やツール実行を消費し続ける可能性があります。上限、停止条件、通知方法を決めずに使うのは避けたいところです。
スケジュールが CLI セッション内に入った、という点は引き続き追いたいです。
/ask(alias: /btw): 会話履歴に足さないと説明されている横道質問
スケジュール実行と並んで目に留まったのが、/ask / /btw です。
/experimental show では、次のように説明されています。
/ask, /btw <question> - Ask a quick side question without adding to conversation history
メインの作業文脈に混ぜたくない質問を、横道として聞くための入口です。
たとえば、長い実装や調査の途中で、ふと「このエラー名って何だっけ?」「この略語の意味だけ確認したい」と思うことがあります。普通に会話へ投げると、その質問と回答も会話履歴に入り、以降のコンテキストに混ざります。/ask / /btw は、そこを分けるためのコマンドに見えます。
例としては、こんな使い方です。
/ask What does TUI mean?
/btw What does TUI mean?
先ほどのスクリーンショット下部にも、/ask なめこの味噌汁おいしい! を投げた結果が表示されています。メイン作業の流れから少し外れた質問を、その場で小さく聞けるのが分かります。
手元では、/ask / /btw の表示と応答までは確認しました。ただ、「本当に conversation history に追加されないか」までは今回は見ていません。
/ask / /btw は、Loop Engineering というより context hygiene(コンテキスト衛生) の部品です。長いセッションほど、関係ない横道を履歴に混ぜない価値が出てきます。
補足: autopilot は通常機能、/goal は alias
GitHub Docs では、Copilot CLI の autopilot mode は「初回指示後に、CLI がタスク完了と判断するまで自律的に進める」機能として説明されています。
ここは分けておきます。--autopilot や通常の autopilot mode 自体は、Experimental 専用ではありません。Experimental 一覧で出ているのは、/autopilot <objective> のような明示 objective 指定や、/goal alias まわりです。
公式の Allowing GitHub Copilot CLI to work autonomously では、停止条件として次が挙げられています。
- agent がタスク完了と判断する
- 進行不能な問題が起きる
- ユーザーが
Ctrl+Cで止める - 設定した最大 continuation limit に到達する
--allow-all / --yolo と autopilot は別物です。
--allow-all は 権限 の話です。ツールやファイルアクセスを都度確認せず許可する。
一方で autopilot は 継続 の話です。モデルとの次のやり取りを、人間の入力なしに続ける。
/goal は /autopilot の alias です。Goal mode という名前の独立機能ではなく、GitHub Copilot CLI では autopilot に objective を渡す UI です。
以前の調査では、GitHub Copilot CLI に /goal という固有スラッシュコマンドは確認できず、Microsoft / GitHub 系では autopilot mode が本命、と整理していました。今回の Experimental 表示は、その整理を少し更新します。
現時点では、GitHub Copilot CLI の /goal を OpenAI Codex の公式 Goal mode と同じ仕様だとは書きません。GitHub Copilot CLI 側では、/goal は /autopilot の alias です。
補足: 一緒に見えていた隔離・確認系の機能
/experimental show には、スケジュール系だけでなく /worktree、/diff、/rewind、/sandbox も並んでいました。
/worktree は作業ツリーを分ける入口、/diff と /rewind は変更の確認と巻き戻し、/sandbox は shell command の制限に関わる入口です。/fork / /branch は、Git branch ではなく session fork の alias です。
このあたりも軽く触りましたが、この記事では深追いしません。/rewind の復元確定や /sandbox の allow / deny は、別記事で扱うくらいの話です。
このあたりは本題ではありません。ただ、/every のような繰り返し実行を使うなら、隔離、差分確認、巻き戻し、sandbox も近くに置かれています。
既存記事との関係
この記事は、チートシート本編から切り出した Experimental のスケジュール実行と横道質問編 です。設計思想としては以前書いた Loop Engineering や goal-loop の話ともつながりますが、ここでは /after / /every / /loop と /ask / /btw を中心に見ます。
では、/loop や /goal という名前が出てきたとき、過去に作った goal-loop Skill と「実質的に同じもの」なのか。
私の整理では、同じものではありません。ただし、同じ方向を向いた近縁の部品です。
違いは、どの層で回しているかです。
| 入口 / 考え方 | 何を回すか | 止め方・判断の持ち方 | goal-loop との関係 |
|---|---|---|---|
/after |
今の CLI セッション内で、未来の 1 回を予約する | 1 回実行したら終わる | goal-loop ではなく、遅延実行の小さな部品 |
/every / /loop
|
今の CLI セッション内で、同じ prompt を繰り返し予約する | schedule manager とセッション終了に依存 | 反復トリガー。ゴール達成判定までは持たない |
/autopilot / /goal
|
Copilot CLI に objective を渡し、自律継続させる | autopilot の完了判断や continuation limit に依存 | goal-loop に近いが、判断の多くは CLI 側にある |
| Codex の Goal mode | goal 文をもとに、長いタスクの進行と完了判断を任せる | Codex 側の Goal mode が進行と完了可否を見る | かなり近い。ただし特定ツールの実行基盤に乗る機能 |
| 自作の goal-loop Skill | ゴール、完了条件、検証、評価、停止条件を明示して回す | criteria、外部検証、評価、停滞判定を workflow に持つ | 実行機能というより、ツールをまたいで使う進め方の型 |
なので、/every / /loop は goal-loop そのものではありません。これは「時間が来たらもう一度投げる」ための schedule です。
一方で /autopilot / /goal は、goal-loop にかなり近い方向を向いています。ゴールを渡して、ある程度自走させるからです。ただ、GitHub Copilot CLI では、完了判断や継続回数の制御は CLI の autopilot 側に寄っています。
自作の goal-loop Skill は、その上に置く 進め方の型 です。最初に完了条件を固定し、外部シグナルで検証し、進捗が止まったら止める。つまり、/every や /goal のような実行基盤を使う/使わないに関係なく、「何をもって終わりにするか」を外に出しておくためのものです。
そう見ると、今回の Experimental features は goal-loop の置き換えというより、goal-loop 的な運用で使える部品が CLI 側に増えてきた、という見方が近いです。
使いどころを考える
今のところ、私なら次のような用途から試します。
| 用途 | コマンド候補 | 注意点 |
|---|---|---|
| CI のあとで結果確認 | /after 10m ... |
10 分後に 1 回だけ確認 prompt を投げる。CI URL や対象 branch を明示する |
| 長い調査の定期サマリ | /every 1h /chronicle standup |
1 時間ごとに standup 生成を予約する。セッション履歴に依存しすぎない |
| 横道の用語確認 |
/ask What does TUI mean?(/btw でも同じ) |
本筋に混ぜたくない短い質問を投げる。履歴から完全に外れるかは今回は見ていない |
| テスト修正の自走 |
/autopilot / /goal
|
objective を渡して自走させる。--max-autopilot-continues で上限を置く |
| デプロイ監視 | /every watch the deploy |
時間を省略し、self-pace に任せる形の例。挙動を過信しない |
| 破壊的変更を含む修正 |
/worktree 併用 |
別 worktree / branch で作業させる。main worktree で回さない |
--max-autopilot-continues は先に置いておきたい設定です。公式 Docs も、programmatic / CI 文脈では runaway loop を避けるために continuation limit が重要、と説明しています。
自動化は便利ですが、止め方を決めていない自動化はだいたい怖いです。
まとめ
GitHub Copilot CLI の Experimental features には、セッション内で「あとで実行する」「繰り返し実行する」「横道の質問を履歴から分ける」ための部品が増えています。
/every が繰り返せること自体より、CLI セッションの中に「あとで」「繰り返し」「横道質問」が入ってきたことの方が気になりました。
/after で未来の 1 回を置ける。/every / /loop で繰り返せる。/ask / /btw で、本筋から少し外れた質問を別枠にできる。補足として、/worktree、/diff / /rewind、/sandbox も同じ画面に見えている。
この一式がそろうと、CLI セッションは「今この場の 1 ターン」だけでなく、少し先の実行、繰り返し実行、横道質問、隔離と巻き戻し まで持つ作業面になっていきます。
まだ Experimental なので、今すぐ本番運用に入れる話ではありません。
少なくとも GitHub Copilot CLI では、単に「聞いたら答える」だけでなく、自分で次の実行タイミングを持つ 方向が見え始めています。
そして、そこまで来ると人間の仕事は、また少し変わります。
プロンプトを書く人ではなく、いつ実行するか、どの履歴に残すか、止め方・戻し方・検証条件をどう置くか まで設計する人になる。
今回は /every 1m が実際に 2 回発火するところまで見られました。次に見るなら、/ask が本当に履歴に残らないかと、/rewind がどこまで確実に戻せるかです。
参考
- GitHub Docs, GitHub Copilot CLI command reference: https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-command-reference
- GitHub Docs, Allowing GitHub Copilot CLI to work autonomously: https://docs.github.com/en/copilot/concepts/agents/copilot-cli/autopilot
- GitHub Blog Changelog, Copilot CLI: Improved UI, rubber duck, prompt scheduling, and voice input: https://github.blog/changelog/2026-06-02-copilot-cli-improved-ui-rubber-duck-prompt-scheduling-and-voice-input/
- 関連記事: GitHub Copilot CLI 実機ヘルプから作る完全版チートシート ✨ (v1.0.66 時点)
- 関連記事: AI エージェントを「最後までやり切らせる」 goal-loop という Agent Skill を作った話
- 関連記事: Loop Engineering とは? エージェントに「指示する側」を卒業する設計の話


