npm.io
1.35.0 • Published 10h agoCLI

daedalus-cli

Licence
MIT
Version
1.35.0
Deps
8
Size
1.7 MB
Vulns
0
Weekly
8.1K
Stars
2
Install scriptsThis package runs scripts during installation (preinstall/install/postinstall)

Daedalus

daedalus_emblem

npm version npm weekly downloads npm total downloads GitHub stars CI License Node

Local-first terminal-based AI coding assistant.

Daedalus connects to local LLM servers (LM Studio, Ollama, llama.cpp, vLLM) or remote providers (OpenAI, Groq, OpenRouter, Anthropic), routes requests across models, and gives your AI agent access to your file system, terminal, git, web search, and codebase indexing.

╔═══════════════════════════════════════════════════════════════════╗
║  ██████╗  █████╗ ███████╗██████╗  █████╗ ██╗     ██╗   ██╗███████╗║
║  ██╔══██╗██╔══██╗██╔════╝██╔══██╗██╔══██╗██║     ██║   ██║██╔════╝║
║  ██║  ██║███████║█████╗  ██║  ██║███████║██║     ██║   ██║███████╗║
║  ██║  ██║██╔══██║██╔══╝  ██║  ██║██╔══██║██║     ██║   ██║╚════██║║
║  ██████╔╝██║  ██║███████╗██████╔╝██║  ██║███████╗╚██████╔╝███████║║
║  ╚═════╝ ╚═╝  ╚═╝╚══════╝╚═════╝ ╚═╝  ╚═╝╚══════╝ ╚═════╝ ╚══════╝║
║                                                                   ║
║  o  local-first · embedded router · multi-agent · not sentient o  ║
╚═══════════════════════════════════════════════════════════════════╝

Daedalus CLI View Daedalus TUI View


Quick Start

npm install -g daedalus-cli
daedalus

To launch with the interactive terminal dashboard layout:

daedalus --tui

On first run, Daedalus scans for local LLM servers and guides you through setup. If none are found, it prompts for a remote provider.

From source: git clone https://github.com/bgill55/daedalus.git && cd daedalus && npm install && npm run build


Why Daedalus?

AI assistance without:

  • Sending your code to third-party servers
  • Per-token pricing for every interaction
  • Being locked into a single provider
  • Losing conversation history between sessions

Features

Core
  • Interactive Terminal Dashboard (TUI) — premium side-by-side dashboard with real-time CPU/RAM monitor gauges, model selection overrides, and an interactive file tree to toggle prompt context dynamically.
  • Local-first — works entirely on your machine with local LLMs
  • Embedded model router — priority, round-robin, or fastest-response routing across multiple models
  • Smart model tier routing — routes planning, reviews, and context summarization calls to your configured intelligence tier model
  • Multi-agent orchestration — spawns planner, coder, reviewer, debugger, and researcher sub-agents
  • Loop Engineering & Self-Repair — automatic stack-aware compile/build verification checks (e.g., npx tsc --noEmit, cargo check, go build) with dynamic stdout/stderr feedback loops for self-repair, and Automated Workspace Rollback to revert patches and keep files clean upon task failure.
  • Codebase indexing — FTS5-powered symbol search, definitions, and call-graph references (TS/JS, Python, Go, Rust)
  • Stack-aware prompting — automatically scans your project tech stack on startup to prevent library and platform boundary hallucinations
  • Dynamic task checklist — injects the active todo list into each prompt turn to maintain execution context
  • Session management — SQLite-backed history with save, load, JSONL export
  • Persistent memory — facts and coding conventions auto-inject every turn; /profile and /style persist across sessions
  • MCP support — Model Context Protocol servers via stdio and HTTP/SSE
  • Windows + Unix — full cross-platform support
Tools
  • File tools — read, write, patch with interactive diff UI; fuzzy whitespace matching, syntax validation with auto-revert
  • Trust layer — write-without-read guardrail, circuit breaker, import/export validation, auto-test loop, large-rewrite annotation
  • Terminal — cross-platform shell execution (bash/cmd/powershell) with custom preference support, timeout, and abort
  • Git — status, diff, stage-all-and-commit, undo
  • Web — DuckDuckGo search and URL fetching (no API key needed)
  • Codebase — index, find, definitions, references
Commands
Command Description
/add Add file to context
/remove Remove file from context
/context Show active file context
/paste Paste clipboard text/image as message
/clear Clear conversation history
/spawn [--bg] <role> <task> / /delegate Spawn sub-agent: /spawn [--bg]
/tasks List background agent tasks
/task <id> Manage background task: /task
/orchestrate <goal> / /orc / /run / /o Orchestrate agents for a goal
/memory View project memory (facts & conventions)
/fact [text] Add a project fact to memory
/convention [text] Add a project convention to memory
/extract Manually extract facts from session
/profile View or set user profile info
/style Set your coding style preferences
/undo Undo last file patch
/branch [name] Git branch operations
/pr [base] Generate PR description Compared to base branch
/debug <command> Run command and autonomously debug failures
/ensemble <goal> Ensemble model drafting pipeline
/commit [msg] Stage and commit changes
/project [set <key> = <val>] View or set project config settings (.daedalusrc)
/session [name] Manage chat sessions — /session new to start, /session new to start in another project, /session load to restore
/test [n] Run test loop and fix failures
/index Index codebase for symbol search
/find <query> Search indexed symbols
/refs <symbol> Find symbol references (callers)
/def <symbol> Get symbol definition
/changelog View the latest CLI changes
/models List available and healthy models
/config [set <key> = <val>] Show current configuration
/doctor Diagnose connection and discovery
/help / ? / help Show available commands
/mcp Manage MCP servers: explore, search, install, list, remove, info
/onboard First-time setup — discover local models, configure, and test
/tui Toggle the Terminal User Interface (TUI) dashboard
exit / /exit / /quit / quit Save session and exit

Tab completion works on all commands.


Configuration

Daedalus stores config at ~/.daedalus/config.json. Key sections:

{
  "router": {
    "strategy": "priority",
    "chain": [
      { 
        "name": "local", 
        "endpoint": "http://localhost:1234/v1", 
        "model": "auto", 
        "enabled": true, 
        "priority": 1,
        "supportsTools": true,
        "tier": "intelligence"
      }
    ]
  },
  "indexing": { "enabled": true, "watch": true, "exclude": ["node_modules", "dist", ".git"] },
  "tools": { "sandbox": "none", "sandboxImage": "node:20" }
}

Router strategies: priority (default), round-robin, fastest.

Per-project config is stored at ~/.daedalus/config/<project-hash>.json and can be set via /project set <key> <value>.


Detailed Documentation Guides

For in-depth explanations, configuration options, and hardware optimization tips, see the modular guides below:


Development

npm run dev       # hot-reload
npm run build     # compile TypeScript
npm test          # vitest (270+ tests)
npm run lint      # eslint (flat config)
npx tsc --noEmit  # type check
Architecture
src/
├── index.ts           CLI entry, REPL, command dispatch
├── config/            Zod-schema validated config
├── router/            Model routing, health checks, rate limiter
├── session/           SQLite sessions, project memory, JSONL export
├── agents/            Multi-agent orchestration (planner, coder, et al.)
├── tools/             16 built-in tools + MCP transport
├── indexing/          FTS5 codebase indexing
└── onboarding/        Setup wizard

Contributing

See CONTRIBUTING.md for guidelines, coding standards, and the PR process. Governed by the Code of Conduct.

CHANGELOG.md | SECURITY.md | MIT License

Keywords