記事を対話形式で公開する
CLI を使って記事を1本公開するまでの手順です。 フィールド定義を先に確認してから入力を進めるのがポイントです。
事前準備
APIキーとスペースのスラッグが必要です。まだ取得していない場合は CLI の使いかた を参照してください。
手順
1. スペース情報を確認する
APIベースURLとスペース名を確認します。
supacms space info --space <your-space-slug> --api-key <your-api-key> --pretty出力例:
{ "slug": "supa-media", "name": "Supa Media", "apiBaseUrl": "https://supacms-website-prod-xxxx.supacms.workers.dev"}2. フィールド定義を確認する
どんなフィールドがあるか、型は何かを確認します。この手順を省略すると media 型の誤処理が起きやすいので必ず確認してください。
supacms field list \ --space <your-space-slug> \ --content-type <contentTypeApiId> \ --api-key <your-api-key> \ --pretty各フィールドの config.type を見て、入力形式を把握します。
3. media 型フィールドがある場合はアップロードする
type: "media" のフィールドがある場合、先に画像をアップロードしてIDを取得します。
supacms media upload \ --space <your-space-slug> \ --file ./cover.webp \ --alt "カバー画像" \ --api-key <your-api-key> \ --pretty返ってきた id を次のステップで使います。
{ "id": "01abc123...", "url": "/api/media/supa-media/01abc123...", "filename": "cover.webp"}4. エントリを作成する
export SUPACMS_API_KEY=<your-api-key>
supacms entry create \ --space <your-space-slug> \ --content-type <contentTypeApiId> \ --data '{ "title": "記事タイトル", "body": "本文テキスト", "coverImage": "01abc123..." }' \ --prettymedia 型フィールドには文字列ではなくメディアのIDを文字列として渡します。
返ってきた id を控えておきます。
5. 内容を確認して公開する
supacms entry publish \ --space <your-space-slug> \ --content-type <contentTypeApiId> \ --id <entryId>公開後に取り消す場合は entry unpublish を使います。
フィールド型ごとのデータ形式
| type | --data に渡す値 |
|---|---|
short_text / long_text | "文字列" |
rich_text | "文字列" (Markdown 可) |
boolean | true / false |
integer | 42 |
decimal | 3.14 |
datetime | "2026-08-06T09:00:00.000Z" |
media | "01abc123..." (メディアの id) |
Claude Code スキルとして使う
このガイドの手順は supacms-publish スキル として Claude Code に登録できます。
スキルを使うと、Claude が対話形式でフィールドを1つずつ確認しながら公開作業を進めます。
セットアップ
このリポジトリには .claude/skills/supacms-publish/SKILL.md が含まれています。
Claude Code はプロジェクトルートの .claude/skills/ を自動で読み込むため、追加の設定は不要です。
プロジェクトルート/└── .claude/ └── skills/ └── supacms-publish/ └── SKILL.md ← このファイルがスキル定義使い方
Claude Code のチャット欄で以下のように話しかけるだけです。
/supacms-publishまたは自然文でも起動します。
supa-media スペースの article コンテンツタイプで記事を公開したいClaude がスキルを検出し、スペース情報の確認 → フィールド一覧の取得 → 1フィールドずつ対話 → 公開 の順で進めます。
スキルが行うこと
supacms space infoでスペースと API ベース URL を確認supacms field listでフィールド定義を取得media型があればsupacms media uploadでアップロード → ID を取得- フィールドを 1つずつ 質問して値を収集
supacms entry createでエントリを作成(draft)- 内容を確認してから
supacms entry publishで公開
AI エージェント向けのより詳細な設定は AI エージェントからの操作 も参照してください。