Project 作成
このページの内容
sota init my-app --features all
cd my-app
# terminal 1 — 自分の watcher
npm run dev
# terminal 2 — Development session
npm run dev:sotasota init は manifest schema v3 対応 scaffold を作ります。--features なしでは capability を対話選択でき、--features admin-screen,skill,backend,tool,tool-result-ui(または all)で事前指定できます。後から sota add で追加できます。
Scaffold feature#
| Feature | 追加されるもの | 同時に含まれる |
|---|---|---|
admin-screen | Local 開発用の watch build を備えた React + TypeScript + Vite の native page。 | — |
skill | Content-backed な SKILL.md contribution。Backend は不要です。 | — |
backend | Request log、Core JWT 検証、health route を備えた最小の Express service。 | — |
tool | Agent 向け tool 一式:manifest entry、input/output JSON Schema、応答する backend route。 | backend |
tool-result-ui | Tool に加えて、conversation 内でその結果の下に描画される React surface。 | tool、backend |
Scaffold は利便性であって要件ではありません。
Express、npm、TypeScript を使っているのは広く理解されているからで、platform が要求しているからではありません。Platform の contract は素の HTTP と manifest だけです。宣言した route を提供でき invocation token を検証できる言語・runtime であれば、いずれも正規の app backend です。
Template の構成#
| Path | 用途 |
|---|---|
manifest.yaml | Identity、version、contribution、runtime binding、health、locale、platform compatibility。 |
src/backend/ | 認証検証、health、tool route を含む service。 |
src/ui/ | UI slot 向け Native React module と style。 |
src/skills/ | Content-backed skill。 |
src/schemas/ | Tool input/output の JSON Schema。 |
src/locales/ | ローカライズ文字列。 |
.sota/app-ui-contracts/ | 生成済み UI contract。手動編集しません。 |
.agent/skills/ | Architecture、security、testing、tool、UI の開発 best practices。 |