Agent と version
Agent は名前にすぎません。モデル、プロンプト、grant を持つのは version です。Session は version に束縛され、それを保ち続けます。
Agent は設定を持ちません。Workspace 内の名前であり、session が指し示すためのアイデンティティです。振る舞いを決めるものはすべて agent version にあります。
subako agent create --name support-triage
subako agent list
subako agent show <agent-id>
Version はイミュータブル
公開は何かを書き換える操作ではありません。新しい version を追加するだけで、新しい session が束縛するのは最新の live version です。
subako agent publish <agent-id> --config agent.json --model-provider <provider-id>
subako agent versions <agent-id>
Session は 作成時に一度だけ version に束縛し、束縛し直すことはありません。会話の途中で公開された version が、すでに動いている session を変えることはなく — だからこそ、営業時間中の公開が安全なのです。
Version は永続します。新しい session を別の version に移すには、より新しい version を公開してください。新しい session が束縛する version は agent versions が示します。
Agent の削除は、すべてか無かです。
subako agent delete <agent-id>
これは agent とそのすべての version、そしてそれらを動かしたすべての session を削除します。請求履歴は保持されますが、トランスクリプトは残りません。
設定ドキュメント
その形はサーバーが決めます。subako agent config-example は、あなたの provider が話す format で、公開できる最小のものを表示します。
{
"system_prompt": "You are a helpful assistant.",
"model": {
"format": "anthropic",
"model": "your-model-id",
"max_tokens": 8192
}
}
system_prompt?string
モデルが従う恒常的な指示。
stringmodelobject
この version がどのモデルで動くか。format(anthropic または openai_responses)、モデル id、それに伴う上限値。
objectskills?array
この version が grant する skill。Grant は version 番号を固定することも、skill の最新に追随させることもできます。
arraymcp?array
この version が呼び出せる MCP サーバー。Broker が呼び出し時に session の vault から credential を付与します。
arrayProvider はファイルではなく、公開時の --model-provider で指定します。その format は、設定の model が話す format と一致していなければなりません — anthropic の設定を openai_responses の provider に対して公開しようとすると拒否されます。
何を grant するか
Grant は agent version の権限であり、積み重なります。Skill は agent に何かのやり方を伝え、MCP サーバーはそれを行う場所を与え、vault は — version ごとではなく session ごとに指定されて — broker がどの credential を使うかを決めます。
この分離があるからこそ、ひとつの公開済み version が、ある顧客には本番の vault で、別の顧客にはサンドボックスの vault で動けます。その間に再公開は要りません。