テーマ切替
Workspace
このページでわかること: Takos Workspace の正本 (正とする情報) モデルと、旧
space永続化語彙の境界。
Takos の Workspace は chat、agent、memory、Git repository、app launcher、MCP tools をまとめる private な作業領域です。認証済みの一つの外部 subject は Takos 内の一つの Principal に対応し、その Principal は default Workspace と追加作成した複数の Workspace を所有できます。
txt
external subject
└─ Takos Principal
├─ default Workspace
├─ private Workspace
└─ private Workspace各 Workspace の authority は一つの Principal だけが持ちます。Takos Workspace は共同利用、招待、権限段階、 owner transfer を持ちません。agent や service は独立した Workspace owner ではなく、実行時にその Principal の 現在の authority から必要な capability だけを受け取ります。
Takosumi にも Workspace がありますが、Takosumi 側の共同利用設定は外部 integration の authority です。 それだけを根拠に Takos 内の Workspace access を付与することはありません。
既定の Workspace
Principal の作成時に default Workspace を用意します。GET /api/me/personal-space と /api/spaces/me はこの Workspace を解決する互換 endpoint / selector です。default Workspace は削除できません。
HTTP 契約
current transport は互換性のため /api/spaces を維持しています。Workspace response は次の product data だけを返します。
id,name,slug,descriptionis_defaultsecurity_posturecreated_at,updated_at
Workspace の種類や利用者別の権限を表す field は公開しません。Workspace selector と名前は core で非空・長さ制限を検証し、 list / resolve / update / delete はすべて authenticated Principal の owner scope に閉じます。
永続化の互換性
旧 schema の accounts と account_memberships は、migration compatibility と integrity witness のためだけに Worker SQL adapter の内側へ残っています。これらは current domain model ではありません。
adapter が Workspace access を認めるのは、次のすべてが同時に成立するときだけです。
- Principal row が存在し、active です。
- Workspace row が active で、その
owner_account_idが Principal と一致します。 - 同じ Principal を指す active owner witness が存在します。
旧 row に別の値を追加したり、owner witness を偽装したりしても authority は増えません。suspended row や不一致 row は access を拒否します。
Git の状態
Workspace の作成時に空の default repository は自動作成しません。POST /api/spaces と GET /api/spaces/:spaceId も repository record を埋め込みません。Git は明示的に作成または install した capability (通常は takos-git の Interface)として接続します。
旧 version で作成済みの repository row はこの cutover では削除しません。Workspace lifecycle と repository lifecycle は 別に保ちます。
Runtime の capability
Principal owner proof を実行時に再検証した後だけ、Workspace の tool executor に capability を渡します。
storage.read/write / repo.read/write / egress.http / oauth.exchange / vectorize.write / queue.write / analytics.write / workflow.invoke / durable_object.use / billing.meter
queued Run は作成時の requester Principal を必須とし、欠落している旧 Run から Workspace owner を推測しません。 Principal または owner witness が無効になった場合も、dispatch と tool bootstrap は安全側に停止します。
課金との関係
請求主体は operator account plane(リファレンス実装: Takosumi Accounts)/ BillingPort です。Takos Workspace ごとの usage は 明示された外部 account-plane binding を通して集計し、Takos の local owner proof と混同しません。詳しくは 課金 と Takosumi を自分で動かす を参照してください。
関連ドキュメント
- Takosumi を自分で動かす — 外部 account-plane boundary
- Capsule の実行モデル — Workspace に追加する Capsule の plan / apply の記録
- Takosumi の概念 — Source / Capsule / Run / StateVersion / Output の全体像
