今日はkiroを使ってみてここちょっと使いづらかったなというポイントと自分なりの解決策を紹介します。
🧬 事件1:Kiroうっかり人のやるべきタスクを巻き取ってしまう。
前回「タスクリストを作成してください。ただし、AIがテストを生成し、人間が実装するように役割分担したいのでそれを考慮したタスクリストを書いてください。」と人間・AIのタスク分けをしたKiro。しかしKiroはうっかり実装をしてしまいました。ということで伝家の宝刀 AIに質問して再発防止策まで行わせる
私:
これ実装者が人間のものをスキップするべきではないですか?既に実装されたものはいいですが、まだ未実装のものはAI実装するものは*をつけずに人間が実装するものに*をつけてください
Kiro:
申し訳ございません、理解しました!
タスクリストの*マークの意味を逆に理解していました:
*マーク付き = オプショナルなタスク(テスト関連)で、AIが実装する
*マークなし = 必須タスクで、人間が実装する
最終的に間違いをみとめて、修正までお願いすることに結果的に.kiro/steering/task-execution-rules.md に以下のようなものを書いてもらうことで落ち着きました。こういう機能があるのか。
## タスクの種類と実行者
### 1. `*`マークなし + 「**実装者: 人間**」と明記されているタスク
- **実行者: 人間**
- **AIの動作: スキップする**
- 例: `- [ ] 1.1 環境変数設定モジュールの実装` with `**実装者: 人間**`
このように書いてもらうことでAIの動作のスキップをルールである程度教え込むことができます。独自ルールがある時はtask-executionへ記載するようKiroに指示することが失敗しないコツということを学びました。
🧱事件2:Kiro日本語をなかなか喋ってくれない問題
kiroは考えていることを日本語で返してくれないことがあります。その都度「日本語でお願いします」と対処していますが、他に方法があれば教えてください。
今日はkiro使ってみてここ困ったというところを短めに二つ紹介しました。
明日は、「Spec駆動開発でkiroとペアオペをやってみた」というタイトルで実際にkiroとペアオペをしてみた体験記を書いていこうと思います!