cli について
Tambo CLI は、プロジェクトの初期化、UI コンポーネントの追加、テンプレートからのアプリ作成に使うエージェント向けコマンドラインツールです。非対話操作や変更のプレビュー、エージェント向けドキュメントの生成にも対応します。
主な機能
- 01API キーまたはプロジェクト ID で初期化
- 02UI コンポーネントの追加と一覧表示
- 03テンプレートからアプリを作成
- 04dry run による変更のプレビュー
- 05非対話環境と CI での実行
- 06AGENTS.md の生成または更新
活用シーン
- 01エージェント主導のワークフローで Tambo を設定
- 02プロジェクトへのチャット UI の追加
- 03標準テンプレートからの新規アプリ作成
- 04CI でのセットアップコマンドの実行
MCP 対応
MCP のエリシテーション UI コンポーネントと、MCP のプロンプトおよびリソース選択ボタンを含みます。MCP サーバーの管理や接続機能については記載されていません。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ tambo-ai/ tambo --skill cliインストール後、Claude Code で/cliを入力して読み込まれたか確認します。
詳細
Tambo CLI
プロジェクトのセットアップとコンポーネント管理に対応した、エージェント向け CLI です。
クイックスタート
npx tambo init --api-key=sk_... # Initialize with API key
npx tambo add message-thread-full --yes # Add a component
npx tambo create-app my-app --template=standard # New app from template
非対話モード
CLI は非対話環境を検出すると、処理を停止せずにガイダンスを返します。
# In CI or piped environments, this returns guidance (exit 2) instead of prompting
npx tambo init
# Error: Project name required.
# Run one of:
# tambo init --project-name=myapp # Create new project
# tambo init --project-id=abc123 # Use existing project
検出ロジック
以下のいずれかに該当する場合、非対話モードになります。
process.stdin.isTTYが false(入力がパイプ経由)process.stdout.isTTYが false(出力がパイプ経由)CI環境変数が設定されているGITHUB_ACTIONS=true
FORCE_INTERACTIVE=1 を設定すると、強制的に対話モードになります(実際の TTY が必要です)。
終了コード
| コード | 意味 |
|---|---|
| 0 | 成功 |
| 1 | エラー(ネットワーク、無効な引数など) |
| 2 | ユーザーによる操作が必要です。正確なコマンドは stderr を確認してください |
エージェント向けコマンド
プロジェクトを初期化する
# Option 1: Direct API key (simplest for agents)
npx tambo init --api-key=sk_...
# Option 2: Create new project (requires prior auth)
npx tambo init --project-name=myapp
# Option 3: Use existing project
npx tambo init --project-id=abc123
# Skip all prompts with defaults
npx tambo init --yes --project-name=myapp
コンポーネントを追加する
npx tambo add form --yes # Skip confirmation
npx tambo add form graph --yes # Multiple components
npx tambo add form --prefix=src/components # Custom directory
npx tambo add form --dry-run # Preview changes
npx tambo add form --legacy-peer-deps # For dependency conflicts
コンポーネントライブラリ
ui.tambo.co で、すべてのコンポーネントを確認し、プレビューできます。
利用可能なコンポーネント
| コンポーネント | 説明 |
|---|---|
message-thread-full | すべてのコンテンツとインタラクションを含む完全なメッセージスレッド |
message-thread-panel | サイドパネルまたはモーダル内に表示するメッセージスレッド |
message-thread-collapsible | 展開または折りたたみが可能なメッセージスレッド |
message | Markdown に対応した個々のメッセージ |
message-input | 会話でメッセージを作成して送信 |
message-suggestions | ユーザーの返信作成を支援する AI 生成の候補 |
control-bar | インターフェース内の操作とアクション |
input-fields | スタイルと検証機能を備えた再利用可能な入力フィールド |
graph | グラフベースのデータ構造を視覚化 |
form | 検証機能を備えたユーザー入力フォーム |
map | クラスタリングとヒートマップに対応したインタラクティブマップ |
canvas-space | チャットメッセージからレンダリングされたコンポーネントを表示 |
thread-history | 会話スレッドの時系列履歴 |
thread-dropdown | 折りたたみ可能なチャットスレッド用のドロップダウンメニュー |
thread-content | スレッド内のメッセージを表示 |
scrollable-message-container | 新しいメッセージまで自動スクロールするコンテナ |
edit-with-tambo-button | 操作可能なコンポーネント向けのインライン AI エディターボタン |
elicitation-ui | ユーザー入力要求用の MCP elicitation UI |
mcp-components | MCP プロンプトおよびリソース選択ボタン |
含まれるもの
各コンポーネントには、以下が含まれます。
- ソースコードがプロジェクトにコピーされます(依存関係ではありません)
- フックが事前設定された Tambo 連携
- Tailwind CSS による スタイリング(カスタマイズ可能)
- 完全な型定義を備えた TypeScript
例:完全なチャットインターフェース
npx tambo add message-thread-full control-bar --yes
これにより、以下を備えた完全なチャット UI が追加されます。
- メッセージ履歴の表示
- AI 生成コンポーネントのレンダリング
- 送信ボタン付きの入力バー
- ストリーミング状態インジケーター
コンポーネントを一覧表示する(プロンプトなし)
npx tambo list --yes
新しいアプリを作成する
npx tambo create-app my-app --template=standard
認証
npx tambo auth login --no-browser # Prints URL instead of opening browser
npx tambo auth status # Check current auth (no prompts)
セットアップを一括実行する(1 つのコマンド)
npx tambo full-send # Complete setup with components
エージェント向けドキュメント
CLI は Tambo のドキュメントを含む AGENTS.md を自動で作成・更新します。
npx tambo add form --yes # Also updates AGENTS.md
生成されるセクションには、非対話モードで使用する形式の CLI コマンドが含まれます。
主なフラグの概要
| フラグ | コマンド | 目的 |
|---|---|---|
--yes、-y | init, add, list | すべてのプロンプトをスキップする |
--api-key | init | API キーを直接入力する |
--project-name | init | 新しいプロジェクトを作成する |
--project-id | init | 既存のプロジェクトを使用する |
--no-browser | auth login | ブラウザーを開かずに URL を出力する |
--dry-run | add | インストールせずにプレビューする |
--prefix | add, list | コンポーネントディレクトリをカスタマイズする |
コメント
Markdown 対応