実は筆者は過去に、クラウドソーシングで外注したシステム開発が、納期を約1か月過ぎても目立った成果物がないまま、途中で契約を終了せざるを得なかった経験があります。現在は業務の大部分をAIエージェントを活用する形にしているものの、ここで得た経験はAIエージェントの運用にも流用できると考え、現在では、任せ方のルールをAGENTS.md(AIエージェント向けの指示ファイル)に書いて防いでいます。
筆者はエンジニア出身で、EC支援の事業「Coqoon」を個人事業として11年続けています。当ブログでは、AIエージェントを使って事業を回す様子を、作る過程・つまずいたこと・道具の評価まで含めて記録しています。今回は、外注の失敗と、そこから整理した「AIエージェントへの任せ方のルール」の話です。
この記事の要点
| 問い | 答え |
|---|---|
| 何があったのか? | 2023年ごろ、クラウドソーシングで依頼したシステム開発で、納期が約1か月延びても目ぼしい成果物がなく、契約を途中で終えた |
| 兆候は何だったか? | 「努力目標」ばかりで納期を言わない、つまずきを説明しない、確認が多すぎる、実績が単純作業中心、納期超過中の別案件の受注 |
| AIでも同じことは起きるか? | 起きうる。思い込みで進める、できていないことを黙る、完了の基準がないまま続ける、といった形で現れる |
| どう防いでいるか? | 見抜くのではなく、方針確認・完了条件・報告義務・権限の線引きをAGENTS.mdに書いている |
外注で何があったのか
依頼したのはシステム開発の案件で、起きたことは次の3つです。
- 作業開始時のヒアリングが甘く、思い込みで作業が進み、約1週間のタイムロスが出た
- 「1週間で完了する」という見込みが2週間、3週間と延び、当初の納期から約1か月が過ぎた時点で、目ぼしい成果物を確認できなかった
- 「どこでつまずいているのか」の説明を求めても、状況説明そのものが得られなかった
つまずきの場所が分かれば、その部分だけ別の人に頼む選択肢もありました。説明がなかったため、その判断ができませんでした。最終的に、契約の途中終了に至らざるを得ないという経緯でした。
なお、この件は「相手が悪かった」だけの話ではありません。契約の時点で「成果物を完成できなかった場合にどうするか」を決めておかなかったのは、筆者側の落ち度でした。当時の様子と、作業者の見極め方・対処法は、Coqoonの記事に詳しく書いています。
同じ兆候はAIエージェントでも出る
AIエージェントは、ターミナルでファイルを編集し、コマンドを実行して作業を進めるプログラムです(私はClaude CodeとCodexを使っています)。人間の外注先とは別物ですが、任せる側から見ると、次のような問題が重なります。
| 外注で見えた兆候 | AIエージェントで起きうる形 |
|---|---|
| 思い込みで仕事を進める | 依頼の意図を取り違えたまま、大きな変更を作ってしまう |
| 努力目標だけで納期が延びる | 同じ手法で試行を繰り返し、終わりが見えないまま時間と利用枠を消費する |
| つまずきを言語化できない | できなかった部分を黙って飛ばし、「完了した」と報告する |
| 確認が多すぎる | 方針が決まった後も「進めてよいですか?」と聞き返し、判断の負担が人に戻ってくる |
| 実績(星の数)で信用してしまう | 「できました」という自己申告を、そのまま信用してしまう |
| 納期超過中に別案件を受注する | 利用枠(処理できる量)の上限を意識せずに、依頼を重ねてしまう |
| 未完了のときの取り決めがない | どこまで勝手に実行してよいのか、権限の線引きがない |
相手が人でもAIでも、任せる側が「何をもって完了とするか」「止まったらどうするか」を決めていないと、同じ形で失敗します。
AGENTS.mdとは
AGENTS.mdは、AIエージェントが作業を始めるときに読み込む指示ファイルです。Claude Code(CLAUDE.mdから読み込む)もCodexも、起動するとこのファイルの内容を前提にして動きます。
私の環境では、次の3段に分けて置いています。
| 段 | 内容 |
|---|---|
| 共通ルール(1ファイル) | すべてのワークスペース・エージェントに共通する作業の進め方、役割分担、略語の定義 |
| ワークスペース | 環境構成、コーディングルール、セキュリティの基本方針 |
| プロジェクト | そのサイトやサービス固有の注意点 |
共通ルールは「唯一の正本」を1ファイルに決め、他のファイルは複製せず読み込む形にしています。ルールを複数の場所に書くと、更新のたびに食い違いが生まれるためです。
失敗の兆候を、ルールに置き換える
外注で見えた兆候に、AGENTS.mdのどのルールが対応しているかを並べます。要約して載せています。
1. 思い込みで進めさせない
外注では、ヒアリングが甘いまま作業が進み、1週間をロスしました。AGENTS.mdには、次のルールがあります。
- 実装や作成の前に、方針を確認してから進める
- 不明点は作業前に質問する
- 「難易度の高い変更」や「大きな変更」は小さなステップに分けて進める
一方で、質問ができない形で任せる作業(別のエージェントへの単発の委任など)もあります。その場合は、妥当な前提を置いて進め、置いた前提を最終報告に明記させます。思い込みを禁止するのではなく、思い込みを見える形にして残すためのルールです。
2. 「努力します」ではなく、完了条件を決めておく
外注では「〜までに納品できるよう努力します」が繰り返され、具体的な納期が最後まで出ませんでした。AIエージェントにも同じ構造があり、終わりの基準を決めないと、延々と試行を続けてしまいます。
そこで、次のルールを入れています。
- 完了条件を明示して任せたときは、確認を挟まず、その条件を満たすまで進める
- 詰まったときは放棄せず、手法を切り替える(別のエージェントに助けを求めるなど)
- ただし、無期限に続けることは想定しない。完了までの範囲は、指定された単一のタスクに限る
- 同じ問題で2回以上詰まったときは、別のモデルに引き継ぐ
外注で足りなかったのは、「ここまで進まなければ打ち切る」という事前の基準でした。AIに対しては、それを最初から書いています。
3. 何故出来ないのかを言語化してもらう
外注では、つまずきの説明が得られませんでした。AGENTS.mdでは、実行できなかった作業について次のように決めています。
- 黙って飛ばさず、「なぜできないか」を報告する
- 代わりに、ユーザーが何をすればよいかを、セットで報告する
「できなかった」は失敗ではありません。失敗なのは、できなかったことが見えなくなることです。報告の形式を決めておけば、人間側は次の判断ができます。
4. 「質問・確認の質」に着目する
これは感覚的ではあるのですが、思いのほか重要な項目です。
新人教育の経験のある方などは強く賛同していただけるかもしれませんが、「質問・確認の質」が自分の求める質と適合していない人と仕事をするのはシンドイですよね。
自分の頭で考えてやってみて、間違った場合は後から修正すれば良いのに、「修正する手間が嫌」なのか「自分で作業の責任を取りたくない」のか分かりませんが、「何をすればよいのか」「どうすれば良いのか」を逐一確認してくる人っています。
しかし、1から10までこちらで言語化しなくてはいけないのであれば、自分でやった方が早い。
AIエージェントも同様で、Codex系は特にこの傾向が強いです。機械的に質問や確認を挟んでくる。
「Codexはこちらの指示に厳密に従ってくれるから良い」という人もいますが、ものは言いようで、こちらの指示の意図を周辺情報から推察できないという事は仕事のパートナーとしては不適格ですよね。
そこで筆者の場合、業務の司令塔にClaude Code、画像生成周りのClaude Codeが苦手とするところをCodexという役割分担をした上で、彼らが人に確認するのは次の3つだけとしています。
- 方針の選択(トレードオフになりうる選択)
- 明示的な許可が必要な操作
- エージェントが技術的に実行できない操作(画面の操作しかできない設定変更など)
方針が決まった後の実行は、エージェントが自分で完遂します。確認してよい場面を絞るほど、確認が本当に必要な場面が目立ちます。
5. 権限の線引きを、先に決めておく
外注の反省点は、未完了のときの取り決めを契約書に書かなかったことでした。AIエージェントでは、これが「どこまで勝手にやってよいか」の線引きにあたります。
- コミット・プッシュ・デプロイ(本番への反映)は、ユーザーが明示的に指示するまで実行しない
- 過去に許可したことがあっても、その場の許可であり、継続的な許可にはしない
- 不可逆な操作や外部への公開は、「完了まで粘る」ルールの対象外とする
ローカルでのファイル編集やテストは自由にやらせ、取り返しのつかない操作だけを止める、という分け方です。
6. 処理できる量の上限を前提にする
外注で、納期を過ぎているのに別案件を受けている作業者に驚きました。AIエージェントにも、似た制約があります。私が使っているCodexは、利用枠が5時間単位で共有されるため、無駄に使うと他の作業に影響します。
AGENTS.mdには、次のように書いています。
- 依頼する側が事前の調査(該当箇所、原因、既存の類似実装)を済ませてから、1回の依頼にまとめて渡す
- 反復の多い工程は、安いモデルに寄せる
- ただし、手探りの作業や、結果を見てから次を決めたい作業は、まとめずに小さく区切る
上限があることを前提に、「どの作業を、どの相手に、どの粒度で渡すか」を決めておくためのルールです。
7. 自己申告ではなく、手元で確かめる
外注では、「魅力的な星の数」と評価件数に引きずられました。自己申告や過去の評価は、手元の成果物の確認の代わりになりません。
AGENTS.mdには、変更後に対象ファイルの内容と差分を確認することを書いています。実際の確認作業では、表示確認やリンク切れの確認など、機械にやらせられる部分は機械に任せています(連載第1回で詳しく書いています)。
ルールに書いていなくて起きたこと
AGENTS.mdにルールを書いても、すべての失敗は防げません。連載第1回で書いた2つの場面は、ルールの外側で起きました。
- 決めたことをObsidianに記録し忘れ、後日あらためて調べ直した
- 検証環境をまるごと複製したとき、複製してはいけない認証情報まで複製してしまった
どちらも、エージェントのチェックリストに「その視点」がありませんでした。ルールは一度書いて終わりではなく、起きた失敗を見てから書き足していくものです。外注の失敗が契約書の見直しにつながったのと同じで、AIエージェントへの指示ファイルも、失敗を取り込んで育っていきます。
まとめ
外注でもAIエージェントでも、任せる側が決めておくことは変わりません。
- 何をもって完了とするか(完了条件)
- 止まったときにどうするか(打ち切りと切り替えの基準)
- できなかったことをどう報告させるか
- どこまで勝手にやってよいか(権限の線引き)
人間の外注では、相手の力量を見抜く目が必要でした。AIエージェントでは、それを指示ファイルに書いて、毎回同じ条件で任せられます。外注で失敗したときは「見抜けなかった」と反省しましたが、いまは「任せ方の『お作法』が自分の中で確立できていなかった」と考えるようになりました。
なお、クラウドソーシングで作業者を選ぶときの見極め方は、Coqoonの実録記事にまとめています。作業者適正チェックシート(エクセル)もそちらで配布しています。

