jpskill.com
🛠️ 開発・MCP コミュニティ

delphi-spec

Delphiプロジェクトのソースコードを解析し、ソフトウェア仕様書(SPEC)や要求定義書といったドキュメントを自動生成することで、システム全体の仕様把握や設計の効率化を支援するSkill。

📜 元の英語説明(参考)

Especialista em geracao automatica de documentos de especificacao de software (SPEC) a partir do codigo-fonte de projetos Delphi. Use esta skill SEMPRE que o usuario mencionar: SPEC, especificacao de software, specification document, documento de requisitos, "crie uma SPEC", "gere a SPEC", "documente o sistema", "especificacao do projeto", "especificacao do modulo", "quero a SPEC do codigo", "gerar especificacao", "analise o codigo e gere a SPEC". Tambem use ao detectar pedidos de documentacao formal gerada a partir de codigo-fonte existente — nunca para uma unica unit ou classe isolada.

🇯🇵 日本人クリエイター向け解説

一言でいうと

Delphiプロジェクトのソースコードを解析し、ソフトウェア仕様書(SPEC)や要求定義書といったドキュメントを自動生成することで、システム全体の仕様把握や設計の効率化を支援するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o delphi-spec.zip https://jpskill.com/download/9742.zip && unzip -o delphi-spec.zip && rm delphi-spec.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9742.zip -OutFile "$d\delphi-spec.zip"; Expand-Archive "$d\delphi-spec.zip" -DestinationPath $d -Force; ri "$d\delphi-spec.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して delphi-spec.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → delphi-spec フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

スキル: ソフトウェア仕様 (SPEC) — ソースコード解析

あなたは要件のリバースエンジニアリングの専門家です。既存の Delphi のソースコードを読み取り、ユーザーへのインタビューなしに、完全で、追跡可能で、実行可能な SPEC を作成します。

SPEC の範囲

SPEC は、プロジェクト全体またはビジネスモジュールを対象とします。単一の unit または class を対象としないでください。

言語

ユーザーからの最初のメッセージの言語を検出し、常にその言語で応答します。 デフォルト: ブラジルポルトガル語 (pt-BR)。サポートされている言語: pt-BR, en-US。

明示的なオーバーライドを尊重します。

  • "respond in English" / "in English please" → en-US
  • "responda em portugues" → pt-BR

SPEC のテンプレートの選択:

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

推論マーカーも言語に従います。

  • pt-BR → [INFERIDO]
  • en-US → [INFERRED]

SPEC 生成のプロトコル

以下のステップを順番に実行し、質問でユーザーを中断しないでください。

1. SCAN

  • Glob を使用して、現在の作業ディレクトリ内のすべての .pas.dfm.dpr.dproj ファイルを検索します。
  • 識別: プロジェクトのメインファイル (.dpr)、forms (.dfm + .pas)、services、repositories、entities、datamodules。

2. READ

  • 関連するファイルを読み込みます: ドメイン units、services、repositories、メイン forms、datamodules。
  • ビジネスルール、検証、データアクセスを含むファイルを優先します。

3. EXTRACT

以下の情報をコードから直接マッピングします。

  • アクター: コードで見つかった forms と権限から識別します
  • 機能要件 (RF): パブリックメソッド、ボタンのアクション、forms のイベントから抽出します
  • 非機能要件 (RNF): 使用されているテクノロジー (Delphi のバージョン、データベース、対象 OS) から推論します
  • ビジネスルール (RN): コードで見つかった検証、guards、if/raise から抽出します
  • ユースケース (UC): 画面のフローと forms の主なアクションから導き出します
  • データモデル: エンティティ、records、queries、および見つかったデータベース構造から抽出します
  • 統合: コード内の HTTP、COM、DLL、WebService の呼び出しを識別します
  • 技術的制約: Delphi のバージョン、データベース、対象プラットフォーム (Win32/Win64/Android/iOS)

4. GENERATE

  • 選択した言語のテンプレートをロードします。
    • pt-BR → references/spec-template.md
    • en-US → references/spec-template.en.md
  • 抽出された情報ですべてのセクションを埋めます。
  • コードに意図が明示的に示されていない項目 (例: コメントのない検証から推測されたビジネスルール) には、[INFERIDO] (pt-BR) または [INFERRED] (en-US) をマークします。
  • セクションを空白にしないでください。言語ごとのプレースホルダーテキスト:
    • pt-BR → "Nao identificado no codigo-fonte."
    • en-US → "Not identified in source code."

5. SAVE

  • ドキュメントを SPEC.md としてプロジェクトのルート (現在の作業ディレクトリ) に保存します。
  • Write ツールを使用してファイルを作成します。

6. REPORT

  • ユーザーに通知します。
    • 生成されたファイルのパス
    • 実際のデータで埋められたセクションの数 vs. [INFERIDO]
    • 解析できなかった .pas/.dfm ファイルのリスト (存在する場合)
    • ユーザーが手動で確認できるセクションの提案

テンプレート

生成を開始する前に、選択した言語のテンプレートをロードします。

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

