本文へ移動
cccskills
無料GitHub で公開

spec-builder

office ドキュメント・画像などの一次情報から、anthropics/skills(markdown 化)と agent-ocr(画像OCR)を使って /spec/output/docs に統合された要件定義書一式(仕様書)を作成する。

インストール方法を見る

含まれるファイル(5)

  • SKILL.md10.8 KB
  • references/conversion-guide.md7.7 KB
  • scripts/convert_documents.py28.4 KB
  • scripts/requirements.txt60 B
  • scripts/run_windows.ps11.4 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

仕様書作成スキル(一次情報 → 要件定義書)

office ドキュメント(PDF / PowerPoint / Excel / Word など)は anthropics/skills で読み取り、
画像ファイル(PNG/JPG 等)は agent-ocr で OCR する。

フォルダ構造

spec/                          ← スキル専用ディレクトリ
├── input/                     # ここに変換したいファイルを置く(ユーザーが操作)
├── output/                    # 全出力はここに入る(ユーザーが参照)
│   ├── staging/               # ファイル単位の中間 markdown
│   └── docs/                  # 統合要件定義書 5 点
│       ├── index.md           # ドキュメント一覧・開発利用フロー
│       ├── business-requirements.md
│       ├── functional-requirements.md
│       ├── design-requirements.md
│       └── test-requirements.md
└── .cache/                    # システム内部用(ユーザーは触らない)
    ├── conversion-checklist.json
    ├── pending_ocr.json
    └── pending_skills.json

最初の依頼を簡単にする

このスキルは 引数なしでも開始できる。

  • 既定入力: spec/input/
  • 既定 staging 出力: spec/output/staging/
  • 既定 docs 出力: spec/output/docs/
  • 既定 checklist: spec/.cache/conversion-checklist.json
  • --input / --staging / --docs(互換: --output)/ --checklist を指定した場合はそのパスを優先する
  • spec/input/ に変換対象が見つからない場合、scripts/convert_documents.py はワークスペース・フォルダ全体をスキャンし、変換候補になりうるファイルがないか確認する。候補が見つかった場合は一覧を提示するので、spec/input/ へ移動するか --input で対象パスを指定する
  • 「spec/input/ へ移動する」とは元の場所のファイルを削除するまでを含む。spec/input/ へコピーしただけで元ファイルを残すと、ワークスペース上に同一内容のファイルが重複し混乱の元になる。コピー→取り込み確認後は元ファイルを削除すること

処理フロー

[spec/input/]
     │
     ├─ 画像 (PNG/JPG 等) ──→ spec/.cache/pending_ocr.json    ──→ agent-ocr
     │                                                                  │
     └─ 文書 (PDF/Office)  ──→ spec/.cache/pending_skills.json ──→ anthropics/skills
                                                                        │
                                                          ┌─────────────┘
                                                          ▼
                                              [spec/output/staging/]
                                                          │
                                                 (Claude が統合)
                                                          │
                                              [spec/output/docs/]
                                         ├── index.md
                                         ├── business-requirements.md
                                         ├── functional-requirements.md
                                         ├── design-requirements.md
                                         └── test-requirements.md

基本フロー

  1. scripts/convert_documents.py で input 配下を走査する
    • spec/input/ に変換対象がなければ、ワークスペース・フォルダ全体をスキャンして変換候補ファイルの有無を確認し、見つかった場合は一覧を提示する
  2. 各ファイルの staging ファイルを spec/output/staging/ に作成する
    • ファイル名は 元のファイル名.元の拡張子.MD(例: 要件定義.docx.MD)
  3. 画像ファイルは spec/.cache/pending_ocr.json に記録し、agent-ocr で後続処理する
  4. 画像以外の文書は spec/.cache/pending_skills.json に記録し、anthropics/skills で後続処理する
  5. spec/output/docs/ に以下 5 つを作成する
    • index.md(ドキュメント一覧・開発利用フロー)
    • business-requirements.md
    • functional-requirements.md
    • design-requirements.md
    • test-requirements.md
  6. spec/.cache/conversion-checklist.json を更新する
    • 新規ファイルはチェックリストへ追加
    • is_completed=false または更新差分ありのファイルのみ再処理
    • 全件完了時は既存 spec/output/docs/ を参照して開発を継続

staging → docs 統合フロー

