daedalus-cli 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +90 -215
  3. package/dist/agents/ensemble.js +1 -1
  4. package/dist/agents/ensemble.js.map +1 -1
  5. package/dist/agents/orchestrator.js +4 -4
  6. package/dist/agents/orchestrator.js.map +1 -1
  7. package/dist/banner.d.ts +3 -0
  8. package/dist/banner.d.ts.map +1 -0
  9. package/dist/banner.js +66 -0
  10. package/dist/banner.js.map +1 -0
  11. package/dist/clipboard.d.ts +3 -0
  12. package/dist/clipboard.d.ts.map +1 -0
  13. package/dist/clipboard.js +63 -0
  14. package/dist/clipboard.js.map +1 -0
  15. package/dist/commands.d.ts +44 -0
  16. package/dist/commands.d.ts.map +1 -0
  17. package/dist/commands.js +1044 -0
  18. package/dist/commands.js.map +1 -0
  19. package/dist/config/index.d.ts +47 -42
  20. package/dist/config/index.d.ts.map +1 -1
  21. package/dist/config/index.js +1 -0
  22. package/dist/config/index.js.map +1 -1
  23. package/dist/extraction.js +2 -2
  24. package/dist/extraction.js.map +1 -1
  25. package/dist/formatting.d.ts +13 -0
  26. package/dist/formatting.d.ts.map +1 -0
  27. package/dist/formatting.js +195 -0
  28. package/dist/formatting.js.map +1 -0
  29. package/dist/index.d.ts +1 -3
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +46 -1953
  32. package/dist/index.js.map +1 -1
  33. package/dist/index.test.js +1 -1
  34. package/dist/index.test.js.map +1 -1
  35. package/dist/model.d.ts +20 -0
  36. package/dist/model.d.ts.map +1 -0
  37. package/dist/model.js +278 -0
  38. package/dist/model.js.map +1 -0
  39. package/dist/onboarding/wizard.js +1 -1
  40. package/dist/onboarding/wizard.js.map +1 -1
  41. package/dist/project-hash.d.ts +2 -0
  42. package/dist/project-hash.d.ts.map +1 -0
  43. package/dist/project-hash.js +6 -0
  44. package/dist/project-hash.js.map +1 -0
  45. package/dist/repl.d.ts +25 -0
  46. package/dist/repl.d.ts.map +1 -0
  47. package/dist/repl.js +203 -0
  48. package/dist/repl.js.map +1 -0
  49. package/dist/router/index.d.ts +1 -1
  50. package/dist/router/index.d.ts.map +1 -1
  51. package/dist/router/index.js +17 -6
  52. package/dist/router/index.js.map +1 -1
  53. package/dist/session/manager.d.ts.map +1 -1
  54. package/dist/session/manager.js +6 -5
  55. package/dist/session/manager.js.map +1 -1
  56. package/dist/tools/builtin/files.d.ts.map +1 -1
  57. package/dist/tools/builtin/files.js +1 -3
  58. package/dist/tools/builtin/files.js.map +1 -1
  59. package/dist/tools/builtin/indexing.d.ts +0 -1
  60. package/dist/tools/builtin/indexing.d.ts.map +1 -1
  61. package/dist/tools/builtin/indexing.js +1 -5
  62. package/dist/tools/builtin/indexing.js.map +1 -1
  63. package/dist/tools/builtin/indexing.test.js +2 -1
  64. package/dist/tools/builtin/indexing.test.js.map +1 -1
  65. package/dist/tools/builtin/process-watcher.d.ts.map +1 -1
  66. package/dist/tools/builtin/process-watcher.js +11 -9
  67. package/dist/tools/builtin/process-watcher.js.map +1 -1
  68. package/dist/tools/builtin/project-config.js +3 -3
  69. package/dist/tools/builtin/project-config.js.map +1 -1
  70. package/dist/tools/builtin/screenshot.d.ts.map +1 -1
  71. package/dist/tools/builtin/screenshot.js +18 -12
  72. package/dist/tools/builtin/screenshot.js.map +1 -1
  73. package/dist/tools/builtin/terminal.d.ts +9 -0
  74. package/dist/tools/builtin/terminal.d.ts.map +1 -1
  75. package/dist/tools/builtin/terminal.js +74 -16
  76. package/dist/tools/builtin/terminal.js.map +1 -1
  77. package/dist/tools/builtin/terminal.test.d.ts +2 -0
  78. package/dist/tools/builtin/terminal.test.d.ts.map +1 -0
  79. package/dist/tools/builtin/terminal.test.js +161 -0
  80. package/dist/tools/builtin/terminal.test.js.map +1 -0
  81. package/dist/tools/builtin/todo.d.ts.map +1 -1
  82. package/dist/tools/builtin/todo.js +7 -5
  83. package/dist/tools/builtin/todo.js.map +1 -1
  84. package/dist/tools/mcp/http.test.d.ts +2 -0
  85. package/dist/tools/mcp/http.test.d.ts.map +1 -0
  86. package/dist/tools/mcp/http.test.js +128 -0
  87. package/dist/tools/mcp/http.test.js.map +1 -0
  88. package/dist/tools/mcp/registry.d.ts.map +1 -1
  89. package/dist/tools/mcp/registry.js +1 -6
  90. package/dist/tools/mcp/registry.js.map +1 -1
  91. package/dist/tools/mcp/stdio.d.ts.map +1 -1
  92. package/dist/tools/mcp/stdio.js +4 -1
  93. package/dist/tools/mcp/stdio.js.map +1 -1
  94. package/dist/tools/mcp/stdio.test.d.ts +2 -0
  95. package/dist/tools/mcp/stdio.test.d.ts.map +1 -0
  96. package/dist/tools/mcp/stdio.test.js +121 -0
  97. package/dist/tools/mcp/stdio.test.js.map +1 -0
  98. package/dist/update-check.d.ts +2 -0
  99. package/dist/update-check.d.ts.map +1 -0
  100. package/dist/update-check.js +48 -0
  101. package/dist/update-check.js.map +1 -0
  102. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [1.0.1](https://github.com/bgill55/daedalus/compare/v1.0.0...v1.0.1) (2026-06-20)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * address code quality issues from audit ([2638587](https://github.com/bgill55/daedalus/commit/2638587efafb5258f0c156116c0f8998b49b8435))
7
+
1
8
  # 1.0.0 (2026-06-20)
2
9
 
3
10
 
@@ -32,6 +39,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
32
39
  ## [Unreleased]
33
40
 
34
41
  ### Added
42
+ - **PowerShell & custom shell preference support in terminal execution** — configure terminal's preferred shell via environment variables (`DAEDALUS_SHELL`, `SHELL`) or config file setting (`tools.shell`) with automatically matched runtime execution arguments for bash, cmd, and PowerShell/pwsh.
43
+ - **CLI modular refactoring** — decoupled the monolithic entry point `src/index.ts` into isolated modules: `src/banner.ts`, `src/clipboard.ts`, `src/commands.ts`, `src/formatting.ts`, `src/model.ts`, `src/repl.ts`, and `src/update-check.ts` for clean code organization.
44
+ - **CLI Command Registry & Router pattern** — refactored command dispatching out of the main REPL loop into a centralized registry containing all 34 commands. Tab-completion list is now dynamically built from registered commands and aliases.
45
+ - **Cleaned TypeScript build compilation** — fixed all strict type safety and import issues across commands, models, project configs, and sessions, resulting in zero TS compiler errors on `tsc --noEmit`.
46
+ - **Additional test coverage** — added new test suites for preferred shell detection, MCP stdio/http transports, and CLI loops.
35
47
  - **CI/CD pipeline** — lint on ubuntu + test on win/ubuntu/macos runs on every PR; push to main triggers semantic-release (npm publish + GitHub release); manual canary release workflow with `--tag canary`
36
48
  - **ESLint v10 flat config** — typescript-eslint integration, pragmatically tuned to warn on pre-existing issues and error on new ones
37
49
  - **`DAEDALUS_PROFILE_PATH` env var** — allows overriding profile path without mocking `os.homedir()`
package/README.md CHANGED
@@ -1,285 +1,160 @@
1
1
  # Daedalus
2
2
 
3
- <img width="1024" height="1024" alt="daedalus_emblem_1781855172596" src="https://github.com/user-attachments/assets/a5d4b394-3c2c-427e-b877-6e49f77467fc" />
3
+ <img width="256" alt="daedalus_emblem" src="https://github.com/user-attachments/assets/a5d4b394-3c2c-427e-b877-6e49f77467fc" />
4
4
 
5
+ [![npm version](https://img.shields.io/npm/v/daedalus-cli?color=blue)](https://www.npmjs.com/package/daedalus-cli)
6
+ [![CI](https://github.com/bgill55/daedalus/actions/workflows/ci.yml/badge.svg)](https://github.com/bgill55/daedalus/actions/workflows/ci.yml)
7
+ [![License](https://img.shields.io/github/license/bgill55/daedalus?color=blue)](LICENSE)
8
+ [![Node](https://img.shields.io/badge/node-%3E%3D20-brightgreen)](https://nodejs.org)
5
9
 
6
- **Local-first coding CLI with an embedded model router, multi-agent orchestration, and codebase indexing.**
10
+ **Local-first terminal-based AI coding assistant.**
7
11
 
8
- Daedalus is a standalone terminal-based AI coding assistant that runs entirely on your machine. It connects to local LLM servers (LM Studio, Ollama, llama.cpp, vLLM) or remote providers (OpenAI, Groq, OpenRouter, Anthropic), routes requests intelligently, and gives your AI agent access to your file system, terminal, git, web search, and codebase indexing — all from your command line.
12
+ 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.
9
13
 
10
14
  ```text
11
- ╭─ You ───────────────────────────────────────────────╮
12
- │ refactor the auth middleware to use async/await
13
- ╰────────────────────────────────────────────────────────╯
14
-
15
- ╭─ Daedalus ───────────────────────────────────────────╮
16
- │ Let me look at the current auth middleware...
17
- │ I'll refactor it to use async/await pattern.
18
- ╰────────────────────────────────────────────────────────╯ ~132t · 3.2s
15
+ ╭─ You ───────────────────────────────────────────────────╮
16
+ │ refactor the auth middleware to use async/await
17
+ ╰──────────────────────────────────────────────────────────╯
18
+
19
+ ╭─ Daedalus ───────────────────────────────────────────────╮
20
+ │ Let me look at the current auth middleware...
21
+ │ I'll refactor it to use async/await pattern.
22
+ ╰──────────────────────────────────────────────────────────╯ ~132t · 3.2s
19
23
  ```
20
24
 
21
25
  ---
22
26
 
23
- ## Features
24
-
25
- - **Local-first** — Works with local LLMs (LM Studio, Ollama, llama.cpp, vLLM) or remote APIs
26
- - **Embedded model router** — Priority, round-robin, or fastest-response routing across multiple models; displays active model in response metadata
27
- - **Multi-agent orchestration** — Spawns sub-agents (planner, coder, reviewer, debugger, researcher) for complex tasks
28
- - **Codebase indexing** — FTS5-powered symbol search, definitions, and call-graph references (TS/JS, Python, Go, Rust)
29
- - **Resilient file tools** — Read, write, patch with interactive diff UI; fuzzy whitespace matching, syntax validation with auto-revert, and context-aware patch hints
30
- - **Trust layer** — Write-without-read guardrail, circuit breaker, import/export validation, auto-test loop, and large-rewrite annotation prevent hallucinated edits from reaching disk
31
- - **Terminal access** — Cross-platform shell execution (bash/cmd) with timeout and abort
32
- - **Git integration** — Status, diff, stage-all-and-commit, undo last patch
33
- - **Session management** — SQLite-backed conversation history with save/load/export
34
- - **Persistent memory** — Facts and conventions auto-inject into every turn. User profile (`/profile`) and coding style (`/style`) persist across sessions. Auto-fact extraction learns from your edits and commits.
35
- - **MCP support** — Connect Model Context Protocol servers (stdio and HTTP/SSE)
36
- - **Web tools** — DuckDuckGo search and URL fetching (no API key needed)
37
- - **Visual chat UI** — Bordered message blocks, tab completion, syntax-highlighted code blocks, inline markdown rendering
38
- - **Configurable** — Per-project settings (test commands, auto-run), full daedalus config
39
- - **Windows + Unix** — Full cross-platform support
40
-
41
- ---
42
-
43
27
  ## Quick Start
44
28
 
45
- ### Prerequisites
46
-
47
- - Node.js 20+
48
- - A local LLM server (recommended) or a remote API key
49
-
50
- ### Install
51
-
52
29
  ```bash
53
30
  npm install -g daedalus-cli
31
+ daedalus
54
32
  ```
55
33
 
56
- Or run directly from source:
34
+ On first run, Daedalus scans for local LLM servers and guides you through setup. If none are found, it prompts for a remote provider.
57
35
 
58
- ```bash
59
- git clone https://github.com/bgill55/daedalus.git
60
- cd daedalus
61
- npm install
62
- npm run build
63
- ```
36
+ From source: `git clone https://github.com/bgill55/daedalus.git && cd daedalus && npm install && npm run build`
64
37
 
65
- ### Launch
38
+ ---
66
39
 
67
- ```bash
68
- daedalus
69
- ```
40
+ ## Why Daedalus?
70
41
 
71
- On first run, Daedalus will scan for local LLM servers and guide you through setup. If none are found, it prompts you to configure a remote provider (OpenAI, Groq, OpenRouter, Anthropic, or custom).
42
+ AI assistance without:
43
+ - Sending your code to third-party servers
44
+ - Per-token pricing for every interaction
45
+ - Being locked into a single provider
46
+ - Losing conversation history between sessions
72
47
 
73
48
  ---
74
49
 
75
- ## Usage
50
+ ## Features
76
51
 
77
- Once inside the REPL, type `?` or `help` for the full command reference.
52
+ ### Core
53
+ - **Local-first** — works entirely on your machine with local LLMs
54
+ - **Embedded model router** — priority, round-robin, or fastest-response routing across multiple models
55
+ - **Multi-agent orchestration** — spawns planner, coder, reviewer, debugger, and researcher sub-agents
56
+ - **Codebase indexing** — FTS5-powered symbol search, definitions, and call-graph references (TS/JS, Python, Go, Rust)
57
+ - **Session management** — SQLite-backed history with save, load, JSONL export
58
+ - **Persistent memory** — facts and coding conventions auto-inject every turn; `/profile` and `/style` persist across sessions
59
+ - **MCP support** — Model Context Protocol servers via stdio and HTTP/SSE
60
+ - **Windows + Unix** — full cross-platform support
61
+
62
+ ### Tools
63
+ - **File tools** — read, write, patch with interactive diff UI; fuzzy whitespace matching, syntax validation with auto-revert
64
+ - **Trust layer** — write-without-read guardrail, circuit breaker, import/export validation, auto-test loop, large-rewrite annotation
65
+ - **Terminal** — cross-platform shell execution (bash/cmd/powershell) with custom preference support, timeout, and abort
66
+ - **Git** — status, diff, stage-all-and-commit, undo
67
+ - **Web** — DuckDuckGo search and URL fetching (no API key needed)
68
+ - **Codebase** — index, find, definitions, references
78
69
 
79
70
  ### Commands
80
71
 
81
72
  | Command | Description |
82
73
  |---------|-------------|
83
- | `/add <file>` | Add file to active context |
84
- | `/remove <file>` | Remove file from context |
85
- | `/context` | Show active file context |
86
- | `/clear` | Clear conversation history |
87
- | `/commit [message]` | Stage all and commit changes |
88
- | `/undo` | Revert last file patch |
89
- | `/test [iterations]` | Run tests and auto-fix failures |
90
- | `/memory` | View saved project facts and conventions |
91
- | `/fact <key> = <value>` | Save a project fact |
92
- | `/convention <key> = <value>` | Save a coding convention |
93
- | `/extract` | Manually extract facts from current session |
94
- | `/profile view\|name\|bio` | View or set your user profile |
95
- | `/style <preferences>` | Set persistent coding style preferences |
96
- | `/index` | Index codebase for symbol search |
74
+ | `/orchestrate <goal>` | Run multi-agent orchestration |
75
+ | `/spawn <role> <task>` | Spawn a sub-agent |
76
+ | `/ensemble <goal>` | Multi-model ensemble drafting |
77
+ | `/debug <command>` | Run and autonomously fix errors |
97
78
  | `/find <query>` | Fuzzy-search indexed symbols |
98
- | `/refs <symbol>` | Find symbol references (callers) |
79
+ | `/refs <symbol>` | Find symbol references |
99
80
  | `/def <symbol>` | Get symbol definition |
81
+ | `/add` / `/remove` / `/context` | Manage file context |
82
+ | `/commit [msg]` | Stage all and commit |
83
+ | `/undo` | Revert last file patch |
84
+ | `/test [n]` | Run tests and auto-fix failures |
85
+ | `/profile` / `/style` | Set user profile and coding preferences |
86
+ | `/memory` / `/fact` / `/convention` | Manage project memory |
87
+ | `/branch [name]` | View or switch branches |
88
+ | `/pr [base]` | Generate PR description |
89
+ | `/session` | Manage chat sessions |
100
90
  | `/project` | View or set project config |
101
- | `/session list\|load\|new\|delete` | Manage chat sessions |
102
- | `/models` | List available models |
103
- | `/tools` | List all tools |
104
- | `/doctor` | Diagnose local server connections |
91
+ | `/prune [budget]` | View and prune message history |
92
+ | `/doctor` | Diagnose server connections |
93
+ | `/index` | Index codebase |
105
94
  | `/onboard` | Re-run setup wizard |
106
- | `/spawn <role> <task>` | Spawn a sub-agent |
107
- | `/orchestrate <goal>` | Run multi-agent orchestration |
108
- | `/branch [name]` | View active branch or switch/create branches |
109
- | `/pr [base-branch]` | Generate Pull Request description |
110
- | `/debug <command>` | Run command and autonomously fix errors |
111
- | `/ensemble <goal>` | Run multi-model ensemble drafting pipeline |
112
- | `/prune [budget]` | View context breakdown and prune message history |
95
+ | `/models` / `/tools` | List models and tools |
113
96
  | `?` / `help` | Show command reference |
114
97
  | `exit` / `quit` | Save and quit |
115
98
 
116
- ### Tab Completion
117
-
118
- Start typing a command and press Tab — Daedalus auto-completes it:
119
-
120
- ```
121
- ⬡ › /fi[TAB]
122
- ⬡ › /find
123
- ```
99
+ Tab completion works on all commands.
124
100
 
125
101
  ---
126
102
 
127
103
  ## Configuration
128
104
 
129
- Daedalus stores its configuration at `~/.daedalus/config.json`. Key sections:
105
+ Daedalus stores config at `~/.daedalus/config.json`. Key sections:
130
106
 
131
107
  ```json
132
108
  {
133
109
  "router": {
134
110
  "strategy": "priority",
135
111
  "chain": [
136
- {
137
- "name": "local",
138
- "endpoint": "http://localhost:1234/v1",
139
- "model": "auto",
140
- "enabled": true,
141
- "priority": 1,
142
- "maxTokens": 8192
143
- }
112
+ { "name": "local", "endpoint": "http://localhost:1234/v1", "model": "auto", "enabled": true, "priority": 1 }
144
113
  ]
145
114
  },
146
- "indexing": {
147
- "enabled": true,
148
- "exclude": ["node_modules", "dist", ".git"]
149
- },
150
- "ui": {
151
- "showTokens": true
152
- }
153
- }
154
- ```
155
-
156
- ### Router Strategies
157
-
158
- - **`priority`** (default) — Picks the healthy model with lowest priority number
159
- - **`round-robin`** — Cycles through healthy models evenly
160
- - **`fastest`** — Picks the model with the lowest cached response time
161
-
162
- ### Per-Project Config
163
-
164
- Each project can have its own settings at `~/.daedalus/config/<project-hash>.json`:
165
-
166
- ```json
167
- {
168
- "testCommand": "npm test",
169
- "buildCommand": "npm run build",
170
- "lintCommand": "npm run lint",
171
- "devCommand": "npm run dev"
115
+ "indexing": { "enabled": true, "exclude": ["node_modules", "dist", ".git"] }
172
116
  }
173
117
  ```
174
118
 
175
- Configured via `/project set <key> <value>`.
119
+ Router strategies: `priority` (default), `round-robin`, `fastest`.
176
120
 
177
- ---
178
-
179
- ## Architecture
121
+ ### Shell Preference
122
+ The shell used by the terminal tool can be configured:
123
+ 1. Environment variable: `DAEDALUS_SHELL` or `SHELL`.
124
+ 2. Configuration file setting: `"tools": { "shell": "powershell" }` (supports `powershell`, `pwsh`, `cmd`, `bash`, or absolute executable paths).
180
125
 
181
- ```text
182
- src/
183
- ├── index.ts # CLI entry point, REPL, command dispatch
184
- ├── types.ts # Shared type definitions
185
- ├── highlight.ts # Syntax highlighting for code blocks
186
- ├── profile.ts # User profile (name, bio, style) persistence
187
- ├── extraction.ts # Auto-fact extraction engine
188
- ├── config/ # Configuration loading, schema, discovery
189
- │ └── index.ts
190
- ├── router/ # Model routing engine
191
- │ ├── index.ts # LocalRouter: routing, streaming, completion
192
- │ ├── types.ts # Router types
193
- │ ├── health.ts # Model health checks
194
- │ └── rate-limiter.ts # Token-bucket rate limiter
195
- ├── session/ # Session persistence
196
- │ ├── manager.ts # Session orchestration
197
- │ ├── sqlite.ts # SQLite CRUD
198
- │ ├── memory.ts # Project facts & conventions
199
- │ └── jsonl.ts # JSONL import/export
200
- ├── agents/ # Multi-agent system
201
- │ ├── agent.ts # Agent interface
202
- │ ├── roles.ts # Role definitions (coder, reviewer, etc.)
203
- │ └── orchestrator.ts # Orchestration engine
204
- ├── tools/ # Tool system
205
- │ ├── definitions.ts # 16 built-in tool definitions
206
- │ ├── executor.ts # Tool execution engine
207
- │ ├── daedalus-spinner.ts # Terminal spinner
208
- │ ├── builtin/ # Built-in tool implementations
209
- │ │ ├── files.ts # File read/write/patch/search
210
- │ │ ├── terminal.ts # Shell execution
211
- │ │ ├── git.ts # Git diff/status
212
- │ │ ├── web.ts # Web search/fetch
213
- │ │ ├── todo.ts # Task management
214
- │ │ ├── delegation.ts # Sub-agent delegation
215
- │ │ ├── indexing.ts # Codebase indexing tools
216
- │ │ ├── diff-ui.ts # Interactive diff viewer
217
- │ │ └── project-config.ts
218
- │ └── mcp/ # MCP transport
219
- │ ├── registry.ts # MCP server manager
220
- │ ├── stdio.ts # stdio transport
221
- │ ├── http.ts # HTTP/SSE transport
222
- │ └── tool-executor.ts
223
- ├── indexing/ # Codebase indexing
224
- │ ├── fts.ts # FTS5 database layer
225
- │ └── indexer.ts # File crawler & language parsers
226
- └── onboarding/ # Setup wizard
227
- └── wizard.ts
228
- ```
126
+ Per-project config at `~/.daedalus/config/<project-hash>.json` — set via `/project set <key> <value>`.
229
127
 
230
128
  ---
231
129
 
232
130
  ## Development
233
131
 
234
132
  ```bash
235
- # Run in dev mode (hot reload)
236
- npm run dev
237
-
238
- # Run directly
239
- npm start
240
-
241
- # Build
242
- npm run build
243
-
244
- # Type check
245
- npx tsc --noEmit
246
-
247
- # Test
248
- npm test
249
-
250
- # Lint
251
- npm run lint
133
+ npm run dev # hot-reload
134
+ npm run build # compile TypeScript
135
+ npm test # vitest (270+ tests)
136
+ npm run lint # eslint (flat config)
137
+ npx tsc --noEmit # type check
252
138
  ```
253
139
 
254
- ---
255
-
256
- ## Why Daedalus?
257
-
258
- Daedalus is built for developers who want AI assistance without:
259
- - Sending their code to third-party servers
260
- - Paying per-token for every interaction
261
- - Being locked into a single provider
262
- - Losing their conversation history between sessions
263
- - Having limited tool access
140
+ ### Architecture
264
141
 
265
- It's for local-first, private, customizable AI coding — with memory that grows with you.
142
+ ```
143
+ src/
144
+ ├── index.ts CLI entry, REPL, command dispatch
145
+ ├── config/ Zod-schema validated config
146
+ ├── router/ Model routing, health checks, rate limiter
147
+ ├── session/ SQLite sessions, project memory, JSONL export
148
+ ├── agents/ Multi-agent orchestration (planner, coder, et al.)
149
+ ├── tools/ 16 built-in tools + MCP transport
150
+ ├── indexing/ FTS5 codebase indexing
151
+ └── onboarding/ Setup wizard
152
+ ```
266
153
 
267
154
  ---
268
155
 
269
156
  ## Contributing
270
157
 
271
- Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for our contribution guidelines, coding standards, and pull request process.
272
-
273
- This project is governed by a [Code of Conduct](CODE_OF_CONDUCT.md). Please report any unacceptable behavior.
274
-
275
- ## Changelog
276
-
277
- See [CHANGELOG.md](CHANGELOG.md) for the project history.
278
-
279
- ## Security
280
-
281
- Report security vulnerabilities privately to bgill55_dev@voxvivid.com — see [SECURITY.md](SECURITY.md) for details.
282
-
283
- ## License
158
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines, coding standards, and the PR process. Governed by the [Code of Conduct](CODE_OF_CONDUCT.md).
284
159
 
285
- MIT
160
+ [CHANGELOG.md](CHANGELOG.md) | [SECURITY.md](SECURITY.md) | MIT License
@@ -16,7 +16,7 @@ async function executeAgentRole(roleName, modelName, goal, context, router, tool
16
16
  while (turns < maxTurns) {
17
17
  const completion = await router.chat.completions.create({
18
18
  model: modelName,
19
- messages: messages,
19
+ messages,
20
20
  temperature: role.temperature ?? 0.1,
21
21
  tools: tools.length > 0 ? tools : undefined,
22
22
  tool_choice: tools.length > 0 ? 'auto' : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"ensemble.js","sourceRoot":"","sources":["../../src/agents/ensemble.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,uDAAuD;AACvD,KAAK,UAAU,gBAAgB,CAC7B,QAAgB,EAChB,SAAiB,EACjB,IAAY,EACZ,OAAe,EACf,MAAmB,EACnB,WAAwB;IAExB,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,kBAAkB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAkB;QAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE;QAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,aAAa,IAAI,EAAE,EAAE;KACzD,CAAC;IAEF,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAErC,OAAO,KAAK,GAAG,QAAQ,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACtD,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,QAAe;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,GAAG;YACpC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,WAAW,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;SACnD,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,OAAc,CAAC,CAAC;QAE9B,IAAK,OAAe,CAAC,UAAU,IAAK,OAAe,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACnC,OAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;gBAC5C,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,UAAmB;gBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE;aACvE,CAAC,CAAC,EACH,WAAW,CACZ,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,YAAY,EAAE,MAAM,CAAC,UAAU;iBACzB,CAAC,CAAC;YACZ,CAAC;YACD,KAAK,EAAE,CAAC;YACR,SAAS;QACX,CAAC;QAED,OAAQ,OAAe,CAAC,OAAO,IAAI,kCAAkC,CAAC;IACxE,CAAC;IAED,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED,mEAAmE;AACnE,SAAS,iBAAiB,CAAC,GAAW;IACpC,IAAI,CAAC;QACH,IAAI,CAAC;YACH,QAAQ,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACxB,OAAO,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC;IAClD,CAAC;AACH,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAY,EACZ,OAAoB,EACpB,MAAsB,EACtB,MAAmB;IAEnB,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9C,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,IAAI,MAAM,CAAC;IACvD,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,IAAI,MAAM,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,sDAAsD,IAAI,GAAG,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,+BAA+B,UAAU,kBAAkB,WAAW,GAAG,CAAC,CAAC,CAAC;IAEhG,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,IAAI,OAAO,QAAQ,MAAM,CAAC,CAAC,CAAC,CAAC;QAEzE,iBAAiB;QACjB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,SAAS;YACzB,CAAC,CAAC,+BAA+B,IAAI,gFAAgF,SAAS,2EAA2E;YACzM,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;YAC5C,CAAC,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5E,CAAC,CAAC,qBAAqB,CAAC;QAE1B,MAAM,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAEnF,0BAA0B;QAC1B,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,4DAA4D,CAAC,CAAC,CAAC;YACrF,MAAM;QACR,CAAC;QAED,oBAAoB;QACpB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG;;;EAGrB,IAAI;;;EAGJ,IAAI;;;;;2CAKqC,CAAC;QAExC,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAEtG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,yBAAyB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAEvE,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;YACnE,MAAM;QACR,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,YAAY,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kDAAkD,IAAI,GAAG,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"ensemble.js","sourceRoot":"","sources":["../../src/agents/ensemble.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ export class Orchestrator {
33
33
  ];
34
34
  const completion = await this.router.chat.completions.create({
35
35
  model: 'auto',
36
- messages: messages,
36
+ messages,
37
37
  temperature: plannerRole.temperature ?? 0.2,
38
38
  tools,
39
39
  tool_choice: 'auto',
@@ -60,7 +60,7 @@ export class Orchestrator {
60
60
  tools,
61
61
  tool_choice: 'none', // No more tool calls — just produce the plan text
62
62
  });
63
- return followUp.choices[0].message.content || 'No plan generated';
63
+ return (followUp.choices[0].message).content || 'No plan generated';
64
64
  }
65
65
  return assistantMessage.content || 'No plan generated';
66
66
  }
@@ -110,7 +110,7 @@ export class Orchestrator {
110
110
  role: task.role,
111
111
  goal: task.goal,
112
112
  summary: result,
113
- success: !result.includes('Error') && !result.includes('Failed'),
113
+ success: !/^(Error|Failed)/.test(result.trim()),
114
114
  });
115
115
  console.log(`[OK] ${role.name} completed`);
116
116
  }
@@ -124,7 +124,7 @@ export class Orchestrator {
124
124
  while (turns < maxTurns) {
125
125
  const completion = await this.router.chat.completions.create({
126
126
  model: 'auto',
127
- messages: messages,
127
+ messages,
128
128
  temperature: role.temperature ?? 0.1,
129
129
  tools,
130
130
  tool_choice: 'auto',
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agents/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agents/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function printBanner(version: string): void;
2
+ export declare function printConfigInfo(enabledCount: number, strategy: string, configPath: string): void;
3
+ //# sourceMappingURL=banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AA4BA,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAsCjD;AAED,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,IAAI,CAaN"}
package/dist/banner.js ADDED
@@ -0,0 +1,66 @@
1
+ import pc from 'picocolors';
2
+ const LOGO_ROWS = [
3
+ ' ██████╗ █████╗ ███████╗ ██████╗ █████╗ ██╗ ██╗ ██╗ ███████╗ ',
4
+ ' ██╔══██╗ ██╔══██╗ ██╔════╝ ██╔══██╗ ██╔══██╗ ██║ ██║ ██║ ██╔════╝ ',
5
+ ' ██║ ██║ ███████║ █████╗ ██║ ██║ ███████║ ██║ ██║ ██║ ███████╗ ',
6
+ ' ██║ ██║ ██╔══██║ ██╔══╝ ██║ ██║ ██╔══██║ ██║ ██║ ██║ ╚════██║ ',
7
+ ' ██████╔╝ ██║ ██║ ███████╗ ██████╔╝ ██║ ██║ ███████╗╚██████╔╝ ███████║ ',
8
+ ' ╚═════╝ ╚═╝ ╚═╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚══════╝ ╚═════╝ ╚══════╝ ',
9
+ ];
10
+ const W = 76;
11
+ function box(inner, borderColor) {
12
+ return borderColor('║') + inner + borderColor('║');
13
+ }
14
+ function hRule(l, r, fill, len, color) {
15
+ return color(l + fill.repeat(len) + r);
16
+ }
17
+ function centred(text, width, color) {
18
+ const pad = Math.max(0, width - text.length);
19
+ const left = Math.floor(pad / 2);
20
+ const right = pad - left;
21
+ return ' '.repeat(left) + color(text) + ' '.repeat(right);
22
+ }
23
+ export function printBanner(version) {
24
+ const cyan = pc.cyan.bind(pc);
25
+ const white = pc.white.bind(pc);
26
+ const bold = pc.bold.bind(pc);
27
+ const dim = pc.dim.bind(pc);
28
+ console.log(hRule('╔', '╗', '═', W, cyan));
29
+ console.log(box(' '.repeat(W), cyan));
30
+ LOGO_ROWS.forEach((row, i) => {
31
+ const mid = Math.floor(row.length * (0.4 + i * 0.04));
32
+ const left = cyan(row.slice(0, mid));
33
+ const right = white(row.slice(mid));
34
+ const inner = left + right;
35
+ const visLen = row.length;
36
+ const padded = inner + ' '.repeat(Math.max(0, W - visLen));
37
+ console.log(box(padded, cyan));
38
+ });
39
+ console.log(box(' '.repeat(W), cyan));
40
+ const tagline = '⬡ local-first · embedded router · multi-agent · not sentient ⬡';
41
+ console.log(box(centred(tagline, W, dim), cyan));
42
+ console.log(hRule('╚', '╝', '═', W, cyan));
43
+ const badge = ` v${version}`;
44
+ const author = `bgill55_dev `;
45
+ const divider = ` · `;
46
+ console.log('');
47
+ console.log(' ' +
48
+ pc.bgCyan(pc.black(bold(` DAEDALUS `))) +
49
+ pc.bgBlack(pc.cyan(bold(badge))) +
50
+ pc.bgBlack(dim(divider)) +
51
+ pc.bgBlack(pc.white(author)));
52
+ console.log('');
53
+ }
54
+ export function printConfigInfo(enabledCount, strategy, configPath) {
55
+ const contentLine = `strategy ${strategy} models ${enabledCount} config ${configPath}`;
56
+ const top = pc.dim(' ┌─ ') + pc.cyan('router') + pc.dim(' ' + '─'.repeat(Math.max(0, contentLine.length - 7)) + '┐');
57
+ const mid = pc.dim(' │ ') + pc.white(contentLine) + pc.dim(' │');
58
+ const bot = pc.dim(' └' + '─'.repeat(contentLine.length + 2) + '┘');
59
+ console.log(top);
60
+ console.log(mid);
61
+ console.log(bot);
62
+ console.log('');
63
+ console.log(` ${pc.dim('Type')} ${pc.cyan('?')} ${pc.dim('for commands · Tab completes · Be nice to your AI')}`);
64
+ console.log('');
65
+ }
66
+ //# sourceMappingURL=banner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function getClipboardText(): string;
2
+ export declare function getClipboardImage(tempDir: string): string | null;
3
+ //# sourceMappingURL=clipboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../src/clipboard.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,IAAI,MAAM,CAYzC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiChE"}