darwincode 1.9.104

The open source terminal AI coding agent
darwincode-1.9.104 is not a library.

Installation

Install via cargo:

cargo install darwincode

Or build from source:

git clone https://github.com/femboypig/darwincode.git
cd darwincode
cargo install --path .

Controls

Shortcut Action
Enter Run selected setup action / Send message
Alt+Enter Insert a newline in the message input
Tab Switch setup fields / Auto-complete / commands
Up / Down Choose a setup value / Navigate model picker or history
Ctrl+S Open settings from chat
Ctrl+P Open interactive model switcher mid-conversation
Ctrl+A Auto-apply OmniRoute defaults (when sk- key is typed)
Ctrl+Z Undo last edit in message input
Ctrl+R Redo last undone edit in message input
Ctrl+K Cut/copy entire input to system clipboard
Ctrl+Y Paste from system clipboard into message input
Ctrl+L Copy entire last assistant response to clipboard
Esc Quit app, or return from settings to active chat

Chat Commands

Command Action
/settings Open the settings dashboard
/models Open the interactive model picker
/permissions [safe|guardian|chaos] View or set active tool execution permission level
/resume [session_id] Load a saved chat session (or open session selector)
/new Start a new chat session
/clear Clear the current chat history
/history Show a list of all saved session IDs
/help Display the help card listing all commands
/exit or /quit Terminate the application
Tab (while typing /) Accept the first command suggestion

Tool Access & Security Modes

The agent has access to native workspace tools to research, view, and modify code. You can configure three security levels in Settings:

  • Safe (Read-Only) - Only read codebase tools (read_file, list_directory, search_files) are permitted. Writes and bash commands are blocked.
  • Guardian (Ask) - The agent will prompt for confirmation before executing any system-modifying tools (write_file, edit_file, run_bash_command).
  • Chaos (Auto) - The agent will auto-execute all tools instantly.

Config & Local Encryption

  • Secure Keyring: API keys are securely saved in your OS native keychain. If the keychain service is missing, it falls back to storing them in the encrypted config file.
  • Local Encryption: Settings (config.json) and session histories under ~/.config/darwincode/ are symmetrically encrypted with AES-256-GCM using a secure key retrieved from the system keychain (or generated randomly and stored locally with strict 0600 file permissions).

Custom Workspace Commands Security

By default, global custom commands defined under ~/.config/darwincode/commands/ are trusted automatically. Workspace-specific custom commands located in .darwincode/commands/*.toml are treated as untrusted.

To run untrusted workspace commands, you must either:

  • Set "trust_workspace": true in your global configuration.
  • Explicitly trust the workspace for the current run by launching with the --trust-workspace CLI flag:
    darwincode --trust-workspace
    
  • Approve the interactive confirmation prompt in the TUI when the command is triggered.