Skip to content

初回セットアップ ​

このページでわかること: self-host / operator-managed Takos を新規に立ち上げるときの Web ベース確認。

Takos distribution worker は Takos product surface を提供し、Accounts / deploy-control / dashboard は外部 Takosumi control plane が所有します。self-host では self-hoster または operator が運用する Takosumi Accounts origin が OIDC issuer です。hosted Takosumi の public platform では https://app.takosumi.com が issuer になります。

Takos runtime は外部 hosted Takosumi Accounts を必須にしません。upstream Google / GitHub / enterprise OIDC / passkey は Takosumi Accounts plane の upstream IdP / credential policy として扱い、Takos product routes は account-plane subject から app-local profile / session を作ります。

Prerequisites ​

  • Takos OpenTofu module が product backing resources (D1 / KV / R2 / Queues) を作成済み
  • worker artifact が同じ origin に deploy 済み
  • BASE_URL が Takos worker origin、TAKOSUMI_ACCOUNTS_URL / OIDC_ISSUER_URL が Takosumi Accounts origin を指す
  • identity.oidc capability が TAKOSUMI_ACCOUNTS_URL / OIDC_ISSUER_URL / OIDC_CLIENT_ID / OIDC_REDIRECT_URI の4つの公開値を届けている (confidential client の OIDC_CLIENT_SECRET は operator が別途 secret store から設定する)
  • DB / SESSION_DO などの Takos product bindings が production または staging profile にある
  • trusted edge / internal service secret は public internet へ露出していない

takos/ shell から本番・staging deploy を直接進めません。deploy 設定と secret 操作は operator-local secret store と Takosumi operations runbook で管理してください。

Env テーブル ​

keysecretscope用途
BASE_URLnoworker originTakos public origin
TAKOSUMI_ACCOUNTS_URLnoAccounts planeexternal Takosumi Accounts API / issuer origin
OIDC_ISSUER_URLnoTakos auth consumerTakosumi Accounts issuer
OIDC_CLIENT_IDnoAccounts projectionTakosumi Accounts plane が発行した client id
OIDC_CLIENT_SECREToptionaloperator secret storeconfidential client の場合だけ使う secret
OIDC_REDIRECT_URInoAccounts projection<BASE_URL>/auth/oidc/callback
ENCRYPTION_KEYyesTakos product DBapp-local secret と委任OAuth tokenの暗号化
DBbindingTakos productapp-local persistence
SESSION_DObindingTakos product sessionbrowser session store

OIDC_* は Takosumi Accounts plane が Takos product routes に投影する consumer metadata です。

1. Admin Web に入る ​

browser で worker origin を開きます。

text
https://<BASE_URL>/

未ログインなら /auth/oidc/login へ進み、Takosumi Accounts issuer で認証します。Takos は /auth/oidc/login / /auth/oidc/callback / /auth/logout を consumer route として受けます。upstream IdP は Accounts plane 側の policy で扱います。

Takos の dynamic client は public PKCE client を標準とし、openid profile email offline_access capsules:read capsules:write を要求します。login は Workspace selector を authorize query や一回限りの state に入れません。Accounts が Capsule/client と現在の membership から Workspace を解決し、callback は UserInfo の nonempty な takosumi.workspace_id と一意で一致する workspace_memberships を検証した場合だけ、access/refresh token と検証済み Workspace binding を ENCRYPTION_KEY で暗号化して app-local DB に保存します。Takos 内の Workspace は product data boundary であり、membership 配列から Workspace を推測したり、claim のない応答を受け入れたりしません。app launcher の plan/apply/list/delete は、ログイン時に発行された親 Workspace binding に対して行います。

2. 初回 setup を完了する ​

初回ユーザーは /setup に送られます。この画面は Takos app-local profile 用の username だけを保存します。ログイン用 credential、upstream IdP、PAT、billing identity は Accounts plane が所有します。

methodpath用途
GET/api/setup/statussetup 状態確認
POST/api/setup/completeusername 保存

3. Accounts bearer で API smoke を行う ​

automation や smoke 用 token は Accounts plane の account settings / PAT flow で発行し、operator secret store に保存します。

bash
curl -fsS \
  -H "Authorization: Bearer $TAKOS_ACCOUNTS_TOKEN" \
  https://<BASE_URL>/api/me

レスポンスに setup 済み user が返れば、browser session と Accounts bearer の consumer 経路は動いています。

Boundary ​

Takos bootstrap の primary path は Web UI / public API です。OpenTofu module Source / Capsule / typed Runs、 StateVersion、Output、ProviderConnection / ProviderBinding、billing / OIDC policy は external Takosumi control plane が扱います。

AGPL-3.0-only