Skip to main content
ByteRover CLI (brv) is a command-line tool for managing your AI development workflow with ByteRover. Use it to authenticate, retrieve memories from your knowledge base, manage projects and spaces, and maintain your context tree. For help with any command, run brv --help or brv <command> --help.

Installation

Install ByteRover CLI globally using npm:
npm install -g byterover-cli
Verify the installation:
brv --version

Prerequisites

  • Node.js: Version 20.0.0 or higher
  • Supported platforms: macOS, Windows, Linux

Getting Started

ByteRover CLI offers two ways to interact: Interactive REPL mode (recommended) and traditional CLI commands. Start the interactive terminal UI by running brv with no arguments:
brv
This launches a persistent session with a React/Ink-based terminal interface where you can use slash commands:
/status                 # Show auth, config, and context tree state
/curate [context] [@files]  # Curate context to the context tree
/query <query>          # Query information from context tree (alias: /q)
/push [-b branch] [-y]  # Push context tree to ByteRover memory storage
/pull [-b branch]       # Pull context tree from ByteRover memory storage
/space list [-a] [-j]   # List all spaces
/space switch           # Switch to a different space
/connectors             # Manage coding agent connectors (rules, hooks, mcp)
/reset [-y] [directory] # Reset context tree to an empty state
/new [-y]               # Start fresh session (clears conversation)
/init [-f]              # Initialize project (select team/space)
/login                  # Authenticate with ByteRover
/logout [-y]            # Log out
First-time users will see an interactive onboarding flow. Press Esc at any time to skip onboarding.

Standalone CLI Commands

A few commands are also available as standalone CLI commands for scripting and quick access:
brv status                              # Show CLI and project status
brv query "How is auth implemented?"    # Query context tree
brv curate "JWT tokens expire in 24h"   # Curate context to context tree

CLI Commands

CommandDescriptionExample
brvStart interactive REPL mode (recommended)brv
brv status [DIRECTORY]Show CLI status and project informationbrv status
brv query <QUERY>Query information from the context treebrv query "How is auth implemented?"
brv curate [CONTEXT] [--files]Curate context to context treebrv curate "JWT tokens expire in 24h" --files src/auth.ts
Note: Commands like login, logout, init, push, pull, space, connectors, reset, and new are only available as slash commands in REPL mode. Run brv to start REPL mode.
Important: The brv query and brv curate standalone commands require a running brv instance in the same directory. Start REPL mode with brv first, then run these commands in a separate terminal.

Command Details

brv

Start the interactive REPL mode with a React/Ink-based terminal UI. This is the recommended way to use ByteRover CLI for an enhanced user experience. Arguments None Flags None Examples
# Start interactive REPL mode
brv
Features
  • Persistent session: Stay in the CLI and run multiple commands without restarting
  • Slash commands: Use /command syntax for all operations (e.g., /login, /push, /query)
  • Interactive onboarding: First-time users get a guided setup flow (press Esc to skip)
  • Real-time feedback: See streaming responses and progress indicators
  • Tab completion: Auto-complete slash commands as you type
Available Slash Commands
CommandDescription
/statusShow CLI status and project information
/curate [context] [@files]Curate context to the context tree (use @filepath for file references)
/query <query> (alias: /q)Query and retrieve information from context tree
/push [-b branch] [-y]Push context tree to ByteRover memory storage
/pull [-b branch]Pull context tree from ByteRover memory storage
/space list [-a] [-j] [-l n] [-o n]List all spaces for current team
/space switchSwitch to a different space
/connectorsManage coding agent connectors (rules, hooks, mcp)
/reset [-y] [directory]Reset context tree to an empty state
/new [-y]Start a fresh session (ends current, clears conversation)
/init [-f]Initialize a project with ByteRover
/loginAuthenticate with ByteRover using OAuth 2.0 + PKCE
/logout [-y]Log out of ByteRover CLI and clear authentication
Notes
  • REPL mode is the primary way to use ByteRover CLI
  • Most commands (login, init, push, pull, etc.) are only available in REPL mode
  • Use Ctrl+C to exit REPL mode

Slash Command Details

/status

Show CLI status including authentication state, project configuration, and context tree state. Flags: None

/curate

