Back to skills
SKILL.md
Collection
ASecurity作業指示毎の作業計画、タスクリストをドキュメントに記録するためのスキル。ユーザーからの指示をトリガーとした作業計画時、実装時、検証時に読み込む。
- 24 stars
- 0 votes
- 0 copies
- 0 views
- Added September 8, 2026
Works with
Security analysis
100/100Pro scans all 21 files and shows the line behind each finding
npx -y skills add mattnigh/skills_collection --skill collection --agent claude-codeAre you the author of Collection?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/mattnigh-collection-076f088f)---
name: steering
description: 作業指示毎の作業計画、タスクリストをドキュメントに記録するためのスキル。ユーザーからの指示をトリガーとした作業計画時、実装時、検証時に読み込む。
allowed-tools: Read, Write
---
# Steering スキル
ステアリングファイル(`.steering/`)に基づいた実装を支援し、tasklist.mdの進捗管理を確実に行うスキルです。
## スキルの目的
- ステアリングファイル(requirements.md, design.md, tasklist.md)の作成支援
- tasklist.mdに基づいた段階的な実装管理
- **進捗の自動追跡とtasklist.md更新の強制**
- 実装完了後の振り返り記録
## 使用タイミング
このスキルは以下のタイミングで使用してください:
1. **作業計画時**: ステアリングファイルを作成する時
2. **実装時**: tasklist.mdに従って実装する時
3. **検証時**: 実装完了後の振り返りを記録する時
## モード1: ステアリングファイル作成
### 目的
新しい機能や変更のためのステアリングファイルを作成します。
### 手順
1. **ステアリングディレクトリの確認**
```
現在の日付を取得し、`.steering/[YYYYMMDD]-[機能名]/` の形式でディレクトリを作成
```
2. **永続ドキュメントの確認**
- `docs/product-requirements.md`
- `docs/functional-design.md`
- `docs/architecture.md`
- `docs/repository-structure.md`
- `docs/development-guidelines.md`
これらを読んで、プロジェクトの方針を理解する
3. **テンプレートからファイル作成**
以下のテンプレートを読み込み、プレースホルダーを具体的な内容に置き換えてファイルを作成:
- `.claude/skills/steering/templates/requirements.md` → `.steering/[日付]-[機能名]/requirements.md`
- `.claude/skills/steering/templates/design.md` → `.steering/[日付]-[機能名]/design.md`
- `.claude/skills/steering/templates/tasklist.md` → `.steering/[日付]-[機能名]/tasklist.md`
4. **tasklist.mdの詳細化**
requirements.mdとdesign.mdに基づいて、tasklist.mdを詳細化:
- 各フェーズのタスクを具体的に記述
- サブタスクも明確に
- 実装の順序を明記
## モード2: 実装(最重要)
### 目的
tasklist.mdに従って実装を進め、**進捗を確実にドキュメントに記録**します。
### 🚨 重要な原則
**MUST(必須)**:
- tasklist.mdを常に開いた状態で実装
- タスク開始時に必ずEditツールで`[ ]`→`[x]`に更新
- タスク完了時に必ずEditツールで完了を記録
- **tasklist.mdの全タスクが完了するまで作業を継続する**
- NEVER: tasklist.mdを更新せずに次のタスクに進まない
**NEVER(禁止)**:
- tasklist.mdを見ずに実装を進める
- TodoWriteツールだけで進捗管理する(TodoWriteは補助、tasklist.mdが正式)
- 複数タスクをまとめて更新する(リアルタイムに更新する)
- **「時間の都合により」「別タスクとして実施予定」などの理由でタスクをスキップする**
- **未完了タスク(`[ ]`)を残したまま作業を終了する**
### 🚨 タスク完全完了の原則
**絶対に守るべきルール**:
1. **tasklist.mdの全タスクが完了するまで作業を継続すること**
- 全てのタスクが`[x]`になるまで実装を継続
- 「時間がかかりすぎる」「難しい」などの理由でスキップしない
- 未完了タスクがある状態で振り返りを書かない
2. **タスクスキップは原則禁止**
- 「時間の都合により別タスクとして実施予定」は禁止
- 「実装が複雑すぎるため後回し」は禁止
- 「難しいから後で」「テストが面倒」などの理由は禁止
- スキップが許可されるのは技術的な理由のみ(下記参照)
3. **タスクが大きすぎる場合の対処法**
- タスクを小さなサブタスクに分割する
- 分割したサブタスクをtasklist.mdに追加
- サブタスクを1つずつ完了させる
4. **技術的な理由でタスクが不要になった場合のみスキップ許可**
以下の技術的理由に該当する場合のみスキップ可能:
- 実装方針の変更により、機能自体が不要になった
- アーキテクチャ変更により、別の実装方法に置き換わった
- 依存関係の変更により、タスクが実行不可能になった
- 上位の設計変更により、このタスクが無意味になった
スキップ手順:
- tasklist.mdに技術的な理由を明記してスキップマークを付ける
- 例: `- [x] ~~タスク名~~(実装方針変更により不要: アーキテクチャをXからYに変更したため、このレイヤーが不要になった)`
- 振り返りセクションに変更理由を詳細に記録
5. **未完了タスクが残っている場合のNG例**
```markdown
## 実装後の振り返り
**実装しなかったタスク**:
- テストの実装(時間の都合により別タスクとして実施予定) ❌ 絶対にダメ
```
6. **正しい完了の形**
- 全タスクが`[x]`
- 振り返りセクションに「実装しなかったタスク」の記述がない
- 実装方針の変更があれば、その理由が明記されている
### 実装フロー
#### ステップ1: tasklist.mdを読み込む
```
Read('.steering/[日付]-[機能名]/tasklist.md')
```
全体のタスク構造を把握し、次に着手すべきタスクを特定する。
#### ステップ2: TodoWriteでタスク管理開始
tasklist.mdの内容に基づいてTodoWriteツールでタスクリストを作成:
- これはClaude Code内部の補助的なメモ
- **tasklist.mdこそが正式なドキュメント**
#### ステップ3: タスクループ(各タスクで繰り返す)
**3-1. 次のタスクを確認**
```
tasklist.mdを読み、次の未完了タスク(`[ ]`)を特定
```
**3-2. タスク開始をtasklist.mdに記録(必須)**
```
Editツールを使って、tasklist.mdの該当行を`[ ]`→`[x]`に更新
例:
old_string: "- [ ] StorageServiceを実装"
new_string: "- [x] StorageServiceを実装"
```
**重要**: Editツールを実行した直後に、更新が成功したことを確認する。
**3-3. TodoWriteでもステータス更新**
```
TodoWriteツールで該当タスクを"in_progress"に変更
```
**3-4. 実装を実行**
```
開発ガイドライン(docs/development-guidelines.md)に従って実装
```
**3-5. タスク完了をtasklist.mdに記録(必須)**
```
実装完了後、必ずEditツールでtasklist.mdを更新して完了を記録
サブタスクがある場合はサブタスクも個別に更新する
```
**3-6. TodoWriteでもステータス更新**
```
TodoWriteツールで該当タスクを"completed"に変更
```
**3-7. 次のタスクへ**
```
ステップ3-1に戻る
```
#### ステップ4: フェーズ完了時の確認
各フェーズ(例: フェーズ1、フェーズ2)が完了したら:
1. **tasklist.mdを読み込んで進捗確認**
```
Read('.steering/[日付]-[機能名]/tasklist.md')
```
2. **完了したタスクを確認**
- すべてのタスクが`[x]`になっているか
- 見落としたタスクがないか
3. **ユーザーに報告**
```
「フェーズ1が完了しました。tasklist.mdの進捗を確認してください。」
```
#### ステップ4.5: 全タスク完了チェック(必須)
**全フェーズの実装完了後、振り返りを書く前に必ず実行**:
1. **tasklist.mdを読み込む**
```
Read('.steering/[日付]-[機能名]/tasklist.md')
```
2. **未完了タスク(`[ ]`)がないか確認**
- 全てのタスクが`[x]`になっているか?
- 1つでも`[ ]`が残っていないか?
3. **未完了タスクが見つかった場合**
**❌ やってはいけないこと**:
- 「時間の都合により別タスクとして実施予定」と振り返りに書く
- 未完了タスクを無視して次のステップに進む
**✅ 正しい対処法**:
**パターンA: タスクを実装する**
```
ステップ3(タスクループ)に戻り、未完了タスクを実装する
```
**パターンB: タスクが大きすぎる場合**
```
1. タスクを小さなサブタスクに分割
2. tasklist.mdに分割したサブタスクを追加
3. サブタスクを1つずつ完了させる
```
**パターンC: 技術的な理由でタスクが不要になった場合のみ**
以下の技術的理由に該当する場合のみスキップ可能:
- 実装方針の変更により、機能自体が不要になった
- アーキテクチャ変更により、別の実装方法に置き換わった
- 依存関係の変更により、タスクが実行不可能になった
スキップ手順:
```
1. tasklist.mdに技術的な理由を明記:
「- [x] ~~タスク名~~(実装方針変更により不要: 具体的な技術的理由を詳細に記述)」
2. 振り返りセクションに変更理由を詳細に記録
3. なぜこのタスクが不要になったのか、何に置き換わったのかを明確に記述
```
4. **全タスク完了を確認できた場合のみ次へ**
```
全てのタスクが`[x]`になっていることを確認してからステップ5へ進む
```
#### ステップ5: 全タスク完了後
1. **最終確認**
```
Read('.steering/[日付]-[機能名]/tasklist.md')
```
すべてのタスクが`[x]`になっていることを確認
2. **振り返りセクションに記録**
```
Editツールでtasklist.mdの「実装後の振り返り」セクションを更新:
- 実装完了日
- 計画と実績の差分
- 学んだこと
- 次回への改善提案
```
### 実装中のセルフチェック
5タスクごとに以下を確認:
- [ ] tasklist.mdを最近更新したか?(最後の更新から5タスク以内)
- [ ] 進捗がドキュメントに反映されているか?(Read toolで確認)
- [ ] ユーザーがtasklist.mdを見て進捗が分かるか?
## モード3: 振り返り
### 目的
実装完了後、tasklist.mdに振り返りを記録します。
### 手順
1. **tasklist.mdを読み込む**
```
Read('.steering/[日付]-[機能名]/tasklist.md')
```
2. **振り返り内容を作成**
- 実装完了日
- 計画と実績の差分(計画と異なった点)
- 学んだこと(技術的な学び、プロセス上の改善点)
- 次回への改善提案
3. **Editツールで更新**
```
tasklist.mdの「実装後の振り返り」セクションを更新
```
4. **ユーザーに報告**
```
「振り返りをtasklist.mdに記録しました。内容を確認してください。」
```
## トラブルシューティング
### tasklist.mdの更新を忘れた場合
もし実装中にtasklist.mdの更新を忘れていることに気づいたら:
1. **即座に更新を実行**
```
Read('.steering/[日付]-[機能名]/tasklist.md')
完了したタスクを特定し、すべてEditツールで`[x]`に更新
```
2. **ユーザーに報告**
```
「tasklist.mdの更新が遅れていたため、現在の進捗を反映しました。」
```
3. **再発防止**
- 次のタスクから確実に更新する
- 5タスクごとのセルフチェックを徹底
### tasklist.mdと実装の乖離
計画と実装が大きく異なる場合:
1. **tasklist.mdに注釈を追加**
```
Editツールで該当タスクに注釈を追加:
「- [x] タスク名(実装方法を変更: 理由)」
```
2. **必要に応じて新しいタスクを追加**
```
Editツールで新しいタスクを追加
```
3. **design.mdも更新**
```
設計の変更が大きい場合はdesign.mdも更新
```
## チェックリスト(最重要)
実装前に必ず確認:
- [ ] tasklist.mdを読み込んだか?
- [ ] 次のタスクを特定したか?
- [ ] タスク開始時にEditツールで更新したか?
実装後に必ず確認:
- [ ] タスク完了時にEditツールで更新したか?
- [ ] tasklist.mdの進捗を確認したか?
- [ ] ユーザーが見て進捗が分かる状態か?
## スキルの効果
このスキルを正しく使用すると:
- ✅ tasklist.mdが常に最新の進捗を反映
- ✅ ユーザーが進捗を一目で把握できる
- ✅ ドキュメントと実装の乖離がなくなる
- ✅ 振り返りが容易になり、次回の改善につながる
- ✅ プロジェクト履歴として価値がある記録が残る
## 重要なリマインダー
🚨 **このスキルの最も重要な役割は、tasklist.mdの進捗管理を確実に行うことです。**
- TodoWriteは揮発的なメモ(ユーザーには見えない)
- **tasklist.mdこそが永続的なドキュメント(ユーザーが見る)**
実装中は常に「ユーザーがtasklist.mdを見たときに進捗が分かるか?」を自問してください。
Files in this skill
- 0Chan-smc__claude-code-workflow-lab__claude__skills__frontend-dev-guidelines__SKILL.md
- 17hz__nextjs-template__claude__skills__example-skill__SKILL.md
- 1ambda__dataops-platform__claude__skills__context-synthesis__SKILL.md
- 1natsu172__dotfiles__claude__skills__git-analysis__SKILL.md
- 1natsu172__dotfiles__claude__skills__github-pr-best-practices__SKILL.md
- 23Maestro__prospect-pipeline__claude__skills__npid-fastapi-skill.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-code-javascript__SKILL.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-code-python__SKILL.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-expression-syntax__SKILL.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-mcp-tools-expert__SKILL.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-node-configuration__SKILL.md
- 360AYA25__ClaudeN8N__claude__skills__n8n-workflow-patterns__SKILL.md
- 3x-Projetos__claude-memory-framework__claude__skills__scientist__SKILL.md
- 5MinFutures__futures-arena__claude__skills__migration-tracker__SKILL.md
- 5MinFutures__futures-arena__claude__skills__planning-guidelines__SKILL.md
- 92Bilal26__TaskPilotAI__claude__skills__assessment-builder__SKILL.md
- 92Bilal26__TaskPilotAI__claude__skills__book-scaffolding__SKILL.md
- 92Bilal26__TaskPilotAI__claude__skills__code-validation-sandbox__SKILL.md
- 92Bilal26__TaskPilotAI__claude__skills__exercise-designer__SKILL.md
- 92Bilal26__TaskPilotAI__claude__skills__learning-objectives__SKILL.md
Attribution
Comments
Loading comments…