Skip to Content
CLI ReferenceCommands

CLI Commands

pilot start

Start Pilot in polling mode.

pilot start [flags]

Flags

FlagDescription
--telegramEnable Telegram polling (overrides config)
--githubEnable GitHub polling (overrides config)
--gitlabEnable GitLab polling (overrides config)
--linearEnable Linear webhooks (overrides config)
--slackEnable Slack Socket Mode (overrides config)
--discordEnable Discord bot (overrides config)
--planeEnable Plane polling (overrides config)
--autopilot=ENVEnable autopilot: dev, stage, prod
--auto-releaseEnable tag-based release automation (requires autopilot=prod)
--dashboardShow TUI dashboard for real-time task monitoring
-p, --projectProject path (default: config default or cwd)
--replaceKill existing bot instance before starting
--no-gatewayRun polling adapters only (no HTTP gateway)
--sequentialSequential execution: wait for PR merge before next issue
--tunnelEnable public tunnel for webhook ingress (Cloudflare/ngrok)
--teamTeam ID or name for project access scoping
--team-memberMember email for team access scoping
--log-formatLog output format: text or json (default: text)

Examples

# Basic: Telegram + GitHub pilot start --telegram --github # With autopilot (auto-merge after CI) pilot start --telegram --github --autopilot=stage # With dashboard pilot start --telegram --github --dashboard # Sequential execution (wait for merge before next) pilot start --github --sequential # Production with auto-release pilot start --github --autopilot=prod --auto-release # With JSON logging for aggregation systems pilot start --github --log-format=json # Discord bot + GitHub pilot start --discord --github # Plane + GitHub pilot start --plane --github # Full stack: all adapters pilot start --telegram --github --discord --plane --slack --dashboard

pilot task

Execute a single task.

pilot task "description" [flags]

Flags

FlagDescription
-p, --projectProject path (default: current directory)
--dry-runShow what would be executed without running
-v, --verboseStream Claude Code output
--alertsEnable alerts for task execution
--budgetEnable budget enforcement for this task
--teamTeam ID or name for project access scoping
--team-memberMember email for team access scoping

Examples

# Quick local execution pilot task "Fix the typo in README.md" # Preview what will happen pilot task "Refactor auth module" --dry-run # With verbose output pilot task "Add rate limiting" --verbose # With budget enforcement pilot task "Implement caching" --budget # Scoped to specific team pilot task "Update API docs" --team=backend

pilot upgrade

Self-update to latest version.

pilot upgrade [subcommand]

Subcommands

SubcommandDescription
checkCheck for available updates
runDownload and install the latest version (default)
rollbackRestore the previous version from backup

pilot upgrade check

Check for updates without installing.

pilot upgrade check [flags]
FlagDescription
--jsonOutput as JSON

pilot upgrade run

Download and install the latest version.

pilot upgrade run [flags]
FlagDescription
-f, --forceSkip waiting for running tasks
-y, --yesSkip confirmation prompt

pilot upgrade rollback

Restore the previous Pilot version from backup created during upgrade.

pilot upgrade rollback

Examples

# Check for updates only pilot upgrade check # Upgrade (with confirmation) pilot upgrade # Upgrade without confirmation pilot upgrade run --yes # Force upgrade, skip task wait pilot upgrade run --force # Restore previous version pilot upgrade rollback

pilot init

Initialize Pilot configuration.

pilot init [flags]

Creates ~/.pilot/config.yaml with interactive prompts.

Flags

FlagDescription
--forceReinitialize config (backs up existing to .bak)

pilot doctor

Check system health and configuration.

pilot doctor [flags]

Shows what’s working, what’s missing, and how to fix issues.

Flags

FlagDescription
-v, --verboseShow detailed output with fix suggestions

Examples

# Run all checks pilot doctor # Show detailed output pilot doctor --verbose

pilot logs

View task execution logs.

pilot logs [task-id] [flags]

Without arguments, shows recent task logs. With a task ID, shows detailed logs for that specific task.

Flags

FlagDescription
-n, --limitNumber of recent tasks to show (default: 10)
-f, --followFollow log output (not yet implemented)
-v, --verboseShow detailed output
--jsonOutput as JSON

Examples

# Show recent task logs pilot logs # Show last 20 tasks pilot logs --limit 20 # Show logs for specific task pilot logs TASK-12345 # Show logs for GitHub issue task pilot logs GH-15 # JSON output pilot logs --json

pilot status

Show Pilot status and running configuration.

pilot status [flags]

Displays current configuration state including gateway address, enabled adapters, and configured projects.

Flags

FlagDescription
--jsonOutput as JSON for programmatic access

Output

The command displays:

  • Gateway: HTTP endpoint address (host:port)
  • Adapters: Status of each adapter (Linear, Slack, Telegram, GitHub)
  • Projects: Configured project paths with context intelligence detection

Examples

# Show human-readable status pilot status # Output as JSON (for scripts) pilot status --json # Parse JSON with jq pilot status --json | jq '.adapters'

Sample Output

📊 Pilot Status ─────────────────────────────────────── Gateway: http://localhost:8080 Adapters: ✓ Telegram (enabled) ○ Linear (disabled) ○ Slack (disabled) ✓ GitHub (enabled) Projects: • pilot: /Users/dev/pilot [Context] • webapp: /Users/dev/webapp