Curate context to the context tree using interactive or autonomous mode.
ArgumentTypeRequiredDescription
contextstringNoKnowledge context (triggers autonomous mode if provided)
File References: Use @filepath syntax to include files as context (up to 5 files). Examples
# Interactive mode (manually choose domain/topic)
/curate

# Autonomous mode with AI classification
/curate "Authentication uses JWT with 24h expiry"

# Include file references
/curate "Session handling logic" @src/auth/session.ts @src/middleware/auth.ts

/query (alias: /q)

Query and retrieve information from the context tree using natural language.
ArgumentTypeRequiredDescription
querystringYesNatural language question about your codebase
Examples
/query "How is user authentication implemented?"
/q "What testing strategies are used?"

/push

Push context tree to ByteRover memory storage.
FlagDescriptionDefault
-b, --branch <name>ByteRover branch name (not Git branch)main
-y, --yesSkip confirmation prompt-
Examples
/push                    # Push to main branch
/push -b feature-auth    # Push to feature-auth branch
/push -y                 # Push without confirmation

/pull

Pull context tree from ByteRover memory storage.
FlagDescriptionDefault
-b, --branch <name>ByteRover branch name (not Git branch)main
Examples
/pull                    # Pull from main branch
/pull -b feature-auth    # Pull from feature-auth branch

/space list

List all spaces for the current team.
FlagDescriptionDefault
-a, --allFetch all spaces (may be slow for large teams)-
-j, --jsonOutput in JSON format-
-l, --limit <n>Maximum number of spaces to fetch50
-o, --offset <n>Number of spaces to skip0

/space switch

Switch to a different space. Interactive mode only - prompts you to select from available options. Flags: None

/connectors

Manage agent connectors for integrating ByteRover with AI coding assistants. Supports three connector types:
  • MCP: Uses Model Context Protocol for direct tool integration (brv-query, brv-curate). Default for most agents.
  • Rules: Generates markdown rule files that agents read for instructions
  • Hook: Uses agent-specific hook systems for tighter integration (Claude Code only)
Supported Agents
AgentDefaultSupportedRules FileMCP Config
AmpMCPrules, mcpAGENTS.md.vscode/settings.json
Augment CodeMCPrules, mcp.augment/rules/agent-context.mdManual setup
Claude CodeHookrules, hook, mcpCLAUDE.md.mcp.json
ClineMCPrules, mcp.clinerules/agent-context.mdManual setup
CodexMCPrules, mcpAGENTS.md~/.codex/config.toml
CursorMCPrules, mcp.cursor/rules/agent-context.mdc.cursor/mcp.json
Gemini CLIMCPrules, mcpGEMINI.md.gemini/settings.json
GitHub CopilotMCPrules, mcp.github/copilot-instructions.md.vscode/mcp.json
JunieMCPrules, mcp.junie/guidelines.md.junie/mcp/mcp.json
Kilo CodeMCPrules, mcp.kilocode/rules/agent-context.md.kilocode/mcp.json
KiroMCPrules, mcp.kiro/steering/agent-context.md.kiro/settings/mcp.json
QoderMCPrules, mcp.qoder/rules/agent-context.mdManual setup
Qwen CodeMCPrules, mcpQWEN.mdManual setup
Roo CodeMCPrules, mcp.roo/rules/agent-context.md.roo/mcp.json
Trae.aiMCPrules, mcpproject_rules.mdManual setup
WarpMCPrules, mcpWARP.mdManual setup
WindsurfMCPrules, mcp.windsurf/rules/agent-context.md~/.codeium/windsurf/mcp_config.json
ZedMCPrules, mcpagent-context.rules.zed/settings.json
MCP Setup Modes
  • Auto setup: ByteRover automatically writes the MCP config file (most agents)
  • Manual setup: User must manually configure per agent’s documentation (Augment Code, Cline, Qoder, Qwen Code, Trae.ai, Warp)
Flags: None

/init

Initialize a project with ByteRover. Guides you through team and space selection and creates the context tree.
FlagDescription
-f, --forceForce re-initialization without confirmation prompt

/login

Authenticate with ByteRover using OAuth 2.0 + PKCE. Opens your default browser for secure authentication. Flags: None

/logout

Log out of ByteRover CLI and clear authentication credentials from the system keychain.
FlagDescription
-y, --yesSkip confirmation prompt

