Installation & Setup
Get started by installing the Droid CLI in your terminal of choice.First-Time Authentication
On your first run, you’ll see an onboarding screen:- Choose to create an account or log in
- Confirm the authentication code in your browser
- Return to the terminal to start using droid
Interface & Shortcuts
Help Menu
PressShift + ? to open the help menu, which shows:
- How to send messages and create new lines
- Available keyboard shortcuts
- Basic navigation commands
- Autonomy mode options
Terminal-specific key bindings: The default for new lines is
\ + Enter, but you can configure this to Shift + Enter or other combinations based on your terminal’s key bindings. Check /terminal-setup in the CLI for configuration options.Essential Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Enter | Send message |
\ + Enter (or Shift + Enter) | New line in message |
Shift + ? | Open help menu |
Shift + Tab | Cycle through autonomy modes |
/ | Open command menu |
Cmd + Shift + H | Show root directory |
Cmd + Shift + . | Show hidden files/folders |
Ctrl + C or exit | Exit droid |
Ctrl + V | Paste image |
The paste image shortcut works across all terminals, though the specific key binding may vary based on your terminal configuration.
Autonomy Modes
Cycle through different autonomy levels by pressingShift + Tab:
Learn more about Specification Mode →
Spec Mode (Research & Plan Only)
Spec Mode (Research & Plan Only)
Droid will research and create a plan without making any changes. Perfect for understanding what will happen before execution.
- No file edits
- No command execution
- Creates detailed specifications
- Allows iteration on plans before proceeding
Low Mode (Read-Only + Safe Commands)
Low Mode (Read-Only + Safe Commands)
Allows reading files and executing low-risk, read-only commands.
- File reading
- Directory listing
- Safe diagnostic commands
- No modifications
Medium Mode (File Edits Allowed)
Medium Mode (File Edits Allowed)
Enables file modifications and medium-risk commands that are easily reversible.
- Create/edit/delete files
- Run build commands
- Execute tests
- Reversible operations
High Mode (All Commands with Safeguards)
High Mode (All Commands with Safeguards)
Allows all commands but still maintains safety through allow/deny lists.
- Full command execution
- File removal operations (with confirmation)
- Git operations
- Configurable via allow/deny lists
Even in High mode, certain dangerous operations (like removing files) will always require your approval unless you explicitly configure them in the allow list.
Slash Commands
Press/ to access the command menu with options for:
- Account & Billing - Manage your Factory account
- Model - Switch between AI models and set reasoning levels
- Sessions - View and navigate previous sessions
- Settings - Configure CLI preferences
- Terminal Setup - Configure key bindings
- Custom Commands - Access your custom slash commands
- Droids - Manage custom sub-agents
- MCP - Configure Model Context Protocol integrations
Switching Models
Access the model menu with/model:
- View available models
- Switch between models for different tasks
- Set reasoning level where applicable
Different models excel at different tasks. Use reasoning models for complex planning and faster models for routine edits.
Sessions Management
Access with/sessions:
- View all previous sessions
- Navigate to any past session
- Open sessions in the web interface
- Continue work from where you left off
Settings & Configuration
Access settings via/settings to customize your experience:
Full settings documentation →
Core Settings
Model & Reasoning
Choose your default model and reasoning level for new sessions
Diff Mode
Configure how code changes are displayed
GitHub Completion
Enable/disable GitHub Copilot-style completions
Cloud Sync
Sync sessions to Factory web platform
Advanced Settings
Droid Co-Author on PRs
Droid Co-Author on PRs
Droid Shield
Droid Shield
Protects environment variables and secrets in your code. Prevents accidental commits of sensitive information like API keys, passwords, and tokens.Learn more about Droid Shield →
Keep this enabled to protect against security vulnerabilities.
Save Spec as Markdown
Save Spec as Markdown
Automatically saves specifications generated in Spec Mode as markdown files on your machine for reference and documentation.Learn more about Specification Mode →
Allow List & Deny List
Allow List & Deny List
Configure which commands require approval even in High autonomy mode. Even on High, file removal operations require confirmation by default.Learn more about auto-run settings →
IDE Integration
Install the droid extension for VS Code, Cursor, and other IDEs directly from the settings menu. Learn more about IDE integration →Configuration Files
Access your configuration directory by pressingCmd + Shift + H to show your root directory, then Cmd + Shift + . to reveal hidden files. Navigate to the ~/.factory/ folder.
Directory Structure
Learn more: Settings | Custom Slash Commands | Custom Droids | MCP Configuration
config.json - Bring Your Own Key
Configure custom models using your own API keys:1
Find Provider Documentation
Visit Bring Your Own Key documentation and select your provider (OpenRouter, Fireworks, etc.)
2
Copy Configuration Template
Copy the JSON configuration for your chosen provider
3
Add to config.json
Paste the configuration into
~/.factory/config.json and add your API key4
Select Model
Use
/model in the CLI to select your newly added modelsettings.json - Allow & Deny Lists
Configure which commands require approval in High autonomy mode:autoModeDeny list will always require your explicit approval before execution.
mcp.json - MCP Integrations
Enable or disable MCP tools individually:"disabled": true to temporarily disable an MCP without removing its configuration.
Learn more about MCP configuration →
Custom Droids (Sub-Agents)
Custom droids are specialized AI agents that handle specific tasks. Access the droids menu with/droids:
Managing Droids
- Import (
i) - Import pre-built droids from other agents - Create (
c) - Create a new custom droid - Edit - Modify existing droid configurations
- Enable/Disable - Toggle droids on or off
Creating a Custom Droid
Learn more about custom droids →1
Choose Scope
Decide if the droid should be project-level (specific repository) or personal (available across all projects)
2
Generation Method
Choose to create manually or generate with droid’s help:Droid will generate an appropriate description and configuration
3
Configure Model
- Inherit: Use the same model as the parent session
- Specific Model: Choose a dedicated model for this droid (e.g., use a reasoning model for complex analysis)
4
Enable Tools
Select which tools and capabilities the droid should have access to
5
Save & Edit
Confirm the configuration and optionally edit the details
Example Use Cases
- Code Review Droid - Automated code reviews for pull requests
- Documentation Droid - Generates and maintains documentation
- Test Generation Droid - Creates comprehensive test suites
- Security Audit Droid - Scans for vulnerabilities and security issues
MCP Integrations
Model Context Protocol (MCP) allows droid to integrate with external tools and data sources.Adding MCPs via CLI
Use the/mcp add command:
- Name: Identifier for the MCP
- Command: Executable command (e.g.,
npx,python) - Args: Command arguments
- Environment Variables: API keys and configuration
Listing Configured MCPs
After adding or modifying MCPs, you may need to restart the CLI for changes to take effect.
Adding MCPs via Configuration File
You can also directly edit~/.factory/mcp.json:
Popular MCP Integrations
- Brave Search - Web search capabilities
- Playwright - Browser automation
- GitHub - Repository and issue management
- Filesystem - Extended file system access
- Postgres - Database queries
- Slack - Team communication
Example Workflow: Spec Mode to Implementation
Here’s a complete workflow demonstrating droid’s capabilities:1
Start in Spec Mode
Press
Shift + Tab until you’re in Spec mode2
Review the Plan
Droid generates a detailed specification:
- Architecture decisions
- Files to create/modify
- Dependencies needed
- Implementation steps
3
Iterate on the Spec
Refine the plan before implementation:Droid updates the specification accordingly
4
Approve and Proceed
Once satisfied with the plan, proceed with High mode to implement
5
Review Changes
Droid shows exactly what will change and waits for your approval
Spec mode is especially powerful for complex features. It allows you to validate the approach before any code is written.
Summary
You’ve learned how to:- Install and authenticate with the Droid CLI
- Navigate the interface and use keyboard shortcuts
- Understand and switch between autonomy modes
- Configure settings and preferences
- Add custom models with BYOK
- Create and manage custom droids (sub-agents)
- Integrate external tools via MCP
- Use spec mode for planning before implementation