Setup & Configuration

pilot setup

Interactive setup wizard for Pilot configuration.

pilot setup [flags]

Guides you through configuring Pilot step by step, including Telegram bot, projects, voice transcription, daily briefs, and alerts.

Flags

FlagDescription
--skip-optionalSkip optional features (voice, briefs, alerts)
--tunnelSet up Cloudflare Tunnel for webhooks
--no-sleepDisable Mac sleep for always-on operation (macOS only, requires sudo)

Setup Steps

  1. Telegram Bot - Configure bot token and chat ID
  2. Projects - Add project paths with automatic context intelligence detection
  3. Voice Transcription (optional) - Configure OpenAI Whisper API
  4. Daily Briefs (optional) - Set up scheduled status reports
  5. Alerts (optional) - Enable failure notifications

Examples

# Full interactive setup pilot setup # Quick setup (skip optional features) pilot setup --skip-optional # Set up Cloudflare Tunnel for webhooks pilot setup --tunnel # Disable Mac sleep for always-on server pilot setup --no-sleep

pilot config

Manage Pilot configuration.

pilot config <subcommand>

View, edit, and validate the Pilot configuration file.

Subcommands

SubcommandDescription
showDisplay current configuration
editOpen config in editor
validateValidate configuration syntax
pathShow config file path

pilot config show

Display current configuration.

pilot config show [flags]

Outputs the full configuration in YAML or JSON format.

Flags

FlagDescription
--jsonOutput as JSON instead of YAML

Examples

# Show config as YAML pilot config show # Show config as JSON pilot config show --json # Pipe to tools pilot config show --json | jq '.projects'

pilot config edit

Open configuration in your default editor.

pilot config edit

Opens ~/.pilot/config.yaml in your editor. Uses $EDITOR environment variable, falling back to vim, nano, or vi.

After editing, the configuration is automatically validated.

Editor Selection

  1. $EDITOR environment variable
  2. $VISUAL environment variable
  3. vim (if available)
  4. nano (if available)
  5. vi (if available)

Examples

# Open in default editor pilot config edit # Use specific editor EDITOR=code pilot config edit EDITOR=nano pilot config edit

pilot config validate

Validate configuration syntax and structure.

pilot config validate [flags]

Checks YAML syntax and validates configuration structure. Reports warnings for common issues like missing tokens or non-existent project paths.

Flags

FlagDescription
-q, --quietExit with code 1 on error, no output

Validation Checks

  • YAML syntax validity
  • Configuration structure
  • Enabled adapters have required tokens
  • Project paths exist on filesystem

Examples

# Validate with full output pilot config validate # Silent validation for scripts if pilot config validate --quiet; then echo "Config OK" else echo "Config invalid" fi

Sample Output

Config: ~/.pilot/config.yaml Syntax: OK Validation: OK Warnings: - GitHub enabled but token not set - Project path does not exist: /old/project

pilot config path

Show the configuration file path.

pilot config path

Outputs the absolute path to the configuration file. Useful for scripts and automation.

Examples

# Show path pilot config path # Output: /Users/dev/.pilot/config.yaml # Use in scripts cat "$(pilot config path)" # Back up config cp "$(pilot config path)" config-backup.yaml

pilot completion

Generate shell completion scripts.

pilot completion <shell>

Generates autocompletion scripts for bash, zsh, fish, or PowerShell.

Supported Shells

ShellDescription
bashBash completion script
zshZsh completion script
fishFish completion script
powershellPowerShell completion script

Installation

Bash:

# Load for current session source <(pilot completion bash) # Install permanently (Linux) pilot completion bash > /etc/bash_completion.d/pilot # Install permanently (macOS with Homebrew) pilot completion bash > $(brew --prefix)/etc/bash_completion.d/pilot

Zsh:

# Enable completion (if not already enabled) echo "autoload -U compinit; compinit" >> ~/.zshrc # Install completion pilot completion zsh > "${fpath[1]}/_pilot" # Start new shell for changes to take effect

Fish:

# Load for current session pilot completion fish | source # Install permanently pilot completion fish > ~/.config/fish/completions/pilot.fish

PowerShell:

# Load for current session pilot completion powershell | Out-String | Invoke-Expression # Install permanently (add to profile) pilot completion powershell > pilot.ps1 # Then source from PowerShell profile

Information

pilot version

Show Pilot version information.

pilot version

Displays the current Pilot version and build time.

Examples

pilot version # Output: # Pilot v2.56.0 # Built: 2026-03-01T10:30:00Z

Execution & Review

Commands for executing tasks and reviewing work history.

pilot github run

Execute a GitHub issue as a Pilot task.

pilot github run <issue-number> [flags]

Fetches a GitHub issue and executes it as a Pilot task. PRs are always created to enable autopilot workflow.

Flags

FlagDescription
-p, --projectProject path
--repoGitHub repository (owner/repo)
--dry-runShow what would execute without running
-v, --verboseVerbose output
--teamTeam ID or name for project access scoping
--team-memberMember email for team access scoping

Examples

# Execute issue #8 pilot github run 8 # Execute from specific repository pilot github run 8 --repo owner/repo # Preview execution pilot github run 8 --dry-run # With verbose output pilot github run 8 --verbose

pilot brief

Generate and send daily/weekly briefs.

