appdeploy
バックエンドAPI、データベース、ファイルストレージを備えたウェブアプリをデプロイできます。ユーザーがウェブサイトやウェブアプリのデプロイ・公開を希望し、公開URLが必要な場合に使用します。curlを使ったHTTP APIで動作します。
description の原文を見る
Deploy web apps with backend APIs, database, and file storage. Use when the user asks to deploy or publish a website or web app and wants a public URL. Uses HTTP API via curl.
SKILL.md 本文
AppDeploy スキル
HTTP API を使用して AppDeploy にウェブアプリをデプロイします。
このスキルを使用する場合
- アプリやウェブアプリの計画または構築時
- アプリを公開 URL にデプロイする時
- ウェブサイトやウェブアプリを公開する時
- ユーザーが「これをデプロイして」「これを本番環境にして」「URL をください」などと言った時
- 既にデプロイされたアプリを更新する時
セットアップ(初回のみ)
-
既存の API キーを確認する:
- プロジェクトルートの
.appdeployファイルを探す - ファイルが存在し、有効な
api_keyが含まれていれば、「使用方法」に進む
- プロジェクトルートの
-
API キーが存在しない場合は登録して取得する:
curl -X POST https://api-v2.appdeploy.ai/mcp/api-key \ -H "Content-Type: application/json" \ -d '{"client_name": "claude-code"}'レスポンス:
{ "api_key": "ak_...", "user_id": "agent-claude-code-a1b2c3d4", "created_at": 1234567890, "message": "Save this key securely - it cannot be retrieved later" } -
認証情報を
.appdeployに保存する:{ "api_key": "ak_...", "endpoint": "https://api-v2.appdeploy.ai/mcp" }.appdeployを.gitignoreに追加してください(まだの場合)。
使用方法
MCP エンドポイントに JSON-RPC 呼び出しを行います:
curl -X POST {endpoint} \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Authorization: Bearer {api_key}" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "{tool_name}",
"arguments": { ... }
}
}'
ワークフロー
-
まずデプロイ指示を取得する:
get_deploy_instructionsを呼び出して、制約と要件を理解します。 -
アプリテンプレートを取得する: 選択した
app_typeとfrontend_templateでget_app_templateを呼び出します。 -
アプリをデプロイする: アプリファイルで
deploy_appを呼び出します。新規アプリの場合は、app_idをnullに設定してください。 -
デプロイ状況を確認する:
get_app_statusを呼び出してビルドが成功したか確認します。 -
アプリを表示/管理する:
get_appsを使用してデプロイされたアプリを一覧表示します。
利用可能なツール
get_deploy_instructions
deploy_app を呼び出そうとしている時に使用します。デプロイの制約と厳密なルールを取得します。コードを生成する前にこのツールを呼び出す必要があります。このツールは指示のみを返し、デプロイは行いません。
パラメータ:
deploy_app
ユーザーがウェブサイトやウェブアプリのデプロイまたは公開を要求し、公開 URL が必要な場合に使用します。 ファイルを生成またはこのツールを呼び出す前に、get_deploy_instructions を呼び出してその制約に従う必要があります。
パラメータ:
app_id: any (必須) - 既存アプリ ID を更新するか、新規アプリの場合は nullapp_type: string (必須) - アプリアーキテクチャ: frontend-only または frontend+backendapp_name: string (必須) - 短い表示名description: string (オプション) - アプリの機能について短い説明frontend_template: any (オプション) - app_id が null の場合は必須。'html-static'(シンプルサイト)、'react-vite'(SPA、ゲーム)、'nextjs-static'(複数ページ)のいずれか。テンプレートファイルは自動含含。files: array (オプション) - 書き込むファイル。新規アプリ:カスタムファイルとテンプレートファイルへの差分のみ。更新:diffs[] を使用した変更ファイルのみ。files[] または deletePaths[] の少なくとも一つが必須。deletePaths: array (オプション) - 削除するパス。更新時のみ(app_id 必須)。package.json またはフレームワークのエントリポイントは削除不可。model: string (必須) - このデプロイに使用されたコーディングエージェントモデル(わかる範囲で)。例: 'codex-5.3'、'chatgpt'、'opus 4.6'、'claude-sonnet-4-5'、'gemini-2.5-pro'intent: string (必須) - このデプロイの意図。ユーザー起動例:'initial app deploy'、'bugfix - ui is too noisy'。エージェント起動例:'agent fixing deployment error'、'agent retry after lint failure'
get_app_template
まず get_deploy_instructions を呼び出してください。app_type と frontend_template を決定したら、これを一度呼び出します。ベースアプリテンプレートと SDK タイプを返します。テンプレートファイルは deploy_app に自動含含されます。
パラメータ:
app_type: string (必須)frontend_template: string (必須) - フロントエンドフレームワーク: 'html-static' - シンプルサイト、最小限のフレームワーク、'react-vite' - React SPA、ダッシュボード、ゲーム、'nextjs-static' - 複数ページアプリ、SSG
get_app_status
deploy_app ツール呼び出しが返された時、またはユーザーがアプリのデプロイ状況の確認を要求した時、またはアプリにエラーがあるか期待通りに動作していないと報告された時に使用します。デプロイ状況(進行中:'deploying'/'deleting'、終了:'ready'/'failed'/'deleted')、QA スナップショット(フロントエンド/ネットワークエラー)、およびライブフロントエンド/バックエンドエラーログを返します。
パラメータ:
app_id: string (必須) - ターゲットアプリ IDsince: integer (オプション) - エポックミリ秒単位のオプショナルタイムスタンプでエラーをフィルタリング。指定された場合、そのタイムスタンプ以降のエラーのみを返します。
delete_app
アプリを永続的に削除したい時に使用します。ユーザーの明示的なリクエストのみで使用してください。これは取り消し不可です。削除後、ステータスチェックは見つからないことを返します。
パラメータ:
app_id: string (必須) - ターゲットアプリ ID
get_app_versions
既存アプリのデプロイ可能なバージョンを一覧表示します。app_id が必須です。最新優先の {name, version, timestamp} 項目を返します。ユーザーに 'name' を表示してください。ユーザーに 'version' 値を表示しないでください。タイムスタンプ値はユーザーのローカルタイムに変換する必要があります
パラメータ:
app_id: string (必須) - ターゲットアプリ ID
apply_app_version
既存アプリの特定のバージョンのデプロイを開始します。get_app_versions から 'version' 値('name' ではなく)を使用してください。デプロイが受け入れられて開始された場合は true を返します。完了を監視するには get_app_status を使用してください。
パラメータ:
app_id: string (必須) - ターゲットアプリ IDversion: string (必須) - 適用するバージョン ID
src_glob
アプリのソーススナップショット内のファイルを発見する必要がある時に使用します。グロブパターンに一致するファイルパスを返します(内容なし)。ファイルを読み込んだり検索したりする前にプロジェクト構造を探索するのに役立ちます。
パラメータ:
app_id: string (必須) - ターゲットアプリ IDversion: string (オプション) - 検査するバージョン(デフォルト:適用されたバージョン)path: string (オプション) - 検索するディレクトリパスglob: string (オプション) - ファイルに一致するグロブパターン(デフォルト: **/*)include_dirs: boolean (オプション) - 結果にディレクトリパスを含めるcontinuation_token: string (オプション) - ページネーション用の前回のレスポンスのトークン
src_grep
アプリのソースコード内のパターンを検索する必要がある時に使用します。オプションのコンテキスト付きで一致する行を返します。正規表現パターン、グロブフィルタ、複数の出力モードをサポートします。
パラメータ:
app_id: string (必須) - ターゲットアプリ IDversion: string (オプション) - 検索するバージョン(デフォルト:適用されたバージョン)pattern: string (必須) - 検索する正規表現パターン(最大 500 文字)path: string (オプション) - 検索するディレクトリパスglob: string (オプション) - ファイルをフィルタリングするグロブパターン(例:'*.ts')case_insensitive: boolean (オプション) - 大文字小文字を区別しないマッチングを有効にするoutput_mode: string (オプション) - content=一致する行、files_with_matches=ファイルパスのみ、count=ファイルごとのマッチ数before_context: integer (オプション) - 各マッチの前に表示する行数(0-20)after_context: integer (オプション) - 各マッチの後に表示する行数(0-20)context: integer (オプション) - 前後の行数(before_context/after_context をオーバーライド)line_numbers: boolean (オプション) - 出力に行番号を含めるmax_file_size: integer (オプション) - スキャンするファイルの最大サイズ(バイト単位、デフォルト 10MB)continuation_token: string (オプション) - ページネーション用の前回のレスポンスのトークン
src_read
アプリのソーススナップショットから特定のファイルを読み込む必要がある時に使用します。行ベースのページネーション(offset/limit)でファイル内容を返します。テキストとバイナリの両方のファイルを処理します。
パラメータ:
app_id: string (必須) - ターゲットアプリ IDversion: string (オプション) - 読み込むバージョン(デフォルト:適用されたバージョン)file_path: string (必須) - 読み込むファイルのパスoffset: integer (オプション) - 読み込み開始行オフセット(0 から始まる)limit: integer (オプション) - 返す行数(最大 2000)
get_apps
現在のユーザーが所有するアプリを一覧表示する必要がある時に使用します。ユーザー表示用の表示フィールドとツールチェーン用のデータフィールド付きアプリの詳細を返します。
パラメータ:
continuation_token: string (オプション) - ページネーション用のトークン
Generated by scripts/generate-appdeploy-skill.ts
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- Endsi3g
- ライセンス
- MIT
- 最終更新
- 2026/3/8
Source: https://github.com/Endsi3g/The-Uprising--Screenrecorder- / ライセンス: MIT