| name | jules-cli |
| description | docs/sdd/tasks/に記載されたタスクをJules CLIを使って依頼・管理します。タスクを日本語でフォーマットしてJulesに送信し、進捗を追跡して完了後にdocs/sdd/tasks/を更新します。 |
Jules CLI統合スキル
docs/sdd/tasks/に記載されたタスクをGoogleの非同期コーディングエージェントJulesに依頼・管理するスキルです。SDDで分割したタスクを効率的にJulesに割り当て、進捗を追跡します。
概要
このスキルは以下の機能を提供します:
- docs/sdd/tasks/からタスクを読み取り、選択可能なリストを表示
- 選択されたタスクを日本語でフォーマットしてJulesに依頼
- Julesの進捗状況を確認・管理
- 完了したタスクをdocs/sdd/tasks/で更新
- 複数タスクの並行依頼サポート
このスキルを使用する場面
以下の状況でこのスキルを有効にしてください:
タスク実行時
- docs/sdd/tasks/のタスクをJulesに依頼したい場合
- 長時間かかるタスクを非同期で実行したい場合
- 複数のタスクを並行して実行したい場合
- Jules CLIを使った開発ワークフローを構築する場合
プロジェクト管理時
- タスクの進捗をJulesで管理したい場合
- チーム内でJulesを活用している場合
- 自動化可能なタスクをJulesに任せたい場合
基本的な使い方
タスクの依頼
「次のタスクをJulesに依頼してください」「タスクをJulesで実行してください」などと依頼されたら:
-
docs/sdd/tasks/の読み取り
- docs/sdd/tasks/の内容を確認
- TODO状態のタスクを特定
- 依存関係を確認
-
タスクの選択
- ユーザーにタスクリストを表示
- 依頼するタスクを選択してもらう
- 複数選択も可能
-
Jules依頼文の作成
- タスクの説明、受入基準、技術的文脈を日本語でフォーマット
- Julesが理解しやすい形式に整形
- 必要な参照情報を含める
-
julesコマンドの実行
jules "依頼文" コマンドを実行
- タスクIDを記録
- ユーザーに依頼完了を報告
-
進捗の追跡
- 必要に応じてJulesの進捗を確認
- 完了したら結果をレビュー
- docs/sdd/tasks/を更新
Jules依頼文の原則
1. 明確で具体的な指示
Julesが理解しやすい形式で依頼文を作成します:
基本構造:
タスク: [タスクタイトル]
概要:
[タスクの詳細な説明]
受入基準:
- [基準1]
- [基準2]
- [基準3]
技術的文脈:
- [フレームワークやライブラリ]
- [参照すべきファイルやコード]
- [制約事項]
推定工数: [時間]
良い例:
タスク: ユーザー認証APIエンドポイントの実装
概要:
POST /api/auth/login と POST /api/auth/logout のエンドポイントを実装してください。
JWTトークンを使用した認証方式を採用し、パスワードはbcryptでハッシュ化します。
受入基準:
- src/api/auth.tsが存在し、login/logoutエンドポイントが実装されている
- すべてのテストが通過する(npm test)
- ESLintエラーがゼロである
- JWTトークンが正しく生成・検証される
技術的文脈:
- フレームワーク: Next.js 14 App Router
- 認証ライブラリ: jose(JWT)、bcrypt(パスワードハッシュ化)
- 参照実装: src/api/users.ts
- データベース: PostgreSQL with Prisma ORM
推定工数: 2時間
2. 日本語での依頼
すべての依頼文は日本語で記述します:
- 技術用語は英語のまま使用(例: JWT, API, bcrypt)
- ファイルパスやコマンドは英語のまま
- 説明文や受入基準は日本語で記述
3. 文脈の提供
Julesが適切に作業できるよう、必要な文脈を提供します:
含めるべき情報:
- プロジェクトの技術スタック
- 参照すべき既存コード
- コーディング規約やスタイルガイド
- 制約事項や注意点
- 依存関係のあるタスク
4. 受入基準の明確化
検証可能な受入基準を提供します。
Jules CLIコマンド
タスクの作成・依頼
jules "タスクの説明"
jules "$(cat <<'EOF'
タスク: ユーザー認証APIの実装
概要:
POST /api/auth/login エンドポイントを実装してください。
受入基準:
- src/api/auth.tsが存在する
- テストが通過する
技術的文脈:
- Next.js 14
- JWT + bcrypt
EOF
)"
タスクの状態確認
jules list
jules status <task-id>
jules show <task-id>
タスクの管理
jules cancel <task-id>
jules retry <task-id>
jules result <task-id>
ワークフロー
基本的な実行フロー
1. docs/sdd/tasks/を読み取る
2. TODO状態のタスクをリスト表示
3. ユーザーがタスクを選択
4. 依頼文を日本語で作成
5. ユーザーに依頼文を確認してもらう
6. julesコマンドを実行
7. タスクIDを記録
8. 進捗を定期的に確認(必要に応じて)
9. 完了したら結果をレビュー
10. docs/sdd/tasks/を更新(ステータスをIN_PROGRESSまたはREVIEW)
11. レビュー完了後、DONEにマーク
docs/sdd/tasks/更新の原則
ステータス管理
ステータスの遷移:
TODO → IN_PROGRESS(Jules実行中)→ REVIEW(完了、レビュー待ち)→ DONE(承認済み)
タスク情報の記録
#### タスク1.1: ユーザー認証APIエンドポイントの実装
**説明**: POST /api/auth/login と POST /api/auth/logout のエンドポイントを実装
**受入基準**:
- src/api/auth.tsが存在する
- テストが通過する
**ステータス**: `REVIEW`
**Jules Task ID**: task-abc123
**開始日時**: 2024-01-15 10:30
**完了日時**: 2024-01-15 12:15
**作業時間**: 1時間45分
複数タスクの並行処理
以下の条件を満たすタスクは並行してJulesに依頼できます:
- 依存関係が存在しない
- 異なるファイル・コンポーネントを対象とする
- 相互に影響を与えない
エラーハンドリング
Julesでエラーが発生した場合
- エラー内容を確認:
jules status <task-id>
- エラーの原因を分析
- ユーザーに報告
- 必要に応じて再実行:
jules retry <task-id>
- docs/sdd/tasks/を更新(ステータスをBLOCKEDに変更)
制約事項
以下の場合はJulesへの依頼を控えます:
- タスクの曖昧性 - 受入基準が不明確、実装方法が複数
- リスクの高い操作 - 本番環境への直接変更、DB削除操作
- ユーザーの判断が必要 - 技術選択、アーキテクチャ決定
Jules CLIの制限
- Jules CLIを利用できる環境が必要
- julesコマンドがPATHに含まれている必要がある
- 認証が正しく設定されている必要がある
- ネットワーク接続が必要
トラブルシューティング
- julesコマンドが見つからない: Jules CLIのインストールを確認し、PATHを設定
- 認証エラー:
jules auth loginで認証を設定
- タスクが失敗: 依頼文を詳細化し、必要な前提条件を確認
- 並行実行で競合: 依存関係を見直し、順次実行に変更