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.
- package/CHANGELOG.md +12 -0
- package/README.md +90 -215
- package/dist/agents/ensemble.js +1 -1
- package/dist/agents/ensemble.js.map +1 -1
- package/dist/agents/orchestrator.js +4 -4
- package/dist/agents/orchestrator.js.map +1 -1
- package/dist/banner.d.ts +3 -0
- package/dist/banner.d.ts.map +1 -0
- package/dist/banner.js +66 -0
- package/dist/banner.js.map +1 -0
- package/dist/clipboard.d.ts +3 -0
- package/dist/clipboard.d.ts.map +1 -0
- package/dist/clipboard.js +63 -0
- package/dist/clipboard.js.map +1 -0
- package/dist/commands.d.ts +44 -0
- package/dist/commands.d.ts.map +1 -0
- package/dist/commands.js +1044 -0
- package/dist/commands.js.map +1 -0
- package/dist/config/index.d.ts +47 -42
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -0
- package/dist/config/index.js.map +1 -1
- package/dist/extraction.js +2 -2
- package/dist/extraction.js.map +1 -1
- package/dist/formatting.d.ts +13 -0
- package/dist/formatting.d.ts.map +1 -0
- package/dist/formatting.js +195 -0
- package/dist/formatting.js.map +1 -0
- package/dist/index.d.ts +1 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -1953
- package/dist/index.js.map +1 -1
- package/dist/index.test.js +1 -1
- package/dist/index.test.js.map +1 -1
- package/dist/model.d.ts +20 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +278 -0
- package/dist/model.js.map +1 -0
- package/dist/onboarding/wizard.js +1 -1
- package/dist/onboarding/wizard.js.map +1 -1
- package/dist/project-hash.d.ts +2 -0
- package/dist/project-hash.d.ts.map +1 -0
- package/dist/project-hash.js +6 -0
- package/dist/project-hash.js.map +1 -0
- package/dist/repl.d.ts +25 -0
- package/dist/repl.d.ts.map +1 -0
- package/dist/repl.js +203 -0
- package/dist/repl.js.map +1 -0
- package/dist/router/index.d.ts +1 -1
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +17 -6
- package/dist/router/index.js.map +1 -1
- package/dist/session/manager.d.ts.map +1 -1
- package/dist/session/manager.js +6 -5
- package/dist/session/manager.js.map +1 -1
- package/dist/tools/builtin/files.d.ts.map +1 -1
- package/dist/tools/builtin/files.js +1 -3
- package/dist/tools/builtin/files.js.map +1 -1
- package/dist/tools/builtin/indexing.d.ts +0 -1
- package/dist/tools/builtin/indexing.d.ts.map +1 -1
- package/dist/tools/builtin/indexing.js +1 -5
- package/dist/tools/builtin/indexing.js.map +1 -1
- package/dist/tools/builtin/indexing.test.js +2 -1
- package/dist/tools/builtin/indexing.test.js.map +1 -1
- package/dist/tools/builtin/process-watcher.d.ts.map +1 -1
- package/dist/tools/builtin/process-watcher.js +11 -9
- package/dist/tools/builtin/process-watcher.js.map +1 -1
- package/dist/tools/builtin/project-config.js +3 -3
- package/dist/tools/builtin/project-config.js.map +1 -1
- package/dist/tools/builtin/screenshot.d.ts.map +1 -1
- package/dist/tools/builtin/screenshot.js +18 -12
- package/dist/tools/builtin/screenshot.js.map +1 -1
- package/dist/tools/builtin/terminal.d.ts +9 -0
- package/dist/tools/builtin/terminal.d.ts.map +1 -1
- package/dist/tools/builtin/terminal.js +74 -16
- package/dist/tools/builtin/terminal.js.map +1 -1
- package/dist/tools/builtin/terminal.test.d.ts +2 -0
- package/dist/tools/builtin/terminal.test.d.ts.map +1 -0
- package/dist/tools/builtin/terminal.test.js +161 -0
- package/dist/tools/builtin/terminal.test.js.map +1 -0
- package/dist/tools/builtin/todo.d.ts.map +1 -1
- package/dist/tools/builtin/todo.js +7 -5
- package/dist/tools/builtin/todo.js.map +1 -1
- package/dist/tools/mcp/http.test.d.ts +2 -0
- package/dist/tools/mcp/http.test.d.ts.map +1 -0
- package/dist/tools/mcp/http.test.js +128 -0
- package/dist/tools/mcp/http.test.js.map +1 -0
- package/dist/tools/mcp/registry.d.ts.map +1 -1
- package/dist/tools/mcp/registry.js +1 -6
- package/dist/tools/mcp/registry.js.map +1 -1
- package/dist/tools/mcp/stdio.d.ts.map +1 -1
- package/dist/tools/mcp/stdio.js +4 -1
- package/dist/tools/mcp/stdio.js.map +1 -1
- package/dist/tools/mcp/stdio.test.d.ts +2 -0
- package/dist/tools/mcp/stdio.test.d.ts.map +1 -0
- package/dist/tools/mcp/stdio.test.js +121 -0
- package/dist/tools/mcp/stdio.test.js.map +1 -0
- package/dist/update-check.d.ts +2 -0
- package/dist/update-check.d.ts.map +1 -0
- package/dist/update-check.js +48 -0
- package/dist/update-check.js.map +1 -0
- 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="
|
|
3
|
+
<img width="256" alt="daedalus_emblem" src="https://github.com/user-attachments/assets/a5d4b394-3c2c-427e-b877-6e49f77467fc" />
|
|
4
4
|
|
|
5
|
+
[](https://www.npmjs.com/package/daedalus-cli)
|
|
6
|
+
[](https://github.com/bgill55/daedalus/actions/workflows/ci.yml)
|
|
7
|
+
[](LICENSE)
|
|
8
|
+
[](https://nodejs.org)
|
|
5
9
|
|
|
6
|
-
**Local-first
|
|
10
|
+
**Local-first terminal-based AI coding assistant.**
|
|
7
11
|
|
|
8
|
-
Daedalus
|
|
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
|
-
╭─
|
|
12
|
-
│ refactor the auth middleware to use async/await
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
╭─
|
|
16
|
-
│ Let me look at the current auth middleware...
|
|
17
|
-
│ I'll refactor it to use async/await pattern.
|
|
18
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
38
|
+
---
|
|
66
39
|
|
|
67
|
-
|
|
68
|
-
daedalus
|
|
69
|
-
```
|
|
40
|
+
## Why Daedalus?
|
|
70
41
|
|
|
71
|
-
|
|
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
|
-
##
|
|
50
|
+
## Features
|
|
76
51
|
|
|
77
|
-
|
|
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
|
-
| `/
|
|
84
|
-
| `/
|
|
85
|
-
| `/
|
|
86
|
-
| `/
|
|
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
|
|
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
|
-
| `/
|
|
102
|
-
| `/
|
|
103
|
-
| `/
|
|
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
|
-
| `/
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
119
|
+
Router strategies: `priority` (default), `round-robin`, `fastest`.
|
|
176
120
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
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
|
-
|
|
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
|
-
|
|
236
|
-
npm run
|
|
237
|
-
|
|
238
|
-
#
|
|
239
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
package/dist/agents/ensemble.js
CHANGED
|
@@ -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
|
|
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
|
|
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;YACR,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,OAAO,CAAC,CAAC;QAEvB,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;gBACnC,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;iBAChC,CAAC,CAAC;YACL,CAAC;YACD,KAAK,EAAE,CAAC;YACR,SAAS;QACX,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,IAAI,kCAAkC,CAAC;IAC/D,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"}
|
|
@@ -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
|
|
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:
|
|
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
|
|
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":"AAAA,kEAAkE;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAa,MAAM,YAAY,CAAC;AAiBzE,MAAM,OAAO,YAAY;IACf,MAAM,CAAc;IACpB,QAAQ,CAAgB;IACxB,WAAW,CAAc;IACzB,OAAO,GAAkB,EAAE,CAAC;IAEpC,YAAY,MAAmB,EAAE,QAAuB,EAAE,WAAwB;QAChF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY;QACpB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAElB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,yBAA0B,GAAa,CAAC,OAAO,EAAE,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,IAAY;QACnC,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,kBAAkB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAE3D,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAC9C,MAAM,QAAQ,GAAkB;YAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;YACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,IAAI,iBAAiB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,EAAE;SAC5N,CAAC;QAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAC3D,KAAK,EAAE,MAAM;YACb,QAAQ
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agents/orchestrator.ts"],"names":[],"mappings":"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"}
|
package/dist/banner.d.ts
ADDED
|
@@ -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 @@
|
|
|
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"}
|