pilot brief [flags]

Generate and optionally send daily/weekly briefs summarizing Pilot activity.

Flags

FlagDescription
--nowGenerate and send brief immediately
--weeklyGenerate a weekly summary

Examples

# Show scheduler status pilot brief # Generate and send brief immediately pilot brief --now # Generate a weekly summary pilot brief --weekly

pilot replay

Replay and debug execution recordings.

pilot replay <subcommand>

View, replay, and analyze execution recordings for debugging and improvement.

Subcommands

SubcommandDescription
listList available recordings
showShow recording details
playReplay execution with interactive viewer
analyzeGenerate detailed analysis
exportExport recording to HTML/JSON/Markdown
deleteDelete a recording

pilot replay list

List available execution recordings.

pilot replay list [flags]

Display recordings with filtering options.

Flags

FlagDescription
--limitMaximum number of recordings to show (default: 20)
--projectFilter by project name
--statusFilter by status (success, error, timeout)

Examples

# List recent recordings pilot replay list # Show only last 10 pilot replay list --limit 10 # Filter by project pilot replay list --project pilot # Show only failed executions pilot replay list --status error

pilot replay show

Show detailed information about a recording.

pilot replay show <recording-id>

Display metadata, events summary, and performance metrics for a specific recording.

Examples

# Show recording details pilot replay show TG-1234567890 # Example output includes: # - Basic info (task ID, duration, token usage) # - Phase breakdown # - Tool usage statistics # - Error summary (if any)

pilot replay play

Replay execution with interactive viewer.

pilot replay play <recording-id> [flags]

Interactive playback of the execution with step-by-step navigation.

Flags

FlagDescription
--startStart from event sequence number
--stopStop at event sequence number (0 = end)
-v, --verboseShow all event details
--tuiUse interactive TUI viewer (default: true)
--speedPlayback speed (0 = instant, 1 = real-time, 2 = 2x)

Examples

# Interactive replay pilot replay play TG-1234567890 # Start from event 50 pilot replay play TG-1234567890 --start 50 # Simple output mode (no TUI) pilot replay play TG-1234567890 --no-tui # Show verbose details pilot replay play TG-1234567890 --verbose

pilot replay analyze

Generate detailed analysis of execution recording.

pilot replay analyze <recording-id>

Provides analysis of token usage, phase timing, tool usage patterns, and error diagnostics.

Examples

# Analyze execution pilot replay analyze TG-1234567890 # Output includes: # - Token usage breakdown by phase # - Tool usage patterns # - Performance bottlenecks # - Error analysis and recommendations

pilot replay export

Export recording to various formats.

pilot replay export <recording-id> [flags]

Export execution recording for sharing or external analysis.

Flags

FlagDescription
--formatOutput format: html, json, markdown (default: html)
--outputOutput file path (default: auto-generated)
--with-analysisInclude detailed analysis in export

Examples

# Export as HTML pilot replay export TG-1234567890 # Export with analysis pilot replay export TG-1234567890 --with-analysis # Export as JSON pilot replay export TG-1234567890 --format json # Export as Markdown pilot replay export TG-1234567890 --format markdown # Custom output file pilot replay export TG-1234567890 --output report.html

pilot replay delete

Delete an execution recording.

pilot replay delete <recording-id> [flags]

Remove a recording from the database to free up storage space.

Flags

FlagDescription
--forceSkip confirmation prompt

Examples

# Delete with confirmation pilot replay delete TG-1234567890 # Force delete without confirmation pilot replay delete TG-1234567890 --force

pilot patterns

Manage cross-project patterns.

pilot patterns <subcommand>

View, search, and manage learned patterns across projects.

Subcommands

SubcommandDescription
listList discovered patterns
searchSearch patterns by keyword
statsShow pattern statistics

pilot patterns list

List discovered patterns from execution history.

pilot patterns list [flags]

Display patterns learned from successful and failed executions.

Flags

FlagDescription
--limitMaximum number of patterns to show (default: 50)
--min-confidenceMinimum confidence score (0.0-1.0, default: 0.5)
--typePattern type filter (success, error, tool-usage)
--show-antiInclude anti-patterns (things to avoid)

Examples

# List top patterns pilot patterns list # Show high-confidence patterns only pilot patterns list --min-confidence 0.8 # Show anti-patterns pilot patterns list --show-anti # Limit results pilot patterns list --limit 20

Search patterns by keyword or description.

pilot patterns search <query>

Find patterns matching specific keywords or problem descriptions.

Examples

# Search for authentication patterns pilot patterns search "authentication" # Search for error handling patterns pilot patterns search "error handling" # Search for specific technologies pilot patterns search "React hooks"

pilot patterns stats

Display pattern discovery statistics.

pilot patterns stats

Show overview of pattern discovery across projects including:

  • Total patterns discovered
  • Confidence distribution
  • Most common pattern types
  • Project coverage

Examples

# Show pattern statistics pilot patterns stats # Example output: # Total patterns: 247 # High confidence (>0.8): 89 patterns # Success patterns: 198 # Anti-patterns: 49 # Projects covered: 12

Monitoring & Billing

Commands for monitoring system usage, billing information, and resource management.

pilot budget

Manage budget settings and enforcement.

pilot budget <subcommand>

