Browse documentation

CLI

katari コマンドの一覧と、MCP サブコマンド (login / pull) のフラグ。

katari はプロジェクトのコンパイル、runtime へのデプロイ、run の管理を行う。各コマンドの詳細は katari <command> --help

コマンド一覧

コマンド説明
init新しい Katari プロジェクトを scaffold する
checkプロジェクトをコンパイルし diagnostics を報告する
buildプロジェクトを IR JSON にコンパイルする
applyコンパイルして runtime に新しい snapshot としてデプロイする
addkatari.toml に依存を追加し katari.lock を更新する
removekatari.toml から依存を削除し katari.lock を更新する
runagent を開始し結果を待つ (Ctrl-C で detach)
status1 つの run の状態・結果・open question を表示する
cancel走っている run を cancel する
answerrun が escalate した question に回答する
lsrun (既定) / agents / snapshots / projects / escalations / files / env を一覧する
envプロジェクトの env entry を管理する (get / set / unset)
fileプロジェクトのファイルを upload / download する
mcpMCP サーバーの credential とバインディングを管理する (login / pull)
projectruntime 上のプロジェクトを管理する (remove, rollback)

多くのコマンドが共通のグローバルオプションを取る: -q,--quiet--verbose--no-input--url URL (runtime URL の上書き)、-C,--directory DIR (katari.toml のあるディレクトリ)。

mcp

MCP 統合の verb。login はプログラムの外で named OAuth credential を確立し、pull は live サーバーから 型付きバインディングモジュールを生成する。手引きは Guides › MCP

katari mcp [--project NAME] <login|pull> ...--project は login の credential が属するプロジェクト (既定: 周囲の katari.toml[package].name)。

mcp login

katari mcp login --url <URL> --name <NAME> [--scope <SCOPE>]

OAuth 2.1 (authorization-code + PKCE + dynamic client registration) を対話的に実行し、得た credential を プロジェクト secret mcp.oauth.<NAME> として保存する (保存時に暗号化、API 上は write-only)。 authorization URL は stderr に印字される。runtime を要する (credential を env API 経由で保存するため)。

フラグ必須説明
--url URL必須認証対象の MCP サーバー (プログラムが mcp.tools に渡す url)
--name NAME必須プログラムが mcp.oauth(name = ...) で参照する credential 名。secret mcp.oauth.<NAME> として保存される
--scope SCOPE任意要求する OAuth scope (space 区切り、サーバーのドキュメントに従う)

保存された credential は通常の env ツーリング (katari ls env / katari env unset) で一覧・削除できる。

mcp pull

katari mcp pull --url <URL> --out <PATH> [--header k=v]... [--oauth [--scope <SCOPE>]]

サーバーのツールを列挙し、自己完結の .ktr バインディングモジュール 1 個を書き出す — ツール 1 つにつき 型付きラッパー agent が 1 つ、それらを接続にクローズした connect agent が返る。再生成はファイルを 上書きする。pull はローカル: runtime 接続も API key も要らない (サーバーと通信してファイルを書くだけ)。

フラグ必須説明
--url URL必須ツールを列挙する MCP サーバー
--out PATH必須生成モジュールを書き出す (上書きする) .ktr ファイル
--header KEY=VALUE任意毎リクエストに送るヘッダ (繰り返し可。例: bearer key)
--oauth任意対話的に認証する (login と同じフロー)。credential は in-memory のみで 何も保存しない
--scope SCOPE任意要求する OAuth scope (--oauth と併用時のみ)
  • pull--name フラグは 無い (何も保存しないため)。
  • auth は直和: --header--oauth相互排他 (サーバーには明示ヘッダ または OAuth で到達する)。
  • --scope--oauth と併用したときだけ有効。

型マッピング

サーバーの JSON Schema を Katari の型に写す。マッピングはパラメータ単位・出力単位で all-or-nothing — json.encode / json.decode は wire form を話すため、型の中に json.json が 1 箇所でもあると生の フラグメントにならないからである。完全にマップできないパラメータ / 出力は json.json に fallback する。

JSON SchemaKatari
string / integer / number / boolean / nullそのまま
array + itemsarray[T]
object + propertiesobject 型 (non-required は ? フィールド)
object + schema 値の additionalProperties のみrecord[T]
anyOf (全メンバーがマップ可)union A | B
それ以外 (enum / constallOf / oneOf、tuple、空スキーマ、識別子にならないフィールド名)json.json fallback

関連