WordPress、およびこのプラグイン。
アプリを起動、CSPを実行、認証を所有、ブリッジを実行。Chromeが拡張機能に対して果たすのと同じ役割。
WPデータへの型付きBridge。10秒でセットアップできるApp-Password認証。1つのCLIコマンドでAtomic deploy。信頼できないバンドルの場合はiframeモード、またはネイティブSEOとサイト所有ルートが必要な場合はインラインモードを選択できます。
考え方
DesignSetGo Appsは1つのWordPressプラグインです。それを通じて配信するアプリはプラグインではありません。それらはサンドボックス化された静的バンドル(HTML、JS、CSS、WASM)とdsgo-app.jsonマニフェストです。ランタイムはそれらをロード、サンドボックス化し、型付きブリッジを通じてWordPressデータをフィードします。アプリはRESTトークンを見ません。
アプリを起動、CSPを実行、認証を所有、ブリッジを実行。Chromeが拡張機能に対して果たすのと同じ役割。
ビルド出力に、権限を宣言するdsgo-app.jsonを追加。PHPなし、共有プロセスなし。/apps/{slug}に配置されます。
アプリが投稿、ページ、現在のユーザー、ストレージ、アビリティをリクエストします。ランタイムが各アプリが何を見ることができるかを強制します。
一言で表すと:以前はフルの信頼でWordPressプラグインとして提供していたもの (計算機、ポータル、ダッシュボード、AIツール) が、宣言されたパーミッションを持つサンドボックスバンドルになります。カテゴリーは変わりません。セキュリティモデルが変わります。
ループ
CLIはデフォルトで最小限のスターターを生成するか、マルチページアプリの場合は--astroでAstroスターターを生成します。任意の静的バンドルが動作します。WordPress Application Passwordで認証してバンドルをプッシュしますが、その後の各デプロイは同じアプリIDでアトミックに更新されます。
単一のindex.html、設定されたdsgo-app.json、ブリッジサーフェスを文書化するAGENTS.md(およびCLAUDE.mdインポート)。ビルドステップは不要で、そのままデプロイされます。マルチページスターター用に--astroを追加(予約フロー、メンバーポータル、インテークウィザード)。
designsetgo apps init my-app WordPress Application Passwordを使用します。コアに組み込まれ、スコープ付き、取り消し可能です。認証情報は~/.config/designsetgo/credentials.jsonに0600権限で保存されます。
designsetgo apps login ディレクトリをバンドルし、機能差分を表示し、サイト上のバンドルをアトミックに置き換えます。好きなだけ再実行でき、同じアプリID、ダウンタイムなし。Astroスターター用に--buildを渡すと、CLIがnpm run buildを最初に実行します。
designsetgo apps deploy ブリッジクライアント
@designsetgo/app-clientパッケージは、WordPressサイトへの型付きアクセスを提供します。インラインモード(同一ウィンドウ)とiframeモード(クロスフレーム)で同じサーフェスです。トランスポートは自動選択されます。
// Read posts, pages, the current user, and per-app storage.
// The bridge handles auth + REST behind the scenes.
import { dsgo } from "@designsetgo/app-client";
await dsgo.ready;
// Site context
const site = await dsgo.site.info();
// Real posts, filtered by what the current user can see
const { posts } = await dsgo.posts.list({
type: "recipe",
orderby: "date",
order: "desc",
per_page: 10,
});
// Logged-in user, and what they're allowed to do
const me = await dsgo.user.current();
if (await dsgo.user.can("edit_posts")) {
// show the editor-only UI
}
// Per-app, per-user persistent storage; survives reloads
await dsgo.storage.user.set("favourites", [42, 88]); あなたのAIエージェントが見ること
スターターはプロジェクトルートに完全な拡張マニュアルを提供します。AGENTS.md はベンダー中立的なカノニカルファイルです。Codex、Cursor、Aider、その他 agents.md 規約に従うツールがそれを直接読み取ります。CLAUDE.md は AGENTS.md への 1 行の @-import のため、Claude Code は重複やずれなしで同じコンテンツを取得します。
CLAUDE.md を自動的に読み取り、@ で AGENTS.md をインポートします。designsetgo apps init + Claude Code で開く方法が最も簡単です。
プロジェクトコンテキストとして AGENTS.md を読み取ります。これは Codex のプロジェクトメモリが使用する規約です。既に配置されているため、名前を変更するものはありません。
どちらも AGENTS.md 規約をそのまま使用し、同じファイルで両者に対応しています。
AGENTS.md を追加コンテキストとして提供します。ブリッジ仕様はベンダー中立的です。ランタイムには Anthropic 固有の依存関係はありません。
エージェントスキルパック
AGENTS.md はエージェントが DesignSetGo プロジェクト内に入った後に情報を提供します。DSGo スキルパックは入る際に情報を提供します。ユーザーレベルにインストールされているため、エージェントは apps init が実行される前にマニフェストスキーマ、すべての dsgo.* メソッド、および CLI ループを既に認識しています。
npx skills add DesignSetGo/skills
building-dsgo-apps スキャフォルディング、inline 対 iframe の選択、プロジェクトレイアウト。 dsgo-manifest dsgo-app.json のすべてのフィールド: ルート、権限、シークレット、スケジュール済みジョブ、webhook。 dsgo-bridge-api すべての dsgo.* メソッド、その権限ゲート、そのエラーコード形式。 deploying-dsgo-apps @designsetgo/cli ループ、プレビューデプロイ、環境変数認証による CI。 dsgo-abilities サイトへ能力を公開する、能力を消費する、dsgo.ai.prompt ツール呼び出し。 分離モード
同じバンドル形式、同じブリッジ、異なるレンダリング。アプリはマニフェストで何を望むか宣言します。詳細なトレードオフについては「仕組み」を参照してください。
/apps/{slug}/{route} でレンダリングされ、routes による複数ページルート、リクエストごとの CSP nonce、インストール時のサニタイズ、オプションのテーマヘッダー/フッターラップ、および自動サイトマップ包含があります。コンテンツが豊富なアプリについてはこれを選択してください。
アプリは allow-same-origin なしで <iframe sandbox> 内でレンダリングされ、不透明なオリジンを持ちます。シングルページ、クロール不可、Claude アーティファクトのドロップインや最強の分離保証を求めるバンドルに最適です。
ライセンス + 価格
ブリッジクライアント(@designsetgo/app-client)とCLI(@designsetgo/cli)はGitHubでMITライセンスされています。プラグインランタイムは1つのzipです。Freeはアップロードされたバンドルをホストしますが、CLIプッシュはホストしません。そのため、CLIデプロイには有料プランが必要です。 価格を確認する →
3 つのコマンド
スターターはセットアップ済みの型付きブリッジと、すべてのメソッドをドキュメント化した AGENTS.md が付属します。designsetgo apps init --astro はマルチページアプリ向けに Astro を追加します。
$ npm i -g @designsetgo/cli $ designsetgo apps init my-mortgage --astro ✓ scaffolded · 12 files · 5 kB $ designsetgo apps login --site example.com ✓ stored credentials $ designsetgo apps deploy --site example.com ✓ live at example.com/apps/my-mortgage └ permissions: read_content, send_messages