Configure and monitor budget limits to control AI usage costs across projects.

Subcommands

SubcommandDescription
statusShow current budget status and usage
configConfigure budget limits and alerts
resetReset budget counters for current period

pilot budget status

Show current budget status and usage across projects.

pilot budget status [flags]

Displays budget consumption, remaining limits, and project-wise breakdown.

Flags

FlagDescription
--jsonOutput as JSON
--projectFilter by specific project

Examples

# Show budget status pilot budget status # Show as JSON pilot budget status --json # Show for specific project pilot budget status --project pilot

Sample Output

📊 Budget Status (January 2026) ───────────────────────────────────── Monthly Limit: $100.00 Used: $23.45 (23%) Remaining: $76.55 Projects: • pilot: $15.20 (65%) • webapp: $8.25 (35%) Alerts: ✓ 50% threshold, ✓ 75% threshold

pilot budget config

Configure budget limits, thresholds, and alert settings.

pilot budget config [flags]

Set monthly/daily limits and configure alerts for budget monitoring.

Flags

FlagDescription
--monthlySet monthly budget limit (e.g., $100)
--dailySet daily budget limit (e.g., $5)
--alert-thresholdAlert threshold percentage (default: 75)
--project-limitSet per-project budget limit
--disableDisable budget enforcement

Examples

# Set monthly budget pilot budget config --monthly $100 # Set daily limit pilot budget config --daily $5 # Configure alert threshold pilot budget config --alert-threshold 80 # Set project-specific limit pilot budget config --project pilot --monthly $50 # Disable budget enforcement pilot budget config --disable

pilot budget reset

Reset budget counters for the current period.

pilot budget reset [flags]

Clears usage counters while preserving configured limits and settings.

Flags

FlagDescription
--forceSkip confirmation prompt
--projectReset specific project only

Examples

# Reset all budget counters pilot budget reset # Reset without confirmation pilot budget reset --force # Reset specific project pilot budget reset --project pilot

pilot metrics

System performance and usage metrics.

pilot metrics <subcommand>

View detailed metrics about Pilot performance, token usage, and system efficiency.

Subcommands

SubcommandDescription
summaryShow high-level metrics summary
dailyShow daily metrics breakdown
projectsShow per-project metrics
exportExport metrics data

pilot metrics summary

Show high-level metrics summary for recent activity.

pilot metrics summary [flags]

Displays key performance indicators and usage statistics.

Flags

FlagDescription
--periodTime period: 7d, 30d, 90d (default: 30d)
--jsonOutput as JSON

Examples

# Show 30-day summary pilot metrics summary # Show weekly summary pilot metrics summary --period 7d # Export as JSON pilot metrics summary --json

Sample Output

📈 Metrics Summary (30 days) ───────────────────────────────────── Tasks Completed: 127 Success Rate: 94.5% Avg Duration: 4m 32s Token Usage: Input: 1,234,567 tokens Output: 567,890 tokens Total: 1,802,457 tokens Top Projects: 1. pilot (45 tasks) 2. webapp (32 tasks) 3. api (28 tasks)

pilot metrics daily

Show daily metrics breakdown with trends.

pilot metrics daily [flags]

View daily activity patterns and identify usage trends.

Flags

FlagDescription
--daysNumber of days to show (default: 14)
--chartShow ASCII chart visualization
--jsonOutput as JSON

Examples

# Show 14-day daily breakdown pilot metrics daily # Show with ASCII charts pilot metrics daily --chart # Show last 30 days pilot metrics daily --days 30

pilot metrics projects

Show per-project metrics and comparisons.

pilot metrics projects [flags]

Compare performance and usage across different projects.

Flags

FlagDescription
--sortSort by: tasks, tokens, duration, success (default: tasks)
--jsonOutput as JSON

Examples

# Show project metrics pilot metrics projects # Sort by token usage pilot metrics projects --sort tokens # Sort by success rate pilot metrics projects --sort success

pilot metrics export

Export metrics data for external analysis.

pilot metrics export [flags]

Export metrics in various formats for reporting and analysis.

Flags

FlagDescription
--formatExport format: csv, json, excel (default: csv)
--outputOutput file path
--periodTime period: 7d, 30d, 90d, all (default: 30d)
--include-rawInclude raw event data

Examples

# Export as CSV pilot metrics export # Export as JSON with raw data pilot metrics export --format json --include-raw # Export to specific file pilot metrics export --output metrics-jan2026.csv # Export all historical data pilot metrics export --period all --format excel

pilot usage

Detailed usage analytics and cost tracking.

pilot usage <subcommand>

Track detailed usage patterns, costs, and resource consumption analytics.

Subcommands

SubcommandDescription
summaryShow usage summary and costs
dailyShow daily usage patterns
projectsShow per-project usage analytics
eventsShow detailed usage events
exportExport usage data for billing

pilot usage summary

Show usage summary with cost breakdown.

pilot usage summary [flags]

Overview of usage patterns and associated costs.

Flags

FlagDescription
--periodTime period: 7d, 30d, 90d (default: 30d)
--breakdownShow detailed cost breakdown
--jsonOutput as JSON

Examples

# Show usage summary pilot usage summary # Show with cost breakdown pilot usage summary --breakdown # Show weekly usage pilot usage summary --period 7d

Sample Output

