mcpField
S
skill-to-prompt

skill-to-prompt

github.com/realjaymesエージェントワークフロー6848 回インストール5 日前に更新
リポジトリ

skill-to-prompt について

skill-to-promptは、Claude skillをChatGPT Project向けの文書に変換します。簡潔な指示書と統合された参照ファイルを作成し、skillのワークフローをChatGPT Projectsへ移す用途に向いています。

主な機能

  1. 01Claude skillをChatGPT Project形式に変換
  2. 028,000文字未満の指示書を作成
  3. 03参照資料を1つのナレッジファイルに統合
  4. 04.docx形式で出力
  5. 05Markdown形式の代替出力

活用シーン

  1. 01Claude skillをChatGPT Projectへ移行
  2. 02詳細なワークフローと参照資料の整理
  3. 03プロジェクト指示書と参照文書の生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/realjaymes/marketingagentskills --skill skill-to-prompt

インストール後、Claude Code で/skill-to-promptを入力して読み込まれたか確認します。

同梱ファイルreferences/docx-generator.jsreferences/prompt-structure-guide.md

詳細

スキルからプロンプトへの変換ツール

Claude のスキル(SKILL.md + references/)を ChatGPT のプロジェクト形式に変換します。変換後は、1 つのプロンプト指示ドキュメント(.docx、8,000 文字未満)と 1 つのナレッジファイルドキュメント(.docx)になります。

生成されるもの

変換ごとに、次のものが生成されます。

  1. プロンプト指示(.docx) — ChatGPT の「Instructions」フィールドに貼り付けるテキストです。8,000 文字未満で、9 要素のプロンプト式に基づいて構成されます。
  2. ナレッジファイル(.docx ファイル 1 つ) — 参照資料として ChatGPT のプロジェクトにアップロードします。詳細なワークフロー、テンプレート、フレームワーク、例、参考コンテンツをすべて 1 つのドキュメントにまとめて収録します。

すべての .docx ファイルは、標準の書式設定に従います。フォントは Arial、通常のテキストは 10pt、H1 は 20pt、H2 は 16pt、H3 は 14pt、H4 は 12pt、行間は 1.15 です。


変換ワークフロー

ステップ 1:ソーススキルを見つけて読み込む

ユーザーがスキル名(例:「copywriting」)を指定した場合:

  • ~/.claude/skills/[skill-name]/SKILL.md を確認します。

ユーザーがパスを指定した場合は、そのパスを直接使用します。

すべてを読み込みます。

  • SKILL.md(全内容)
  • references/ フォルダー内のすべてのファイル
  • scripts/ または assets/ フォルダーがある場合は、そのフォルダーを確認します(特別な扱いが必要です)。
ステップ 2:スキルの複雑さを分析する

ナレッジファイル 1 つにまとめるために必要な圧縮量を把握できるよう、ソースコンテンツの総量を数えます。

複雑さ基準必要な圧縮
シンプルSKILL.md が 300 行未満で、参照ファイルなし最小限 — コンテンツは 1 つのナレッジファイルに余裕を持って収まります
中程度300~500 行、または参照ファイルが 1~2 個中程度 — 冗長なセクションを簡潔にし、すべてのフレームワークと例を残します
複雑500 行以上、または参照ファイルが 3 個以上大幅 — フレームワーク、具体的な例、実行可能なコンテンツを優先します。繰り返しの多いセクションは要約します

複雑さにかかわらず、ナレッジファイルは必ず 1 つだけ生成します。

ステップ 3:コンテンツを 9 要素のプロンプト式に割り当てる

完全な割り当てガイドについては、references/prompt-structure-guide.md を読み込みます。

Claude のスキルから必要な情報を抽出し、ChatGPT の指示コンポーネントに割り当てます。

