cli-jaw 0.1.3 → 0.1.5
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.ko.md +1 -0
- package/README.md +48 -14
- package/README.zh-CN.md +6 -3
- package/dist/bin/cli-jaw.js +35 -3
- package/dist/bin/cli-jaw.js.map +1 -1
- package/dist/bin/commands/browser.js +2 -4
- package/dist/bin/commands/browser.js.map +1 -1
- package/dist/bin/commands/clone.js +152 -0
- package/dist/bin/commands/clone.js.map +1 -0
- package/dist/bin/commands/doctor.js +78 -17
- package/dist/bin/commands/doctor.js.map +1 -1
- package/dist/bin/commands/init.js +2 -4
- package/dist/bin/commands/init.js.map +1 -1
- package/dist/bin/commands/launchd.js +58 -19
- package/dist/bin/commands/launchd.js.map +1 -1
- package/dist/bin/commands/mcp.js +18 -26
- package/dist/bin/commands/mcp.js.map +1 -1
- package/dist/bin/commands/memory.js +3 -3
- package/dist/bin/commands/memory.js.map +1 -1
- package/dist/bin/commands/serve.js +20 -5
- package/dist/bin/commands/serve.js.map +1 -1
- package/dist/bin/commands/skill.js +1 -2
- package/dist/bin/commands/skill.js.map +1 -1
- package/dist/bin/postinstall.js +71 -35
- package/dist/bin/postinstall.js.map +1 -1
- package/dist/lib/mcp-sync.js +14 -16
- package/dist/lib/mcp-sync.js.map +1 -1
- package/dist/server.js +67 -9
- package/dist/server.js.map +1 -1
- package/dist/src/agent/spawn.js +38 -10
- package/dist/src/agent/spawn.js.map +1 -1
- package/dist/src/browser/connection.js +30 -10
- package/dist/src/browser/connection.js.map +1 -1
- package/dist/src/core/config.js +11 -5
- package/dist/src/core/config.js.map +1 -1
- package/dist/src/memory/worklog.js +2 -2
- package/dist/src/memory/worklog.js.map +1 -1
- package/dist/src/orchestrator/distribute.js +12 -0
- package/dist/src/orchestrator/distribute.js.map +1 -1
- package/dist/src/orchestrator/parser.js +16 -0
- package/dist/src/orchestrator/parser.js.map +1 -1
- package/dist/src/orchestrator/pipeline.js +100 -17
- package/dist/src/orchestrator/pipeline.js.map +1 -1
- package/dist/src/prompt/builder.js +11 -11
- package/dist/src/prompt/builder.js.map +1 -1
- package/dist/src/telegram/bot.js +19 -2
- package/dist/src/telegram/bot.js.map +1 -1
- package/package.json +1 -1
- package/public/dist/bundle.js +23 -23
- package/public/dist/bundle.js.map +3 -3
- package/public/index.html +2 -3
- package/public/js/features/settings.js +2 -3
- package/public/js/main.js +0 -2
- package/public/locales/en.json +1 -0
- package/public/locales/ko.json +1 -0
package/README.ko.md
CHANGED
|
@@ -37,6 +37,7 @@ CLI-JAW는 내 컴퓨터에 상주하며 이미 익숙한 인터페이스인 **
|
|
|
37
37
|
| ⚡ **멀티 에이전트 자동 전환(Fallback)** | 엔진 하나가 멈춰도 걱정 없습니다. 다음 엔진이 즉시 이어받아 중단 없는 작업이 가능합니다. |
|
|
38
38
|
| 🎭 **오케스트레이션 기반 성능 극대화** | 복잡한 작업은 전문화된 서브 에이전트에게 분산시켜 처리량을 극대화합니다. |
|
|
39
39
|
| 📦 **107개의 내장 스킬** | 브라우저 자동화, 문서 생성, 텔레그램 연동, 영구 메모리 등 설치 즉시 사용 가능한 기능들을 제공합니다. |
|
|
40
|
+
| 🖥️ **크로스 플랫폼** | macOS, Linux, Windows (WSL) — 브라우저 실행, CLI 감지, 설치 모두 네이티브 지원. |
|
|
40
41
|
|
|
41
42
|