💰 Usage Summary (30 days) ───────────────────────────────────── Total Cost: $45.67 Token Cost: $38.92 (85%) Infrastructure: $6.75 (15%) API Calls: 2,847 Tokens Processed: 1,802,457 Avg Cost/Task: $0.36 Model Usage: Claude-4.6: $32.15 (84%) Claude-4.5: $6.77 (16%)

pilot usage daily

Show daily usage patterns and cost trends.

pilot usage daily [flags]

Analyze daily usage patterns to optimize costs and identify trends.

Flags

FlagDescription
--daysNumber of days to show (default: 14)
--chartShow ASCII cost chart
--jsonOutput as JSON

Examples

# Show daily usage pilot usage daily # Show with cost charts pilot usage daily --chart # Show last 30 days pilot usage daily --days 30

pilot usage projects

Show per-project usage analytics and costs.

pilot usage projects [flags]

Compare usage patterns and costs across different projects.

Flags

FlagDescription
--sortSort by: cost, tokens, calls, efficiency (default: cost)
--jsonOutput as JSON
--efficiencyShow cost efficiency metrics

Examples

# Show project usage pilot usage projects # Sort by efficiency pilot usage projects --sort efficiency --efficiency # Show detailed metrics pilot usage projects --efficiency

pilot usage events

Show detailed usage events and API calls.

pilot usage events [flags]

View individual API calls, tokens, and costs for detailed analysis.

Flags

FlagDescription
--limitNumber of events to show (default: 50)
--projectFilter by project
--modelFilter by AI model
--min-costFilter by minimum cost
--jsonOutput as JSON

Examples

# Show recent events pilot usage events # Show events for specific project pilot usage events --project pilot # Show expensive calls only pilot usage events --min-cost 1.00 # Show events for specific model pilot usage events --model claude-4.6

pilot usage export

Export detailed usage data for billing and analysis.

pilot usage export [flags]

Export usage data in billing-friendly formats.

Flags

FlagDescription
--formatExport format: csv, json, billing (default: csv)
--outputOutput file path
--periodTime period: 7d, 30d, 90d, all (default: 30d)
--group-byGroup by: day, project, model (default: day)
--include-metadataInclude task metadata

Examples

# Export usage data pilot usage export # Export in billing format pilot usage export --format billing # Export grouped by project pilot usage export --group-by project # Export with metadata pilot usage export --include-metadata --format json

pilot webhooks

Webhook management and integration.

pilot webhooks <subcommand>

Manage webhooks for GitHub, GitLab, Linear, and other integrations.

Subcommands

SubcommandDescription
listList configured webhooks
addAdd new webhook endpoint
removeRemove webhook endpoint
testTest webhook delivery
eventsShow webhook event history

pilot webhooks list

List all configured webhook endpoints.

pilot webhooks list [flags]

Display active webhooks with their configuration and status.

Flags

FlagDescription
--serviceFilter by service: github, gitlab, linear, slack
--statusFilter by status: active, inactive, error
--jsonOutput as JSON

Examples

# List all webhooks pilot webhooks list # List GitHub webhooks only pilot webhooks list --service github # List inactive webhooks pilot webhooks list --status inactive

Sample Output

🔗 Configured Webhooks ───────────────────────────────────── GitHub: ✓ https://pilot.example.com/api/webhooks/github Events: issues, pull_requests Last ping: 2 hours ago Linear: ✓ https://pilot.example.com/api/webhooks/linear Events: issue.create, issue.update Last ping: 15 minutes ago GitLab: ⚠ https://pilot.example.com/api/webhooks/gitlab Events: issues, merge_requests Status: Connection error

pilot webhooks add

Add a new webhook endpoint for service integration.

pilot webhooks add <service> [flags]

Configure webhook endpoints for GitHub, GitLab, Linear, or Slack.

Flags

FlagDescription
--urlWebhook URL (auto-generated if not specified)
--eventsComma-separated list of events to subscribe to
--secretWebhook secret for verification
--repoRepository for GitHub/GitLab (owner/repo)
--projectLocal project to associate webhook with

Examples

# Add GitHub webhook pilot webhooks add github --repo owner/repo # Add with specific events pilot webhooks add github --repo owner/repo --events issues,pull_requests # Add Linear webhook pilot webhooks add linear # Add with custom URL pilot webhooks add github --url https://custom.example.com/hook

pilot webhooks remove

Remove webhook endpoint from service.

pilot webhooks remove <service> [flags]

Remove webhook configuration from the service and local config.

Flags

FlagDescription
--repoRepository for GitHub/GitLab (owner/repo)
--forceSkip confirmation prompt
--keep-configRemove from service but keep local config

Examples

# Remove GitHub webhook pilot webhooks remove github --repo owner/repo # Remove without confirmation pilot webhooks remove linear --force # Remove from service only pilot webhooks remove github --repo owner/repo --keep-config

pilot webhooks test

Test webhook delivery and configuration.

pilot webhooks test <service> [flags]

Send test events to verify webhook configuration and connectivity.

Flags

FlagDescription
--repoRepository for GitHub/GitLab (owner/repo)
--eventSpecific event type to test
--verboseShow detailed test output

Examples

# Test GitHub webhook pilot webhooks test github --repo owner/repo # Test specific event pilot webhooks test github --repo owner/repo --event issues # Test with verbose output pilot webhooks test linear --verbose