Claude スキルのセクションChatGPT プロンプトのコンポーネント
フロントマターの description役割 + タスクの概要
「使用するタイミング」/トリガー条件タスクのコンテキスト
「開始前」/コンテキスト収集の手順入力/変数
中核となるワークフローのセクション(番号付きの手順)タスク(要約した手順)
「出力形式」セクション書式設定の指示
「例」セクション出力例(指示内では最大 1~2 個)
「制約」/「ルール」/「禁止事項」の記述制約
想定読者に関する記述対象読者
口調や文体に関するガイダンススタイル/トーン
目的や成果の説明目標
ステップ 4:指示とナレッジファイルにコンテンツを振り分ける

8,000 文字未満に収めるため、次の優先順位を適用します。

P1 — 必ずプロンプト指示に含める:

  • 役割の記述(AI の役割と専門分野)
  • タスクの概要(主なタスクと要約したワークフローの手順)
  • 目標(望ましい成果)
  • 重要な制約(禁止事項/必須事項)
  • ナレッジファイルへの参照(各ファイルの内容と参照するタイミング)

P2 — 文字数に余裕があれば指示に含める:

  • 重要な例を 1~2 個(簡潔にまとめ、完全な例はナレッジファイルに移します)
  • 入力変数(開始前にユーザーから提供してもらう情報)
  • 出力の書式設定仕様
  • スタイル/トーンのガイダンス

P3 — 必ずナレッジファイルに含める:

  • 詳細なワークフロー全体(複数段落の説明を含む)
  • 例の全コレクション
  • テンプレートとフレームワーク(SKILL.md の本文と references/ から)
  • すべての参考資料(references/ フォルダーから)
  • エッジケースと高度なシナリオ
  • 判断ツリーと詳細な表
  • スクリプトのコード(scripts/ フォルダーから。参考資料として説明を付けます)

文字数の目安: 指示テキストは 7,500 文字を目標にします(安全のため 500 文字の余裕を確保)。

ステップ 5:プロンプトの指示を作成する

次の構成に従って、指示文を作成します。

すべてのプロンプト指示ドキュメントには、以下の 9 つの見出しをこの順序で含める必要があります。見出しを省略したり、名前を変更したりしてはいけません。

## Role

You are [expertise extracted from skill description and intro].
You specialize in [specific domain/capabilities].

## Task

Your primary task is to [main objective from the skill].

Follow this workflow:
1. [Condensed step from skill workflow]
2. [Condensed step]
3. [Condensed step]
...

## Goal

