.claude/skills/devM3E/SKILL.md
M3E開発プロジェクトのオーケストレーター。エージェントとユーザー(akaghef)が協働して実装・検証・統合を回すための仕組み。 以下の場面でトリガーする: - M3Eの開発タスクに着手するとき(実装、バグ修正、仕様策定、リファクタ) - 「devM3E」「開発」「実装して」「次のタスク」「今日の作業」と言われたとき - beta/ や dev-docs/ 配下のファイルを変更する作業全般 - タスク振り分け、PR作成、ブランチ統合、daily更新を伴う作業 - M3Eに関する設計判断や仕様議論を始めるとき 既存のm3e-mapスキルやm3e-shortcutsスキルと組み合わせて使うメタスキル。
npx skillsauth add akaghef/M3E devM3EInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
M3Eプロジェクトの開発サイクルを回すオーケストレーションスキル。 skill-creatorの「intent capture → draft → test → eval → iterate」ループをソフトウェア開発に適用する。
1. Assess — 現在地の把握(status, todo pool, daily, blocked items)
2. Plan — タスク選定と分解(smallest deliverable first)
3. Execute — 実装(サブエージェント分業 or インライン)
4. Verify — 検証(テスト、ビルド、手動確認)
5. Integrate — 統合と記録(commit, daily更新, status更新)
6. Review — ユーザーレビュー → フィードバック → 次サイクルへ
セッション開始時、まず以下を読む:
| ファイル | 目的 |
|---------|------|
| dev-docs/00_Home/Current_Status.md | 現在のスナップショット |
| dev-docs/06_Operations/Todo_Pool.md | 未着手タスクプール |
| dev-docs/daily/ 直近3日分 | 最近の作業経緯 |
| dev-docs/tasks/todo_by_role.md | ロール別タスク一覧 |
出力: 現在地サマリーを3行以内でユーザーに提示。blockedやriskがあれば先に伝える。
readyかつ優先度の高いものタスクをTodoWriteで管理する。各タスクは:
タスクの性質に応じてロールを判定する。ただし厳密な境界は設けない:
| ロール | 担当領域 | ブランチ | |-------|---------|---------| | visual | UI・レンダリング・CSS・SVG | dev-visual | | data | model・controller・API・永続化 | dev-data | | 統合 | 仕様策定・マージ・CI・文書管理 | dev-beta |
Coworkセッションでは統合ロールとして振る舞い、必要に応じてvisual/dataのサブタスクをサブエージェントに委任する。
skill-creatorのgrader/comparator/analyzerに倣い、以下のサブエージェントを定義する。
各エージェントの詳細は agents/ 配下を参照。
| エージェント | 用途 | 詳細 |
|-------------|------|------|
| implementer | コード実装 | agents/implementer.md |
| verifier | テスト・ビルド・回帰チェック | agents/verifier.md |
| doc-updater | daily更新・Decision Pool追記 | agents/doc-updater.md |
| reviewer | 差分レビュー・spec整合チェック | agents/reviewer.md |
isolation: "worktree")を推奨軽微な変更(1ファイル20行以内)はサブエージェントを使わずインラインで実行する。
beta/ が開発対象。final/ は触らないmvp/ は完全凍結 — 読まない、書かない、参照しない。完全に無視すること# 1. TypeScript コンパイル
cd beta && npx tsc --noEmit
# 2. テスト実行
npx vitest run
# 3. ビルド確認
npm run build
# 4. Playwright E2E(該当する場合)
npx playwright test
パフォーマンスに影響するタスクでは、変更前後の比較を行う:
結果は devM3E-workspace/benchmarks/ に保存し、scripts/aggregate_results.pyで集計する。
以下4条件をすべて満たして初めて「完了」:
daily-YYMMDD に作業ログを追記(+ md バックアップ)dev M3E/tasks の doing/ready/done-today を REST API で更新Current_Status.md を必要に応じて更新(統合ロールのみ)| 永続ログ(作業日記) | M3E ドキュメント daily-YYMMDD | 追記のみ、改変しない |
| 揮発タスク | マップ dev M3E/tasks のノード | doing/ready/blocked を自由に書き換え |
| バックログ | Todo_Pool.md | pooled/blocked のみ。doing/ready はマップで管理 |
| 対象 | 書く内容 |
|------|---------|
| daily/YYMMDD.md | 今日の作業内容・成果・決定事項 |
| Decision_Pool.md | 設計判断が出た場合 |
| Todo_Pool.md | 新規発見タスクのプール |
| Current_Status.md | スナップショット更新(統合ロール時のみ) |
PRが dev-beta にマージされたら、以下を必ず実行する:
cd beta && npm run build # dist を最新ソースで再ビルド
beta サーバーが起動中なら再起動も必要:
# サーバー再起動(ポート4173)
taskkill /PID <beta_pid> /F
cd beta && M3E_PORT=4173 node dist/node/start_viewer.js
Why: dist が古いままだとマージした変更がブラウザに反映されない。04-10 にこれが原因でデータ不整合が発生した。
/pr-beta skill でPR作成(差分分析・タイトル生成・daily確認を自動化)/pr-review skill でレビュー・マージ・事後処理(spec整合・検証・status更新・rebase指示)ワーカーの状態が変化するたびに、マップの以下3箇所を更新する。 これは devM3E オーケストレーターの常時義務であり、省略不可。
以下のイベント発生時、必ず /map-update を実行する。ユーザーに言われる前にやること:
| 対象 | マップ上の場所 | 更新内容 |
|------|--------------|---------|
| Agent Status | DEV > Agent Status | 各ロールの現在タスク・状態(working/idle/done) |
| Strategy | DEV > strategy > {カテゴリ} | タスクの進捗ノート追加、完了タスク削除 |
| Today's Goal | DEV > strategy > 04-XX Today's Goal | 各目標の達成状況を反映 |
/map-update スキルを呼び出すか、直接 tmp/map_update.mjs スクリプトを生成・実行する。
DEV > Vision にプロダクトビジョン(Flash/Rapid/Deep)を保持。
大きな設計判断やロードマップ変更があった場合のみ更新する。
skill-creatorのeval viewerパターンに倣い、作業結果をユーザーに提示する:
git diff --stat)skill-creatorに倣い、情報を3層に分ける:
| 層 | 内容 | 読むタイミング | |----|------|--------------| | L1: SKILL.md | このファイル。ループ全体の流れ | skill トリガー時(常に) | | L2: agents/ | 各サブエージェントの詳細指示 | サブエージェント起動時 | | L3: references/ | M3Eのアーキテクチャ・spec・運用ルール索引 | 特定の判断が必要な時 |
M3Eマップを開発の共有思考空間として使う。m3e-map skill の REST API 経由で読み書きする。
マップのルート直下に _wb folder を作り、その配下で作業する:
_wb [folder]
├── tasks [folder] ← Todo Pool と同期するタスクボード
│ ├── doing / ready / done
├── design [folder] ← 設計議論の構造化
├── brainstorm [folder]← アイデア発散→収束
└── scratch [folder] ← 一時メモ
| フェーズ | ホワイトボードの役割 |
|---------|-------------------|
| Assess | _wb/tasks を読んで進捗可視化 |
| Plan | タスク選定時に _wb/tasks のstatus確認、新タスクを ready に追加 |
| Execute | 実装中の設計メモを _wb/design に書く |
| Verify | 検証結果のサマリーを _wb/scratch に一時記録 |
| Integrate | タスクを done に移動、Todo Pool と sync |
| Review | _wb/design の議論ツリーをユーザーに見せる |
_wb が無ければ whiteboard agent が init を実行tasks/doing → tasks/done のノード移動を実行詳細は agents/whiteboard.md を参照。
| ファイル | 読むタイミング |
|---------|-------------|
| references/architecture_index.md | アーキテクチャ判断が必要な時 |
| references/spec_index.md | 仕様確認が必要な時 |
| references/operations_quickref.md | 運用ルールの確認が必要な時 |
| agents/implementer.md | コード実装をサブエージェントに委任する時 |
| agents/verifier.md | テスト・ビルド検証をサブエージェントに委任する時 |
| agents/doc-updater.md | ドキュメント更新をサブエージェントに委任する時 |
| agents/reviewer.md | 差分レビューをサブエージェントに委任する時 |
| agents/whiteboard.md | マップをホワイトボードとして読み書きする時 |
/sessions/.../mnt/M3E/ 配下に直接書く--static オプションでHTML出力が必要な場合はcomputer://リンクで提供このスキルの知識はCLAUDE.mdやAGENTS.mdにも反映されている。 Claude CodeやCopilot環境では:
/setrole)を実行してロールを確定tools
会話中のアイデア・判断・思いつきをbacklog/にmdファイルとして即座に書き出す。 フォーマットチェック不要、速度優先。エージェント間の非同期コミュニケーションプールとして機能する。 以下の場面でトリガーする: - 「tomd」「backlogに書いて」「mdに残して」「書き下して」と言われたとき - 会話中に設計判断やアイデアが出て「残しておいて」「プールして」と言われたとき - 「backlogに突っ込んで」「メモっといて(backlog)」と言われたとき
development
M3Eプロジェクトでエージェントが作業開始時にロールを確定するスキル。 ワークツリーで起動した各エージェントは、最初にこのスキルを実行して 担当ロール・ブランチ・作業範囲・割り当てタスクを確認する。 以下の場面でトリガーする: - 「/setrole」「setrole」「ロール設定」と言われたとき - エージェントがワークツリーで起動された直後 - 「自分の担当は?」「何をすればいい?」と聞かれたとき - ブランチや作業範囲の確認が必要なとき devM3E の Execute フェーズでサブエージェントを起動する際に自動実行される。
development
M3E開発でPR(Pull Request)のレビュー・マージ・事後処理を行うスキル。 pr-beta(PR作成)の対になるスキルで、マネージャー側のワークフローを担う。 以下の場面でトリガーする: - 「/pr-review」「PRレビューして」「PR見て」「マージして」と言われたとき - PR URLやPR番号が提示されたとき - devM3E の Integrate フェーズでマージ判断が必要なとき - 「PRどうなってる」「PR状況」と聞かれたとき dev-beta ブランチ(統合ロール)で使うことを想定。部下ブランチから呼ばれた場合でも動作するが、マージ権限は統合ロールのみ。
development
M3E開発で作業ブランチから dev-beta へのPR(Pull Request)を作成するスキル。 subworker(codex1/codex2/feature branch)が作業完了後に統合マネージャーへ マージ依頼を出すワークフローを自動化する。 以下の場面でトリガーする: - 「/pr-beta」「PRを作って」「dev-betaにマージ」「統合して」と言われたとき - 作業ブランチでの実装が完了し、統合フローに進むとき - devM3E の Integrate フェーズでPR作成が必要なとき dev-beta 以外のブランチにいるときに使う。dev-beta 上で呼ばれた場合はエラーにする。