pilot webhooks events

Show webhook event history and delivery status.

pilot webhooks events [flags]

View recent webhook events, delivery status, and processing results.

Flags

FlagDescription
--limitNumber of events to show (default: 50)
--serviceFilter by service: github, gitlab, linear, slack
--statusFilter by status: success, failed, pending
--sinceShow events since timestamp (e.g., “2h”, “1d”)
--jsonOutput as JSON

Examples

# Show recent webhook events pilot webhooks events # Show GitHub events only pilot webhooks events --service github # Show failed events pilot webhooks events --status failed # Show events from last 2 hours pilot webhooks events --since 2h # Show last 100 events pilot webhooks events --limit 100

Team Management

Commands for managing teams, members, and role-based access control.

pilot team

Manage teams and permissions.

pilot team <subcommand>

Teams allow multiple users to collaborate on Pilot with different permission levels:

  • owner: Full access, can delete team
  • admin: Manage members and projects
  • developer: Execute tasks on assigned projects
  • viewer: Read-only access

Subcommands

SubcommandDescription
createCreate a new team
listList all teams
showShow team details
deleteDelete a team (owner only)
memberManage team members
projectManage team project access
auditView team audit log

pilot team create

Create a new team.

pilot team create <name> [flags]

Creates a new team with the specified name and sets the initial owner.

Flags

FlagDescription
--ownerOwner email address (required)

Examples

# Create a new team pilot team create "Backend Team" --owner admin@example.com # Output includes team ID and instructions for adding members

pilot team list

List all teams.

pilot team list

Displays all teams with their ID, name, and creation date.

Examples

# List all teams pilot team list # Sample output: # Found 2 team(s): # # ID NAME CREATED # ── ──── ─────── # abc12345 Backend Team 2026-01-15 # def67890 Frontend Team 2026-01-20

pilot team show

Show team details.

pilot team show <team-id>

Displays team information including members and project access.

Arguments

The team ID can be a full ID, partial ID, or team name.

Examples

# Show team by ID (partial match supported) pilot team show abc12345 # Show team by name pilot team show "Backend Team" # Sample output: # 📋 Team: Backend Team # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # ID: abc12345-... # Created: 2026-01-15 10:30 # Max Tasks: 5 concurrent # # 👥 Members (2): # ID EMAIL ROLE PROJECTS # mem123 admin@example.com owner all # mem456 dev@example.com developer all

pilot team delete

Delete a team (owner only).

pilot team delete <team-id> [flags]

Permanently deletes a team and all associated data. Only team owners can perform this action.

Flags

FlagDescription
--asYour email (must be team owner, required)
--forceSkip confirmation prompt

Examples

# Delete team (with confirmation) pilot team delete abc12345 --as owner@example.com # Delete without confirmation pilot team delete abc12345 --as owner@example.com --force

pilot team member

Manage team members.

pilot team member <subcommand>

Subcommands

SubcommandDescription
addAdd a member to a team
removeRemove a member from a team
roleChange a member’s role

pilot team member add

Add a member to a team.

pilot team member add <team-id> <email> [flags]

Adds a new member to the specified team with the given role.

Flags

FlagDescription
--roleRole: owner, admin, developer, viewer (default: developer)
--projectsRestrict to specific projects (comma-separated, empty = all)
--asYour email (must have manage_members permission, required)

Examples

# Add a developer with access to all projects pilot team member add abc123 dev@example.com --role developer --as admin@example.com # Add a viewer restricted to specific projects pilot team member add abc123 viewer@example.com --role viewer --projects api,frontend --as admin@example.com

pilot team member remove

Remove a member from a team.

pilot team member remove <team-id> <member-email> [flags]

Removes a member from the specified team.

Flags

FlagDescription
--asYour email (must have manage_members permission, required)

Examples

# Remove a member pilot team member remove abc123 dev@example.com --as admin@example.com

pilot team member role

Change a member’s role.

pilot team member role <team-id> <member-email> <new-role> [flags]

Updates the role of an existing team member.

Flags

FlagDescription
--asYour email (must have manage_members permission, required)

Examples

# Promote a developer to admin pilot team member role abc123 dev@example.com admin --as owner@example.com # Demote to viewer pilot team member role abc123 user@example.com viewer --as admin@example.com

pilot team project

Manage team project access.

pilot team project <subcommand>

Subcommands

SubcommandDescription
setSet project access with a default role
removeRemove project access from a team
listList project access entries for a team

pilot team project set

Set project access with a default role.

pilot team project set <team-id> <project-path> [flags]

Sets or updates project access for a team with a default role. The default role determines the minimum permission level for all team members on the specified project.

Flags

FlagDescription
--roleDefault role: owner, admin, developer, viewer (default: developer)
--asYour email (must have manage_projects permission, required)

Examples

# Grant team access to a project pilot team project set abc123 /path/to/project --role developer --as owner@example.com # Set read-only access pilot team project set abc123 /path/to/project --role viewer --as admin@example.com

pilot team project remove

Remove project access from a team.

pilot team project remove <team-id> <project-path> [flags]

Removes project access for a team.

Flags

FlagDescription
--asYour email (must have manage_projects permission, required)

Examples

# Remove project access pilot team project remove abc123 /path/to/project --as admin@example.com

