oh-my-knowledge 0.48.0 → 0.49.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 +50 -18
- package/README.zh.md +55 -23
- package/dist/analysis/coverage-analyzer.d.ts +1 -0
- package/dist/analysis/coverage-analyzer.js +125 -62
- package/dist/analysis/failure-clusterer.js +2 -1
- package/dist/analysis/gap-analyzer.d.ts +2 -2
- package/dist/analysis/gap-analyzer.js +13 -3
- package/dist/analysis/hedging-classifier.d.ts +2 -2
- package/dist/analysis/hedging-classifier.js +3 -4
- package/dist/analysis/report-diagnostics.js +9 -7
- package/dist/analysis/sample-diagnostics.js +6 -6
- package/dist/artifact-graph/doctor.js +15 -7
- package/dist/assets/agent-skills/omk/SKILL.md +27 -7
- package/dist/assets/agent-skills/omk/references/commands.md +18 -17
- package/dist/authoring/evolver.d.ts +10 -6
- package/dist/authoring/evolver.js +496 -83
- package/dist/authoring/generator.d.ts +3 -3
- package/dist/authoring/generator.js +5 -10
- package/dist/authoring/sample-fixer.d.ts +8 -6
- package/dist/authoring/sample-fixer.js +76 -5
- package/dist/cli/commands/doctor.js +31 -14
- package/dist/cli/commands/eval/index.d.ts +3 -0
- package/dist/cli/commands/eval/index.js +163 -17
- package/dist/cli/commands/evolve.d.ts +4 -4
- package/dist/cli/commands/evolve.js +27 -13
- package/dist/cli/commands/init.js +16 -3
- package/dist/cli/commands/observe/inbox.js +28 -21
- package/dist/cli/commands/observe/index.js +20 -11
- package/dist/cli/commands/observe/ingest.d.ts +3 -0
- package/dist/cli/commands/observe/ingest.js +30 -2
- package/dist/cli/commands/sample.d.ts +6 -3
- package/dist/cli/commands/sample.js +72 -68
- package/dist/cli/lib/codex-model-hint.d.ts +9 -0
- package/dist/cli/lib/codex-model-hint.js +45 -0
- package/dist/cli/lib/generation-failure-hint.d.ts +2 -0
- package/dist/cli/lib/generation-failure-hint.js +61 -0
- package/dist/cli/lib/i18n-dict/common.d.ts +1 -1
- package/dist/cli/lib/i18n-dict/common.js +4 -0
- package/dist/cli/lib/i18n-dict/gen.d.ts +1 -1
- package/dist/cli/lib/i18n-dict/gen.js +38 -6
- package/dist/cli/lib/i18n-dict/help.js +6 -6
- package/dist/cli/lib/i18n-dict/init.d.ts +1 -1
- package/dist/cli/lib/i18n-dict/init.js +13 -9
- package/dist/cli/lib/i18n-dict/run.d.ts +1 -1
- package/dist/cli/lib/i18n-dict/run.js +34 -2
- package/dist/cli/lib/llm-failure-classifier.d.ts +2 -0
- package/dist/cli/lib/llm-failure-classifier.js +8 -0
- package/dist/cli/lib/parse-run-config.d.ts +6 -5
- package/dist/cli/lib/parse-run-config.js +16 -9
- package/dist/cli/lib/runtime-defaults.d.ts +21 -0
- package/dist/cli/lib/runtime-defaults.js +79 -0
- package/dist/diagnosis/observe-mapper.js +14 -15
- package/dist/diagnosis/observe-producer.js +3 -1
- package/dist/diagnosis/studio-projection.js +14 -7
- package/dist/diagnosis/types.d.ts +2 -0
- package/dist/diagnosis/types.js +12 -0
- package/dist/doctor/endpoint-rule.js +2 -1
- package/dist/eval-core/artifact-file-names.js +18 -1
- package/dist/eval-core/artifact-index.d.ts +7 -11
- package/dist/eval-core/artifact-index.js +139 -80
- package/dist/eval-core/cache.d.ts +12 -3
- package/dist/eval-core/cache.js +89 -29
- package/dist/eval-core/comparability.js +10 -6
- package/dist/eval-core/evaluation-execution.d.ts +2 -1
- package/dist/eval-core/evaluation-execution.js +122 -37
- package/dist/eval-core/evaluation-job.d.ts +4 -1
- package/dist/eval-core/evaluation-job.js +4 -1
- package/dist/eval-core/evaluation-reporting.d.ts +15 -13
- package/dist/eval-core/evaluation-reporting.js +54 -52
- package/dist/eval-core/execution-strategy.d.ts +2 -0
- package/dist/eval-core/execution-strategy.js +11 -9
- package/dist/eval-core/fact-checker.js +15 -7
- package/dist/eval-core/holdout.js +3 -2
- package/dist/eval-core/judge-independence.d.ts +2 -2
- package/dist/eval-core/mock-hook.cjs +23 -6
- package/dist/eval-core/mocks-runtime.js +30 -8
- package/dist/eval-core/report-document.d.ts +12 -0
- package/dist/eval-core/report-document.js +1151 -0
- package/dist/eval-core/report-extensions.d.ts +4 -0
- package/dist/eval-core/report-extensions.js +500 -0
- package/dist/eval-core/report-file-migration.js +7 -2
- package/dist/eval-core/resume-compatibility.d.ts +31 -0
- package/dist/eval-core/resume-compatibility.js +141 -0
- package/dist/eval-core/sample-fingerprint.d.ts +12 -0
- package/dist/eval-core/sample-fingerprint.js +193 -0
- package/dist/eval-core/schema.js +86 -31
- package/dist/eval-core/verdict.d.ts +8 -4
- package/dist/eval-core/verdict.js +24 -10
- package/dist/eval-workflows/batch-evaluation-workflow.d.ts +2 -1
- package/dist/eval-workflows/batch-evaluation-workflow.js +25 -12
- package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.d.ts +10 -5
- package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.js +58 -21
- package/dist/eval-workflows/evaluation-pipeline/report-finalize.js +3 -1
- package/dist/eval-workflows/evaluation-pipeline/run-state.d.ts +4 -1
- package/dist/eval-workflows/evaluation-pipeline/run-state.js +4 -1
- package/dist/eval-workflows/evaluation-pipeline/test-set-hash.d.ts +6 -5
- package/dist/eval-workflows/evaluation-pipeline/test-set-hash.js +17 -10
- package/dist/eval-workflows/evaluation-pipeline.js +12 -7
- package/dist/eval-workflows/run-evaluation.d.ts +9 -7
- package/dist/eval-workflows/run-evaluation.js +79 -51
- package/dist/executors/anthropic-api.js +65 -9
- package/dist/executors/claude-cli.js +16 -79
- package/dist/executors/claude-protocol.d.ts +28 -0
- package/dist/executors/claude-protocol.js +180 -0
- package/dist/executors/claude-sdk-trace.js +56 -28
- package/dist/executors/claude-sdk.d.ts +1 -0
- package/dist/executors/claude-sdk.js +39 -93
- package/dist/executors/codex-cli-trace.js +166 -31
- package/dist/executors/codex-cli.d.ts +6 -8
- package/dist/executors/codex-cli.js +49 -151
- package/dist/executors/codex-protocol.d.ts +24 -0
- package/dist/executors/codex-protocol.js +234 -0
- package/dist/executors/codex-sdk.js +68 -120
- package/dist/executors/gemini.js +88 -13
- package/dist/executors/index.d.ts +2 -3
- package/dist/executors/index.js +5 -3
- package/dist/executors/openai-api.js +70 -9
- package/dist/executors/runtime-fingerprint.js +88 -11
- package/dist/executors/script-command.d.ts +8 -0
- package/dist/executors/script-command.js +87 -0
- package/dist/executors/script.js +202 -29
- package/dist/executors/shared.d.ts +35 -3
- package/dist/executors/shared.js +113 -15
- package/dist/grading/assertions.d.ts +1 -1
- package/dist/grading/assertions.js +19 -9
- package/dist/grading/diagnostic.d.ts +9 -2
- package/dist/grading/diagnostic.js +25 -2
- package/dist/grading/index.js +10 -4
- package/dist/grading/judge.js +19 -6
- package/dist/grading/layered-scores.d.ts +2 -3
- package/dist/grading/layered-scores.js +2 -3
- package/dist/inputs/load-samples.d.ts +1 -2
- package/dist/inputs/load-samples.js +23 -1
- package/dist/inputs/mcp-resolver.js +6 -3
- package/dist/inputs/sample-document.d.ts +11 -0
- package/dist/inputs/sample-document.js +96 -0
- package/dist/managed/evidence.d.ts +1 -0
- package/dist/managed/evidence.js +1 -1
- package/dist/managed/store.js +200 -91
- package/dist/observability/codex-trace-adapter.d.ts +5 -0
- package/dist/observability/codex-trace-adapter.js +850 -0
- package/dist/observability/experience.d.ts +32 -6
- package/dist/observability/experience.js +2695 -459
- package/dist/observability/feedback-matchers.js +16 -1
- package/dist/observability/inbox-view-model.d.ts +1 -1
- package/dist/observability/inbox-view-model.js +19 -14
- package/dist/observability/inbox.d.ts +7 -1
- package/dist/observability/inbox.js +632 -124
- package/dist/observability/problem-patterns.js +2 -0
- package/dist/observability/review-state.d.ts +6 -0
- package/dist/observability/review-state.js +235 -63
- package/dist/observability/skill-chain-advisories.js +1 -1
- package/dist/observability/skill-chain.js +17 -4
- package/dist/observability/skill-health-analyzer.d.ts +32 -7
- package/dist/observability/skill-health-analyzer.js +194 -121
- package/dist/observability/skill-health-report.d.ts +10 -0
- package/dist/observability/skill-health-report.js +620 -0
- package/dist/observability/soft-standards/constants.d.ts +0 -1
- package/dist/observability/soft-standards/constants.js +0 -1
- package/dist/observability/soft-standards/index.d.ts +1 -1
- package/dist/observability/soft-standards/index.js +1 -1
- package/dist/observability/soft-standards/llm-extractor.js +8 -10
- package/dist/observability/soft-standards/skill-standards-store.d.ts +2 -1
- package/dist/observability/soft-standards/skill-standards-store.js +59 -18
- package/dist/observability/soft-standards/types.d.ts +2 -2
- package/dist/observability/trace-adapter.d.ts +12 -7
- package/dist/observability/trace-adapter.js +11 -9
- package/dist/observability/trace-attribution.d.ts +13 -5
- package/dist/observability/trace-attribution.js +315 -21
- package/dist/observability/trace-ingestion.d.ts +9 -0
- package/dist/observability/trace-ingestion.js +80 -0
- package/dist/observability/trace-ir.d.ts +113 -0
- package/dist/observability/trace-ir.js +87 -0
- package/dist/observability/trace-segmenter.d.ts +19 -6
- package/dist/observability/trace-segmenter.js +377 -196
- package/dist/observability/trace-session-index.d.ts +19 -0
- package/dist/observability/trace-session-index.js +68 -0
- package/dist/observability/trace-source.d.ts +12 -4
- package/dist/observability/trace-source.js +939 -215
- package/dist/renderer/html-renderer.js +37 -6
- package/dist/renderer/icons.js +3 -0
- package/dist/renderer/observation-inbox-renderer.js +208 -90
- package/dist/renderer/skill-detail-renderer.js +452 -109
- package/dist/renderer/skill-health-renderer.js +69 -12
- package/dist/renderer/summary.js +28 -7
- package/dist/renderer/table.js +21 -4
- package/dist/renderer/test-view.d.ts +1 -0
- package/dist/renderer/test-view.js +44 -9
- package/dist/server/indexed-report-store.js +14 -18
- package/dist/server/job-store.js +64 -26
- package/dist/server/report-server.js +190 -78
- package/dist/server/report-store.js +57 -80
- package/dist/server/skill-index.js +143 -49
- package/dist/server/skill-insights.js +44 -5
- package/dist/shared/artifact-graph.d.ts +3 -0
- package/dist/shared/artifact-graph.js +224 -0
- package/dist/shared/assertion-types.d.ts +8 -0
- package/dist/shared/assertion-types.js +46 -0
- package/dist/shared/atomic-json.d.ts +8 -0
- package/dist/shared/atomic-json.js +33 -0
- package/dist/shared/diagnosis-schema.d.ts +9 -0
- package/dist/shared/diagnosis-schema.js +181 -0
- package/dist/shared/doctor-report.d.ts +3 -0
- package/dist/shared/doctor-report.js +103 -0
- package/dist/shared/evaluation-job.d.ts +6 -0
- package/dist/shared/evaluation-job.js +217 -0
- package/dist/shared/executor-result.d.ts +17 -0
- package/dist/shared/executor-result.js +221 -0
- package/dist/shared/file-lock.d.ts +12 -0
- package/dist/shared/file-lock.js +129 -0
- package/dist/shared/json-value.d.ts +5 -0
- package/dist/shared/json-value.js +36 -0
- package/dist/shared/keyed-mutex.d.ts +7 -0
- package/dist/shared/keyed-mutex.js +24 -0
- package/dist/shared/record-count.d.ts +8 -0
- package/dist/shared/record-count.js +43 -0
- package/dist/shared/sample-contract.d.ts +3 -0
- package/dist/shared/sample-contract.js +332 -0
- package/dist/shared/timestamp.d.ts +6 -0
- package/dist/shared/timestamp.js +64 -0
- package/dist/shared/token-usage.d.ts +19 -0
- package/dist/shared/token-usage.js +50 -0
- package/dist/shared/tool-call-status.d.ts +8 -0
- package/dist/shared/tool-call-status.js +28 -0
- package/dist/shared/tool-identity.d.ts +21 -0
- package/dist/shared/tool-identity.js +84 -0
- package/dist/shared/tool-search.js +73 -16
- package/dist/shared/trace-projection.d.ts +5 -0
- package/dist/shared/trace-projection.js +20 -0
- package/dist/shared/trace-source-kind.d.ts +3 -0
- package/dist/shared/trace-source-kind.js +12 -0
- package/dist/types/diagnosis.d.ts +2 -0
- package/dist/types/eval.d.ts +4 -0
- package/dist/types/executor.d.ts +32 -5
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/judge.d.ts +2 -0
- package/dist/types/observability.d.ts +116 -9
- package/dist/types/report.d.ts +58 -6
- package/dist/types/skill-index.d.ts +7 -0
- package/dist/types/trace.d.ts +2 -0
- package/dist/types/trace.js +1 -0
- package/package.json +9 -5
|
@@ -21,6 +21,12 @@ npm i oh-my-knowledge -g
|
|
|
21
21
|
|
|
22
22
|
omk CLI 顶层命令包括:`init` / `install` / `list` / `promote` / `rollback` / `doctor` / `eval` / `observe` / `evolve` / `sample` / `studio`。没有 `bench` / `improve` / `gen-samples` 这些旧子命令名 —— 如果你在历史 SKILL / 文档里看到了,那是 v0.30 命令树重构之前的写法。
|
|
23
23
|
|
|
24
|
+
### 在 Codex / ChatGPT desktop 中
|
|
25
|
+
|
|
26
|
+
Codex 是 omk 的一等 runtime。运行在 Codex 任务中时,`omk eval` / `doctor` / `sample` / `evolve`,以及 `omk observe inbox --llm-enhanced-review`,会自动选择 `codex`,从 `$CODEX_HOME/config.toml` 或 `~/.codex/config.toml` 读取顶层 `model`,默认评委沿用同一个 Codex 模型;不要额外回落到 Claude。
|
|
27
|
+
|
|
28
|
+
普通终端想固定走 Codex 时,可以设置 `OMK_EXECUTOR=codex`;`OMK_MODEL` 可覆盖本机 Codex 配置,`OMK_JUDGE_MODELS` 可覆盖默认评委。逐次覆盖仍可使用 `--executor` / `--model` / `--judge-models`。Codex 不需要 Claude Code 风格的 `/omk` slash command,直接执行 CLI。
|
|
29
|
+
|
|
24
30
|
## 第二步:理解用户意图
|
|
25
31
|
|
|
26
32
|
根据用户的描述,匹配对应的操作:
|
|
@@ -79,9 +85,10 @@ omk eval --config eval.yaml
|
|
|
79
85
|
|
|
80
86
|
常用选项:
|
|
81
87
|
|
|
82
|
-
- `--
|
|
88
|
+
- `--executor <name>` 显式覆盖执行器;Codex 任务中通常不用传
|
|
89
|
+
- `--model <name>` 显式覆盖任务执行模型;Codex 默认读取本机配置
|
|
83
90
|
- `--effort <low|medium|high|xhigh|max>` 执行模型扩展思考预算(默认 low;跨 effort 报告不严格可比)
|
|
84
|
-
- `--judge-models <executor:model[,...]>`
|
|
91
|
+
- `--judge-models <executor:model[,...]>` 显式覆盖评委配置(Codex 默认沿用被测模型,≥ 2 条 = ensemble)
|
|
85
92
|
- `--concurrency <n>` 并发数
|
|
86
93
|
- `--skip-doctor` 跳过 doctor preflight 门禁(默认 doctor 会先跑一次卡掉 skill 写法大问题)
|
|
87
94
|
- `--no-diagnostic` 关掉 diagnostic 诊断 LLM 调用(默认开启,给 failed sample 出「哪错了 + 怎么改」建议)
|
|
@@ -118,6 +125,19 @@ omk sample --batch
|
|
|
118
125
|
|
|
119
126
|
输出位置:目录 skill(`<skill>/SKILL.md`)→ `<skill>/.omk/samples.json`(标准);扁平 `.md` 单次生成 → 当前目录 `eval-samples.json`(项目级兜底);扁平 `.md` 的 `--batch` 兼容生成 `<skill-dir>/<name>.eval-samples.json`。
|
|
120
127
|
|
|
128
|
+
### 观测真实使用
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
# ChatGPT desktop / Codex CLI rollout
|
|
132
|
+
omk observe ~/.codex/sessions --last 7d
|
|
133
|
+
omk observe ingest ~/.codex/sessions
|
|
134
|
+
|
|
135
|
+
# Claude Code session
|
|
136
|
+
omk observe ~/.claude/projects/<project> --last 7d
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Codex rollout 会保留 `sourceKind=codex`、模型、父子任务、tool call 和 token 证据,并从实际读取的 `skills/<name>/SKILL.md` 归因 skill。`observe ingest` 生成待复核 observation;确认真实知识缺口后,再用 `omk sample --from-traces` 草拟评测用例。
|
|
140
|
+
|
|
121
141
|
### 体检 skill 写法
|
|
122
142
|
|
|
123
143
|
```bash
|
|
@@ -154,9 +174,9 @@ Studio 是 skill-centric:列表页(`/`)按 skill 卡片展示健康等级
|
|
|
154
174
|
|
|
155
175
|
1. **结论**:verdict 是 PROGRESS / NOISE / REGRESSION / CAUTIOUS,哪个 variant 更好
|
|
156
176
|
2. **质量分数**:各 variant 的平均综合分(0-5 分)+ Δ + 95% CI
|
|
157
|
-
3. **成本对比**:token 消耗、execCostUSD
|
|
177
|
+
3. **成本对比**:token 消耗、execCostUSD、评委花费、diagnostic 花费
|
|
158
178
|
4. **低分样本**:哪些样本两个版本差异最大,rubric 期望 vs 实际差在哪
|
|
159
|
-
5.
|
|
179
|
+
5. **下一步动作**:基于 verdict 给出动作;`PROGRESS` 时明确说明可以进入发布流程、留存报告作为发布证据,受管 skill 继续 `omk promote`;其它 verdict 给出扩样 / 修复 / 重跑建议
|
|
160
180
|
|
|
161
181
|
示例输出:
|
|
162
182
|
|
|
@@ -165,7 +185,7 @@ v2 比 v1 更好(verdict: PROGRESS,Δ=+0.7,95% CI [+0.3, +1.1]):
|
|
|
165
185
|
- 质量:v2 平均 4.5 分 vs v1 平均 3.8 分(+18%)
|
|
166
186
|
- 成本:v2 略高($0.15 vs $0.12),因为输出更详细
|
|
167
187
|
- 亮点:v2 在 s002(错误处理)上显著提升(2.5 → 4.5),因为新增了"列出所有缺失的错误处理场景"指令
|
|
168
|
-
- 建议:v2
|
|
188
|
+
- 建议:v2 可以进入发布流程;留存本次报告作为发布证据。如果这是受管 skill,继续运行 `omk promote` 记录接受决定。s003(XSS 检测)仍然可以作为下一轮优化点。
|
|
169
189
|
```
|
|
170
190
|
|
|
171
191
|
### evolve 模式
|
|
@@ -189,11 +209,11 @@ v2 比 v1 更好(verdict: PROGRESS,Δ=+0.7,95% CI [+0.3, +1.1]):
|
|
|
189
209
|
values: ["auth.ts", "login.tsx"]
|
|
190
210
|
```
|
|
191
211
|
|
|
192
|
-
`cwd` 会作为 executor
|
|
212
|
+
`cwd` 会作为 executor 的工作目录,Codex / Claude 等 agent runtime 会在该目录下运行并读取仓库代码。适用于「给一个任务 query,断言应该修改哪些文件」的 A/B 评测场景。
|
|
193
213
|
|
|
194
214
|
## 注意事项
|
|
195
215
|
|
|
196
|
-
- 评测需要调用 LLM
|
|
216
|
+
- 评测需要调用 LLM,会产生费用。能从执行器取得价格时,运行前告知用户预估成本;Codex CLI / SDK 当前不报告 USD 成本,应明确显示为「—」,不要伪装成 $0
|
|
197
217
|
- 首次使用建议先 `--dry-run` 预览任务计划
|
|
198
218
|
- `evolve` 命令会修改原始 skill 文件,原始版本保存在 `skills/evolve/*.r0.md`
|
|
199
219
|
- 详细命令参考见 [commands.md](references/commands.md)
|
|
@@ -23,13 +23,13 @@ omk doctor [target] [flags]
|
|
|
23
23
|
- `--concurrency` `option`:多次采样的并发数。默认 = --repeat(全并行,各遍相互独立,压墙钟时间)。设 1 = 串行。成本不变,只抬高瞬时并发(rate-limit 敏感时调小)。
|
|
24
24
|
- `--dimensions` `option`:自定义维度配置文件(YAML),追加到内置 7 维度之后。每条维度二选一:promptSection(走 LLM 体检)或 endpoint(POST skill 快照给接口判定)。注意:endpoint 会把 SKILL.md 全文 + 子文件发到该地址,仅对可信配置/可信地址启用。
|
|
25
25
|
- `--effort` `option`:LLM 推理 effort:low / medium / high / xhigh / max。
|
|
26
|
-
- `--executor` `option
|
|
26
|
+
- `--executor` `option`:执行器名。Codex 任务内自动用 codex;也可用 OMK_EXECUTOR 设置环境偏好。指定为测试 fixture 路径可在测试里跑。
|
|
27
27
|
- `--fix` `boolean`:交互式修复:根据 doctor 报告问题,用 LLM agent 修复 skill。
|
|
28
28
|
- `--gate` `boolean`:静默模式,只在 fail 时输出 stderr 摘要,exit code 标识结果。
|
|
29
29
|
- `--global` `boolean`:写全局 ~/.oh-my-knowledge/doctors,而非项目 .omk/doctors
|
|
30
30
|
- `--json` `boolean`:JSON 输出到 stdout,适合 CI / 外部脚本消费。
|
|
31
31
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
32
|
-
- `--model` `option`:LLM model
|
|
32
|
+
- `--model` `option`:LLM model 名。Codex 自动读取本机配置;也可用 OMK_MODEL 设置环境偏好。
|
|
33
33
|
- `--output-dir` `option`:报告输出目录,默认项目级 .omk/doctors(--global 写全局)。
|
|
34
34
|
- `--repeat` `option`:健康度体检重复采样次数(self-consistency)。默认 2:并行跑 2 遍、finding 取并集并用 LLM 聚类归并同根因、标注支持度 k/N,压低单次采样方差。设 1 = 单次快速体检(不采样、不归并,最省)。
|
|
35
35
|
- `--static-only` `boolean`:只跑静态检测(不调 LLM、不读 samples.json):skill 可读性 / frontmatter 合法性 / 正文引用的脚本·CLI·文件·env 是否存在。CI 无 LLM 凭证或断网时用。
|
|
@@ -85,11 +85,11 @@ omk eval [flags]
|
|
|
85
85
|
- `--control-cwd` `option`:control 的 runtime context 目录
|
|
86
86
|
- `--dry-run` `boolean`:只 plan 不实跑
|
|
87
87
|
- `--effort` `option`:被测 LLM 扩展思考预算 low/medium/high/xhigh/max(默认 low;跨 effort 报告不严格可比)。
|
|
88
|
-
- `--executor` `option
|
|
88
|
+
- `--executor` `option`:执行器:claude / claude-sdk / codex / codex-sdk / openai-api / gemini / 自定义命令。Codex 任务内自动用 codex;也可用 OMK_EXECUTOR 设置环境偏好。
|
|
89
89
|
- `--global` `boolean`:报告写全局 ~/.oh-my-knowledge/reports,而非项目 .omk/
|
|
90
90
|
- `--gold-dir` `option`:gold dataset 目录
|
|
91
91
|
- `--holdout-ratio` `option`:留出比例 0-1(如 0.3);切出 holdout 子集,对比 train/holdout 综合分检测过拟合
|
|
92
|
-
- `--judge-models` `option`:评委配置,格式 executor:model[,...],例 claude:haiku 或
|
|
92
|
+
- `--judge-models` `option`:评委配置,格式 executor:model[,...],例 claude:haiku 或 codex:<model>(≥ 2 个 = ensemble)。默认跟随所选执行器;Codex 沿用被测模型。
|
|
93
93
|
- `--judge-repeat` `option`:每个 dim 评 N 次
|
|
94
94
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
95
95
|
- `--layered-stats` `boolean`:输出分层统计
|
|
@@ -106,7 +106,7 @@ omk eval [flags]
|
|
|
106
106
|
- `--output-dir` `option`:报告输出目录(默认项目级 .omk/reports)
|
|
107
107
|
- `--repeat` `option`:每个 sample 重复跑 N 次
|
|
108
108
|
- `--report-only` `boolean`:生成报告并打印 verdict,但始终 exit 0(不参与 CI gate)。
|
|
109
|
-
- `--resume` `option
|
|
109
|
+
- `--resume` `option`:从契约兼容的报告恢复成功项;不兼容则从头运行
|
|
110
110
|
- `--retry` `option`:失败 sample 重试次数
|
|
111
111
|
- `--samples` `option`:用例文件路径。默认项目级 eval-samples.json,也接受 .yaml/.yml;单 treatment 时可自动发现 <skill>/.omk/。
|
|
112
112
|
- `--skill-dir` `option`:skill 目录,默认 skills
|
|
@@ -225,13 +225,13 @@ omk evolve <skillPath> [flags]
|
|
|
225
225
|
- `--concurrency` `option` (默认 `1`):评测并发数,默认 1
|
|
226
226
|
- `--edit-budget` `option` (默认 `0.2`):单轮最多改动的 skill 行占比(默认 0.2)。超预算的候选评测前直接判拒,省 eval 成本
|
|
227
227
|
- `--effort` `option`:reasoning effort: low/medium/high/xhigh/max
|
|
228
|
-
- `--executor` `option
|
|
228
|
+
- `--executor` `option`:执行器名。Codex 任务内自动用 codex;也可用 OMK_EXECUTOR 设置环境偏好。
|
|
229
229
|
- `--holdout-ratio` `option` (默认 `0`):留出验收集比例(0..1,默认 0=关)。> 0 时按 holdout 分接受候选、weak-sample 只取训练集,防 train-on-test
|
|
230
230
|
- `--improve-mode` `agent|rewrite` (默认 `agent`):改写策略(默认:agent)
|
|
231
|
-
- `--improve-model` `option
|
|
232
|
-
- `--judge-models` `option
|
|
231
|
+
- `--improve-model` `option`:负责重写 skill 的 LLM,默认沿用被测模型
|
|
232
|
+
- `--judge-models` `option`:评委 model(单评委约束),格式 executor:model。默认跟随所选执行器;Codex 沿用被测模型。
|
|
233
233
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
234
|
-
- `--model` `option
|
|
234
|
+
- `--model` `option`:被评测的 LLM。Codex 自动读取本机配置;无用例时也用作自动生成用例的出题模型。
|
|
235
235
|
- `--no-diagnostic` `boolean`:关 LLM diagnostic 调用
|
|
236
236
|
- `--no-edit-budget` `boolean`:关掉 edit budget 约束(允许任意大小的单轮改动)
|
|
237
237
|
- `--no-reject-memory` `boolean`:关掉 rejected-edit 记忆(不把被拒改法回灌下一轮 prompt)
|
|
@@ -396,7 +396,7 @@ omk list --json
|
|
|
396
396
|
|
|
397
397
|
## omk observe
|
|
398
398
|
|
|
399
|
-
|
|
399
|
+
把 Codex、Claude Code、OpenClaw 或 markdown trace 统一为 Trace IR,分析 skill 调用健康度(默认行为)。子命令:ingest / inbox / show。
|
|
400
400
|
|
|
401
401
|
**用法:**
|
|
402
402
|
|
|
@@ -406,7 +406,7 @@ omk observe [sessionsDir] [flags]
|
|
|
406
406
|
|
|
407
407
|
**参数:**
|
|
408
408
|
|
|
409
|
-
- `sessionsDir`(可选):sessions 目录路径(如 ~/.claude/
|
|
409
|
+
- `sessionsDir`(可选):sessions 目录路径(如 ~/.codex/sessions 或 ~/.claude/projects/<project>)
|
|
410
410
|
|
|
411
411
|
**Flags:**
|
|
412
412
|
|
|
@@ -422,10 +422,10 @@ omk observe [sessionsDir] [flags]
|
|
|
422
422
|
|
|
423
423
|
**示例:**
|
|
424
424
|
|
|
425
|
-
> 分析最近 7
|
|
425
|
+
> 分析最近 7 天的 Codex rollout
|
|
426
426
|
|
|
427
427
|
```bash
|
|
428
|
-
omk observe ~/.
|
|
428
|
+
omk observe ~/.codex/sessions --last 7d
|
|
429
429
|
```
|
|
430
430
|
|
|
431
431
|
## omk observe inbox
|
|
@@ -441,7 +441,7 @@ omk observe inbox [flags]
|
|
|
441
441
|
**Flags:**
|
|
442
442
|
|
|
443
443
|
- `--by-skill` `boolean`:按 skill 聚合输出
|
|
444
|
-
- `--executor` `option`:LLM
|
|
444
|
+
- `--executor` `option`:LLM 增强复盘使用的执行器。Codex 任务内自动用 codex;也可用 OMK_EXECUTOR 设置环境偏好。
|
|
445
445
|
- `--explore` `option`:抽样 N 条 medium/low 长尾(replaces limit)
|
|
446
446
|
- `--global` `boolean`:直接读取全局 ~/.oh-my-knowledge/observe-inbox(跳过项目级与兜底)。
|
|
447
447
|
- `--include-noise` `boolean`:explore 时也包含 noise 桶
|
|
@@ -450,7 +450,7 @@ omk observe inbox [flags]
|
|
|
450
450
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
451
451
|
- `--limit` `option`:限制条数,默认 20
|
|
452
452
|
- `--llm-enhanced-review` `boolean`:显式调用模型进行链路增强复盘,包含标准抽取、目标判断、类型判断、产物匹配和 owner 建议
|
|
453
|
-
- `--model` `option`:LLM
|
|
453
|
+
- `--model` `option`:LLM 增强复盘使用的模型。Codex 自动读取本机配置;也可用 OMK_MODEL 设置环境偏好。
|
|
454
454
|
- `--refresh` `boolean`:重新生成 LLM 增强复盘,不复用已有结果
|
|
455
455
|
- `--skill` `option`:只看指定 skill
|
|
456
456
|
|
|
@@ -471,6 +471,7 @@ omk observe ingest <traceDir> [flags]
|
|
|
471
471
|
**Flags:**
|
|
472
472
|
|
|
473
473
|
- `--global` `boolean`:写入全局 ~/.oh-my-knowledge/observe-inbox,而非项目 .omk/observe-inbox。
|
|
474
|
+
- `--json` `boolean`:把完整 observation inbox 报告输出到 stdout;默认只输出摘要。
|
|
474
475
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
475
476
|
- `--output-dir` `option`:输出目录,默认 .omk/observe-inbox(项目级,相对于 cwd;--global 写全局)。
|
|
476
477
|
|
|
@@ -595,12 +596,12 @@ omk sample [skillPath] [flags]
|
|
|
595
596
|
- `--append` `boolean`:在已有用例文件上追加新生成的用例(撞 sample_id 自动加后缀去重,保留原 json/yaml 格式)。仅单 skill 模式,不支持 --batch / --from-traces / --fix。不传则已有文件时报错保护。常配 --focus 补特定场景。
|
|
596
597
|
- `--batch` `boolean`:批量模式:扫 --skill-dir 下所有缺 samples 的 skill,逐个生成。
|
|
597
598
|
- `--count` `option`:生成用例条数。不传由 LLM 按 skill 类型自动决定。
|
|
598
|
-
- `--executor` `option
|
|
599
|
+
- `--executor` `option`:执行器名。Codex 任务内自动用 codex;也可用 OMK_EXECUTOR 设置环境偏好。
|
|
599
600
|
- `--fix` `boolean`:fix 模式:基于最近评测报告自动修复 sample_design 类型失败。
|
|
600
601
|
- `--focus` `option`:生成焦点(自然语言提示)。控制 LLM 偏向哪类用例。
|
|
601
602
|
- `--from-traces` `boolean`:from-traces 模式:从 observe inbox 的失败信号回流生成回归用例草稿(provenance: production-trace),落草稿待人工 review。
|
|
602
603
|
- `--lang` `option` (默认 `zh`):输出语言 zh|en,优先级 CLI > OMK_LANG env > zh。
|
|
603
|
-
- `--model` `option
|
|
604
|
+
- `--model` `option`:生成 LLM model 名。Codex 自动读取本机配置;也可用 OMK_MODEL 设置环境偏好。
|
|
604
605
|
- `--no-mock` `boolean`:不生成 mocks,eval 时所有工具调用真实执行。
|
|
605
606
|
- `--observations-dir` `option`:observe inbox 目录(from-traces 模式用),默认项目 .omk/observe-inbox。
|
|
606
607
|
- `--reports-dir` `option`:报告目录(fix 模式用),默认 ~/.oh-my-knowledge/reports。
|
|
@@ -15,6 +15,7 @@ interface WeakSample {
|
|
|
15
15
|
none?: string;
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
+
export declare function singleVariantReport(report: Report, variantKey: string): Report;
|
|
18
19
|
export declare function extractWeakSamples(report: Report, variantKey: string, count?: number, sampleIdFilter?: Set<string>): WeakSample[];
|
|
19
20
|
/** A train / val / test partition. `val` drives the accept decision; `test` is
|
|
20
21
|
* locked — never seen during the loop, read once at the end for an unbiased
|
|
@@ -78,6 +79,7 @@ export declare function decideAccept(bestScores: number[], candScores: number[],
|
|
|
78
79
|
*/
|
|
79
80
|
export declare function restrictReportToSamples(report: Report, sampleIds: Set<string>): Report;
|
|
80
81
|
export declare function allNonTripwireAssertionsPass(report: Report, variantKey: string): boolean;
|
|
82
|
+
export declare function agentSampleEditWithinScope(previous: Sample, next: Sample): boolean;
|
|
81
83
|
interface EditDelta {
|
|
82
84
|
/** Symmetric line difference (added + removed unique lines) over original line count. */
|
|
83
85
|
ratio: number;
|
|
@@ -114,7 +116,7 @@ export interface EvolveRoundProgressInfo {
|
|
|
114
116
|
* explain an otherwise-confusing `(+0.0x) ✗ REJECT`. Undefined = gate didn't run. */
|
|
115
117
|
significant?: boolean;
|
|
116
118
|
}
|
|
117
|
-
interface EvolveOptions {
|
|
119
|
+
export interface EvolveOptions {
|
|
118
120
|
skillPath: string;
|
|
119
121
|
samplesPath: string;
|
|
120
122
|
rounds?: number;
|
|
@@ -123,15 +125,17 @@ interface EvolveOptions {
|
|
|
123
125
|
autoFixSamples?: boolean;
|
|
124
126
|
sampleFixMaxAttempts?: number;
|
|
125
127
|
reuseLatestEval?: boolean;
|
|
126
|
-
|
|
128
|
+
/** Explicit measured runtime. Provider defaults belong to the CLI boundary. */
|
|
129
|
+
model: string;
|
|
127
130
|
/** Single-judge config. evolve 不支持 ensemble — CLI 在 length>=2 时 exit 2,
|
|
128
|
-
* programmatic API 在 evolveSkill 入口同样 throw
|
|
129
|
-
*
|
|
131
|
+
* programmatic API 在 evolveSkill 入口同样 throw,二者一致。缺省时复用
|
|
132
|
+
* 被测 executor/model;CLI 会在调用前解析 provider-specific 默认值。 */
|
|
130
133
|
judgeModels?: JudgeConfig[];
|
|
131
134
|
improveModel?: string;
|
|
132
135
|
/** 改写策略。'agent' 用 agent 工具增量 Edit;'rewrite' 用单次 LLM 输出全文。默认 'agent'。 */
|
|
133
136
|
improveMode?: 'agent' | 'rewrite';
|
|
134
|
-
|
|
137
|
+
/** Explicit measured executor. Provider defaults belong to the CLI boundary. */
|
|
138
|
+
executorName: string;
|
|
135
139
|
concurrency?: number;
|
|
136
140
|
timeoutMs?: number;
|
|
137
141
|
skipConnectivity?: boolean;
|
|
@@ -254,6 +258,6 @@ export interface RoundReport {
|
|
|
254
258
|
accepted: boolean;
|
|
255
259
|
report: Report;
|
|
256
260
|
}
|
|
257
|
-
export declare function mergeEvolveReports(roundReports: RoundReport[], skillName: string,
|
|
261
|
+
export declare function mergeEvolveReports(roundReports: RoundReport[], skillName: string, processCostUSD: number, samples?: Sample[], skillPath?: string, processCostReported?: boolean): Report;
|
|
258
262
|
export declare function evolveSkill({ skillPath, samplesPath, rounds, target, stopOnAssertionsPass, autoFixSamples, sampleFixMaxAttempts, reuseLatestEval, model, judgeModels, improveModel, improveMode, executorName, concurrency, timeoutMs, skipConnectivity, effort, noDiagnostic, skipDoctor, holdoutRatio, significanceGate, significanceAlpha, testRatio, editBudget, rejectMemory, writeBackToSource, onProgress, onRoundProgress, }: EvolveOptions): Promise<EvolveResult>;
|
|
259
263
|
export {};
|