/reset

Reset the current context tree to an empty state. This is a destructive operation.
ArgumentTypeRequiredDescription
directorystringNoProject directory (defaults to current directory)
FlagDescription
-y, --yesSkip confirmation prompt
Examples
/reset                       # Reset with confirmation
/reset -y                    # Reset without confirmation
/reset -y /path/to/project   # Reset specific project

/new

Start a fresh session. This ends the current session and clears conversation history but does NOT affect the context tree (use /reset for that).
FlagDescription
-y, --yesSkip confirmation prompt
Examples
/new                         # Start new session with confirmation
/new -y                      # Start new session without confirmation

brv status

Show CLI status and project information. Displays local context tree managed by ByteRover CLI. Arguments
ArgumentTypeRequiredDescription
DIRECTORYstringNoProject directory (defaults to current directory)
Flags
FlagDescriptionDefault
-f, --format <option>Output format: table or jsontable
Examples
# Show status for current directory
brv status

# Show status for a specific directory
brv status /path/to/project

# Output status as JSON
brv status --format json
Output The status command displays:
  • CLI version
  • Authentication status (logged in user or “Not logged in”)
  • Current directory
  • Project initialization status (team and space info if initialized)
  • Context tree changes (git-style diff showing modified/added/deleted files)

brv query

Query and retrieve information from the context tree using natural language. Arguments
ArgumentTypeRequiredDescription
QUERYstringYesNatural language question about your project
Flags None Examples
# Query about implementation details
brv query "How is user authentication implemented?"
brv query "What are the API rate limits and where are they enforced?"

# Query about project structure
brv query "What testing strategies are used?"
Notes
  • Requires a running brv instance in the same directory (start with brv in another terminal)
  • Context tree must exist (run /init in REPL mode first)
  • Uses AI to search and analyze your context tree
  • Best results with specific, detailed questions
  • Avoid vague queries like “auth” or “show me code”

brv curate

Curate context to the context tree using interactive or autonomous mode. Arguments
ArgumentTypeRequiredDescription
CONTEXTstringNoKnowledge context (triggers autonomous mode if provided)
Flags
FlagDescriptionDefault
-f, --files <paths>Include specific file paths for critical context (max 5 files). Use multiple -f flags for multiple filesNone
Examples
# Interactive mode (manually choose domain/topic)
brv curate

# Autonomous mode with AI classification
brv curate "User authentication uses JWT tokens with 24h expiry"
brv curate "React components follow atomic design pattern"

# Include file references for context
brv curate "This module handles user sessions" -f src/auth/session.ts
brv curate "JWT authentication implementation" --files src/auth/jwt.ts --files docs/auth.md
brv curate "Auth logic" -f src/auth.ts -f src/middleware/auth.ts
Notes
  • Requires a running brv instance in the same directory (start with brv in another terminal)
  • Context tree must exist (run /init in REPL mode first)
  • Interactive mode: Navigate context tree, select domain/topic, creates markdown file with descriptive name
  • Autonomous mode: ByteRover agent automatically determines best location and adds content
  • File references: Up to 5 files. Use --files or -f flag for CLI mode, or @filepath syntax in REPL mode. Files must be text files within the project directory

Global Options

ByteRover CLI provides these global options:
FlagDescriptionExample
--helpShow help for commandbrv --help, brv status --help
--versionShow CLI versionbrv --version

File Structure

ByteRover CLI creates the following directory structure in your project:
.brv/
├── config.json                # Project configuration (team/space)
└── context-tree/              # Your knowledge base (starts empty)
    └── .snapshot.json         # Latest context tree snapshot
Key Files and Directories
  • config.json: Stores your team ID, space ID, and project metadata
  • context-tree/: Hierarchical structure organizing project knowledge by domains and topics (created as you curate)
  • .snapshot.json: Version control snapshot tracking context tree changes over time
Example structure after curating:
.brv/context-tree/
├── code_style/
│   └── error_handling/
│       └── custom_error_classes.md
├── design/
│   └── components/
│       └── button_variants.md
├── structure/
│   └── api_endpoints/
│       └── rest_api_structure.md
└── testing/
    └── integration_tests/
        └── api_testing_patterns.md
Each topic folder contains markdown files with descriptive names based on their content.