テーマ切替
CLI / Auth model
Takos CLI は task-oriented です。 HTTP verb をそのまま露出するのではなく、domain ごとの task を前面に出します。
認証
takos login
takos login はブラウザリダイレクト方式で認証します。
- CLI がローカルに一時 HTTP サーバーを起動する
- ブラウザで
{apiUrl}/auth/cli?callback=...&state=...を開く - ユーザーがブラウザ上で認証を完了する
- コールバックでトークンを受け取り、
~/.takos/credentials.jsonに保存する
bash
takos login
takos whoami
takos logoutOAuth Device Flow との違い
OAuth 仕様 で文書化されている Device Authorization Grant はサードパーティアプリ向けです。takos login はブラウザコールバック方式を使い、Device Flow は使いません。
認証モードの優先順位
CLI は次の順序で認証情報を解決します。
- 環境変数 —
TAKOS_SESSION_IDまたはTAKOS_TOKENが設定されていればそれを使う - セッションファイル — カレントディレクトリから親方向に
.takos-sessionファイルを探索する - ユーザー設定 —
~/.takos/credentials.jsonを読む(takos loginで保存される)
container mode
Takos session container 内では、環境変数による自動認証が使えます。
| 環境変数 | 説明 |
|---|---|
TAKOS_SESSION_ID | セッション ID による認証 |
TAKOS_TOKEN | トークンによる認証 (TAKOS_SESSION_ID の代替) |
TAKOS_WORKSPACE_ID | デフォルト workspace の指定 |
TAKOS_API_URL | API エンドポイントの指定 |
endpoint 切り替え
endpoint は preset 名またはカスタム URL で切り替えられます。
bash
takos endpoint use prod # https://takos.jp
takos endpoint use staging # https://test.takos.jp
takos endpoint use local # http://localhost:8787
takos endpoint use https://custom.example.com
takos endpoint show| preset | URL |
|---|---|
prod / production | https://takos.jp |
staging / test | https://test.takos.jp |
local | http://localhost:8787 |
domain + task verbs
Takos CLI では api 直叩きではなく、domain + task verbs を使います。
例:
bash
takos workspace list
takos repo create --body '{"name":"my-repo"}'
takos deploy --space SPACE_ID --repo REPO_ID --ref main
takos run follow RUN_ID --transport ws共通 task verb
すべての domain で共通して使える verb:
| verb | HTTP method | 説明 |
|---|---|---|
list | GET | リソースの一覧取得 |
view | GET | リソースの詳細取得 |
create | POST | リソースの作成 |
replace | PUT | リソースの置き換え |
update | PATCH | リソースの部分更新 |
remove | DELETE | リソースの削除 |
probe | HEAD | リソースの存在確認 |
describe | OPTIONS | 利用可能な操作の確認 |
stream 対応 domain は追加で watch と follow を持ちます。
domain の詳細は CLI コマンドリファレンス を参照してください。
removed legacy surface
Takos CLI は次を intentionally 露出しません。
takos api ...- 直接的な HTTP verb style subcommands
- 古い legacy command group
deploy CLI
takos deploy は repo-local .takos/app.yml を前提に deploy します。
bash
takos deploy --space SPACE_ID --repo REPO_ID --ref main
takos deploy validate
takos deploy status --space SPACE_ID
takos deploy status APP_DEPLOYMENT_ID --space SPACE_ID
takos deploy rollback APP_DEPLOYMENT_ID --space SPACE_ID| flag | required | description |
|---|---|---|
--repo | yes | repo ID |
--ref | no | branch / tag / commit (default: current git branch or main) |
--ref-type | no | branch / tag / commit (default: branch) |
--space | no | space ID (default: config の current space) |
--approve-oauth-auto-env | no | OAuth auto env 変更の自動承認 |
--approve-source-change | no | source provenance 変更の自動承認 |
--json | no | JSON 出力 |
takos deploy validate は local manifest validation のみ行い、API は呼びません。