staging の変換完了後、以下の手順で docs を更新する。

  1. spec/.cache/conversion-checklist.json を読み、is_completed=false のファイルがないか確認する
  2. is_completed=false が残っていれば、対象の staging ファイルを読んで内容を補完する
  3. 全 staging ファイルを横断し、各 docs の 要確認 を実際の要件に書き換える:
    • business-requirements.md → ステークホルダー・ユーザーストーリー・業務フロー
    • functional-requirements.md → 機能一覧(MoSCoW)・データモデル・非機能要件
    • design-requirements.md → 全体構成・コンポーネント・リスク・実装タスク分解(★全体構成・コンポーネント選定は architecture スキル の判断を正として転記する)
    • test-requirements.md → テストシナリオ・受け入れ条件(functional の機能一覧 # と対応。条件本文の正は functional 側)
  4. index.md の処理状況テーブルも合わせて更新する
  5. 推測で埋めず、情報不足は 要確認 として残す

agent-ocr 更新方針

画像の出力先とファイル名は新構成に合わせる。

  • 出力先: spec/output/staging/
  • ファイル名: 元のファイル名.元の拡張子.MD
  • OCR 抽出時は表を markdown table 化し、判読不能箇所は [判読不可] と明記する

pending_ocr.json の staging_markdown_path を使って、対象ファイルを更新する。 pending_ocr.json の ocr_prompt_hint を agent-ocr の抽出指示として利用する。

anthropics/skills 更新方針

画像以外の文書は pending_skills.json を使って処理する。

  • source_path の元ファイルを anthropics/skills で読み取り
  • context_hint を参照してどの観点で内容を抽出するかを確認する
  • 抽出 markdown を staging_markdown_path に反映
  • 処理済み後、docs の 5 文書を更新

補足: anthropics/skills(Claude)は画像読解も可能だが、このスキルでは OCR の責務を agent-ocr に固定する。

spec/output/docs/ で整理する観点

index.md

  • ドキュメント一覧(各 docs へのリンクと役割)
  • 処理状況テーブル
  • 開発利用フロー(番号付き手順)

business-requirements.md

  • 概要(対象業務・プロジェクト背景・スコープ)
  • ステークホルダー / ロール(ロール・担当業務・関心事の表)
  • ユーザーストーリー(As a…I want…so that…形式)
  • 業務フロー
  • 未確定事項 / 要確認事項(項目・確認先・期限・ステータスの表)
  • 要件変更履歴(変更理由を必ず併記)

functional-requirements.md

  • 機能一覧(MoSCoW 優先度・受け入れ条件の表 — 受け入れ条件の正はここ)
  • Dataverse テーブル候補(テーブル名・主な列・リレーション)
  • UI 要件(Code Apps / Model-Driven Apps / Cowork プラグイン — 選定の確定は architecture スキル を優先)
  • Power Automate の自動化要件
  • Copilot Studio / AI Builder の利用余地(採用可否・v1/v2 判断は architecture スキルに従う)
  • 外部連携
  • 非機能要件(パフォーマンス・セキュリティ・可用性・スケーラビリティ・ユーザビリティ — test-requirements の非機能テストと区分を一致させる)
  • 要件変更履歴(変更理由を必ず併記)

design-requirements.md

★ 全体構成・コンポーネント選定・構築フェーズは architecture スキル を正とする。 本ドキュメントには architecture スキルの判断フロー・設計アウトプットテンプレートで確定した結果を転記する。

  • Power Platform 全体構成案(architecture スキルのテンプレート準拠、Mermaid 構成図)
  • コンポーネント設計(種別・役割・依存の表 — architecture スキルの「コンポーネント構成」表と整合させる)
  • セキュリティ / 権限 / 監査(区分・内容・対応方針の表)
  • 設計上のリスク(リスク・影響度・発生確率・対応方針の表)
  • Phase 1 確認事項
  • 実装タスク分解(タスク・依存・優先度・見積の表 — フェーズ順序は architecture スキルの「構築フェーズ」に沿う)
  • 要件変更履歴(変更理由を必ず併記)

test-requirements.md

  • テスト戦略(テスト方針・環境・自動化範囲)
  • テストシナリオ(シナリオ名・前提条件・操作手順・期待結果・優先度の表)
  • 受け入れ条件(functional-requirements の機能 # を参照し確認方法を定義 — 条件本文の正は functional 側、二重管理しない)
  • 非機能テスト(区分・テスト内容・合格基準の表 — 区分は functional の非機能要件と一致させる)
  • 要件変更履歴(変更理由を必ず併記)

実行例

cd .github/skills/spec-builder/scripts
python convert_documents.py

参照

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

admin

無料日本語概要

Power Platform のテナント / 環境ガバナンスを確認・設定する管理スキル。開発着手前の環境チェック(既定環境ではないか・マネージド環境・Dataverse / Code Apps / MCP の有効化・セキュリティ ロール・管理 API アクセス)と DLP 事前チェックを非対話スクリプトで実行し、必要ならマネージド環境設定・カスタムコネクタの DLP 分類・ACP(Advanced connector policies)の許可コネクタを dry-run 付きで変更する。Microsoft 第一者サービスだけを許可する ACP 推奨プロファイルの適用と、クラシック DLP から ACP への移行も支援する。クラシック DLP と ACP は既定の混成モードで併用され、より制限の厳しい方が適用されるため両方を確認する。オプションとして、既定環境 / 個人開発者環境 / 市民開発者環境 / AI CoE セントラル / AI CoE 内製開発の 5 グループからなるテナント全体の環境戦略を、読み取り専用スキャン → 移行プラン(admin-migration-plan.md)→ レビュー → 適用の順で策定・実行する。設定は環境グループのルールで行うのを原則とし、グループ ルールに無い項目(既定環境ルーティング・Dataverse for Teams 禁止・Dataverse 検索・グループへの割り当て・Copilot クレジット配分)だけをテナント設定・環境個別設定・Dataverse の組織設定で補う。IP 制限・テナント分離・監査ログ・ライセンス配分などの管理設定は references にまとめる。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

agent-flows

無料日本語概要

Copilot Studio 新 UI の Agent flows / Workflows を構築・公開・検証する。Dataverse レコード作成/更新トリガーから既存の発行済み Copilot Studio v2 を Agent ノードで呼ぶ標準経路、Code Apps との非同期要求/結果連携、および手動 Start + inline Agent の API ライフサイクル検証を扱う。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

agm-qa-authoring

無料日本語概要

株主総会の想定問答を、IR 抜粋(決算短信・説明資料・招集通知など)を根拠に下書きし、利用者の確認後に Dataverse の想定問答テーブルへ「下書き」として登録するスキル。 Use when ユーザーが「配当について想定問答を作って」「この論点の想定問答を 3 件追加して」「招集通知から想定問答を作って」「想定問答を登録して」と依頼したとき。 Dataverse MCP コネクタ(describe / read_query / search_data / create_record / update_record)を使用する。削除・テーブル変更のツールは使わない。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

agm-qa-review

無料日本語概要

株主総会の想定問答を点検し、根拠の IR 抜粋に無い数値・存在しない根拠 ID・回答者や注意事項の抜け・趣旨の重複・下書きのまま残っているものを一覧にするスキル(書き込みはしない)。 Use when ユーザーが「想定問答を点検して」「根拠の無い数値が無いか確認して」「下書きの想定問答を一覧にして」と依頼したとき。 Dataverse MCP コネクタ(describe / read_query / search_data)を使用する。書き込み・削除のツールは使わない。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

agm-rehearsal-script

無料日本語概要

株主総会の質疑応答のリハーサル台本(議長・株主・回答役員の読み上げ原稿)を、承認済みの想定問答から作り、Dataverse のリハーサル台本テーブルへ登録するスキル。 Use when ユーザーが「リハーサルの台本を作って」「QA-001〜QA-010 で読み上げ原稿を作って」「番号を言わない株主も入れた台本を作って」と依頼したとき。 Dataverse MCP コネクタ(describe / read_query / search_data / create_record / update_record)を使用する。削除・テーブル変更のツールは使わない。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

ai-builder

無料日本語概要

AI Builder の AI プロンプト(GPT Dynamic Prompt)を Dataverse API で作成し、Copilot Studio エージェントにツール(アクション)として追加する。Power Automate フローとの統合パターンも含む。

geekfujiwara/CodeAppsDevelopmentStandard722026年10月9日 更新

geekfujiwara のスキルをすべて見る

このスキルの問題を報告する