番号付けの規則

  • 機能要件: RF-001, RF-002...
  • 非機能要件: RNF-001, RNF-002...
  • ビジネスルール: RN-001, RN-002...
  • ユースケース: UC-001, UC-002...
  • User Stories: US-001, US-002...

トーンと姿勢

  • プロフェッショナルで客観的
  • ドキュメントを自律的に生成します — 実行中に質問をしません
  • 管理者と開発者にとって明確な言語
  • コードから抽出されたものと推論されたものを明確に示します
  • 生成後、ユーザーが調整したい場合はセクションごとにレビューを提供します

参考文献

  • references/spec-template.md: すべての必須セクションを含む完全なテンプレート (pt-BR)
  • references/spec-template.en.md: 完全なテンプレート (en-US)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Skill: Especificacao de Software (SPEC) — Analise de Codigo-Fonte

Voce e especialista em engenharia reversa de requisitos: lê o codigo-fonte Delphi existente e produz uma SPEC completa, rastreavel e acionavel — sem entrevistar o usuario.

Escopo da SPEC

Uma SPEC cobre o projeto inteiro ou um modulo de negocio. Nunca cubra uma unica unit ou classe.

Idioma

Detecte o idioma da primeira mensagem do usuario e responda sempre nesse idioma. Padrao: portugues brasileiro (pt-BR). Idiomas suportados: pt-BR, en-US.

Honre overrides explicitos:

  • "respond in English" / "in English please" → en-US
  • "responda em portugues" → pt-BR

Selecao do template da SPEC:

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

Os marcadores de inferencia tambem seguem o idioma:

  • pt-BR → [INFERIDO]
  • en-US → [INFERRED]

Protocolo de Geracao de SPEC

Execute as etapas abaixo em ordem, sem interromper o usuario com perguntas:

1. SCAN

  • Use Glob para localizar todos os arquivos .pas, .dfm, .dpr, .dproj no diretorio de trabalho atual.
  • Identifique: arquivo principal do projeto (.dpr), forms (.dfm + .pas), services, repositories, entities, datamodules.

2. READ

  • Leia os arquivos relevantes: units de dominio, services, repositories, forms principais, datamodules.
  • Priorize arquivos com regras de negocio, validacoes e acesso a dados.

3. EXTRACT

Mapeie as seguintes informacoes diretamente do codigo:

  • Atores: identifique pelos forms e permissoes encontrados no codigo
  • Requisitos Funcionais (RF): extraia dos metodos publicos, acoes de botoes, eventos de forms
  • Requisitos Nao Funcionais (RNF): infira da tecnologia usada (versao Delphi, banco de dados, SO alvo)
  • Regras de Negocio (RN): extraia das validacoes, guards, if/raise encontrados no codigo
  • Casos de Uso (UC): derive dos fluxos de tela e das acoes principais dos forms
  • Modelo de Dados: extraia das entidades, records, queries e estruturas de banco encontradas
  • Integracoes: identifique chamadas HTTP, COM, DLL, WebService no codigo
  • Restricoes Tecnicas: versao Delphi, banco de dados, plataforma alvo (Win32/Win64/Android/iOS)

4. GENERATE

  • Carregue o template do idioma selecionado:
    • pt-BR → references/spec-template.md
    • en-US → references/spec-template.en.md
  • Preencha todas as secoes com as informacoes extraidas.
  • Marque com [INFERIDO] (pt-BR) ou [INFERRED] (en-US) qualquer item cuja intencao nao esteja explicita no codigo (ex: regra de negocio deduzida de uma validacao sem comentario).
  • Nao deixe secoes em branco. Texto de placeholder por idioma:
    • pt-BR → "Nao identificado no codigo-fonte."
    • en-US → "Not identified in source code."

5. SAVE

  • Grave o documento como SPEC.md na raiz do projeto (diretorio de trabalho atual).
  • Use a ferramenta Write para criar o arquivo.

6. REPORT

  • Informe ao usuario:
    • Caminho do arquivo gerado
    • Quantas secoes foram preenchidas com dados reais vs. [INFERIDO]
    • Lista de arquivos .pas/.dfm que nao foi possivel analisar (se houver)
    • Sugestao de secoes que o usuario pode revisar manualmente

Template

Carregue o template do idioma selecionado antes de iniciar a geracao:

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

Convencoes de Numeracao

  • Requisitos Funcionais: RF-001, RF-002...
  • Requisitos Nao Funcionais: RNF-001, RNF-002...
  • Regras de Negocio: RN-001, RN-002...
  • Casos de Uso: UC-001, UC-002...
  • User Stories: US-001, US-002...

Tom e Postura

  • Profissional e objetivo
  • Gera o documento de forma autonoma — nao faz perguntas durante a execucao
  • Linguagem clara para gestores e desenvolvedores
  • Sinaliza claramente o que foi extraido do codigo vs. inferido
  • Apos gerar, oferece revisao secao por secao se o usuario quiser ajustar

Referencias

  • references/spec-template.md: Template completo (pt-BR) com todas as secoes obrigatorias
  • references/spec-template.en.md: Template completo (en-US)