|
|
42
43
|
|
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
*One assistant. Five brains. Always on.*
|
|
8
8
|
|
|
9
|
-
[](#-tests)
|
|
10
10
|
[](https://typescriptlang.org)
|
|
11
11
|
[](https://nodejs.org)
|
|
12
12
|
[](LICENSE)
|
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
> ⚠️ **Installation Notice:** `npm install -g cli-jaw` runs a postinstall script that may modify your globally installed CLI skill directories (`~/.agents/skills/`, `~/.claude/skills/`), custom instructions (`~/AGENTS.md` → `~/CLAUDE.md` symlink), and MCP config (`~/.cli-jaw/mcp.json` → syncs to Claude/Codex/Gemini/OpenCode/Copilot). Existing configs are preserved and merged, not overwritten.
|
|
24
|
+
|
|
23
25
|
## What is CLI-JAW?
|
|
24
26
|
|
|
25
27
|
CLI-JAW is a **personal AI assistant** that lives on your machine and works from the interfaces you already use — **Web, Terminal, and Telegram**. Ask it anything, delegate tasks, automate your workflows.
|
|
@@ -28,7 +30,7 @@ CLI-JAW is a **personal AI assistant** that lives on your machine and works from
|
|
|
28
30
|
> 💬 *"Refactor this module and write tests"* → sub-agents handle it while you grab coffee
|
|
29
31
|
> 💬 *"Download that PDF and put the key points in Notion"* → browser + Notion skill, done
|
|
30
32
|
|
|
31
|
-
Unlike single-model assistants, CLI-JAW orchestrates **5 AI engines** (Claude, Codex, Gemini, OpenCode, Copilot) through their official CLIs — giving you the best of every provider in one unified experience. If one engine is busy, it automatically falls back to the next.
|
|
33
|
+
Unlike single-model assistants, CLI-JAW orchestrates **5 AI engines** (Claude, Codex, Gemini, OpenCode, Copilot) through their official CLIs — giving you the best of every provider in one unified experience. If one engine is busy, it automatically falls back to the next. 122 built-in skills handle everything from browser automation to document generation.
|
|
32
34
|
|
|
33
35
|
| | Why CLI-JAW? |
|
|
34
36
|
| ------------------------------ | ---------------------------------------------------------------------------------------- |
|
|
@@ -36,7 +38,8 @@ Unlike single-model assistants, CLI-JAW orchestrates **5 AI engines** (Claude, C
|
|
|
36
38
|
| 🤖 **Verified Agent Tools** | 5 battle-tested coding agents (Claude, Codex, Gemini, OpenCode, Copilot) under one roof. |
|
|
37
39
|
| ⚡ **Multi-Agent Fallback** | One engine down? The next picks up automatically. Zero downtime. |
|
|
38
40
|
| 🎭 **Orchestrated Performance** | Complex tasks split across specialized sub-agents for maximum throughput. |
|
|
39
|
-
| 📦 **
|
|
41
|
+
| 📦 **122 Built-in Skills** | Browser automation, document generation, Telegram, memory — ready out of the box. |
|
|
42
|
+
| 🖥️ **Cross-Platform** | macOS, Linux, Windows (WSL) — browser launch, CLI detection, and install all work natively. |
|
|
40
43
|
|
|
41
44
|

|
|
42
45
|
|
|
@@ -62,7 +65,7 @@ graph LR
|
|
|
62
65
|
- 🤖 **5 AI engines, 1 assistant** — Claude · Codex · Gemini · OpenCode · Copilot. Switch with `/cli`.
|
|
63
66
|
- ⚡ **Auto fallback** — If one engine is down, the next picks up seamlessly.
|
|
64
67
|
- 🎭 **Multi-agent orchestration** — Complex tasks get split across specialized sub-agents automatically.
|
|
65
|
-
- 📦 **
|
|
68
|
+
- 📦 **122 skills** — Browser control, file editing, image generation, web search, and [much more](#-skill-system).
|
|
66
69
|
- 🧠 **Persistent memory** — Your assistant remembers past conversations and preferences across sessions.
|
|
67
70
|
- 📱 **Telegram bot** — Chat with your assistant from your phone, send voice/photos/files.
|
|
68
71
|
- 🌐 **Browser automation** — Your assistant can navigate the web, click, type, and screenshot.
|
|
@@ -144,7 +147,7 @@ jaw chat # Terminal TUI (no browser needed)
|
|
|
144
147
|
|
|
145
148
|
## 📦 Skill System
|
|
146
149
|
|
|
147
|
-
**
|
|
150
|
+
**122 skills** out of the box — browser, github, notion, telegram, memory, pdf, image generation, and [much more](#).
|
|
148
151
|
|
|
149
152
|
<details>
|
|
150
153
|
<summary>View all skills</summary>
|
|
@@ -152,7 +155,7 @@ jaw chat # Terminal TUI (no browser needed)
|
|
|
152
155
|
| Tier | Count | How it works |
|
|
153
156
|
| -------------------- | :---: | --------------------------------------------------------- |
|
|
154
157
|
| **Active Skills** | 17 | Auto-injected into every AI prompt. Always available. |
|
|
155
|
-
| **Reference Skills** |
|
|
158
|
+
| **Reference Skills** | 105 | AI reads them on-demand when you ask for a relevant task. |
|
|
156
159
|
|
|
157
160
|
#### Active Skills (always on)
|
|
158
161
|
|
|
@@ -172,7 +175,7 @@ jaw chat # Terminal TUI (no browser needed)
|
|
|
172
175
|
|
|
173
176
|
#### Reference Skills (on-demand)
|
|
174
177
|
|
|
175
|
-
88+ more skills ready to use — spotify, weather, deep-research, tts, video-downloader, apple-reminders, 1password, terraform, postgres, jupyter-notebook, sentry, and more.
|
|
178
|
+
88+ more skills ready to use — spotify, weather, deep-research, tts, video-downloader, apple-reminders, 1password, terraform, postgres, jupyter-notebook, sentry, whatsapp, and more.
|
|
176
179
|
|
|
177
180
|
```bash
|
|
178
181
|
jaw skill install <name> # Activate a reference skill permanently
|
|
@@ -285,7 +288,10 @@ jaw mcp install <package> # Install MCP → syncs to all 5 CLIs
|
|
|
285
288
|
jaw memory search <query> # Search memory
|
|
286
289
|
jaw browser start # Launch Chrome (CDP)
|
|
287
290
|
jaw browser vision-click "Login" # AI-powered click
|
|
291
|
+
jaw clone ~/my-project # Clone instance for a separate project
|
|
292
|
+
jaw --home ~/my-project serve --port 3458 # Run a second instance
|
|
288
293
|
jaw launchd # Auto-start on boot (macOS)
|
|
294
|
+
jaw launchd --port 3458 # Auto-start with custom port
|
|
289
295
|
jaw launchd status # Check daemon status
|
|
290
296
|
jaw launchd unset # Remove auto-start
|
|
291
297
|
jaw reset # Full reset
|
|
@@ -293,6 +299,34 @@ jaw reset # Full reset
|
|
|
293
299
|
|
|
294
300
|
---
|
|
295
301
|
|
|
302
|
+
## 🏗️ Multi-Instance — Separate Projects, Separate Contexts
|
|
303
|
+
|
|
304
|
+
Run multiple isolated instances of CLI-JAW — each with its own settings, memory, skills, and database.
|
|
305
|
+
|
|
306
|
+
```bash
|
|
307
|
+
# Clone your default instance to a new project
|
|
308
|
+
jaw clone ~/my-project
|
|
309
|
+
|
|
310
|
+
# Run it on a different port
|
|
311
|
+
jaw --home ~/my-project serve --port 3458
|
|
312
|
+
|
|
313
|
+
# Or auto-start both on boot
|
|
314
|
+
jaw launchd # default → port 3457
|
|
315
|
+
jaw --home ~/my-project launchd --port 3458 # project → port 3458
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
Each instance is fully independent — different working directory, different memory, different MCP config. Perfect for separating work/personal contexts or per-project AI setups.
|
|
319
|
+
|
|
320
|
+
| Flag / Env | What it does |
|
|
321
|
+
| ---------------------- | ------------------------------------------- |
|
|
322
|
+
| `--home <path>` | Use a custom home directory for this run |
|
|
323
|
+
| `--home=<path>` | Same, with `=` syntax |
|
|
324
|
+
| `CLI_JAW_HOME=<path>` | Set via environment variable |
|
|
325
|
+
| `jaw clone <target>` | Clone current instance to a new directory |
|
|
326
|
+
| `--port <port>` | Custom port for `serve` / `launchd` |
|
|
327
|
+
|
|
328
|
+
---
|
|
329
|
+
|
|
296
330
|
## 🤖 Models
|
|
297
331
|
|
|
298
332
|
Each CLI comes with preconfigured presets, but you can type **any model ID** directly.
|
|
@@ -357,7 +391,7 @@ src/
|
|
|
357
391
|
## 🧪 Tests
|
|
358
392
|
|
|
359
393
|
<details>
|
|
360
|
-
<summary>
|
|
394
|
+
<summary>306 pass · 1 skipped · zero external dependencies</summary>
|
|
361
395
|
|
|
362
396
|
```bash
|
|
363
397
|
npm test
|
|
@@ -387,11 +421,11 @@ All tests run via `tsx --test` (native Node.js test runner + TypeScript).
|
|
|
387
421
|
| ---------------------------- | ------------------------------------------------------------------------------------------- |
|
|
388
422
|
| `cli-jaw: command not found` | Run `npm install -g cli-jaw` again. Check `npm bin -g` is in your `$PATH`. |
|
|
389
423
|
| `Error: node version` | Upgrade to Node.js ≥ 22: `nvm install 22` or download from [nodejs.org](https://nodejs.org) |
|
|
390
|
-
| Agent timeout / no response | Run `jaw doctor` to check CLI auth. Re-authenticate with `claude auth` / `codex login`.
|
|
391
|
-
| `EADDRINUSE: port 3457` | Another instance is running. Stop it or use `jaw serve --port 3458`.
|
|
392
|
-
| Telegram bot not responding | Check token with `jaw doctor`. Ensure `jaw serve` is running.
|
|
393
|
-
| Skills not loading | Run `jaw skill reset` then `jaw mcp sync`.
|
|
394
|
-
| Browser commands fail | Install Chrome/Chromium. Run `jaw browser start` first.
|
|
424
|
+
| Agent timeout / no response | Run `jaw doctor` to check CLI auth. Re-authenticate with `claude auth` / `codex login`. |
|
|
425
|
+
| `EADDRINUSE: port 3457` | Another instance is running. Stop it or use `jaw serve --port 3458`. |
|
|
426
|
+
| Telegram bot not responding | Check token with `jaw doctor`. Ensure `jaw serve` is running. |
|
|
427
|
+
| Skills not loading | Run `jaw skill reset` then `jaw mcp sync`. |
|
|
428
|
+
| Browser commands fail | Install Chrome/Chromium. Run `jaw browser start` first. |
|
|
395
429
|
|
|
396
430
|
</details>
|
|
397
431
|
|
|
@@ -401,7 +435,7 @@ All tests run via `tsx --test` (native Node.js test runner + TypeScript).
|
|
|
401
435
|
|
|
402
436
|
Contributions are welcome! Here's how to get started:
|
|
403
437
|
|
|
404
|
-
1. Fork the repo and create your branch from `
|
|
438
|
+
1. Fork the repo and create your branch from `master`
|
|
405
439
|
2. Run `npm run build && npm test` to make sure everything works
|
|
406
440
|
3. Submit a PR — we'll review it promptly
|
|
407
441
|
|
package/README.zh-CN.md
CHANGED
|
@@ -22,6 +22,8 @@
|
|
|
22
22
|
|
|
23
23
|
## CLI-JAW 是什么?
|
|
24
24
|
|
|
25
|
+
> ⚠️ **安装须知:** `npm install -g cli-jaw` 运行 postinstall 脚本,可能会修改全局 CLI 技能目录(`~/.agents/skills/`、`~/.claude/skills/`)、自定义指令(`~/AGENTS.md` → `~/CLAUDE.md` 符号链接)以及 MCP 配置(`~/.cli-jaw/mcp.json` → 同步至 Claude/Codex/Gemini/OpenCode/Copilot)。现有配置不会被覆盖,而是合并处理。
|
|
26
|
+
|
|
25
27
|
CLI-JAW 是驻留在您本地机器上的**专属 AI 助手**,并在您熟悉的界面中运行 — **网页、终端和 Telegram**。您可以向它提出任何问题、委派任务或是自动化您的工作流。
|
|
26
28
|
|
|
27
29
|
> 💬 *"帮我整理一下今天的日程"* → 直接在 Telegram 上收到整理好的结果
|
|
@@ -37,6 +39,7 @@ CLI-JAW 是驻留在您本地机器上的**专属 AI 助手**,并在您熟悉
|
|
|
37
39
|
| ⚡ **多模型自动回退 (Fallback)** | 单一引擎发生故障?下一个立即接管。确保零停机。 |
|
|
38
40
|
| 🎭 **基于编排的性能优化** | 复杂的任务会被拆分给专业的子智能体,以实现效率最大化。 |
|
|
39
41
|
| 📦 **107 个内置技能** | 浏览器自动化、文档生成、Telegram 通知、持久化记忆 — 开箱即用。 |
|
|
42
|
+
| 🖥️ **跨平台支持** | macOS、Linux、Windows (WSL) — 浏览器启动、CLI 检测、安装均原生支持。 |
|
|
40
43
|
|
|
41
44
|

|
|
42
45
|
|
|
@@ -384,11 +387,11 @@ npm test
|
|
|
384
387
|
| ---------------------------- | ----------------------------- | ------------------------------------------------------------------------ |
|
|
385
388
|
| `command not found: cli-jaw` | npm 全局 bin 不在 PATH 中 | 运行 `npm config get prefix`,将 `bin/` 加入 PATH |
|
|
386
389
|
| `doctor` 显示 CLI 缺失 | 对应 CLI 未安装 | 按提示安装,如 `npm i -g @anthropic-ai/claude-code` |
|
|
387
|
-
| 端口 3457 被占用 | 其他进程占用了端口 | 改用 `PORT=4000 jaw serve` 或终止占用进程
|
|
388
|
-
| Telegram 机器人无响应 | Token 未配置或缺少 Chat ID | 重新运行 `jaw init --telegram-token ...`
|
|
390
|
+
| 端口 3457 被占用 | 其他进程占用了端口 | 改用 `PORT=4000 jaw serve` 或终止占用进程 |
|
|
391
|
+
| Telegram 机器人无响应 | Token 未配置或缺少 Chat ID | 重新运行 `jaw init --telegram-token ...` |
|
|
389
392
|
| `npm install -g` 权限错误 | 全局目录权限不足 | 使用 `sudo npm i -g cli-jaw` 或推荐 [nvm](https://github.com/nvm-sh/nvm) |
|
|
390
393
|
| 构建失败(`tsc` 报错) | Node 版本低于 22 | `node -v` 检查 → 升级至 22+ |
|
|
391
|
-
| 会话间记忆未保留 | `~/.cli-jaw/memory/` 目录缺失 | 重新运行 `jaw init` 自动创建
|
|
394
|
+
| 会话间记忆未保留 | `~/.cli-jaw/memory/` 目录缺失 | 重新运行 `jaw init` 自动创建 |
|
|
392
395
|
|
|
393
396
|
---
|
|
394
397
|
|
package/dist/bin/cli-jaw.js
CHANGED
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* CLI entrypoint with subcommand routing.
|
|
5
5
|
* No external dependencies — Node built-in only.
|
|
6
6
|
*/
|
|
7
|
-
import { dirname, join } from 'node:path';
|
|
7
|
+
import { dirname, join, resolve } from 'node:path';
|
|
8
8
|
import { fileURLToPath } from 'node:url';
|
|
9
9
|
import { readFileSync } from 'node:fs';
|
|
10
|
+
import { homedir } from 'node:os';
|
|
10
11
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
11
12
|
let pkg;
|
|
12
13
|
try {
|
|
@@ -17,6 +18,32 @@ catch {
|
|
|
17
18
|
const pkgPath = join(__dirname, '..', '..', 'package.json');
|
|
18
19
|
pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
|
|
19
20
|
}
|
|
21
|
+
// ─── --home flag: must run BEFORE command parsing (ESM hoisting safe) ───
|
|
22
|
+
// Manual parsing instead of parseArgs to avoid absorbing subcommand flags
|
|
23
|
+
const _homeIdx = process.argv.indexOf('--home');
|
|
24
|
+
const _homeEqArg = process.argv.find(a => a.startsWith('--home='));
|
|
25
|
+
if (_homeIdx !== -1 && process.argv[_homeIdx + 1]) {
|
|
26
|
+
const _homeVal = process.argv[_homeIdx + 1];
|
|
27
|
+
// Guard: if the "value" looks like a known subcommand, user forgot the path
|
|
28
|
+
const _knownCmds = ['serve', 'init', 'doctor', 'chat', 'employee', 'reset', 'mcp', 'skill', 'status', 'browser', 'memory', 'launchd', 'clone'];
|
|
29
|
+
if (_knownCmds.includes(_homeVal)) {
|
|
30
|
+
console.error(` ❌ --home requires a path argument (got subcommand '${_homeVal}')`);
|
|
31
|
+
console.error(` Usage: jaw --home <path> ${_homeVal}`);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
process.env.CLI_JAW_HOME = resolve(_homeVal.replace(/^~(?=\/|$)/, homedir()));
|
|
35
|
+
process.argv.splice(_homeIdx, 2);
|
|
36
|
+
}
|
|
37
|
+
else if (_homeIdx !== -1 && !process.argv[_homeIdx + 1]) {
|
|
38
|
+
console.error(' ❌ --home requires a path argument');
|
|
39
|
+
console.error(' Usage: jaw --home <path> <command>');
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
else if (_homeEqArg) {
|
|
43
|
+
const val = _homeEqArg.slice('--home='.length);
|
|
44
|
+
process.env.CLI_JAW_HOME = resolve(val.replace(/^~(?=\/|$)/, homedir()));
|
|
45
|
+
process.argv.splice(process.argv.indexOf(_homeEqArg), 1);
|
|
46
|
+
}
|
|
20
47
|
const command = process.argv[2];
|
|
21
48
|
function printHelp() {
|
|
22
49
|
const c = { cyan: '\x1b[36m', dim: '\x1b[2m', bold: '\x1b[1m', reset: '\x1b[0m' };
|
|
@@ -45,16 +72,18 @@ ${c.bold} 🦈 v${pkg.version}${c.reset} ${c.dim}AI Agent Orchestration Platf
|
|
|
45
72
|
browser 브라우저 제어
|
|
46
73
|
memory 영구 메모리 관리
|
|
47
74
|
launchd macOS 자동 실행 관리 (install/uninstall/status)
|
|
75
|
+
clone 인스턴스 복제 (독립 에이전트 생성)
|
|
48
76
|
|
|
49
77
|
${c.bold}Options:${c.reset}
|
|
78
|
+
--home 데이터 디렉토리 지정 (기본: ~/.cli-jaw)
|
|
50
79
|
--help 도움말 표시
|
|
51
80
|
--version 버전 표시
|
|
52
81
|
|
|
53
82
|
${c.bold}Examples:${c.reset}
|
|
54
|
-
jaw serve
|
|
83
|
+
jaw serve
|
|
84
|
+
jaw serve --home ~/.jaw-work --port 3458
|
|
55
85
|
jaw init
|
|
56
86
|
jaw doctor --json
|
|
57
|
-
jaw chat --raw
|
|
58
87
|
`);
|
|
59
88
|
}
|
|
60
89
|
switch (command) {
|
|
@@ -94,6 +123,9 @@ switch (command) {
|
|
|
94
123
|
case 'launchd':
|
|
95
124
|
await import('./commands/launchd.js');
|
|
96
125
|
break;
|
|
126
|
+
case 'clone':
|
|
127
|
+
await import('./commands/clone.js');
|
|
128
|
+
break;
|
|
97
129
|
case '--version':
|
|
98
130
|
case '-v':
|
|
99
131
|
console.log(`cli-jaw v${pkg.version}`);
|
package/dist/bin/cli-jaw.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-jaw.js","sourceRoot":"","sources":["../../bin/cli-jaw.ts"],"names":[],"mappings":";AACA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-jaw.js","sourceRoot":"","sources":["../../bin/cli-jaw.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,9 @@
|
|
|
5
5
|
import { parseArgs } from 'node:util';
|
|
6
6
|
import { rmSync, existsSync } from 'node:fs';
|
|
7
7
|
import { join } from 'node:path';
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
const SERVER = getServerUrl('3457');
|
|
8
|
+
import { getServerUrl, JAW_HOME } from '../../src/core/config.js';
|
|
9
|
+
const SERVER = getServerUrl(undefined);
|
|
11
10
|
const sub = process.argv[3];
|
|
12
|
-
const JAW_HOME = join(homedir(), '.cli-jaw');
|
|
13
11
|
// ─── ANSI ────────────────────────────────────
|
|
14
12
|
const c = {
|
|
15
13
|
reset: '\x1b[0m', bold: '\x1b[1m', dim: '\x1b[2m',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../bin/commands/browser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AACpC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AAE7C,gDAAgD;AAChD,MAAM,CAAC,GAAG;IACN,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS;IACjD,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU;IACtD,IAAI,EAAE,UAAU;CACnB,CAAC;AAEF,KAAK,UAAU,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,IAAU;IACvD,MAAM,IAAI,GAAwB,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CAAC;IAC9F,IAAI,IAAI;QAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,eAAe,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAwB,CAAC;QAC/F,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC;AAED,IAAI,CAAC;IACD,QAAQ,GAAG,EAAE,CAAC;QACV,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3B,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK;aACxE,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAwB,CAAC;YAC5F,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7E,MAAM;QACV,CAAC;QACD,KAAK,MAAM;YACP,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACjC,MAAM;QACV,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,SAAS,CAAwB,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,WAAW,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC;YACpF,MAAM;QACV,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3B,OAAO,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK;aAC/E,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,yBAAyB,MAAM,CAAC,WAAW,EAAE,CAAwB,CAAC;YACjG,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACpC,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;YACtF,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAChB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3B,OAAO,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK;aACxF,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAwB,CAAC;YACtH,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM;QACV,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YACnF,MAAM,IAAI,GAAwB,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC/D,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;YAC9B,MAAM;QACV,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;YACjC,MAAM;QACV,CAAC;QACD,KAAK,OAAO;YACR,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1C,MAAM;QACV,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;YAC9B,MAAM;QACV,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACjB,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;YACD,MAAM,IAAI,GAAwB,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC/D,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAwB,CAAC;YACnG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM;QACV,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YAClB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;gBAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;YACD,MAAM,IAAI,GAAwB,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,WAAW,KAAK,CAAC,CAAC;gBAAE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;YAEtE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,sBAAsB,MAAM,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAClE,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAwB,CAAC;YAEzF,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,uBAAuB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACxH,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACpG,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,MAAM,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAwB,CAAC;YAC1F,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACpC,MAAM;QACV,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAwB,CAAC;YAC1F,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACjC,MAAM;QACV,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,OAAO,CAAwB,CAAC;YAC3D,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAChG,MAAM;QACV,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3B,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK;aAC1E,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,gBAAgB,MAAM,CAAC,MAAM,EAAE,CAAwB,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM;QACV,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAwB,CAAC;YACjH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM;QACV,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;gBAC1D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7E,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;oBACjC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,oBAAoB,CAAC,CAAC,KAAK,oDAAoD,EAAE,CAAC,CAAC,CAAC;gBACnH,CAAC,CAAC,CAAC;gBACH,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,IAAK,MAAiB,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;oBAC3C,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACxB,MAAM;gBACV,CAAC;YACL,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAEzD,wDAAwD;YACxD,IAAI,CAAC;gBACD,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,2BAA2B;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YACrD,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,aAAa,UAAU,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,uBAAuB;YACvB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YACrD,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,aAAa,cAAc,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACnE,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YACxD,MAAM;QACV,CAAC;QACD;YACI,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;CAyBvB,CAAC,CAAC;IACC,CAAC;AACL,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACT,OAAO,CAAC,KAAK,CAAC,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACzB,CAAC"}
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../bin/commands/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* cli-jaw clone — Create independent agent instance
|
|
3
|
+
* Copies config + skills, creates fresh DB, regenerates AGENTS.md
|
|
4
|
+
*/
|
|
5
|
+
import fs from 'node:fs';
|
|
6
|
+
import path from 'node:path';
|
|
7
|
+
import os from 'node:os';
|
|
8
|
+
import { execSync } from 'node:child_process';
|
|
9
|
+
import { dirname } from 'node:path';
|
|
10
|
+
import { fileURLToPath } from 'node:url';
|
|
11
|
+
import { parseArgs } from 'node:util';
|
|
12
|
+
import { JAW_HOME } from '../../src/core/config.js';
|
|
13
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
14
|
+
const { values, positionals } = parseArgs({
|
|
15
|
+
args: process.argv.slice(3),
|
|
16
|
+
options: {
|
|
17
|
+
from: { type: 'string' },
|
|
18
|
+
'with-memory': { type: 'boolean', default: false },
|
|
19
|
+
'link-ref': { type: 'boolean', default: false },
|
|
20
|
+
},
|
|
21
|
+
allowPositionals: true,
|
|
22
|
+
strict: false,
|
|
23
|
+
});
|
|
24
|
+
const target = positionals[0]
|
|
25
|
+
? path.resolve(positionals[0].replace(/^~(?=\/|$)/, os.homedir()))
|
|
26
|
+
: null;
|
|
27
|
+
if (!target) {
|
|
28
|
+
console.error('Usage: jaw clone <target-dir> [--from <source>] [--with-memory] [--link-ref]');
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
const source = values.from
|
|
32
|
+
? path.resolve(values.from.replace(/^~(?=\/|$)/, os.homedir()))
|
|
33
|
+
: JAW_HOME;
|
|
34
|
+
const withMemory = values['with-memory'];
|
|
35
|
+
const linkRef = values['link-ref'];
|
|
36
|
+
if (fs.existsSync(target) && fs.readdirSync(target).length > 0) {
|
|
37
|
+
console.error(`❌ Target directory not empty: ${target}`);
|
|
38
|
+
process.exit(1);
|
|
39
|
+
}
|
|
40
|
+
if (!fs.existsSync(source)) {
|
|
41
|
+
console.error(`❌ Source directory does not exist: ${source}`);
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
if (!fs.existsSync(path.join(source, 'settings.json'))) {
|
|
45
|
+
console.error(`❌ Source is not a valid cli-jaw instance (missing settings.json): ${source}`);
|
|
46
|
+
process.exit(1);
|
|
47
|
+
}
|
|
48
|
+
// ── 1. Create target structure ──
|
|
49
|
+
fs.mkdirSync(target, { recursive: true });
|
|
50
|
+
for (const dir of ['prompts', 'skills', 'worklogs', 'uploads', 'memory', 'logs']) {
|
|
51
|
+
fs.mkdirSync(path.join(target, dir), { recursive: true });
|
|
52
|
+
}
|
|
53
|
+
// ── 2. Copy config files ──
|
|
54
|
+
for (const file of ['settings.json', 'mcp.json', 'heartbeat.json']) {
|
|
55
|
+
const src = path.join(source, file);
|
|
56
|
+
if (fs.existsSync(src)) {
|
|
57
|
+
if (file === 'settings.json') {
|
|
58
|
+
const settings = JSON.parse(fs.readFileSync(src, 'utf8'));
|
|
59
|
+
settings.workingDir = target;
|
|
60
|
+
fs.writeFileSync(path.join(target, file), JSON.stringify(settings, null, 4));
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
fs.copyFileSync(src, path.join(target, file));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
// ── 3. Copy prompts (A-1, A-2 — user personality; skip B.md — regenerated) ──
|
|
68
|
+
const promptsSrc = path.join(source, 'prompts');
|
|
69
|
+
if (fs.existsSync(promptsSrc)) {
|
|
70
|
+
for (const file of fs.readdirSync(promptsSrc)) {
|
|
71
|
+
if (file === 'B.md')
|
|
72
|
+
continue;
|
|
73
|
+
const srcFile = path.join(promptsSrc, file);
|
|
74
|
+
if (fs.statSync(srcFile).isFile()) {
|
|
75
|
+
fs.copyFileSync(srcFile, path.join(target, 'prompts', file));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// ── 4. Copy skills ──
|
|
80
|
+
copyDirRecursive(path.join(source, 'skills'), path.join(target, 'skills'));
|
|
81
|
+
// ── 5. skills_ref — copy or symlink ──
|
|
82
|
+
const skillsRefSrc = path.join(source, 'skills_ref');
|
|
83
|
+
if (fs.existsSync(skillsRefSrc)) {
|
|
84
|
+
if (linkRef) {
|
|
85
|
+
fs.symlinkSync(skillsRefSrc, path.join(target, 'skills_ref'));
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
copyDirRecursive(skillsRefSrc, path.join(target, 'skills_ref'));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// ── 6. Optional memory ──
|
|
92
|
+
if (withMemory) {
|
|
93
|
+
const memSrc = path.join(source, 'memory', 'MEMORY.md');
|
|
94
|
+
if (fs.existsSync(memSrc)) {
|
|
95
|
+
fs.copyFileSync(memSrc, path.join(target, 'memory', 'MEMORY.md'));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// ── 7. jaw.db — NOT copied (fresh DB on first access) ──
|
|
99
|
+
// ── 8. Regenerate AGENTS.md + B.md via subprocess ──
|
|
100
|
+
// Must use subprocess: JAW_HOME is const at module load, re-import returns cached value.
|
|
101
|
+
const projectRoot = path.join(__dirname, '..', '..');
|
|
102
|
+
try {
|
|
103
|
+
execSync(`node -e "` +
|
|
104
|
+
`const { loadSettings } = await import('./src/core/config.js'); ` +
|
|
105
|
+
`loadSettings(); ` +
|
|
106
|
+
`const { regenerateB } = await import('./src/prompt/builder.js'); ` +
|
|
107
|
+
`regenerateB();"`, {
|
|
108
|
+
cwd: projectRoot,
|
|
109
|
+
env: { ...process.env, CLI_JAW_HOME: target },
|
|
110
|
+
stdio: 'pipe',
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
console.log(' ⚠️ AGENTS.md regeneration skipped (run jaw --home <target> init to fix)');
|
|
115
|
+
}
|
|
116
|
+
// ── 9. Summary ──
|
|
117
|
+
console.log(`
|
|
118
|
+
✅ Cloned to ${target}
|
|
119
|
+
|
|
120
|
+
Copied:
|
|
121
|
+
✅ prompts/ (personality)
|
|
122
|
+
✅ skills/
|
|
123
|
+
${linkRef ? '🔗' : '✅'} skills_ref/${linkRef ? ' (symlinked)' : ''}
|
|
124
|
+
✅ config (settings.json, mcp.json, heartbeat.json)
|
|
125
|
+
${withMemory ? '✅' : '⏭️'} memory/MEMORY.md
|
|
126
|
+
|
|
127
|
+
Fresh:
|
|
128
|
+
🆕 jaw.db (created on first access)
|
|
129
|
+
🆕 worklogs/
|
|
130
|
+
🔄 AGENTS.md (regenerated)
|
|
131
|
+
|
|
132
|
+
Launch:
|
|
133
|
+
jaw serve --home ${target}
|
|
134
|
+
jaw serve --home ${target} --port 3458
|
|
135
|
+
`);
|
|
136
|
+
// ── Helper: recursive directory copy ──
|
|
137
|
+
function copyDirRecursive(src, dest) {
|
|
138
|
+
if (!fs.existsSync(src))
|
|
139
|
+
return;
|
|
140
|
+
fs.mkdirSync(dest, { recursive: true });
|
|
141
|
+
for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
|
|
142
|
+
const srcPath = path.join(src, entry.name);
|
|
143
|
+
const destPath = path.join(dest, entry.name);
|
|
144
|
+
if (entry.isDirectory()) {
|
|
145
|
+
copyDirRecursive(srcPath, destPath);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
fs.copyFileSync(srcPath, destPath);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=clone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clone.js","sourceRoot":"","sources":["../../../bin/commands/clone.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE1D,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IACtC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE;QACL,IAAI,EAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QAClD,UAAU,EAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;KACrD;IACD,gBAAgB,EAAE,IAAI;IACtB,MAAM,EAAE,KAAK;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,IAAI,CAAC;AAEX,IAAI,CAAC,MAAM,EAAE,CAAC;IACV,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI;IACtB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAE,MAAM,CAAC,IAAe,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC,QAAQ,CAAC;AACf,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAY,CAAC;AACpD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAY,CAAC;AAE9C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IAC7D,OAAO,CAAC,KAAK,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IACzB,OAAO,CAAC,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;IACrD,OAAO,CAAC,KAAK,CAAC,qEAAqE,MAAM,EAAE,CAAC,CAAC;IAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,mCAAmC;AACnC,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1C,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;IAC/E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,6BAA6B;AAC7B,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,gBAAgB,CAAC,EAAE,CAAC;IACjE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACpC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1D,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC;YAC7B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAChD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,IAAI,IAAI,KAAK,MAAM;YAAE,SAAS;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YAChC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;AACL,CAAC;AAED,uBAAuB;AACvB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE3E,wCAAwC;AACxC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AACrD,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;IAC9B,IAAI,OAAO,EAAE,CAAC;QACV,EAAE,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACJ,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IACpE,CAAC;AACL,CAAC;AAED,2BAA2B;AAC3B,IAAI,UAAU,EAAE,CAAC;IACb,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACxD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IACtE,CAAC;AACL,CAAC;AAED,0DAA0D;AAE1D,sDAAsD;AACtD,yFAAyF;AACzF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,IAAI,CAAC;IACD,QAAQ,CACJ,WAAW;QACX,iEAAiE;QACjE,kBAAkB;QAClB,mEAAmE;QACnE,iBAAiB,EACjB;QACI,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE;QAC7C,KAAK,EAAE,MAAM;KAChB,CACJ,CAAC;AACN,CAAC;AAAC,MAAM,CAAC;IACL,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;AAC7F,CAAC;AAED,mBAAmB;AACnB,OAAO,CAAC,GAAG,CAAC;cACE,MAAM;;;;;MAKd,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,eAAe,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;;MAEhE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;;;;;;;;uBAQN,MAAM;uBACN,MAAM;CAC5B,CAAC,CAAC;AAEH,yCAAyC;AACzC,SAAS,gBAAgB,CAAC,GAAW,EAAE,IAAY;IAC/C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO;IAChC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACtB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;IACL,CAAC;AACL,CAAC"}
|