cmdr-agent 2.5.4 → 3.0.0
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/README.md +122 -205
- package/dist/bin/cmdr.js +64 -3
- package/dist/bin/cmdr.js.map +1 -1
- package/dist/package.json +1 -1
- package/dist/src/agents/executor.d.ts +1 -1
- package/dist/src/agents/executor.d.ts.map +1 -1
- package/dist/src/agents/executor.js +2 -2
- package/dist/src/agents/executor.js.map +1 -1
- package/dist/src/agents/subagent-tool.d.ts.map +1 -1
- package/dist/src/agents/subagent-tool.js +1 -1
- package/dist/src/agents/subagent-tool.js.map +1 -1
- package/dist/src/cli/args.d.ts +11 -2
- package/dist/src/cli/args.d.ts.map +1 -1
- package/dist/src/cli/args.js +49 -8
- package/dist/src/cli/args.js.map +1 -1
- package/dist/src/cli/buddy.d.ts +49 -0
- package/dist/src/cli/buddy.d.ts.map +1 -0
- package/dist/src/cli/buddy.js +187 -0
- package/dist/src/cli/buddy.js.map +1 -0
- package/dist/src/cli/commands.js +105 -11
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/daemon.d.ts +45 -0
- package/dist/src/cli/daemon.d.ts.map +1 -0
- package/dist/src/cli/daemon.js +157 -0
- package/dist/src/cli/daemon.js.map +1 -0
- package/dist/src/cli/ink/App.d.ts.map +1 -1
- package/dist/src/cli/ink/App.js +257 -1
- package/dist/src/cli/ink/App.js.map +1 -1
- package/dist/src/cli/repl.d.ts +5 -3
- package/dist/src/cli/repl.d.ts.map +1 -1
- package/dist/src/cli/repl.js +87 -26
- package/dist/src/cli/repl.js.map +1 -1
- package/dist/src/config/schema.d.ts +113 -12
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +26 -2
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/core/agent-runner.d.ts.map +1 -1
- package/dist/src/core/agent-runner.js +42 -3
- package/dist/src/core/agent-runner.js.map +1 -1
- package/dist/src/core/agent.d.ts +2 -0
- package/dist/src/core/agent.d.ts.map +1 -1
- package/dist/src/core/agent.js +13 -0
- package/dist/src/core/agent.js.map +1 -1
- package/dist/src/core/types.d.ts +16 -1
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js +6 -0
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/index.d.ts +13 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +12 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/llm/anthropic.d.ts.map +1 -1
- package/dist/src/llm/anthropic.js +11 -0
- package/dist/src/llm/anthropic.js.map +1 -1
- package/dist/src/llm/ollama.d.ts.map +1 -1
- package/dist/src/llm/ollama.js +8 -1
- package/dist/src/llm/ollama.js.map +1 -1
- package/dist/src/llm/openai.d.ts.map +1 -1
- package/dist/src/llm/openai.js +21 -6
- package/dist/src/llm/openai.js.map +1 -1
- package/dist/src/memory/index-manager.d.ts +65 -0
- package/dist/src/memory/index-manager.d.ts.map +1 -0
- package/dist/src/memory/index-manager.js +241 -0
- package/dist/src/memory/index-manager.js.map +1 -0
- package/dist/src/plugins/plugin-manager.d.ts +2 -1
- package/dist/src/plugins/plugin-manager.d.ts.map +1 -1
- package/dist/src/plugins/plugin-manager.js +13 -2
- package/dist/src/plugins/plugin-manager.js.map +1 -1
- package/dist/src/server/index.d.ts +20 -0
- package/dist/src/server/index.d.ts.map +1 -0
- package/dist/src/server/index.js +281 -0
- package/dist/src/server/index.js.map +1 -0
- package/dist/src/session/branch-manager.d.ts +39 -0
- package/dist/src/session/branch-manager.d.ts.map +1 -0
- package/dist/src/session/branch-manager.js +142 -0
- package/dist/src/session/branch-manager.js.map +1 -0
- package/dist/src/session/checkpoint-manager.d.ts +28 -0
- package/dist/src/session/checkpoint-manager.d.ts.map +1 -0
- package/dist/src/session/checkpoint-manager.js +96 -0
- package/dist/src/session/checkpoint-manager.js.map +1 -0
- package/dist/src/tools/built-in/browser.d.ts +32 -0
- package/dist/src/tools/built-in/browser.d.ts.map +1 -0
- package/dist/src/tools/built-in/browser.js +168 -0
- package/dist/src/tools/built-in/browser.js.map +1 -0
- package/dist/src/tools/built-in/git-diff.d.ts +1 -0
- package/dist/src/tools/built-in/git-diff.d.ts.map +1 -1
- package/dist/src/tools/built-in/git-diff.js +7 -2
- package/dist/src/tools/built-in/git-diff.js.map +1 -1
- package/dist/src/tools/built-in/index.d.ts +7 -1
- package/dist/src/tools/built-in/index.d.ts.map +1 -1
- package/dist/src/tools/built-in/index.js +19 -1
- package/dist/src/tools/built-in/index.js.map +1 -1
- package/dist/src/tools/built-in/rag-search.d.ts +12 -0
- package/dist/src/tools/built-in/rag-search.d.ts.map +1 -0
- package/dist/src/tools/built-in/rag-search.js +37 -0
- package/dist/src/tools/built-in/rag-search.js.map +1 -0
- package/dist/src/tools/executor.d.ts.map +1 -1
- package/dist/src/tools/executor.js +55 -2
- package/dist/src/tools/executor.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,252 +1,169 @@
|
|
|
1
|
-
|
|
1
|
+
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
[](https://www.npmjs.com/package/cmdr-agent)
|
|
5
|
-
[](LICENSE)
|
|
6
|
-
|
|
7
|
-
> Open-source, Ollama-native, multi-agent coding tool for your terminal.
|
|
8
|
-
|
|
9
|
-
```
|
|
3
|
+
<pre>
|
|
10
4
|
██████╗███╗ ███╗██████╗ ██████╗
|
|
11
5
|
██╔════╝████╗ ████║██╔══██╗██╔══██╗
|
|
12
6
|
██║ ██╔████╔██║██║ ██║██████╔╝
|
|
13
7
|
██║ ██║╚██╔╝██║██║ ██║██╔══██╗
|
|
14
8
|
╚██████╗██║ ╚═╝ ██║██████╔╝██║ ██║
|
|
15
9
|
╚═════╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝
|
|
16
|
-
|
|
10
|
+
</pre>
|
|
17
11
|
|
|
18
|
-
**
|
|
19
|
-
|
|
20
|
-
## Features
|
|
21
|
-
|
|
22
|
-
- **Local-first** — powered by Ollama, all inference runs on your hardware
|
|
23
|
-
- **Multi-agent architecture** — extensible agent/runner pipeline with tool calling
|
|
24
|
-
- **Interactive REPL** — streaming output, markdown rendering, AMOLED-friendly theme
|
|
25
|
-
- **Built-in tools** — file read/write/edit, glob, grep, bash, git diff/log/commit/branch, web fetch, think
|
|
26
|
-
- **HITL permissions** — approve, deny, or always-allow each tool call
|
|
27
|
-
- **Context compaction** — multi-stage strategy keeps conversations within context limits
|
|
28
|
-
- **Session persistence** — auto-save, resume, and `--continue` flag
|
|
29
|
-
- **Token cost tracking** — `/cost` command shows per-session usage breakdown
|
|
30
|
-
- **Undo** — `/undo` reverts file changes made by the agent
|
|
31
|
-
- **Multi-agent teams** — built-in presets: code review, full-stack, security audit
|
|
32
|
-
- **Plugin system** — load custom plugins from npm modules or local paths
|
|
33
|
-
- **MCP client** — connect to Model Context Protocol servers for extended tools
|
|
34
|
-
- **Project awareness** — auto-detects language, framework, and reads `CMDR.md` instructions
|
|
35
|
-
- **Whimsical UX** — 150+ spinner verbs, past-tense summaries, collapsed tool output
|
|
12
|
+
**Local-first, multi-agent AI coding in your terminal.**
|
|
36
13
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
# Install cmdr
|
|
44
|
-
npm install -g cmdr-agent
|
|
14
|
+
[](https://github.com/reyyanxahmed/cmdr/actions/workflows/ci.yml)
|
|
15
|
+
[](https://www.npmjs.com/package/cmdr-agent)
|
|
16
|
+
[](https://www.npmjs.com/package/cmdr-agent)
|
|
17
|
+
[](https://github.com/reyyanxahmed/cmdr)
|
|
18
|
+
[](https://github.com/reyyanxahmed/cmdr)
|
|
19
|
+
[](LICENSE)
|
|
45
20
|
|
|
46
|
-
|
|
47
|
-
cmdr
|
|
48
|
-
```
|
|
21
|
+
[Getting Started](docs/getting-started.md) · [Usage](docs/usage.md) · [Configuration](docs/configuration.md) · [Benchmarks](docs/benchmarks.md)
|
|
49
22
|
|
|
50
|
-
|
|
23
|
+
</div>
|
|
51
24
|
|
|
52
|
-
|
|
53
|
-
cmdr # Interactive REPL
|
|
54
|
-
cmdr "fix the failing tests" # Single prompt, then exit
|
|
55
|
-
cmdr -m llama3.1:8b # Use a specific model
|
|
56
|
-
cmdr -c # Continue most recent session
|
|
57
|
-
cmdr --resume <session-id> # Resume a specific session
|
|
58
|
-
cmdr --team review # Multi-agent code review team
|
|
59
|
-
cmdr --cwd /path/to/project # Override working directory
|
|
60
|
-
```
|
|
25
|
+
---
|
|
61
26
|
|
|
62
|
-
|
|
27
|
+
## What is cmdr?
|
|
63
28
|
|
|
64
|
-
|
|
65
|
-
|------|-------------|
|
|
66
|
-
| `-m, --model <name>` | Set the Ollama model |
|
|
67
|
-
| `-u, --ollama-url <url>` | Ollama server URL |
|
|
68
|
-
| `-p, --prompt <text>` | Run a single prompt and exit |
|
|
69
|
-
| `-r, --resume <id>` | Resume a previous session |
|
|
70
|
-
| `-c, --continue` | Resume most recent session for this directory |
|
|
71
|
-
| `-t, --team <preset>` | Run with a multi-agent team (review, fullstack, security) |
|
|
72
|
-
| `--cwd <path>` | Set working directory |
|
|
73
|
-
| `--verbose` | Print full tool output |
|
|
74
|
-
| `--dangerously-skip-permissions` | Auto-approve all tool calls |
|
|
75
|
-
| `--max-turns <n>` | Limit agent tool-call turns |
|
|
76
|
-
| `-h, --help` | Show help |
|
|
77
|
-
| `-v, --version` | Show version |
|
|
78
|
-
|
|
79
|
-
### Slash Commands
|
|
80
|
-
|
|
81
|
-
| Command | Description |
|
|
82
|
-
|---------|-------------|
|
|
83
|
-
| `/help` | Show available commands |
|
|
84
|
-
| `/model <name>` | Switch model |
|
|
85
|
-
| `/models` | List available Ollama models |
|
|
86
|
-
| `/status` | Show session info |
|
|
87
|
-
| `/context` | Show context window usage |
|
|
88
|
-
| `/compact` | Manually trigger compaction |
|
|
89
|
-
| `/cost` | Show token usage breakdown |
|
|
90
|
-
| `/undo` | Revert the last file change made by the agent |
|
|
91
|
-
| `/diff` | Show git diff |
|
|
92
|
-
| `/team [preset]` | Switch to a multi-agent team |
|
|
93
|
-
| `/agents` | Show active agents and status |
|
|
94
|
-
| `/tasks` | Show task queue status |
|
|
95
|
-
| `/config` | View configuration |
|
|
96
|
-
| `/plugin list` | List loaded plugins |
|
|
97
|
-
| `/mcp list` | List MCP server connections |
|
|
98
|
-
| `/session save` | Save current session |
|
|
99
|
-
| `/session resume <id>` | Resume a session |
|
|
100
|
-
| `/sessions` | List saved sessions |
|
|
101
|
-
| `/permissions [mode]` | View/set permission mode |
|
|
102
|
-
| `/init` | Create CMDR.md template |
|
|
103
|
-
| `/clear` | Clear conversation |
|
|
104
|
-
| `/quit` | Exit |
|
|
105
|
-
|
|
106
|
-
### Built-in Tools
|
|
107
|
-
|
|
108
|
-
| Tool | Description |
|
|
109
|
-
|------|-------------|
|
|
110
|
-
| `bash` | Execute shell commands with timeout and error handling |
|
|
111
|
-
| `file_read` | Read file contents with offset/limit support |
|
|
112
|
-
| `file_write` | Create or overwrite files (auto-creates directories) |
|
|
113
|
-
| `file_edit` | Surgical string replacement in files |
|
|
114
|
-
| `grep` | Regex search (uses ripgrep when available) |
|
|
115
|
-
| `glob` | Find files by pattern |
|
|
116
|
-
| `git_diff` | Show working tree or staged changes |
|
|
117
|
-
| `git_log` | Recent commit history |
|
|
118
|
-
| `git_commit` | Stage and commit files |
|
|
119
|
-
| `git_branch` | Create, switch, or list branches |
|
|
120
|
-
| `web_fetch` | Fetch a URL (SSRF-protected) |
|
|
121
|
-
| `ask_user` | Ask the user a question |
|
|
122
|
-
| `think` | Extended reasoning scratchpad (no side effects) |
|
|
123
|
-
|
|
124
|
-
## Multi-Agent Teams
|
|
125
|
-
|
|
126
|
-
cmdr supports multi-agent collaboration with built-in presets:
|
|
29
|
+
**cmdr** is an AI coding assistant that runs **entirely on your machine** using [Ollama](https://ollama.ai). No API keys, no cloud, no data leaves your laptop.
|
|
127
30
|
|
|
128
31
|
```bash
|
|
129
|
-
|
|
130
|
-
cmdr
|
|
131
|
-
cmdr --team security # Security Scanner + Reviewer
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Or switch teams mid-session with `/team review`.
|
|
135
|
-
|
|
136
|
-
Each agent has its own system prompt, tool access, and optional model. Results flow through shared memory so downstream agents see what upstream agents produced.
|
|
137
|
-
|
|
138
|
-
## Plugins & MCP
|
|
139
|
-
|
|
140
|
-
Load plugins from npm modules or local paths in `~/.cmdr/config.toml`:
|
|
141
|
-
|
|
142
|
-
```toml
|
|
143
|
-
plugins = ["cmdr-plugin-prettier", "./my-local-plugin.js"]
|
|
144
|
-
|
|
145
|
-
[[mcp.servers]]
|
|
146
|
-
name = "my-tools"
|
|
147
|
-
url = "http://localhost:8080"
|
|
32
|
+
npm install -g cmdr-agent
|
|
33
|
+
cmdr
|
|
148
34
|
```
|
|
149
35
|
|
|
150
|
-
|
|
36
|
+
## Contents
|
|
151
37
|
|
|
152
|
-
|
|
38
|
+
- [Screenshots](#screenshots)
|
|
39
|
+
- [Highlights](#highlights)
|
|
40
|
+
- [Quick Start](#quick-start)
|
|
41
|
+
- [Documentation](#documentation)
|
|
42
|
+
- [Contributing](#contributing)
|
|
43
|
+
- [License](#license)
|
|
153
44
|
|
|
154
|
-
##
|
|
45
|
+
## Screenshots
|
|
155
46
|
|
|
156
|
-
|
|
47
|
+
<p align="center">
|
|
48
|
+
<img src="screenshots/welcome.png" alt="cmdr on npm — 1,800+ weekly downloads" width="700">
|
|
49
|
+
<br>
|
|
50
|
+
<em>Published on npm with 1,800+ weekly downloads</em>
|
|
51
|
+
</p>
|
|
157
52
|
|
|
158
|
-
|
|
159
|
-
|
|
53
|
+
<details>
|
|
54
|
+
<summary><strong>More screenshots</strong></summary>
|
|
55
|
+
<br>
|
|
160
56
|
|
|
161
|
-
|
|
162
|
-
|
|
57
|
+
<p align="center">
|
|
58
|
+
<img src="screenshots/interactive-repl.png" alt="Interactive model picker" width="700">
|
|
59
|
+
<br>
|
|
60
|
+
<em>Interactive model picker — choose from your locally available Ollama models on startup</em>
|
|
61
|
+
</p>
|
|
163
62
|
|
|
164
|
-
|
|
165
|
-
-
|
|
166
|
-
|
|
167
|
-
|
|
63
|
+
<p align="center">
|
|
64
|
+
<img src="screenshots/tool-calling.png" alt="Welcome banner and session dashboard" width="700">
|
|
65
|
+
<br>
|
|
66
|
+
<em>Session dashboard with model info, permission mode, status bar, and operator boot sequence</em>
|
|
67
|
+
</p>
|
|
168
68
|
|
|
169
|
-
|
|
170
|
-
|
|
69
|
+
<p align="center">
|
|
70
|
+
<img src="screenshots/status-bar.png" alt="Context window usage breakdown" width="700">
|
|
71
|
+
<br>
|
|
72
|
+
<em>Real-time context window tracking — see token usage, remaining capacity, and per-component breakdown</em>
|
|
73
|
+
</p>
|
|
171
74
|
|
|
172
|
-
|
|
173
|
-
- Never modify files in /core without asking
|
|
174
|
-
- Always run linting before committing
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
You can also use `.cmdr/instructions.md` — both files are loaded and concatenated.
|
|
178
|
-
|
|
179
|
-
## Permission Modes
|
|
75
|
+
</details>
|
|
180
76
|
|
|
181
|
-
|
|
182
|
-
- **yolo** — all tools auto-approved (use `--dangerously-skip-permissions`)
|
|
183
|
-
- **strict** — all tools require approval (`/permissions strict`)
|
|
77
|
+
## Highlights
|
|
184
78
|
|
|
185
|
-
|
|
79
|
+
| | Feature | |
|
|
80
|
+
|---|---|---|
|
|
81
|
+
| 🔒 | **Local-first** | All inference on your hardware via Ollama |
|
|
82
|
+
| 🤖 | **Multi-agent teams** | Code review, full-stack, security audit presets |
|
|
83
|
+
| 🛠 | **18 built-in tools** | Files, grep, glob, bash, git, web fetch, think, browser, RAG search |
|
|
84
|
+
| ✅ | **Human-in-the-loop** | Approve, deny, or always-allow each tool call |
|
|
85
|
+
| 🧠 | **Context compaction** | Multi-stage strategy keeps long conversations in bounds |
|
|
86
|
+
| 🔌 | **Plugins & MCP** | Extend with npm modules or Model Context Protocol servers |
|
|
87
|
+
| 💾 | **Session persistence** | Auto-save, resume, `--continue`, checkpoints, branches |
|
|
88
|
+
| ↩️ | **Undo** | `/undo` reverts any file change the agent made |
|
|
89
|
+
| 📊 | **Token tracking** | `/cost` for per-session usage breakdown |
|
|
90
|
+
| 📁 | **Project awareness** | Reads `CMDR.md` for project-specific instructions |
|
|
91
|
+
| 🌐 | **HTTP API** | `cmdr serve` exposes REST + SSE endpoints |
|
|
92
|
+
| 🖼️ | **Vision** | Attach images to prompts with `--image` |
|
|
93
|
+
| 🎯 | **Effort levels** | `--effort low\|medium\|high\|max` controls reasoning depth |
|
|
94
|
+
| 🔍 | **RAG indexing** | Index codebases and search with embeddings |
|
|
95
|
+
| 🌿 | **Branching** | Fork, switch, and merge conversation branches |
|
|
96
|
+
| ✅ | **Checkpoints** | Save and restore conversation snapshots |
|
|
97
|
+
| 🐾 | **Buddy** | Deterministic ASCII companion that levels up as you code |
|
|
98
|
+
| 👁️ | **Daemon mode** | Watch files and run commands on change |
|
|
99
|
+
| 🌐 | **Browser agent** | Optional Playwright-based browser automation |
|
|
100
|
+
| 🧩 | **VS Code extension** | `@cmdr` chat, inline completions, code actions |
|
|
186
101
|
|
|
187
|
-
|
|
102
|
+
## Quick Start
|
|
188
103
|
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
|
|
104
|
+
```bash
|
|
105
|
+
# 1. Install Ollama — https://ollama.ai
|
|
106
|
+
ollama pull qwen3-coder:latest
|
|
192
107
|
|
|
193
|
-
|
|
194
|
-
|
|
108
|
+
# 2. Install cmdr
|
|
109
|
+
npm install -g cmdr-agent
|
|
195
110
|
|
|
196
|
-
|
|
197
|
-
|
|
111
|
+
# 3. Go
|
|
112
|
+
cmdr
|
|
198
113
|
```
|
|
199
114
|
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|----------|---------|-------------|
|
|
204
|
-
| `CMDR_MODEL` | `qwen2.5-coder:14b` | Default model |
|
|
205
|
-
| `CMDR_OLLAMA_URL` | `http://localhost:11434` | Ollama server URL |
|
|
206
|
-
|
|
207
|
-
## Benchmark Results
|
|
208
|
-
|
|
209
|
-
### Custom Eval Suite (50 tasks, 4 tiers)
|
|
115
|
+
```bash
|
|
116
|
+
# One-shot mode
|
|
117
|
+
cmdr "fix the failing tests"
|
|
210
118
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
| qwen3-coder:latest (14B) | 42/50 (84%) | ~160/197 | **S** |
|
|
119
|
+
# Pick a model
|
|
120
|
+
cmdr -m llama3.1:8b
|
|
214
121
|
|
|
215
|
-
|
|
122
|
+
# Multi-agent review
|
|
123
|
+
cmdr --team review
|
|
216
124
|
|
|
217
|
-
|
|
125
|
+
# Attach an image
|
|
126
|
+
cmdr --image screenshot.png "what's wrong with this UI?"
|
|
218
127
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
| minimax-m2.5:cloud | **95.7%** | 157/164 |
|
|
128
|
+
# Control reasoning depth
|
|
129
|
+
cmdr --effort max "architect a plugin system"
|
|
222
130
|
|
|
223
|
-
|
|
131
|
+
# Quick mode (alias for --effort low)
|
|
132
|
+
cmdr --fast "rename this variable"
|
|
224
133
|
|
|
225
|
-
|
|
134
|
+
# Start HTTP API server
|
|
135
|
+
cmdr serve --port 3120 --model qwen3-coder:latest
|
|
226
136
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
src/
|
|
230
|
-
cli/ REPL, commands, args, spinner, theme, renderer
|
|
231
|
-
core/ Agent, AgentRunner, Orchestrator, Team, presets, permissions
|
|
232
|
-
communication/ MessageBus, SharedMemory, TaskQueue
|
|
233
|
-
scheduling/ Semaphore, agent selection strategies
|
|
234
|
-
config/ Config loader, schema, telemetry
|
|
235
|
-
llm/ OllamaAdapter, model registry, token counter
|
|
236
|
-
plugins/ PluginManager, McpClient
|
|
237
|
-
session/ SessionManager, compaction, persistence, cost tracker, undo
|
|
238
|
-
tools/ ToolRegistry, ToolExecutor, built-in tools
|
|
137
|
+
# Daemon mode — watch and react
|
|
138
|
+
cmdr daemon start --watch src --on-change "npm test"
|
|
239
139
|
```
|
|
240
140
|
|
|
241
|
-
##
|
|
141
|
+
## Documentation
|
|
242
142
|
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
143
|
+
| Page | Description |
|
|
144
|
+
|------|-------------|
|
|
145
|
+
| [Getting Started](docs/getting-started.md) | Installation, first run, verify |
|
|
146
|
+
| [Usage](docs/usage.md) | CLI flags, slash commands, built-in tools |
|
|
147
|
+
| [Multi-Agent Teams](docs/multi-agent.md) | Team presets and orchestration |
|
|
148
|
+
| [Plugins & MCP](docs/plugins.md) | Plugin system and MCP integration |
|
|
149
|
+
| [Configuration](docs/configuration.md) | Config files, env vars, permissions, CMDR.md |
|
|
150
|
+
| [Benchmarks](docs/benchmarks.md) | Eval suite and HumanEval results |
|
|
151
|
+
| [Architecture](docs/architecture.md) | Project structure and development setup |
|
|
152
|
+
|
|
153
|
+
## What's New in v3
|
|
154
|
+
|
|
155
|
+
- **`cmdr serve`** — HTTP API with REST and SSE streaming endpoints
|
|
156
|
+
- **Effort levels** — Replace `--think` with `--effort low|medium|high|max`
|
|
157
|
+
- **Vision input** — `--image` / `/image` for multimodal prompts
|
|
158
|
+
- **Conversation branching** — `/fork`, `/switch`, `/merge` branches
|
|
159
|
+
- **Checkpoints** — Save and restore conversation snapshots
|
|
160
|
+
- **RAG indexing** — `/index` a codebase, `/search` with embeddings
|
|
161
|
+
- **Code review** — `/review` with staged, range, and path options
|
|
162
|
+
- **Daemon mode** — `cmdr daemon start --watch src --on-change "npm test"`
|
|
163
|
+
- **Browser agent** — Playwright automation with `--browser`
|
|
164
|
+
- **Buddy system** — ASCII companion pet that levels up (disable with `--no-buddy`)
|
|
165
|
+
- **VS Code extension** — `@cmdr` chat participant, inline completions, code actions
|
|
166
|
+
- **SDK exports** — Use cmdr as a library: `import { Agent, createAdapter } from 'cmdr-agent'`
|
|
250
167
|
|
|
251
168
|
## Contributing
|
|
252
169
|
|
package/dist/bin/cmdr.js
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { parseArgs, printHelp } from '../src/cli/args.js';
|
|
9
9
|
import { startRepl } from '../src/cli/repl.js';
|
|
10
|
+
import { startServer } from '../src/server/index.js';
|
|
11
|
+
import { CmdrDaemon } from '../src/cli/daemon.js';
|
|
10
12
|
import { GREEN, PURPLE, DIM, renderError, CYAN } from '../src/cli/theme.js';
|
|
11
13
|
import { OllamaAdapter } from '../src/llm/ollama.js';
|
|
12
14
|
import { checkForUpdate } from '../src/cli/update-checker.js';
|
|
@@ -147,6 +149,64 @@ async function main() {
|
|
|
147
149
|
process.exit(0);
|
|
148
150
|
}
|
|
149
151
|
const ollamaUrl = args.ollamaUrl ?? process.env.CMDR_OLLAMA_URL ?? 'http://localhost:11434';
|
|
152
|
+
// Handle 'serve' subcommand: cmdr serve [--port N] [--host H] [-m model]
|
|
153
|
+
if (args.serve) {
|
|
154
|
+
const model = args.model ?? process.env.CMDR_MODEL ?? 'qwen2.5-coder:14b';
|
|
155
|
+
await startServer({
|
|
156
|
+
port: args.port ?? 4141,
|
|
157
|
+
host: args.host ?? '127.0.0.1',
|
|
158
|
+
model,
|
|
159
|
+
ollamaUrl,
|
|
160
|
+
provider: args.provider,
|
|
161
|
+
});
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
// Handle 'daemon' subcommand: cmdr daemon start|status|stop
|
|
165
|
+
if (args.daemon) {
|
|
166
|
+
const cwd = args.cwd ? (await import('path')).resolve(args.cwd) : process.cwd();
|
|
167
|
+
switch (args.daemon) {
|
|
168
|
+
case 'start': {
|
|
169
|
+
if (!args.watch || args.watch.length === 0) {
|
|
170
|
+
console.error(renderError('--watch <path> required for daemon start'));
|
|
171
|
+
process.exit(1);
|
|
172
|
+
}
|
|
173
|
+
if (!args.onChange) {
|
|
174
|
+
console.error(renderError('--on-change <command> required for daemon start'));
|
|
175
|
+
process.exit(1);
|
|
176
|
+
}
|
|
177
|
+
const daemon = new CmdrDaemon({ watchPaths: args.watch, onChange: args.onChange, cwd });
|
|
178
|
+
await daemon.start();
|
|
179
|
+
break;
|
|
180
|
+
}
|
|
181
|
+
case 'status': {
|
|
182
|
+
const info = await CmdrDaemon.status(cwd);
|
|
183
|
+
if (info) {
|
|
184
|
+
console.log(`${GREEN('●')} Daemon running (PID ${info.pid})`);
|
|
185
|
+
console.log(` Watching: ${info.watchPaths.join(', ')}`);
|
|
186
|
+
console.log(` On change: ${info.onChange}`);
|
|
187
|
+
console.log(` Started: ${info.startedAt}`);
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
console.log(`${DIM('○')} No daemon running for this directory`);
|
|
191
|
+
}
|
|
192
|
+
break;
|
|
193
|
+
}
|
|
194
|
+
case 'stop': {
|
|
195
|
+
const stopped = await CmdrDaemon.stopByPid(cwd);
|
|
196
|
+
if (stopped) {
|
|
197
|
+
console.log(`${GREEN('✓')} Daemon stopped`);
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
console.log(`${DIM('○')} No daemon running to stop`);
|
|
201
|
+
}
|
|
202
|
+
break;
|
|
203
|
+
}
|
|
204
|
+
default:
|
|
205
|
+
console.error(renderError(`Unknown daemon command: ${args.daemon}. Use: start, status, stop`));
|
|
206
|
+
process.exit(1);
|
|
207
|
+
}
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
150
210
|
// Auto-detect model if not specified
|
|
151
211
|
let model = args.model ?? process.env.CMDR_MODEL;
|
|
152
212
|
if (!model) {
|
|
@@ -188,9 +248,10 @@ async function main() {
|
|
|
188
248
|
team: args.team,
|
|
189
249
|
maxTurns: args.maxTurns,
|
|
190
250
|
outputFormat: args.outputFormat,
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
251
|
+
effort: args.fast ? 'low' : args.effort,
|
|
252
|
+
image: args.image,
|
|
253
|
+
noBuddy: args.noBuddy,
|
|
254
|
+
browser: args.browser,
|
|
194
255
|
});
|
|
195
256
|
}
|
|
196
257
|
catch (err) {
|
package/dist/bin/cmdr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmdr.js","sourceRoot":"","sources":["../../bin/cmdr.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cmdr.js","sourceRoot":"","sources":["../../bin/cmdr.ts"],"names":[],"mappings":"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"}
|
package/dist/package.json
CHANGED
|
@@ -27,6 +27,6 @@ export declare class AgentExecutor {
|
|
|
27
27
|
* @param adapter — The LLM adapter to use
|
|
28
28
|
* @param parentToolRegistry — The parent's full tool registry (we pick allowed tools)
|
|
29
29
|
*/
|
|
30
|
-
execute(definition: AgentDefinition, task: string, parentModel: string, adapter: LLMAdapter, parentToolRegistry: ToolRegistry): Promise<SubagentResult>;
|
|
30
|
+
execute(definition: AgentDefinition, task: string, parentModel: string, adapter: LLMAdapter, parentToolRegistry: ToolRegistry, metadata?: Readonly<Record<string, unknown>>): Promise<SubagentResult>;
|
|
31
31
|
}
|
|
32
32
|
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/agents/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,aAAa;IACxB;;;;;;;;OAQG;IACG,OAAO,CACX,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,EACnB,kBAAkB,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/agents/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,aAAa;IACxB;;;;;;;;OAQG;IACG,OAAO,CACX,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,EACnB,kBAAkB,EAAE,YAAY,EAChC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAC3C,OAAO,CAAC,cAAc,CAAC;CAqC3B"}
|
|
@@ -18,7 +18,7 @@ export class AgentExecutor {
|
|
|
18
18
|
* @param adapter — The LLM adapter to use
|
|
19
19
|
* @param parentToolRegistry — The parent's full tool registry (we pick allowed tools)
|
|
20
20
|
*/
|
|
21
|
-
async execute(definition, task, parentModel, adapter, parentToolRegistry) {
|
|
21
|
+
async execute(definition, task, parentModel, adapter, parentToolRegistry, metadata) {
|
|
22
22
|
// 1. Create a restricted ToolRegistry with only the agent's allowed tools
|
|
23
23
|
const agentTools = new ToolRegistry();
|
|
24
24
|
for (const toolName of definition.tools) {
|
|
@@ -34,7 +34,7 @@ export class AgentExecutor {
|
|
|
34
34
|
tools: definition.tools,
|
|
35
35
|
maxTurns: definition.maxTurns,
|
|
36
36
|
temperature: definition.temperature,
|
|
37
|
-
}, adapter, agentTools);
|
|
37
|
+
}, adapter, agentTools, undefined, undefined, metadata);
|
|
38
38
|
// 3. Run to completion, collecting all text output
|
|
39
39
|
const result = await agent.run(task);
|
|
40
40
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/agents/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AASnD,MAAM,OAAO,aAAa;IACxB;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CACX,UAA2B,EAC3B,IAAY,EACZ,WAAmB,EACnB,OAAmB,EACnB,kBAAgC;
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/agents/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AASnD,MAAM,OAAO,aAAa;IACxB;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CACX,UAA2B,EAC3B,IAAY,EACZ,WAAmB,EACnB,OAAmB,EACnB,kBAAgC,EAChC,QAA4C;QAE5C,0EAA0E;QAC1E,MAAM,UAAU,GAAG,IAAI,YAAY,EAAE,CAAA;QACrC,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC7C,IAAI,IAAI;gBAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QAED,gEAAgE;QAChE,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB;YACE,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,WAAW;YACtC,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,WAAW,EAAE,UAAU,CAAC,WAAW;SACpC,EACD,OAAO,EACP,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,CACT,CAAA;QAED,mDAAmD;QACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAEpC,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE;gBACV,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY;gBACrC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa;aACxC;YACD,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;SAC/B,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-tool.d.ts","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAExD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,UAAU,EACnB,kBAAkB,EAAE,YAAY;;
|
|
1
|
+
{"version":3,"file":"subagent-tool.d.ts","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAExD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,UAAU,EACnB,kBAAkB,EAAE,YAAY;;GAqBjC"}
|
|
@@ -28,7 +28,7 @@ export function createSubagentTool(definition, executor, adapter, parentToolRegi
|
|
|
28
28
|
}),
|
|
29
29
|
execute: async (input, context) => {
|
|
30
30
|
const parentModel = context.agent.model;
|
|
31
|
-
const result = await executor.execute(definition, input.task, parentModel, adapter, parentToolRegistry);
|
|
31
|
+
const result = await executor.execute(definition, input.task, parentModel, adapter, parentToolRegistry, context.metadata);
|
|
32
32
|
return { data: result.output, isError: false };
|
|
33
33
|
},
|
|
34
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-tool.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAMjD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAA2B,EAC3B,QAAuB,EACvB,OAAmB,EACnB,kBAAgC;IAEhC,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;SACrF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAA;YACvC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CACnC,UAAU,EACV,KAAK,CAAC,IAAI,EACV,WAAW,EACX,OAAO,EACP,kBAAkB,
|
|
1
|
+
{"version":3,"file":"subagent-tool.js","sourceRoot":"","sources":["../../../src/agents/subagent-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAMjD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAA2B,EAC3B,QAAuB,EACvB,OAAmB,EACnB,kBAAgC;IAEhC,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;SACrF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAA;YACvC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CACnC,UAAU,EACV,KAAK,CAAC,IAAI,EACV,WAAW,EACX,OAAO,EACP,kBAAkB,EAClB,OAAO,CAAC,QAAQ,CACjB,CAAA;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAChD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/src/cli/args.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLI argument parsing.
|
|
3
3
|
*/
|
|
4
|
+
import type { EffortLevel } from '../core/types.js';
|
|
4
5
|
export interface CliArgs {
|
|
5
6
|
model?: string;
|
|
6
7
|
ollamaUrl?: string;
|
|
@@ -16,9 +17,17 @@ export interface CliArgs {
|
|
|
16
17
|
team?: string;
|
|
17
18
|
maxTurns?: number;
|
|
18
19
|
outputFormat?: 'text' | 'json' | 'stream-json';
|
|
19
|
-
|
|
20
|
-
noThink?: boolean;
|
|
20
|
+
effort?: EffortLevel;
|
|
21
21
|
fast?: boolean;
|
|
22
|
+
image?: string;
|
|
23
|
+
serve?: boolean;
|
|
24
|
+
port?: number;
|
|
25
|
+
host?: string;
|
|
26
|
+
noBuddy?: boolean;
|
|
27
|
+
daemon?: string;
|
|
28
|
+
watch?: string[];
|
|
29
|
+
onChange?: string;
|
|
30
|
+
browser?: boolean;
|
|
22
31
|
}
|
|
23
32
|
export declare function parseArgs(argv: string[]): CliArgs;
|
|
24
33
|
export declare function printHelp(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/cli/args.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAA;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/cli/args.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAA;IAC9C,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CA2GjD;AAED,wBAAgB,SAAS,IAAI,IAAI,CA2ChC"}
|