AgentSkillsCN

cli

Tambo CLI 参考文档,用于项目搭建与组件安装。具备非交互模式与退出码,对代理友好。当您运行 tambo init、tambo add、npx tambo 命令,或浏览组件库时,可使用此技能。若要借助技术建议引导项目创建,则可使用 start-from-scratch 技能;若要将 Tambo 添加到现有项目,则可使用 add-to-existing-project 技能。

SKILL.md
--- frontmatter
name: cli
description: Tambo CLI reference for project setup and component installation. Agent-friendly with non-interactive mode and exit codes. Use when running tambo init, tambo add, npx tambo commands, or browsing the component library. For guided project creation with tech recommendations, use start-from-scratch skill. For adding Tambo to existing projects, use add-to-existing-project skill.

Tambo CLI

Agent-friendly CLI for project setup and component management.

Quick Start

bash
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

Non-Interactive Mode

The CLI detects non-interactive environments and returns guidance instead of hanging:

bash
# 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

Detection Logic

Non-interactive when ANY of these are true:

  • process.stdin.isTTY is false (piped input)
  • process.stdout.isTTY is false (piped output)
  • CI environment variable is set
  • GITHUB_ACTIONS=true

Override with FORCE_INTERACTIVE=1 (requires real TTY).

Exit Codes

CodeMeaning
0Success
1Error (network, invalid args, etc.)
2User action required - check stderr for exact command

Commands for Agents

Initialize Project

bash
# 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

Add Components

bash
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

Component Library

Browse and preview all components at ui.tambo.co.

Available Components

ComponentDescription
message-thread-fullComplete message thread with all content and interactions
message-thread-panelMessage thread in a side panel or modal context
message-thread-collapsibleMessage threads that can be expanded or collapsed
messageIndividual messages with markdown support
message-inputComposes and sends messages in a conversation
message-suggestionsAI-generated suggestions to help users compose responses
control-barControls and actions in the interface
input-fieldsReusable input fields with styles and validation
graphVisualizes graph-based data structures
formCollects user input with validation support
mapInteractive map with clustering and heatmap support
canvas-spaceDisplays rendered components from chat messages
thread-historyChronological history of a conversation thread
thread-dropdownDropdown menu for collapsible chat threads
thread-contentDisplays messages within a thread
scrollable-message-containerContainer that auto-scrolls to new messages
edit-with-tambo-buttonInline AI editor button for interactable components
elicitation-uiMCP elicitation UI for user input requests
mcp-componentsMCP prompt and resource picker buttons

What You Get

Each component includes:

  • Source code copied to your project (not a dependency)
  • Tambo integration pre-configured with hooks
  • Styling via Tailwind CSS (customizable)
  • TypeScript with full type definitions

Example: Full Chat Interface

bash
npx tambo add message-thread-full control-bar --yes

This adds a complete chat UI with:

  • Message history display
  • AI-generated component rendering
  • Input bar with send button
  • Streaming status indicators

List Components (No Prompts)

bash
npx tambo list --yes

Create New App

bash
npx tambo create-app my-app --template=standard

Authentication

bash
npx tambo auth login --no-browser   # Prints URL instead of opening browser
npx tambo auth status               # Check current auth (no prompts)

Full Setup (One Command)

bash
npx tambo full-send    # Complete setup with components

Agent Docs

The CLI auto-creates/updates AGENTS.md with Tambo documentation:

bash
npx tambo add form --yes   # Also updates AGENTS.md

The generated section includes CLI commands formatted for non-interactive use.

Key Flags Summary

FlagCommandsPurpose
--yes, -yinit, add, listSkip all prompts
--api-keyinitDirect API key input
--project-nameinitCreate new project
--project-idinitUse existing project
--no-browserauth loginOutput URL instead of opening
--dry-runaddPreview without installing
--prefixadd, listCustom component directory