Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ハーネスエンジニアリング入門 | Kiro と学ぶハーネスエンジニアリング 01

Avatar for Riku INADA Riku INADA PRO
November 09, 2026

ハーネスエンジニアリング入門 | Kiro と学ぶハーネスエンジニアリング 01

エージェントの出来はモデルだけで決まらず、モデル以外の全部 (指示、道具、記憶と文脈、確かめ、許可、記録) をまとめたハーネスにも左右されます。この資料では、使う人が足す外側のハーネスを、導く、確かめる、囲う、回す、の 4 つで組み立てる考え方と、ハーネスの厚さを仕事に合わせること、つまずいたら欠けているものを足すことを、Anthropic や OpenAI などの公開の記事を元に場面の絵で説明します。説明用に作った小さな会議室の予約アプリで Kiro がくり返した外れ (頼みどおりにできなかったこと。ここでは関係のないテストが落ちたまま終えること) に、Hook と Steering の 1 行を足し、足す前と足したあとの頼みを Kiro IDE の本物の画面で見せます。シリーズ「Kiro と学ぶハーネスエンジニアリング」の 01 (考え方) です。

Avatar for Riku INADA

Riku INADA PRO

November 09, 2026

More Decks by Riku INADA

Other Decks in Technology

Transcript

  1. Kiro と学ぶハーネスエンジニアリング 考え⽅ ハーネス エンジニアリング⼊⾨ エージェント = モデル + ハーネス

    2026-11 時点 (Kiro IDE 1.4) 2026 年 11 ⽉ 稲⽥ ⼤陸 アマゾン ウェブ サービス ジャパン 01 + Kiro + Harness Engineering © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 1
  2. はじめに ⾃⼰紹介 稲⽥ ⼤陸 いなだ りく (いなりく) アマゾン ウェブ サービス

    ジャパン合同会社 ソリューションアーキテクト 製造業のお客様を中⼼に⽀援 最近の取り組み AI 駆動開発ライフサイクルの推進 Kiro と AWS Amplify の情報発信 © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. X @inada_riku Speaker Deck speakerdeck.com/inariku Zenn zenn.dev/inariku GitHub github.com/inariku 2
  3. はじめに シリーズの中の位置 いまは 01 ハーネスエンジニアリング⼊⾨、次は 02 決まりと地図を渡す、04 機械で確かめる 考え⽅ 01

    導く 02–03 確かめる 次に読む 01 ハーネスエンジニアリング⼊⾨ 次に読む 02 決まりと 地図を渡す 04 機械で確かめる 意図を 05 AI に確かめさせる 03 仕様で渡す © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 04–05 囲う 06 回す 06 できることを囲う 07–08 07 CI に載せる ハーネスを 08 育てる 3
  4. はじめに この資料で分かること モデル以外の全部がハーネス。Kiro に作り付けの部分の外側を、使う⼈が⾜して育てる 1 ハーネスとは何か。エージェント = モデル + ハーネス

    2 外側のハーネスの 4 つの仕組み: 導く、確かめる、囲う、回す 3 つまずきを合図に、外れを記録し、同じ外れが 2 度⽬に起きたら仕組みに変える進め⽅ 前に読むとよい資料: ⽬指せ Kiro マスター 01 Kiro ⼊⾨ + 説明⽤に作った⼩さな会議室の予約アプリで試す (Kiro CLI 3.1.0 と Kiro IDE 1.4.121) 外れは、Kiro が頼みどおりにできなかったこと。絵のお化けは Kiro 図の⾊: 紫は要点と導く仕組み、⻘は Kiro、緑は確かめて通ったもの、⻩は囲うもの © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4
  5. 考え⽅ 影響が⼤きく、捕まえにくい外れ ⾒⽴て違い、作りすぎ、指⽰の取り違えは、どの確かめでも確実には捕まらない イメージ図 原因の⾒⽴て違い 作りすぎ 指⽰の取り違え Böckeler (Thoughtworks) が挙げた

    3 つ。03 (仕様) と 05 (AI のレビュー) で減らしても、⼈が⾒る所は残る テストでも AI のレビューでも確実には捕まらない。この資料はテストで捕まる外れ (16 枚⽬) を扱う © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 5
  6. 考え⽅ エージェント = モデル + ハーネス モデル以外の全部 (指⽰、道具、記憶と⽂脈、確かめ、許可、記録) がハーネス ハーネス:

    モデル以外の全部 モデル イメージ図 絵の中の部品: 机の上の指⽰の紙、道具箱、棚 (記憶と⽂脈)、点検表 (確かめ)、鍵 (許可)、記録の束 © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 6
  7. 考え⽅ 内側と外側 Kiro には作り付けのハーネスがあり、使う⼈はその外側を⾜す 内側: Kiro に作り付け 外側: 使う⼈が⾜す イメージ図

    Steering や Hook は、仕組みが内側にあり、中⾝ (決まりのファイル、Hook の設定) を使う⼈が書く 部品には、モデルの⼒を補うもの (良いモデルでは外せる) と、モデルが知らない⽂脈を渡すものがある (08) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 7
  8. 考え⽅ ハーネスの厚さは仕事に合わせる 評価役のような重い部品は、仕事がモデル単独の⼒を超えるときに費⽤に⾒合う 同じ 1 ⽂の頼み (ゲームを作るアプリ) を、2 つの作りで流した。棒は費⽤ (同じ⽬盛り)

    単独のエージェント 3 役のハーネス 計画、作る、評価の役を分けた 20 分、9 ドル 肝⼼の機能が動かない 6 時間、200 ドル 動いた 数は Anthropic の社内の試しの値。3 役では、計画役が 1 ⽂の頼みを 16 の機能に広げて作った 費⽤に⾒合うと記事が書くのは評価役のこと。ハーネス全体に広げたのはこの資料の⾔い換え まず薄く始め、外れが続いたら⾜す ハーネスの作りで、トークンの量が約 2 倍変わった例もある (Strands のチームの値。Kiro は⽐べていない) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 9
  9. 外側のハーネス 導く仕組みと確かめる仕組み 前もって⽅向を決めるガイドと、動いたあとに確かめて返すセンサー イメージ図 結果を Kiro に返す 確かめる (センサー) 導く

    (ガイド) ガイドだけだと効いたかが分からず、センサーだけだと同じ外れをくり返す センサーの出⼒は、エージェントが読んで直せる形にする (例: lint のメッセージに直し⽅を書く) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 10
  10. 外側のハーネス 機械と AI 導くも確かめるも、機械で動くものと、AI が判断するものがある 機械で動く 速く、毎回同じ結果 導く 確かめる AI

    が判断する 意味を⾒るが、揺れて⾼い コードを決まった形に Steering、Skill 直す道具 (formatter など) (読んで判断される決まり) テスト、型、lint、 AI のレビュー役 構造のテスト (層の依存など) 判定役のモデル 機械の確かめは毎回の変更で流せる。AI の確かめは⾼くて揺れるので、要る所に絞る © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 11
  11. 外側のハーネス テストや CI と何が違うか 結果をエージェントが読んで直す形にし、外れを⾒て仕組みを⾜し続ける イメージ図 ⼈は決まりを⾜す 前から: ⼈が読んで直す ハーネス:

    Kiro が読んで直す テストは Kiro に返す材料で、通ったことは終わったことの証ではない (Anthropic) ⾃動のテストに頼るのは AI の前からしていた (kiro.dev のブログ)。変わるのは、結果を読んで直す相⼿ © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 13
  12. 外側のハーネス つまずきは合図 つまずいたら、何が⽋けているかを⾒て、それを⾜す イメージ図 2 何が⽋けているか 1 外れ 4 もう⼀度

    3 ⾜す ⾜すものは、道具、ガードレール (機械で守らせる制約)、⽂書。⾜す作業も Kiro に頼める (OpenAI) 指⽰のファイル (Kiro では Steering) の各⾏は、実際の悪いふるまいから書く (Hashimoto) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 14
  13. 外側のハーネス Kiro の部品の地図 Kiro の機能を、導く、確かめる、囲う、回す、に置く 導く 確かめる 囲う 回す 前もって渡す

    動いたあとに確かめる 届く範囲を決める 流し続ける 許可 06 CLI の headless 07 カスタムエージェント 05 サンドボックス 06 Workflows 08 サブエージェント .kiroignore 06 Kiro Crew 08 チェックポイント 06 Steering 02 Hook Spec 03 Skill 02 Powers 02 04 05 どの機能も仕組みは内側にあり、使う⼈が設定や中⾝を書いた分が外側になる。丸の数字は扱う回 エージェントの 2 つはレビュー役として使うとき。チェックポイントは IDE の機能 (CLI は実験の段階) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 15
  14. 予約アプリで試す 失敗の記録 予約アプリに Steering も Hook も無い状態で、同じ頼みを 2 回ずつ流して記録した 頼み

    1 回⽬ 2 回⽬ 予約を延⻑ 関係のないテストが 同じく、落ちたまま できるように 落ちたまま終えた 終えた ⼀覧の時刻を 同じく、落ちたまま 全部のテストが 1 列の形に 終えた 通って終えた 落ちるテストを 回数を 100 から 10 に減らし、 回数を保ったまま、 直して テストを弱めて通した 遅い原因を直した 2 回以上起きた外れ: 関係のないテストが落ちたまま終える (上の 2 つの頼みの 4 回のうち 3 回) 関係のないテストは性質 11。DB を開き直しても中⾝が同じかを 100 通りで確かめ、機械が混むと落ちる © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 16
  15. 予約アプリで試す 1 つの外れ (⾜す前) Kiro が、関係のないテストを落ちたまま残して終えた 「⼀覧の時刻を 1 列の形に」の頼みを、Kiro IDE

    で流した (⾜す前) 関係のないテスト (性質 11) が 落ちたまま終えた ⾒⽴ては正しいが、毎回、⼈が 確かめて決める⼿間が残るので、 外れとした この画⾯は Kiro IDE で流した回。 16 枚⽬の表は Kiro CLI で流した回で、 別に数えた © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 17
  16. 予約アプリで試す ⾜したもの 2 回以上起きた外れに Hook を⾜し、直すときの決まりを Steering に 1 ⾏⾜す

    導く: Steering の 1 ⾏ (.kiro/steering/tests.md) この 1 ⾏を⾜した理由: Hook で 落ちたテストを直させると、 テストを弱めて通しやすくなる ため (16 枚⽬の 3 ⾏⽬) inclusion: always は、いつも 読ませる指定 確かめる: Agent Stop の Hook で npm test を流す。0 以外で終わると、Kiro が 続けて直す trigger: Stop command: npm test 1>&2 timeout: 180 timeout は 180 秒。1>&2 は、落ちたときの出⼒を Kiro に渡すため。作り⽅は⽬指せ Kiro マスター 06 © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 18
  17. 予約アプリで試す 同じ頼みでもう⼀度 ⾜したあと、「⼀覧の時刻を 1 列の形に」では、テストも Hook も通って終えた 「⼀覧の時刻を 1 列の形に」の頼みを、⾜したあとに流した

    上: 全部のテストが 通って終えた 下: そのあと Hook が流れた Hook の名前は 「⽌まる前にテスト」。記録では npm test は成功 1 回では効いたとは⾔えない。この回は性質 11 も通り、Hook が続きをさせる所は⾒ていない テストと Hook が通っても、頼んだとおりに振る舞う証にはならない © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 19
  18. 予約アプリで試す 落ちるテストを直す頼み ⾜したあと、回数 (100 回) を保ったまま、遅い原因を測って直した 性質 11 を直す頼みを、⾜したあとに流した Kiro

    は⾒⽴てが外れた (3 回中 2 回落ちた) と書き、 測って直した 直したのはテストの中の DB の 設定だけ。回数と中⾝は 元のまま ⾜す前の 2 回⽬も回数を保って 直していた。1 回では効いたとは ⾔えない © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. テストの中だけ設定を替えて よいかは、⼈が決める所 20
  19. 進め⽅ 同じ外れをくり返させない 外れは記録し、同じ外れが 2 度⽬に起きたら仕組みに変える 外れる 初めての外れ: 同じ外れが 2 度⽬:

    同じ頼みを数回 記録する 仕組みにする 流して確かめる 次の外れへ Hashimoto は外すたびに、Böckeler は何度も起きたら仕組みを直す、と書く。このシリーズは 2 度⽬で 仕組みにし、⾜した仕組みで起きやすくなる外れ (16 枚⽬の 3 ⾏⽬のテストを弱める) は⼀緒に決まりにする © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 21
  20. 置き⽅ 早いうちに確かめる 確かめを置く時期は 4 つ。速いものほど早く、重いものほど後ろに置く ⾒つけるのが早いほど、直すのが安い 早い 遅い、重い 統合の前 統合のあと

    変更とは別に常に 動いているシステム 保存と Agent Stop の main のパイプライン 依存や設計の 動くアプリの⾒張り Hook、PR の CI 数秒〜数分 ずれの定期の⾒張り 数分〜 毎⽇、毎週 ずっと 4 つの時期は Böckeler の分け⽅で、時間は⽬安。Hook の既定の時間切れ (IDE 60 秒、CLI 30 秒) より⻑い テストは、設定で延ばす © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 22
  21. 置き⽅ ⼈の役⽬ ⼈の⼿を、⼈の判断が⼀番要る所に向ける イメージ図 Kiro に任せる いいえと⾔う ⾃分の⼿を動かす仕事も残す ⼈の時間と注意は、⼀番少ない資源 (OpenAI)

    版の管理を作り直したとき、エンジニアがエージェントに「いいえ」と⾔う場⾯がとても多かった (Anthropic) 任せた仕事の腕は育たないので、⾃分で⼿を動かす仕事も残す (Hashimoto) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 23
  22. まとめ まとめ モデル以外の全部がハーネス。つまずきを合図に、同じ外れが 2 度⽬なら仕組みにする 使う⼈は、導く、確かめる、囲う、回す、で外側を⾜し、厚さは仕事に合わせる 明⽇からの 3 ⼿ 1

    2 3 外れを 1 ⾏で記録する 同じ外れが 2 度⽬なら、 同じ頼みを数回流して、 (頼み、外れ、起きた回数) Steering の 1 ⾏か Hook に 外れが減ったかを⾒る 記録は 1 つのファイルでよい (16 枚⽬の表と同じ形) 守らせたい決まりは Steering に、機械で判定できることは Hook で流すテストにする ⾜した⾏は⽂脈を使うので、効かない⾏は外す (02、08) © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 24
  23. まとめ 次に読む資料 すぐ試すなら 04、決まりの書き⽅は 02、⾃分のエージェントを作るなら Strands の 01 すぐ試すなら 決まりの書き⽅は

    04 ⾃分のエージェントを作るなら 02 01 機械で確かめる 決まりと地図を渡す Kiro と学ぶ Strands Agents (テストや型を Hook で返す) (Steering、Skill、Powers) 01 Strands Agents ⼊⾨ © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 25
  24. 付録 A1 ⽤語 ⽤語 意味 ⽤語 意味 ハーネス モデル以外の全部 機械の確かめ

    テスト、型、lint 内側のハーネス Kiro に作り付けの部分 AI の確かめ AI のレビュー 外側のハーネス 使う⼈が⾜す部分 囲う 外れたときの被害を減らす ガイド 動く前に⽅向を決める 回す CI と定期の仕事で流す センサー 動いたあと確かめて返す Agent Stop の Hook 応答を終えるたびに動く Steering Kiro に読ませる決まり headless 画⾯を開かずに頼む使い⽅ 性質のテスト 多くの⼊⼒で確かめる 失敗の記録 Kiro の外れを書いたもの ハーネスの厚さ 部品の多さと、かかる費⽤ 評価役 作ったものを判定する役 外れ 頼みどおりにできないこと 頼み Kiro に頼む仕事 © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 26
  25. 付録 A2 出典と参考 martinfowler.com (Thoughtworks の Birgitta Böckeler)、2026-04、coding agent を使う⼈のハーネス

    https://martinfowler.com/articles/harness-engineering.html Mitchell Hashimoto の個⼈ブログ、2026-02、AI を取り⼊れてきた歩み (My AI Adoption Journey) https://mitchellh.com/writing/my-ai-adoption-journey OpenAI、2026-02、harness engineering (⼈がコードを書かずに製品を作ったハーネス) https://openai.com/index/harness-engineering/ Anthropic、2026-03、⻑い仕事のハーネスの設計 https://www.anthropic.com/engineering/harness-design-long-running-apps Anthropic、2026-04、頭 (ハーネス) と⼿ (サンドボックス) を分けたエージェントの作り Anthropic、2026-02、16 の並列のエージェントで C コンパイラーを作ったハーネス https://www.anthropic.com/engineering/building-c-compiler © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 27
  26. 付録 A3 出典と参考 Anthropic、2026-10、エージェントで増えた変更と版の管理の作り直し https://www.anthropic.com/engineering/redesigning-source-control Kiro、2026-11-09 に読んだ版、 ドキュメント (How Kiro

    works、Steering、Hooks、Permissions など。⾴の名前は各⾯のノート) https://kiro.dev/docs/ Kiro、2026-10、ブログ「Keeping a software factory stable at 1,000 PRs a week」 https://kiro.dev/blog/software-factory-stability/ Strands Agents、2026-10、ハーネスの選び⽅の費⽤を 94,000 回の試しで測った https://strandsagents.com/blog/we-ran-94000-trials-to-measure-the-cost-of-harness-choice/ どれも 2026-11-09 に本⽂を読み、2026-11-10 に使う所を読み直した。数はどれも、記事を出した所が⾃分で測った値。 画⾯は Kiro IDE 1.4.121 で 2026-11-09 に撮った。予約アプリでの試しは Kiro CLI 3.1.0 で同じ頼みを 2 回ずつ、Steering も Hook も無い状態で流し(作者の⼿元のグローバルの Steering は読まれていた)、Kiro IDE 1.4.121 で 3 回流した。予約 アプリのコードは公開していない。 © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. 28