[Desired outcome extracted from the skill's purpose/output sections]

## Audience

[Target audience. If the skill does not specify an audience, write: "General users seeking [skill domain] assistance. Adjust complexity based on the user's apparent experience level."]

## Style/Tone

[Voice/tone rules extracted from the skill. If the skill does not specify tone, write: "Professional and clear. Match the register of the target audience. Avoid jargon unless the audience expects it."]

Always include these writing rules regardless of skill-specific tone:
- Avoid dashes unless absolutely necessary. Prefer commas, periods, or conjunctions to keep the tone natural.
- Use en dashes (with spaces, e.g. word – word) or em dashes (without spaces, e.g. word—word) only when unavoidable, ideally no more than once per complete piece of output.

## Constraints

- [Never/always rule]
- [Character/word limits]
- [Format restrictions]
- [Quality standards]

## Inputs/Placeholders

Before starting, ask the user for:
1. [Required input from the skill's context-gathering steps]
2. [Required input]

## Example Output

[1-2 short examples showing expected output structure. Keep brief.]

## Formatting Instructions

[Output structure and formatting rules from the skill]

必須の 9 セクションの後には、必ず「ナレッジファイル」セクションを追加します。

## Knowledge Files

This project includes 1 knowledge file. Consult it as needed:

1. **[SkillName]_Reference_Guide.docx** — [What it contains and when to reference it]

作成後、文字数を数えます。7,500 文字を超える場合:

  • 例を最低限に削ります(ただし、「出力例」の見出しと、簡潔な例は必ず残します)
  • ワークフローの手順をさらに簡潔にします
  • 対象読者とスタイル/トーンの内容を短縮します(ただし、見出しは削除しないでください)

短縮後も 8,000 文字を超える場合は、セクションの内容をさらに短くします。ただし、9 つの見出しはすべて残してください。詳しい説明をナレッジファイルに移し、各見出しの下には簡潔な要約を記載します。

ステップ 6:ナレッジファイルの内容を整理する

[SkillName]_Reference_Guide.docx という名前のナレッジファイルを、必ずちょうど 1 つ作成します。

すべての P3 コンテンツを、この 1 つのドキュメントにまとめ、明確な見出し階層で整理します。

[SkillName]_Reference_Guide.docx に含める内容:

  • 詳細な説明をすべて含む完全なワークフロー
  • すべての例と作成済みの例
  • テンプレートとフレームワーク(SKILL.md 本文および references/ フォルダーから)
  • すべての参考資料(references/ フォルダーから)
  • ガイドライン、ベストプラクティス、エッジケース
  • 判断ツリーと詳細な表
  • スクリプトのドキュメント(実行可能ではない参考資料として明記)

1 つのファイル内の構成:

  • 大項目(ワークフロー、テンプレート、例、参考資料)には H1 を使用します
  • 各大項目内の小項目には H2~H3 を使用します
  • 読みやすさを考慮し、大項目の間に改ページを挿入します
  • 参考資料が多い複雑なスキルでは、冗長な説明よりも、フレームワーク、作成済みの例、実用的な内容を優先します
ステップ 7:JSON データを生成する

すべての内容を、docx-generator の入力形式に合った JSON オブジェクトとして構成します。

JSON の構造:

{
  "skillName": "Skill Display Name",
  "originalSkillName": "skill-name",
  "version": "1.0.0",
  "outputDir": "~/Downloads/",
  "instructionDoc": {
    "filename": "SkillName_Prompt_Instructions.docx",
    "title": "Skill Name — ChatGPT Project Instructions",
    "characterCount": 7234,
    "sections": [
      { "type": "heading", "level": 1, "text": "Section Title" },
      { "type": "paragraph", "text": "Regular paragraph text." },
      { "type": "bold-paragraph", "label": "Label:", "text": "Text after label" },
      { "type": "bullet", "text": "Bullet point", "level": 0 },
      { "type": "numbered", "text": "Numbered item", "number": 1 },
      { "type": "table", "headers": ["H1","H2"], "rows": [["a","b"]], "columnPcts": [30,70] },
      { "type": "divider" },
      { "type": "spacer", "size": 200 },
      { "type": "meta", "text": "Metadata or footnote text" }
    ]
  },
  "knowledgeFiles": [
    {
      "filename": "SkillName_Reference_Guide.docx",
      "title": "Skill Name Reference Guide",
      "sections": [...]
    }
  ]
}

この JSON を、現在のディレクトリにある一時ファイル [skill-name]-conversion.json に書き込みます。

ステップ 8:.docx ファイルを生成する

ジェネレーターを実行します。

NODE_PATH=~/Documents/node_modules node ~/.claude/skills/skill-to-prompt/references/docx-generator.js [skill-name]-conversion.json

すべての .docx ファイルが ~/Downloads/ フォルダーに生成されます。

docx パッケージが利用できない場合は、先にインストールします。

cd ~/Documents && npm install docx && cd -

フォールバック: .docx の生成に完全に失敗した場合は、ユーザーが Google Docs または Word に貼り付けられるよう、書式設定済みの Markdown として内容を出力します。同じ見出し階層とセクション構成を適用します。

ステップ 9:検証して結果を提示する

以下を確認し、報告します。

  • 指示文の文字数(8,000 文字未満であること)
  • すべての .docx ファイルが正常に生成されていること
  • ナレッジファイルに参照対象の内容がすべて含まれていること
  • 指示文とナレッジファイル間の相互参照が明確であること

ユーザーに次の内容を提示します。

Conversion complete: [skill-name] → ChatGPT Project

Output saved to ~/Downloads/

Prompt Instructions:
  [SkillName]_Prompt_Instructions.docx (X,XXX characters)

Knowledge File:
  [SkillName]_Reference_Guide.docx — [brief description]

Setup in ChatGPT:
  1. Create a new Project in ChatGPT
  2. Paste the instruction text from the Instructions .docx into the project's Instructions field
  3. Upload the knowledge file to the project
  4. Test with a sample prompt

提示後、一時 JSON ファイルを削除します。

rm [skill-name]-conversion.json

変換ルール

そのまま引き継ぐ内容
  • 役割と目的の定義
  • ワークフローの手順(簡潔にする)
  • 制約とルール
  • 出力形式の仕様
  • 例とテンプレート
  • 参考資料の内容
書き換えが必要な内容
  • Claude のツールへの言及(Read、Grep、Glob、Bash、Edit、Write)→ 自然な言葉による指示に書き換えます。例:「ユーザーのファイルを読む」を「内容を貼り付けるかアップロードするようユーザーに依頼する」に変更します。
  • 動的コマンド(!command 構文)→ ChatGPT では利用できません。手動の手順として記載します。
  • ファイルシステム操作 → 「ユーザーに提供を依頼する」という形式に置き換えます。
  • 段階的な情報開示(必要に応じて参考資料を読み込むこと)→ すべての内容をあらかじめナレッジファイルに含める必要があります。
引き継がれないもの
  • スクリプト(scripts/ フォルダー)→ ナレッジファイルにスクリプトの目的を記載します。参考としてコードを含めてもかまいませんが、ChatGPT では実行できないことを明記してください。
  • アセット(assets/ フォルダー)→ 出力に「必要に応じて、これらのアセットは手動で引き継ぐ必要があります。」と記載します。
  • スキル間の参照 → 依存関係として明記します:「このスキルは [other-skill] を参照しています。そのスキルも別途変換することを検討してください。」
  • MCP サーバーとの統合 → ChatGPT Projects では利用できません。
  • フロントマターのフィールド(version、argument-hint、context、agent、allowed-tools)→ これらは Claude 固有のメタデータです。ChatGPT の指示には含めないでください。

出力ファイルの命名規則

[SkillName]_Prompt_Instructions.docx
[SkillName]_Reference_Guide.docx

ここで、[SkillName] はスキル名をタイトルケースにし、スペースをアンダースコアに置き換えたものです。

例:

  • copywriting → Copywriting_Prompt_Instructions.docx
  • digital-product-video-ads → Digital_Product_Video_Ads_Prompt_Instructions.docx
  • page-cro → Page_CRO_Prompt_Instructions.docx

ドキュメントの書式設定基準

すべての .docx 出力は、次の基準に従います。

要素設定
フォントArial
フォントの色すべてのテキストと見出しで黒(デフォルト)
標準テキスト10pt
見出し 120pt
見出し 216pt
見出し 314pt
見出し 412pt
行間1.15

追加ルール:

  • 見出しはサイズのみでスタイルを設定します。見出しに太字を追加しないでください。
  • すべてのテキストと見出しはデフォルトの黒にします。テキストや見出しに他の色を追加しないでください。
  • 各段落の後に間隔を追加します。
  • 表は読みやすさのために、行ごとに交互に網掛けします。
  • .docx を生成する際は、すべての要素に Arial フォント、見出しのサイズ、黒色(テーマカラーではないもの)、行間 1.15 を明示的に設定します。Word のデフォルトスタイルに依存しないでください。

参考資料

  • references/prompt-structure-guide.md — 9 要素のプロンプト構成、文字数配分、圧縮テクニック
  • references/docx-generator.js — JSON データから .docx ファイルを生成する Node.js スクリプト
  • references/AI Prompting Techniques.pdf — プロンプト構成フレームワークの元資料

関連スキル

  • agent-skill-builder — 逆方向の変換:ChatGPT Projects を Claude スキルに変換します
  • skill-creator — Claude スキルを新規作成するためのガイド

コメント