Communitygithub.com

エージェントUI (Candor Agent UI)

AIエージェントが動作する画面(チャット、ツール呼び出し、承認、権限プロンプト、計画、実行、差分、監査ログなど)のデザイン原則とチェックリストを提供します。あらゆるフレームワークやデザインシステムで利用可能で、Candor UIは必須ではありません。

エージェントUI (Candor Agent UI) とは?

このスキルは、AIエージェントが読み取り、提案、または実際の変更を行う画面の設計に関する包括的なルールとチェックリストを提供します。主な目的は、ユーザーがエージェントの行動を確認し、次の行動を許可し、そのプロセス全体を信頼できるようにすることです。9つの「誠実さルール」、ツール呼び出しの状態語彙、承認の人間工学、進行状況表示、元に戻せない操作の扱い、AI開示、アクセシビリティなどをカバーしています。Candor UI固有のスキルがコンポーネント名を提供するのに対し、本スキルは実装に関わらず画面が満たすべき要件を定義します。開発者が画面を構築する前、構築中、構築後に参照すべきリファレンス(honesty-rules.md, approvals.md, status-and-states.md, progress.md, disclosure-and-accessibility.md, review-checklist.md)も組織化されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/MethodicDev/candor/tree/HEAD/skills/candor-agent-ui

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Agent UI

AIエージェントが何かを読み取り、提案し、または実際に変更する画面には、ひとつの役割があります。それは、人間がエージェントの行ったことを確認し、次に何を許可するかを決定し、その両方を信頼できるようにすることです。以下は、あらゆるフレームワークとあらゆるデザインシステムに適用するルールとチェックリストです。プロジェクトがCandor UIを使用している場合、candor-uiスキルが各役割に対応するコンポーネントを命名します。本スキルは、画面が何を描画するかにかかわらず、画面が満たすべき要件を定義します。

作業の進め方

画面を構築する前に、3つの質問に答え、その回答を構築中も常に参照できるようにしてください。

  1. ここでエージェントは何ができるか?(読み取りのみ、人間が適用するための提案、自律的に行動など)すべてのコントロールはこれに従います。
  2. 人間は何を決定し、その根拠は何か?決定には、説明ではなく、対象そのもの(差分、ターゲット、数量)が必要です。ここで承認が発生する場合は、references/approvals.mdを読んでください。
  3. 何が元に戻せないのか?それらのアクションはその旨を明記し、確認をより厳重にし、決してデフォルトや単一キーの下に置かないでください。

構築中は、以下の9つのルールを守り、references/status-and-states.mdの状態語彙を使用し、references/progress.mdの方法で進捗を表示してください。モデルテキストはデータとして扱い、表示のみ行い、決して実行したりレンダリングしたりしないでください。

各画面の構築後、実行中の画面に対してreferences/review-checklist.mdを実行し、チェックごとに1行ずつ確認し、不合格となった項目を修正してから次に進んでください。チェックした項目のみにチェックを入れ、意図した項目にはチェックを入れないでください。

9つのルール

各ルールの詳細と例はreferences/honesty-rules.mdにあります。

  1. モデルの出力はテキストであり、マークアップではない。 モデルが書いた内容はテキスト(安全なサブセットのMarkdownが最大)として表示します。モデルが書いたURLはテキストであり、リンクではありません。モデルが書いたものがinnerHTMLに到達することはありません。
  2. 不明なものは不明のままにする。 測定されていない期間、コスト、カウントは空欄にするか、「未測定」と表示します。推定値は「推定」とその根拠を併記します。実行からの応答がないことを「実行中」と表示してはいけません。
  3. 使用できないコントロールは理由を表示する。 コントロールをロックし、キーボードおよびスクリーンリーダーユーザーが理由にアクセスできるようにします。disableして推測させてはいけません。
  4. 決定において何も事前選択されていない。 承認と拒否、保存と破棄は、どちらも選択されていない状態から開始します。Enterキーは承認しません。エージェントの推奨は「選択済み」ではなく「マーク」されます。
  5. 正確な変更を承認する。 決定は、ユーザーが見た変更(ハッシュまたはバージョン)にバインドされます。変更が移動した場合は、再度尋ねます。ポリシーで禁止されている場合は自己承認を拒否します。本番環境では2人目の承認が必要になる場合があります。
  6. 推論は信じられるものではなく、主張として扱う。 モデルの理由説明は主張です。そのようにラベル付けし、証拠(ソース、テスト結果、差分)とは区別して保持します。
  7. アプリがエージェントに名前を付ける。 すべてのエージェントメッセージには、アプリ自身のデータから取得した名前が付与されます。システム行はアプリの文字列です。モデルが書いたものが名前やシステムメッセージになることはありません。
  8. 何が元に戻せて何が元に戻せないかを伝える。 破壊的なアクションの前に:何を削除するか、戻せるかどうか、どのように、どのくらいの期間戻せるか。元に戻すまたは復元の後:何が元に戻らなかったかを伝えます。
  9. 動きは結果に従う。 アニメーションは発生した変更を報告します。決して予測や装飾には使用しません。成功マークは結果が確定した後に描画し、進捗は測定された分だけを埋め、画面描画時にすでに最終状態であるものはアニメーションしません。OSの「動作を減らす」設定が優先されます。各アニメーションに変更の種類を割り当て(Candorは14のモーションファミリーを命名しています。references/honesty-rules.mdにリストがあります)、テーマがその見た目を変更することを許可しますが、再生タイミングは変更しません。

何を読むべきかのガイド

画面に含まれるもの読むべきリファレンス
人間が承認、許可、拒否するものreferences/approvals.md
実行、ツール呼び出し、ステップ、ステータス、ドットreferences/status-and-states.md
エージェントがしばらく作業している、または人間が離れている間に終了した場合references/progress.md
人と話すAI、またはAIが作成したコンテンツreferences/disclosure-and-accessibility.md
何でも、次に進む前にreferences/review-checklist.md

言葉遣い

単純明快かつ測定基準に基づいて。何が起こったか、誰に対してか、次に何をすべきかを述べます。文頭のみ大文字、感嘆符なし、最上級なし、データが裏付けない主張なし。ステータスは色を伴った単語であり、色単体では使用しません。数値は測定された場合のみ使用し、それ以外は「推定」または「未測定」という言葉を使用します。

関連スキル