pilot team project list

List project access entries for a team.

pilot team project list <team-id>

Displays all project access entries for a team.

Examples

# List project access pilot team project list abc123 # Sample output: # 📂 Project Access for 'Backend Team' (2 entries): # # PROJECT PATH DEFAULT ROLE # ──────────── ──────────── # /home/dev/api developer # /home/dev/shared-utils viewer

pilot team audit

View team audit log.

pilot team audit <team-id> [flags]

Displays the audit log for a team showing member actions and changes.

Flags

FlagDescription
--limitMaximum entries to show (default: 50)
--asYour email (must have view_audit_log permission, required)

Examples

# View recent audit entries pilot team audit abc123 --as admin@example.com # View last 100 entries pilot team audit abc123 --limit 100 --as admin@example.com # Sample output: # 📜 Audit Log for 'Backend Team' (showing 3 entries) # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # [2026-01-15 10:30] admin@example.com performed add_member on member (mem456) # [2026-01-15 10:25] admin@example.com performed create_team on team (abc123)

Project Management

Commands for managing Pilot projects.

pilot project

Manage Pilot projects.

pilot project <subcommand>

Add, list, remove, and configure projects for Pilot.

Subcommands

SubcommandDescription
listList all configured projects
addAdd a new project
removeRemove a project
set-defaultSet the default project
showShow project details

pilot project list

List all configured projects.

pilot project list

Displays all projects with their name, path, GitHub repository, branch, context intelligence status, and default status.

Examples

# List all projects pilot project list # Sample output: # PROJECTS (2 configured) # # NAME PATH GITHUB BRANCH NAV DEFAULT # pilot /Users/dev/pilot owner/pilot main * * # webapp /Users/dev/webapp owner/webapp main # # Use 'pilot project show <name>' for details

pilot project add

Add a new project.

pilot project add [flags]

Adds a new project to Pilot configuration with automatic detection of GitHub remote, branch, and context intelligence setup.

Flags

FlagDescription
-n, --nameProject name (required)
-p, --pathProject path (default: current directory)
-g, --githubGitHub repo (owner/repo)
-b, --branchDefault branch (auto-detected)
--navigatorEnable context intelligence (auto-detected)
-d, --set-defaultSet as default project

Auto-detection

  • If --path is omitted, uses current working directory
  • If --branch is omitted, detects from git remote
  • If --navigator is omitted, checks for .agent/ directory
  • If --github is omitted, parses from git remote origin

Examples

# Add project from current directory (auto-detect settings) pilot project add --name my-app # Add with explicit GitHub repository pilot project add --name my-app --github owner/repo # Add with custom path and branch pilot project add -n my-app -p /path/to/project -g owner/repo -b develop # Add and set as default pilot project add --name primary-app --set-default

pilot project remove

Remove a project.

pilot project remove <name> [flags]

Removes a project from Pilot configuration.

Flags

FlagDescription
-n, --nameProject name
-f, --forceSkip confirmation prompt

Examples

# Remove with confirmation pilot project remove my-app # Remove without confirmation pilot project remove my-app --force # Using flag instead of positional argument pilot project remove --name my-app

pilot project set-default

Set the default project.

pilot project set-default <name>

Sets the specified project as the default for Pilot commands.

Examples

# Set default project pilot project set-default my-app

pilot project show

Show project details.

pilot project show [name]

Displays details for a project. Without arguments, shows the default project.

Examples

# Show specific project pilot project show my-app # Show default project pilot project show # Sample output: # PROJECT: my-app # # Path: /Users/dev/my-app # GitHub: owner/my-app # Branch: main # Context: enabled # Default: yes

Tunnel Management

Commands for managing Cloudflare Tunnel for webhooks.

pilot tunnel

Manage Cloudflare Tunnel for webhooks.

pilot tunnel <subcommand>

The tunnel provides a permanent public URL for receiving webhooks from GitHub, Linear, and other services - no port forwarding required.

Supported providers:

  • cloudflare: Free, permanent URLs via Cloudflare Tunnel
  • ngrok: Quick testing (requires ngrok account for custom domains)

Subcommands

SubcommandDescription
statusShow tunnel status
startStart the tunnel
stopStop the tunnel
urlShow the tunnel webhook URL
setupSet up tunnel (create tunnel, configure DNS)
serviceManage tunnel auto-start service

pilot tunnel status

Show tunnel status.

pilot tunnel status

Displays current tunnel status including provider, connection state, URL, and service status.

Examples

# Show tunnel status pilot tunnel status # Sample output: # Tunnel Status # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # Provider: cloudflare # Status: ✓ Running # Connected: ✓ Yes # URL: https://pilot-webhook.example.com # Tunnel ID: abc123-def456-... # # Service (launchd) # ───────────────────────────────────────── # Installed: ✓ Yes # Running: ✓ Yes (auto-starts on boot)

pilot tunnel start

Start the tunnel.

pilot tunnel start [flags]

Starts the Cloudflare Tunnel to expose local webhook endpoint. By default, runs in background.

Flags

FlagDescription
-f, --foregroundRun in foreground

Examples

# Start tunnel (background) pilot tunnel start # Start in foreground (Ctrl+C to stop) pilot tunnel start --foreground # Output: # Starting cloudflare tunnel... # # ✓ Tunnel started # URL: https://pilot-webhook.example.com # Webhook endpoint: https://pilot-webhook.example.com/webhooks/github

