新バージョンデスクトップ v0.1.7:設定を領域ごとにグループ化、初回ガイドを刷新、mu-agent 0.1.8 を内蔵
ドキュメント ドキュメント

はじめに

使い始める デスクトップアプリ コマンドライン

mu を使う

判定器 権限と安全性 目標モードと完了 コンテキスト 教訓 わかりやすいボード サブエージェントとハイブ

リファレンス

設定 機能とオプション トラブルシューティング プライバシー

mu を使う

目標モードと完了

タスクフレーム、/goal、そして実行が早く止まったり、脱線したり、堂々巡りしたりするのを防ぐチェック。

長いタスクが失敗するいちばん多い原因は、間違った答えではなく、早く止まることです。モデルはほぼ終わりましたと言い、テストは一度も実行されていない。mu にはこれを防ぐ仕組みがいくつかあり、どれもあなたが本当に望んでいることの記録、つまりタスクフレームの上に成り立っています。

タスクフレーム

タスクフレームには、目標、あなたの言葉どおりのハード制約とその出どころ、現在のサブゴール、受け入れ条件が入ります。受け入れ条件は、モデルが消し込んでいく ToDo リストでもあります。

あなたが送るメッセージは、それぞれ一度だけ判定されます(task.frame)。新しいタスクか、新しいハード制約か、訂正か、新しいサブゴールか、変化なしか。変化があるときだけモデルがタスクフレームを書き直すので、ただのありがとうには何のコストもかかりません。/frame で現在のタスクフレームが表示されます。タスクフレームは会話のツリーに従い、フォークや巻き戻しのあとは、そのブランチのタスクフレームが戻ってきます。

目標モード

/goal packages/api のすべてのテストが通り、README に新しいフラグの説明がある

エージェントはすぐに作業を始め、条件が満たされるまで続けます。/goal だけを入力すると、目標、その状態、最後のチェックの理由、次のステップが表示され、目標がなければ条件を尋ねます。/goal clear で終了します。アプリでは入力欄から目標を設定し、目標の行にその状態が表示されます。

エージェントが止まろうとするたびに、モデルが証拠を読んで決めます:達成、具体的な次のステップを付けた続行、またはあなたが必要。証拠とは、目標、まだ終わっていない受け入れ条件、編集したあと確認していないファイル、直近のテスト、ビルド、lint の実行とその結果、実行が行ったこと、そして締めくくりのメッセージです。言葉より事実が優先されます。未完了の受け入れ条件や確認していない編集があれば、締めくくりのメッセージが何と言おうと、常にまだです。Jev(goal.met)が答えるのは、チェックするモデルが答えを出さないときだけです。

次の場合、エージェントは自分で止まり、その理由を伝えます:

理由 既定値
あなたが必要(あなたにしかできない選択)
Esc を押した、またはモデルの呼び出しが失敗した
ツールを 1 回も呼び出さずに終わった実行が続いた回数 2
進捗がないと判定された実行の回数 2(1 回目は方針を変えるよう伝える)
最後のメッセージ以降の続行の回数 20
最後のメッセージ以降の経過時間(分) 180

一時停止のあとは、次のメッセージで目標が再開されます。セッションを開き直すと、実行中だった目標は一時停止の状態で戻り、実行中のまま戻ることはありません。

毎ターンの終わりのチェック

目標がなくても、各ターンには次のチェックがあります:

  • 完了の確認(turn.completion)。モデルが終わったと言うと、mu は何かでそれを確かめたかを問います。確かめていなければ、たとえばテストを実行して確認するよう、一度だけ促します。
  • 途中で止まった(turn.continue)。次にテストを実行します で終わってそれを実行しなかった実行や、すでに頼んだ作業について進めてよいかを尋ねた実行は、作業に差し戻されます。1 メッセージにつき最大 2 回です。プッシュ、公開、削除、支払いのように、取り消しにくい手順やこのマシンの外に及ぶ手順に、この方法で向かわせることはありません。

脱線と行き止まり

  • 逸脱検知(turn.drift)。ツール呼び出し 6 回ごとに、mu は作業がまだ目標に役立っているかを確認します。もう一つの失敗である堂々巡り(直近 8 回のうちに同じ呼び出しが 3 回)は、ルールが捉えます。
  • 判定による巻き戻し(turn.rewind)。エージェントが堂々巡りをしたり、一つのコマンドが失敗し続けたりすると、判定器はそのやり方が行き止まりかどうかを問います。確信のある行き止まりで、かつ進捗がないときだけ、ターンのチェックポイントまで戻ることを提案し、何を試してなぜやめたかを書き添えます。提案はあなたの返答を 2 分間待ち、返答がなければ実行はそのまま続きます。自分で巻き戻すことはありません。

手動での巻き戻し

/checkpoints は、現在のブランチのスナップショットを新しい順に一覧します(番号、ターン、時刻、それ以降に変わったファイルの数)。/rewind は最新のものに、/rewind 3 は 3 番に戻ります。まずどのファイルが元に戻る、削除される、復元されるかを示し、それからファイル、会話、またはその両方を戻すかを尋ねます。/rewind undo で巻き戻しを取り消せます。詳しくは権限と安全性を参照してください。

mu が役に立ったら、GitHub で Star を付けてください

Star があると、より多くの人が mu を見つけられます。コード、ディスカッション、すべてのリリースはリポジトリにあります。

GitHub で Star を付ける464