@cosmicstack/mercury-agent 1.1.7 → 1.1.11
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 +137 -3
- package/README.zh-CN.md +265 -140
- package/dist/index.js +13191 -4776
- package/dist/index.js.map +1 -1
- package/dist/web/static/vendor/geist/Geist-Italic[wght].woff2 +0 -0
- package/dist/web/static/vendor/geist/Geist-Variable.woff2 +0 -0
- package/dist/web/static/vendor/geist/GeistMono-Italic[wght].woff2 +0 -0
- package/dist/web/static/vendor/geist/GeistMono-Variable.woff2 +0 -0
- package/dist/web/static/vendor/graphology.min.js +2 -0
- package/dist/web/static/vendor/icons.svg +108 -0
- package/dist/web/static/vendor/sql-wasm.wasm +0 -0
- package/dist/web/ui/assets/Chat-DXSn2dY8.js +28 -0
- package/dist/web/ui/assets/Chat-DXSn2dY8.js.map +1 -0
- package/dist/web/ui/assets/Dashboard-1rlAqQ-Y.js +2 -0
- package/dist/web/ui/assets/Dashboard-1rlAqQ-Y.js.map +1 -0
- package/dist/web/ui/assets/Goals-CgSUAXLH.js +12 -0
- package/dist/web/ui/assets/Goals-CgSUAXLH.js.map +1 -0
- package/dist/web/ui/assets/Graph-DnlOWkay.js +7 -0
- package/dist/web/ui/assets/Graph-DnlOWkay.js.map +1 -0
- package/dist/web/ui/assets/Kanban-DRlNiNRF.js +45 -0
- package/dist/web/ui/assets/Kanban-DRlNiNRF.js.map +1 -0
- package/dist/web/ui/assets/Login-BP5524pC.js +2 -0
- package/dist/web/ui/assets/Login-BP5524pC.js.map +1 -0
- package/dist/web/ui/assets/MarkdownRenderer-B9KGVD0X.js +22 -0
- package/dist/web/ui/assets/MarkdownRenderer-B9KGVD0X.js.map +1 -0
- package/dist/web/ui/assets/Memory-BOQEY0H8.js +12 -0
- package/dist/web/ui/assets/Memory-BOQEY0H8.js.map +1 -0
- package/dist/web/ui/assets/Permissions-jbFH-toa.js +17 -0
- package/dist/web/ui/assets/Permissions-jbFH-toa.js.map +1 -0
- package/dist/web/ui/assets/PersonDetail-Ca8B9io8.js +2 -0
- package/dist/web/ui/assets/PersonDetail-Ca8B9io8.js.map +1 -0
- package/dist/web/ui/assets/Persons-epdmUeBM.js +2 -0
- package/dist/web/ui/assets/Persons-epdmUeBM.js.map +1 -0
- package/dist/web/ui/assets/Providers-Bm8sZNZo.js +7 -0
- package/dist/web/ui/assets/Providers-Bm8sZNZo.js.map +1 -0
- package/dist/web/ui/assets/Schedules-BZKhm9R7.js +17 -0
- package/dist/web/ui/assets/Schedules-BZKhm9R7.js.map +1 -0
- package/dist/web/ui/assets/Settings-Hii-5oku.js +12 -0
- package/dist/web/ui/assets/Settings-Hii-5oku.js.map +1 -0
- package/dist/web/ui/assets/Skills-BHJp2CgD.js +17 -0
- package/dist/web/ui/assets/Skills-BHJp2CgD.js.map +1 -0
- package/dist/web/ui/assets/Tasks-D36pqkro.js +7 -0
- package/dist/web/ui/assets/Tasks-D36pqkro.js.map +1 -0
- package/dist/web/ui/assets/Usage-CmjaYrsT.js +12 -0
- package/dist/web/ui/assets/Usage-CmjaYrsT.js.map +1 -0
- package/dist/web/ui/assets/Workspace-BYLf-wTJ.js +52 -0
- package/dist/web/ui/assets/Workspace-BYLf-wTJ.js.map +1 -0
- package/dist/web/ui/assets/activity-MOTqH8zM.js +7 -0
- package/dist/web/ui/assets/activity-MOTqH8zM.js.map +1 -0
- package/dist/web/ui/assets/alert-dialog-MbYSbZx5.js +7 -0
- package/dist/web/ui/assets/alert-dialog-MbYSbZx5.js.map +1 -0
- package/dist/web/ui/assets/arrow-left-CtqQsBC6.js +7 -0
- package/dist/web/ui/assets/arrow-left-CtqQsBC6.js.map +1 -0
- package/dist/web/ui/assets/avatar-BIYaY7pR.js +7 -0
- package/dist/web/ui/assets/avatar-BIYaY7pR.js.map +1 -0
- package/dist/web/ui/assets/badge-CUJiWF1y.js +2 -0
- package/dist/web/ui/assets/badge-CUJiWF1y.js.map +1 -0
- package/dist/web/ui/assets/button-CNasMlFE.js +2 -0
- package/dist/web/ui/assets/button-CNasMlFE.js.map +1 -0
- package/dist/web/ui/assets/card-BdsEOP7t.js +2 -0
- package/dist/web/ui/assets/card-BdsEOP7t.js.map +1 -0
- package/dist/web/ui/assets/chevron-down-CB9J_vvZ.js +12 -0
- package/dist/web/ui/assets/chevron-down-CB9J_vvZ.js.map +1 -0
- package/dist/web/ui/assets/circle-check-DvGSe1uZ.js +7 -0
- package/dist/web/ui/assets/circle-check-DvGSe1uZ.js.map +1 -0
- package/dist/web/ui/assets/circle-x-CyaGJ_BM.js +7 -0
- package/dist/web/ui/assets/circle-x-CyaGJ_BM.js.map +1 -0
- package/dist/web/ui/assets/collapsible-BU_K9n8f.js +2 -0
- package/dist/web/ui/assets/collapsible-BU_K9n8f.js.map +1 -0
- package/dist/web/ui/assets/dialog-Bd1rELXb.js +2 -0
- package/dist/web/ui/assets/dialog-Bd1rELXb.js.map +1 -0
- package/dist/web/ui/assets/download-C8RvlFqO.js +7 -0
- package/dist/web/ui/assets/download-C8RvlFqO.js.map +1 -0
- package/dist/web/ui/assets/eye-BJ0NucMz.js +7 -0
- package/dist/web/ui/assets/eye-BJ0NucMz.js.map +1 -0
- package/dist/web/ui/assets/file-text-BWWBuD_N.js +7 -0
- package/dist/web/ui/assets/file-text-BWWBuD_N.js.map +1 -0
- package/dist/web/ui/assets/folder-open-BwjemFy7.js +7 -0
- package/dist/web/ui/assets/folder-open-BwjemFy7.js.map +1 -0
- package/dist/web/ui/assets/git-branch-D9JVASpC.js +7 -0
- package/dist/web/ui/assets/git-branch-D9JVASpC.js.map +1 -0
- package/dist/web/ui/assets/index-C3YiF4qv.js +163 -0
- package/dist/web/ui/assets/index-C3YiF4qv.js.map +1 -0
- package/dist/web/ui/assets/index-CaqLZNof.js +2 -0
- package/dist/web/ui/assets/index-CaqLZNof.js.map +1 -0
- package/dist/web/ui/assets/index-CuhiuVab.css +1 -0
- package/dist/web/ui/assets/input-CH3dmo9r.js +2 -0
- package/dist/web/ui/assets/input-CH3dmo9r.js.map +1 -0
- package/dist/web/ui/assets/loader-circle-DbYKk0_Q.js +7 -0
- package/dist/web/ui/assets/loader-circle-DbYKk0_Q.js.map +1 -0
- package/dist/web/ui/assets/pencil-gNDEMhav.js +7 -0
- package/dist/web/ui/assets/pencil-gNDEMhav.js.map +1 -0
- package/dist/web/ui/assets/plus-7rbHkByr.js +7 -0
- package/dist/web/ui/assets/plus-7rbHkByr.js.map +1 -0
- package/dist/web/ui/assets/power-BS7gCDWs.js +12 -0
- package/dist/web/ui/assets/power-BS7gCDWs.js.map +1 -0
- package/dist/web/ui/assets/progress-ZzhsBV2v.js +2 -0
- package/dist/web/ui/assets/progress-ZzhsBV2v.js.map +1 -0
- package/dist/web/ui/assets/search-BZsbhO0B.js +7 -0
- package/dist/web/ui/assets/search-BZsbhO0B.js.map +1 -0
- package/dist/web/ui/assets/select-vRSgBrHz.js +2 -0
- package/dist/web/ui/assets/select-vRSgBrHz.js.map +1 -0
- package/dist/web/ui/assets/send-BkyTIUtJ.js +7 -0
- package/dist/web/ui/assets/send-BkyTIUtJ.js.map +1 -0
- package/dist/web/ui/assets/sparkles-DcP24GEL.js +7 -0
- package/dist/web/ui/assets/sparkles-DcP24GEL.js.map +1 -0
- package/dist/web/ui/assets/switch-LRN9wWy2.js +2 -0
- package/dist/web/ui/assets/switch-LRN9wWy2.js.map +1 -0
- package/dist/web/ui/assets/terminal-CWG62zdD.js +7 -0
- package/dist/web/ui/assets/terminal-CWG62zdD.js.map +1 -0
- package/dist/web/ui/assets/textarea-CXh3tmJ1.js +2 -0
- package/dist/web/ui/assets/textarea-CXh3tmJ1.js.map +1 -0
- package/dist/web/ui/assets/vendor-dnd-DRBSMxXo.js +6 -0
- package/dist/web/ui/assets/vendor-dnd-DRBSMxXo.js.map +1 -0
- package/dist/web/ui/assets/vendor-markdown-DwTbvico.js +30 -0
- package/dist/web/ui/assets/vendor-markdown-DwTbvico.js.map +1 -0
- package/dist/web/ui/assets/vendor-motion-Dwx3-JO5.js +18 -0
- package/dist/web/ui/assets/vendor-motion-Dwx3-JO5.js.map +1 -0
- package/dist/web/ui/assets/vendor-radix-3UdfCgs_.js +65 -0
- package/dist/web/ui/assets/vendor-radix-3UdfCgs_.js.map +1 -0
- package/dist/web/ui/assets/vendor-react-C7pctHW3.js +44 -0
- package/dist/web/ui/assets/vendor-react-C7pctHW3.js.map +1 -0
- package/dist/web/ui/assets/vendor-syntax-xZUI6Op9.js +17 -0
- package/dist/web/ui/assets/vendor-syntax-xZUI6Op9.js.map +1 -0
- package/dist/web/ui/assets/zap-BEfqVtvZ.js +7 -0
- package/dist/web/ui/assets/zap-BEfqVtvZ.js.map +1 -0
- package/dist/web/ui/favicon.svg +10 -0
- package/dist/web/ui/icons/icon-192.svg +10 -0
- package/dist/web/ui/icons/icon-512-maskable.svg +10 -0
- package/dist/web/ui/icons/icon-512.svg +10 -0
- package/dist/web/ui/index.html +24 -0
- package/dist/web/ui/logo-dark.png +0 -0
- package/dist/web/ui/logo-full-dark.png +0 -0
- package/dist/web/ui/logo-full-light.png +0 -0
- package/dist/web/ui/logo-light.png +0 -0
- package/dist/web/ui/manifest.webmanifest +1 -0
- package/dist/web/ui/registerSW.js +1 -0
- package/dist/web/ui/sw.js +11 -0
- package/package.json +17 -7
- package/src/web/static/vendor/geist/Geist-Italic[wght].woff2 +0 -0
- package/src/web/static/vendor/geist/Geist-Variable.woff2 +0 -0
- package/src/web/static/vendor/geist/GeistMono-Italic[wght].woff2 +0 -0
- package/src/web/static/vendor/geist/GeistMono-Variable.woff2 +0 -0
- package/src/web/static/vendor/graphology.min.js +2 -0
- package/src/web/static/vendor/icons.svg +108 -0
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
</p>
|
|
12
12
|
|
|
13
13
|
<p align="center">
|
|
14
|
-
Remembers what matters. Asks before it acts. Runs 24/7 from CLI or
|
|
14
|
+
Remembers what matters. Asks before it acts. Runs 24/7 from CLI, Telegram, or Web. 31 built-in tools, Kanban boards, extensible skills, SQLite-backed Second Brain memory.
|
|
15
15
|
</p>
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
</p>
|
|
22
22
|
|
|
23
23
|
<p align="center">
|
|
24
|
-
<strong>🔖 Current Stable: v1.1.
|
|
24
|
+
<strong>🔖 Current Stable: v1.1.9</strong>
|
|
25
25
|
</p>
|
|
26
26
|
|
|
27
27
|
<p align="center">
|
|
@@ -32,11 +32,25 @@
|
|
|
32
32
|
|
|
33
33
|
## Quick Start
|
|
34
34
|
|
|
35
|
+
**One-liner install (no Node.js required)** — downloads the latest standalone binary for your OS:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# macOS / Linux
|
|
39
|
+
curl -fsSL https://mercuryagent.sh/install.sh | sh
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
```powershell
|
|
43
|
+
# Windows
|
|
44
|
+
irm https://mercuryagent.sh/install.ps1 | iex
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Or via npm if you already have Node.js 20+:
|
|
48
|
+
|
|
35
49
|
```bash
|
|
36
50
|
npx @cosmicstack/mercury-agent
|
|
37
51
|
```
|
|
38
52
|
|
|
39
|
-
Or install globally:
|
|
53
|
+
Or install the npm package globally:
|
|
40
54
|
|
|
41
55
|
```bash
|
|
42
56
|
npm i -g @cosmicstack/mercury-agent
|
|
@@ -179,11 +193,79 @@ Type these during a conversation — they don't consume API tokens. Work on both
|
|
|
179
193
|
| **Scheduler** | `schedule_task`, `list_scheduled_tasks`, `cancel_scheduled_task` |
|
|
180
194
|
| **System** | `budget_status` |
|
|
181
195
|
|
|
196
|
+
## Installing Skills
|
|
197
|
+
|
|
198
|
+
Mercury can pull community-contributed skills from the registry at
|
|
199
|
+
**[skills.mercuryagent.sh](https://skills.mercuryagent.sh)** (126+ skills, no auth required).
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
mercury skills search prompt # search the registry
|
|
203
|
+
mercury skills browse ai-ml # browse by category
|
|
204
|
+
mercury skills view ai-ml/prompt-engineering # render SKILL.md in the terminal
|
|
205
|
+
mercury skills view ai-ml/prompt-engineering --web # open the registry page
|
|
206
|
+
mercury skills install ai-ml/prompt-engineering # install to ~/.mercury/skills/
|
|
207
|
+
mercury skills list # show installed skills
|
|
208
|
+
mercury skills update # refresh all installed skills
|
|
209
|
+
mercury skills remove ai-ml/prompt-engineering
|
|
210
|
+
mercury skills doctor # check install root + registry
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
Installed skills land at `~/.mercury/skills/<category>/<slug>/SKILL.md` and are
|
|
214
|
+
picked up by the agent on the next boot — they're treated identically to
|
|
215
|
+
built-in skills.
|
|
216
|
+
|
|
217
|
+
> **Review before you ship.** Skills are community-contributed and unaudited.
|
|
218
|
+
> Run `mercury skills view <id>` before installing.
|
|
219
|
+
|
|
220
|
+
Overrides: `--registry <url>` (or `MERCURY_SKILLS_REGISTRY`) for self-hosted
|
|
221
|
+
registries, `MERCURY_SKILLS_INSTALL_ROOT` for an alternate install path,
|
|
222
|
+
`--json` for machine-readable output.
|
|
223
|
+
|
|
224
|
+
**Also installable from:**
|
|
225
|
+
|
|
226
|
+
- **Web dashboard** — `http://127.0.0.1:6174/skills` has a registry installer (paste `category/slug`) and a URL installer side by side.
|
|
227
|
+
- **Telegram** — `/skills`, `/skills search <q>`, `/skills view <id>`, `/skills install <id>` (admin-only). Every result includes the registry URL so you can review before installing.
|
|
228
|
+
|
|
229
|
+
See the [Skills reference](https://mercuryagent.sh/docs/reference/skills) for the full command surface, frontmatter spec, and API endpoints.
|
|
230
|
+
|
|
231
|
+
## Web Dashboard
|
|
232
|
+
|
|
233
|
+
Mercury includes a built-in web UI at `http://127.0.0.1:6174`:
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
mercury doctor # Enable web during setup
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Or set in `~/.mercury/mercury.yaml`:
|
|
240
|
+
|
|
241
|
+
```yaml
|
|
242
|
+
web:
|
|
243
|
+
enabled: true
|
|
244
|
+
port: 6174
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
Features: Chat with SSE streaming, Kanban boards, Second Brain visualization, Workspace IDE, provider/skill/permission/schedule management, usage tracking, dark/light theme.
|
|
248
|
+
|
|
249
|
+
Default credentials: `mercury` / `Mercury@123`. Binds to localhost only.
|
|
250
|
+
|
|
251
|
+
## Kanban Boards
|
|
252
|
+
|
|
253
|
+
Persistent task boards with agent execution. Create boards, add cards, and let Mercury process them autonomously.
|
|
254
|
+
|
|
255
|
+
- **Cards** — title, description, status (todo/doing/done/blocked), priority, labels, comments, attachments, dependencies
|
|
256
|
+
- **Smart execution** — Mercury processes cards sequentially, updating status and leaving result comments
|
|
257
|
+
- **Cascade execution** — process dependent cards in dependency order
|
|
258
|
+
- **Token budget** — per-card token tracking with auto-pause when exhausted
|
|
259
|
+
- **Storage** — SQLite with per-board context, variables, and instructions
|
|
260
|
+
|
|
261
|
+
Access via Web Dashboard or API (`/api/boards/*`).
|
|
262
|
+
|
|
182
263
|
## Channels
|
|
183
264
|
|
|
184
265
|
| Channel | Features |
|
|
185
266
|
|---------|----------|
|
|
186
267
|
| **CLI** | Ink TUI, startup permission mode picker, interactive permission prompts (arrow keys + Enter; Y/N/A shortcuts), progress views (balanced/detailed), real-time streaming |
|
|
268
|
+
| **Web** | React SPA dashboard, chat with SSE streaming, Kanban boards, Second Brain visualization, Workspace IDE, dark/light theme |
|
|
187
269
|
| **Telegram** | HTML formatting, editable streaming messages, file uploads, typing indicators, multi-user access with admin/member roles |
|
|
188
270
|
|
|
189
271
|
### Workspace/Coding Shortcuts (CLI)
|
|
@@ -254,6 +336,7 @@ All runtime data lives in `~/.mercury/` — not in your project directory.
|
|
|
254
336
|
| `~/.mercury/memory/second-brain/` | Structured memory database (SQLite + FTS5) |
|
|
255
337
|
| `~/.mercury/daemon.pid` | Background process PID |
|
|
256
338
|
| `~/.mercury/daemon.log` | Daemon mode logs |
|
|
339
|
+
| `~/.mercury/boards.db` | Kanban boards database (SQLite) |
|
|
257
340
|
|
|
258
341
|
## Provider Fallback
|
|
259
342
|
|
|
@@ -282,6 +365,57 @@ When a provider fails, Mercury automatically tries the next one. It remembers th
|
|
|
282
365
|
- **Daemon manager** — Background spawn + PID file + watchdog crash recovery
|
|
283
366
|
- **System services** — macOS LaunchAgent, Linux systemd, Windows Task Scheduler
|
|
284
367
|
|
|
368
|
+
## Build From Source
|
|
369
|
+
|
|
370
|
+
You can build Mercury yourself from source — either the standard Node bundle (for `npm link` / local development) or a **standalone executable** that bundles the entire runtime, so end-users don't need Node.js installed at all.
|
|
371
|
+
|
|
372
|
+
### Prerequisites
|
|
373
|
+
|
|
374
|
+
- **Node.js ≥ 20** (for the build toolchain)
|
|
375
|
+
- **[Bun](https://bun.sh) ≥ 1.3** (only required for standalone binaries; install with `curl -fsSL https://bun.sh/install | bash`)
|
|
376
|
+
|
|
377
|
+
### Standard build (ESM bundle)
|
|
378
|
+
|
|
379
|
+
```bash
|
|
380
|
+
git clone https://github.com/cosmicstack-labs/mercury-agent.git
|
|
381
|
+
cd mercury-agent
|
|
382
|
+
npm install
|
|
383
|
+
npm run build # builds dist/ via tsup + post-build (UI, static assets)
|
|
384
|
+
npm start # node dist/index.js
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
### Standalone executable (no Node.js required for end users)
|
|
388
|
+
|
|
389
|
+
Mercury can be compiled into a single self-contained binary using `bun build --compile`. The resulting file embeds the Bun runtime and the full Mercury bundle.
|
|
390
|
+
|
|
391
|
+
```bash
|
|
392
|
+
npm run build:bin # host platform only
|
|
393
|
+
npm run build:bin:all # all 5 targets (macOS arm64/x64, Linux x64/arm64, Windows x64)
|
|
394
|
+
npm run build:bin:force # rebuild (overwrite existing binary for the same version)
|
|
395
|
+
npm run build:bin:all:force # rebuild all targets
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
Output is **versioned** so older builds are never overwritten:
|
|
399
|
+
|
|
400
|
+
```
|
|
401
|
+
release/
|
|
402
|
+
├── latest → symlink to most-recent version
|
|
403
|
+
├── v1.1.9/
|
|
404
|
+
│ ├── mercury-macos-arm64
|
|
405
|
+
│ ├── mercury-macos-x64
|
|
406
|
+
│ ├── mercury-linux-x64
|
|
407
|
+
│ ├── mercury-linux-arm64
|
|
408
|
+
│ ├── mercury-win-x64.exe
|
|
409
|
+
│ └── checksums.txt (SHA-256 for every binary)
|
|
410
|
+
└── v1.2.0/ …
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
The version is read from `package.json` — bump it before building to produce a fresh folder. Re-running for the same version skips already-built targets unless `--force` is passed.
|
|
414
|
+
|
|
415
|
+
**Cross-compilation**: Bun produces binaries for every target from a single host. Native modules (`better-sqlite3`) can't cross-compile, but Mercury gracefully falls back to `sql.js` (pure JS + wasm) so the cross-compiled binaries still work end-to-end.
|
|
416
|
+
|
|
417
|
+
**macOS Gatekeeper**: unsigned binaries trigger a warning on first launch. For distribution, sign with `codesign --sign "Developer ID" release/v<version>/mercury-macos-arm64` and notarize.
|
|
418
|
+
|
|
285
419
|
## License
|
|
286
420
|
|
|
287
421
|
MIT © [Cosmic Stack](https://github.com/cosmicstack-labs)
|