pilot tunnel stop

Stop the tunnel.

pilot tunnel stop

Stops the running tunnel and any associated service.

Examples

# Stop tunnel pilot tunnel stop # Output: ✓ Tunnel stopped

pilot tunnel url

Show the tunnel webhook URL.

pilot tunnel url [flags]

Displays the tunnel URL for configuring webhooks.

Flags

FlagDescription
--webhookAppend webhook path (e.g., /webhooks/github)

Examples

# Show base URL pilot tunnel url # Show full webhook URL pilot tunnel url --webhook /webhooks/github

pilot tunnel setup

Set up tunnel (create tunnel, configure DNS).

pilot tunnel setup [flags]

Sets up Cloudflare Tunnel for permanent webhook URLs.

This command:

  1. Checks for cloudflared CLI installation
  2. Authenticates with Cloudflare (if needed)
  3. Creates a tunnel named ‘pilot-webhook’
  4. Configures DNS routing (if custom domain provided)
  5. Optionally installs auto-start service

Prerequisites

  • Cloudflare account (free tier is sufficient)
  • cloudflared CLI: brew install cloudflared

Flags

FlagDescription
--providerTunnel provider: cloudflare, ngrok (default: cloudflare)
--domainCustom domain (optional)
--serviceInstall auto-start service

Examples

# Basic setup pilot tunnel setup # With custom domain pilot tunnel setup --domain pilot.example.com # With auto-start service pilot tunnel setup --service # Full setup with all options pilot tunnel setup --domain pilot.example.com --service

pilot tunnel service

Manage tunnel auto-start service.

pilot tunnel service <subcommand>

Manage the launchd service for automatic tunnel startup on macOS.

Subcommands

SubcommandDescription
installInstall auto-start service (macOS only)
uninstallRemove auto-start service
statusShow service status

pilot tunnel service install

Install auto-start service (macOS only).

pilot tunnel service install

Installs a launchd service to automatically start the tunnel on boot.

Prerequisites

Run pilot tunnel setup first to configure the tunnel.

Examples

# Install service pilot tunnel service install # Output: # Installing service... ✓ # # Service installed! # - Tunnel will auto-start on boot # - Run 'pilot tunnel service status' to check

pilot tunnel service uninstall

Remove auto-start service.

pilot tunnel service uninstall

Removes the launchd service. The tunnel will no longer auto-start on boot.

Examples

# Uninstall service pilot tunnel service uninstall # Output: # Uninstalling service... ✓ # Service removed - tunnel will no longer auto-start

pilot tunnel service status

Show service status.

pilot tunnel service status

Displays the launchd service status.

Examples

# Show service status pilot tunnel service status # Sample output: # Service Status (launchd) # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # Installed: ✓ Yes # Path: ~/Library/LaunchAgents/com.pilot.tunnel.plist # Running: ✓ Yes

Autopilot & Release

Commands for autopilot PR lifecycle management and releases.

pilot autopilot

Autopilot commands for PR lifecycle management.

pilot autopilot <subcommand>

Commands for viewing and managing autopilot PR tracking and automation.

Subcommands

SubcommandDescription
statusShow tracked PRs and their current stage

pilot autopilot status

Show tracked PRs and their current stage.

pilot autopilot status [flags]

Displays autopilot status including:

  • Tracked PRs and their lifecycle stage
  • Time in current stage
  • CI status for each PR
  • Release configuration status

Note: Pilot must be running with --autopilot flag for live PR tracking.

Flags

FlagDescription
--jsonOutput as JSON

Examples

# Show autopilot status pilot autopilot status # Sample output: # 🤖 Autopilot Status # ─────────────────────────────────────── # Environment: stage # # Configuration: # Auto Merge: true # Auto Review: false # Merge Method: squash # CI Timeout: 10m0s # Max Failures: 3 # # Release: # Enabled: true # Trigger: on-merge # Require CI: true # Tag Prefix: v # # ℹ️ For live PR tracking, check: # • Dashboard: pilot start --dashboard --autopilot=<env> # • Logs: pilot logs --follow # JSON output pilot autopilot status --json

pilot release

Create a release manually.

pilot release [version] [flags]

Creates a new release for the current repository. If no version is specified, detects version bump from commits since the last release.

Flags

FlagDescription
--bumpForce bump type: patch, minor, major
--draftCreate release as draft
--dry-runShow what would be released without creating

Examples

# Auto-detect version from commits pilot release # Force minor bump pilot release --bump=minor # Specific version pilot release v1.2.3 # Create as draft pilot release --draft # Preview release without creating pilot release --dry-run # Output: # Would create release: # Current version: v2.56.0 # New version: v2.56.1 # Bump type: patch # Draft: false

pilot allow

Manage Telegram allowed users.

pilot allow [user_id] [flags]

Add, remove, or list Telegram user IDs in allowed_ids configuration.

Flags

FlagDescription
--removeRemove user from allowed_ids
--listList current allowed users

Examples

# Add a user pilot allow 123456789 # Remove a user pilot allow --remove 123456789 # List allowed users pilot allow --list # Sample output: # Allowed Telegram users: # 123456789 # 987654321 # # Total: 2 user(s)