@migor/cli 0.2.0 → 0.2.2
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/LICENSE +21 -0
- package/README.md +64 -0
- package/dist/AGENTS.md +811 -0
- package/dist/add.js +14 -12
- package/dist/cli.js +25 -15
- package/dist/create.js +47 -7
- package/dist/dev.js +61 -12
- package/dist/doctor.js +60 -32
- package/dist/generate.js +27 -15
- package/dist/inspector/fromTrace.js +144 -0
- package/dist/inspector/index.js +6 -0
- package/dist/inspector/summary.js +106 -0
- package/dist/inspector/trace-view.css +166 -0
- package/dist/inspector/view.js +274 -0
- package/dist/inspector-page.html +157 -0
- package/dist/inspector-preload.js +31 -0
- package/dist/inspector-sink.js +18 -0
- package/dist/inspector.js +166 -0
- package/dist/layout.js +44 -0
- package/dist/registry.js +19 -12
- package/dist/report.js +125 -0
- package/dist/templates.js +56 -31
- package/package.json +9 -3
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 retrychx
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# @migor/cli
|
|
2
|
+
|
|
3
|
+
Agentia 框架的命令行工具:脚手架、能力生成、本地调试与 **trace 观测**。
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm i -g @migor/cli
|
|
7
|
+
|
|
8
|
+
agentia create my-app # 脚手架:四分类目录 + src/registry.ts + src/main.ts
|
|
9
|
+
cd my-app && npm install
|
|
10
|
+
agentia g subagent doc-reviewer # 生成能力并自动登记到注册表
|
|
11
|
+
agentia dev # tsx watch + 本地 inspector 面板
|
|
12
|
+
agentia doctor # 装配体检:未登记 / 悬空能力、命名规范、重复条目
|
|
13
|
+
agentia add <pkg> # 安装第三方能力包并登记
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 命令
|
|
17
|
+
|
|
18
|
+
| 命令 | 作用 |
|
|
19
|
+
|---|---|
|
|
20
|
+
| `agentia create <name>` | 脚手架新项目:`src/tools` · `src/skills` · `src/prompts` · `src/subagents` 四分类目录、`src/registry.ts` 注册表、`src/main.ts` 入口、tsconfig |
|
|
21
|
+
| `agentia g <type> <name>` | 生成能力(`tool` / `skill` / `subagent` / `prompt`)到对应分类目录 `src/<分类>/<name>/` 并登记注册表;长文本资产(`system.md` / `asset.md`)一并生成 |
|
|
22
|
+
| `agentia dev` | `tsx watch` 启动 `src/main.ts`,改能力文件自动重启;内建 inspector 面板查看 trace |
|
|
23
|
+
| `agentia doctor` | 纯静态体检,不加载用户代码 |
|
|
24
|
+
| `agentia report <trace.jsonl>` | 从 trace 落盘文件生成调优报告(能力耗时 / 成本 / 错误率排行) |
|
|
25
|
+
| `agentia add <pkg>` | 安装第三方能力包(`defineModule` 能力包)并登记到注册表 |
|
|
26
|
+
|
|
27
|
+
## 可观测(trace)
|
|
28
|
+
|
|
29
|
+
框架的观测面 **Turn 0 起内建**:一次 run == 一条 trace(`runId == traceId`)。CLI 把这份 trace 带进本地开发流程,**不需要另装追踪后端**:
|
|
30
|
+
|
|
31
|
+
- **`agentia dev`** —— 起 `tsx watch` 的同时开一个本地 inspector 面板,实时看每次 run 的调用树(`llm.turn` / 能力 span / 每步 token 与成本)。面板的渲染器与官网 Playground 共用同一份 `@migor/trace-view` —— 两处一套代码,不漂移。
|
|
32
|
+
- **`agentia report <trace.jsonl>`** —— 把落盘的 trace 汇成调优报告:「**哪个能力慢 / 贵 / 爱失败**」的排行。面对一堆旋钮时,这是「该拧哪个」的依据。
|
|
33
|
+
|
|
34
|
+
落库检索 / 采样 / 脱敏、指标与 OTLP 导出都在框架侧的 `TraceSink` 缝上做 —— **策略归宿主,框架只给缝**。详见 [`@migor/agentia`](https://www.npmjs.com/package/@migor/agentia) 的「可观测性与成本」一节,以及仓库的 [`docs/observability.md`](https://github.com/retrychx/agentia/blob/main/docs/observability.md)。
|
|
35
|
+
|
|
36
|
+
## 目录约定
|
|
37
|
+
|
|
38
|
+
新项目的四类能力各占一个自解释的目录,一能力一文件夹(目录名即类型):
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
src/
|
|
42
|
+
├─ tools/<name>/ # @Tool
|
|
43
|
+
├─ skills/<name>/ # @Skill
|
|
44
|
+
├─ prompts/<name>/ # @Prompt(含 asset.md)
|
|
45
|
+
├─ subagents/<name>/ # @SubAgent(含 system.md)
|
|
46
|
+
├─ registry.ts # 显式注册表(create / g / add 维护,doctor 校验)
|
|
47
|
+
└─ main.ts # createApp 装配入口
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
<!-- no-legacy-terms: allow -->
|
|
51
|
+
> 老项目(根 `units/` + `units.ts`)**运行时不受影响** —— `discover` 收的是路径,
|
|
52
|
+
> `discover: 'units'` 照跑;但 `g` / `doctor` 撞见老布局会**明确提示迁移**,绝不悄悄
|
|
53
|
+
> 在旁边新建第二棵目录树。
|
|
54
|
+
<!-- /no-legacy-terms: allow -->
|
|
55
|
+
|
|
56
|
+
## 与框架的关系
|
|
57
|
+
|
|
58
|
+
CLI 生成的项目的框架依赖是 `@migor/agentia`。框架用法见
|
|
59
|
+
[`@migor/agentia`](https://www.npmjs.com/package/@migor/agentia);
|
|
60
|
+
完整说明见仓库的 `docs/usage-guide.md`。
|
|
61
|
+
|
|
62
|
+
## 许可
|
|
63
|
+
|
|
64
|
+
MIT
|