oh-my-knowledge 0.23.0 → 0.25.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.
Files changed (196) hide show
  1. package/README.md +146 -84
  2. package/README.zh.md +144 -83
  3. package/dist/src/analysis/report-diagnostics.d.ts +3 -2
  4. package/dist/src/analysis/report-diagnostics.d.ts.map +1 -1
  5. package/dist/src/analysis/report-diagnostics.js +107 -80
  6. package/dist/src/analysis/report-diagnostics.js.map +1 -1
  7. package/dist/src/analysis/sample-diagnostics.d.ts +4 -1
  8. package/dist/src/analysis/sample-diagnostics.d.ts.map +1 -1
  9. package/dist/src/analysis/sample-diagnostics.js +123 -29
  10. package/dist/src/analysis/sample-diagnostics.js.map +1 -1
  11. package/dist/src/analysis/saturation.d.ts +2 -2
  12. package/dist/src/analysis/saturation.js +2 -2
  13. package/dist/src/authoring/evolver.d.ts +12 -4
  14. package/dist/src/authoring/evolver.d.ts.map +1 -1
  15. package/dist/src/authoring/evolver.js +35 -10
  16. package/dist/src/authoring/evolver.js.map +1 -1
  17. package/dist/src/cli/i18n-dict.d.ts +1 -1
  18. package/dist/src/cli/i18n-dict.d.ts.map +1 -1
  19. package/dist/src/cli/i18n-dict.js +241 -64
  20. package/dist/src/cli/i18n-dict.js.map +1 -1
  21. package/dist/src/cli/index.js +267 -152
  22. package/dist/src/cli/index.js.map +1 -1
  23. package/dist/src/cli/parse-run-config.d.ts +32 -9
  24. package/dist/src/cli/parse-run-config.d.ts.map +1 -1
  25. package/dist/src/cli/parse-run-config.js +80 -25
  26. package/dist/src/cli/parse-run-config.js.map +1 -1
  27. package/dist/src/cli/parse-strict.d.ts +20 -0
  28. package/dist/src/cli/parse-strict.d.ts.map +1 -0
  29. package/dist/src/cli/parse-strict.js +25 -0
  30. package/dist/src/cli/parse-strict.js.map +1 -0
  31. package/dist/src/cli/progress.d.ts +1 -0
  32. package/dist/src/cli/progress.d.ts.map +1 -1
  33. package/dist/src/cli/progress.js +8 -1
  34. package/dist/src/cli/progress.js.map +1 -1
  35. package/dist/src/doctor/index.d.ts +19 -0
  36. package/dist/src/doctor/index.d.ts.map +1 -0
  37. package/dist/src/doctor/index.js +182 -0
  38. package/dist/src/doctor/index.js.map +1 -0
  39. package/dist/src/doctor/preflight.d.ts +32 -0
  40. package/dist/src/doctor/preflight.d.ts.map +1 -0
  41. package/dist/src/doctor/preflight.js +32 -0
  42. package/dist/src/doctor/preflight.js.map +1 -0
  43. package/dist/src/doctor/renderer.d.ts +13 -0
  44. package/dist/src/doctor/renderer.d.ts.map +1 -0
  45. package/dist/src/doctor/renderer.js +69 -0
  46. package/dist/src/doctor/renderer.js.map +1 -0
  47. package/dist/src/doctor/rules.d.ts +30 -0
  48. package/dist/src/doctor/rules.d.ts.map +1 -0
  49. package/dist/src/doctor/rules.js +216 -0
  50. package/dist/src/doctor/rules.js.map +1 -0
  51. package/dist/src/eval-core/bootstrap.d.ts +1 -1
  52. package/dist/src/eval-core/bootstrap.js +1 -1
  53. package/dist/src/eval-core/cache.d.ts +7 -5
  54. package/dist/src/eval-core/cache.d.ts.map +1 -1
  55. package/dist/src/eval-core/cache.js +11 -7
  56. package/dist/src/eval-core/cache.js.map +1 -1
  57. package/dist/src/eval-core/comparability.d.ts +11 -0
  58. package/dist/src/eval-core/comparability.d.ts.map +1 -0
  59. package/dist/src/eval-core/comparability.js +296 -0
  60. package/dist/src/eval-core/comparability.js.map +1 -0
  61. package/dist/src/eval-core/dependency-checker.js +1 -1
  62. package/dist/src/eval-core/dependency-checker.js.map +1 -1
  63. package/dist/src/eval-core/evaluation-execution.d.ts +23 -7
  64. package/dist/src/eval-core/evaluation-execution.d.ts.map +1 -1
  65. package/dist/src/eval-core/evaluation-execution.js +53 -21
  66. package/dist/src/eval-core/evaluation-execution.js.map +1 -1
  67. package/dist/src/eval-core/evaluation-job.d.ts +3 -5
  68. package/dist/src/eval-core/evaluation-job.d.ts.map +1 -1
  69. package/dist/src/eval-core/evaluation-job.js +2 -4
  70. package/dist/src/eval-core/evaluation-job.js.map +1 -1
  71. package/dist/src/eval-core/evaluation-reporting.d.ts +3 -1
  72. package/dist/src/eval-core/evaluation-reporting.d.ts.map +1 -1
  73. package/dist/src/eval-core/evaluation-reporting.js +67 -9
  74. package/dist/src/eval-core/evaluation-reporting.js.map +1 -1
  75. package/dist/src/eval-core/execution-strategy.js +2 -2
  76. package/dist/src/eval-core/execution-strategy.js.map +1 -1
  77. package/dist/src/eval-core/schema.d.ts.map +1 -1
  78. package/dist/src/eval-core/schema.js +20 -2
  79. package/dist/src/eval-core/schema.js.map +1 -1
  80. package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts +113 -0
  81. package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts.map +1 -0
  82. package/dist/src/eval-workflows/batch-evaluation-workflow.js +217 -0
  83. package/dist/src/eval-workflows/batch-evaluation-workflow.js.map +1 -0
  84. package/dist/src/eval-workflows/evaluation-pipeline.d.ts +6 -4
  85. package/dist/src/eval-workflows/evaluation-pipeline.d.ts.map +1 -1
  86. package/dist/src/eval-workflows/evaluation-pipeline.js +44 -38
  87. package/dist/src/eval-workflows/evaluation-pipeline.js.map +1 -1
  88. package/dist/src/eval-workflows/evaluation-preparation.d.ts +4 -17
  89. package/dist/src/eval-workflows/evaluation-preparation.d.ts.map +1 -1
  90. package/dist/src/eval-workflows/evaluation-preparation.js +3 -18
  91. package/dist/src/eval-workflows/evaluation-preparation.js.map +1 -1
  92. package/dist/src/eval-workflows/run-evaluation.d.ts +27 -23
  93. package/dist/src/eval-workflows/run-evaluation.d.ts.map +1 -1
  94. package/dist/src/eval-workflows/run-evaluation.js +137 -20
  95. package/dist/src/eval-workflows/run-evaluation.js.map +1 -1
  96. package/dist/src/executors/claude-cli.d.ts.map +1 -1
  97. package/dist/src/executors/claude-cli.js +11 -6
  98. package/dist/src/executors/claude-cli.js.map +1 -1
  99. package/dist/src/executors/codex-cli-trace.d.ts +10 -0
  100. package/dist/src/executors/codex-cli-trace.d.ts.map +1 -0
  101. package/dist/src/executors/codex-cli-trace.js +123 -0
  102. package/dist/src/executors/codex-cli-trace.js.map +1 -0
  103. package/dist/src/executors/codex-cli.d.ts +18 -0
  104. package/dist/src/executors/codex-cli.d.ts.map +1 -0
  105. package/dist/src/executors/codex-cli.js +254 -0
  106. package/dist/src/executors/codex-cli.js.map +1 -0
  107. package/dist/src/executors/codex-sdk.d.ts +18 -0
  108. package/dist/src/executors/codex-sdk.d.ts.map +1 -0
  109. package/dist/src/executors/codex-sdk.js +214 -0
  110. package/dist/src/executors/codex-sdk.js.map +1 -0
  111. package/dist/src/executors/gemini.d.ts.map +1 -1
  112. package/dist/src/executors/gemini.js +28 -24
  113. package/dist/src/executors/gemini.js.map +1 -1
  114. package/dist/src/executors/index.d.ts.map +1 -1
  115. package/dist/src/executors/index.js +7 -2
  116. package/dist/src/executors/index.js.map +1 -1
  117. package/dist/src/executors/runtime-fingerprint.d.ts +7 -0
  118. package/dist/src/executors/runtime-fingerprint.d.ts.map +1 -0
  119. package/dist/src/executors/runtime-fingerprint.js +277 -0
  120. package/dist/src/executors/runtime-fingerprint.js.map +1 -0
  121. package/dist/src/executors/script.d.ts.map +1 -1
  122. package/dist/src/executors/script.js +47 -55
  123. package/dist/src/executors/script.js.map +1 -1
  124. package/dist/src/executors/shared.d.ts +78 -1
  125. package/dist/src/executors/shared.d.ts.map +1 -1
  126. package/dist/src/executors/shared.js +203 -1
  127. package/dist/src/executors/shared.js.map +1 -1
  128. package/dist/src/grading/assertions.d.ts.map +1 -1
  129. package/dist/src/grading/assertions.js +22 -7
  130. package/dist/src/grading/assertions.js.map +1 -1
  131. package/dist/src/grading/gold-cli.js +4 -4
  132. package/dist/src/grading/gold-cli.js.map +1 -1
  133. package/dist/src/grading/human-gold.d.ts +1 -1
  134. package/dist/src/grading/human-gold.js +1 -1
  135. package/dist/src/grading/index.d.ts +20 -15
  136. package/dist/src/grading/index.d.ts.map +1 -1
  137. package/dist/src/grading/index.js +40 -16
  138. package/dist/src/grading/index.js.map +1 -1
  139. package/dist/src/grading/judge.d.ts +1 -1
  140. package/dist/src/grading/judge.d.ts.map +1 -1
  141. package/dist/src/grading/judge.js +76 -7
  142. package/dist/src/grading/judge.js.map +1 -1
  143. package/dist/src/inputs/eval-config.js +65 -7
  144. package/dist/src/inputs/eval-config.js.map +1 -1
  145. package/dist/src/inputs/skill-loader.d.ts +1 -1
  146. package/dist/src/inputs/skill-loader.d.ts.map +1 -1
  147. package/dist/src/inputs/skill-loader.js +1 -1
  148. package/dist/src/inputs/skill-loader.js.map +1 -1
  149. package/dist/src/renderer/html-renderer.d.ts +5 -4
  150. package/dist/src/renderer/html-renderer.d.ts.map +1 -1
  151. package/dist/src/renderer/html-renderer.js +240 -96
  152. package/dist/src/renderer/html-renderer.js.map +1 -1
  153. package/dist/src/renderer/layout.d.ts +2 -1
  154. package/dist/src/renderer/layout.d.ts.map +1 -1
  155. package/dist/src/renderer/layout.js +30 -42
  156. package/dist/src/renderer/layout.js.map +1 -1
  157. package/dist/src/renderer/summary.d.ts +3 -3
  158. package/dist/src/renderer/summary.d.ts.map +1 -1
  159. package/dist/src/renderer/summary.js +233 -43
  160. package/dist/src/renderer/summary.js.map +1 -1
  161. package/dist/src/renderer/trends.d.ts.map +1 -1
  162. package/dist/src/renderer/trends.js +5 -3
  163. package/dist/src/renderer/trends.js.map +1 -1
  164. package/dist/src/server/report-server.js +4 -4
  165. package/dist/src/server/report-server.js.map +1 -1
  166. package/dist/src/server/report-store.d.ts +7 -5
  167. package/dist/src/server/report-store.d.ts.map +1 -1
  168. package/dist/src/server/report-store.js +39 -11
  169. package/dist/src/server/report-store.js.map +1 -1
  170. package/dist/src/types/doctor.d.ts +95 -0
  171. package/dist/src/types/doctor.d.ts.map +1 -0
  172. package/dist/src/types/doctor.js +2 -0
  173. package/dist/src/types/doctor.js.map +1 -0
  174. package/dist/src/types/eval.d.ts +40 -19
  175. package/dist/src/types/eval.d.ts.map +1 -1
  176. package/dist/src/types/executor.d.ts +38 -0
  177. package/dist/src/types/executor.d.ts.map +1 -1
  178. package/dist/src/types/index.d.ts +1 -0
  179. package/dist/src/types/index.d.ts.map +1 -1
  180. package/dist/src/types/index.js +1 -0
  181. package/dist/src/types/index.js.map +1 -1
  182. package/dist/src/types/judge.d.ts +21 -0
  183. package/dist/src/types/judge.d.ts.map +1 -1
  184. package/dist/src/types/report.d.ts +100 -35
  185. package/dist/src/types/report.d.ts.map +1 -1
  186. package/dist/src/types/storage.d.ts +7 -7
  187. package/dist/src/types/storage.d.ts.map +1 -1
  188. package/package.json +6 -5
  189. package/dist/src/eval-workflows/each-evaluation-workflow.d.ts +0 -153
  190. package/dist/src/eval-workflows/each-evaluation-workflow.d.ts.map +0 -1
  191. package/dist/src/eval-workflows/each-evaluation-workflow.js +0 -178
  192. package/dist/src/eval-workflows/each-evaluation-workflow.js.map +0 -1
  193. package/dist/src/executors/openai-cli.d.ts +0 -3
  194. package/dist/src/executors/openai-cli.d.ts.map +0 -1
  195. package/dist/src/executors/openai-cli.js +0 -60
  196. package/dist/src/executors/openai-cli.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"evolver.js","sourceRoot":"","sources":["../../../src/authoring/evolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evolver.js","sourceRoot":"","sources":["../../../src/authoring/evolver.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@
47
47
  * 未来扩 Lang (zh-TW / ja / ko ...): 改 src/types/shared.ts 的 Lang union,
48
48
  * Record 类型自动强制每 key 加新语言版本。
49
49
  */
50
- export type CliMessageKey = 'cli.common.lang_invalid_silent' | 'cli.common.help_hint' | 'cli.common.unknown_domain' | 'cli.common.unknown_bench_command' | 'cli.init.scaffolded' | 'cli.init.next_steps_title' | 'cli.init.next_step_edit_samples' | 'cli.init.next_step_edit_skills' | 'cli.init.next_step_run' | 'cli.update.new_version_available' | 'cli.progress.preflight_starting' | 'cli.progress.sample_retry' | 'cli.progress.sample_error' | 'cli.progress.sample_executing' | 'cli.progress.sample_exec_done' | 'cli.progress.output_preview' | 'cli.progress.judging' | 'cli.progress.judged' | 'cli.progress.skipped' | 'cli.progress.sample_done' | 'cli.run.invalid_repeat' | 'cli.run.invalid_judge_repeat' | 'cli.run.invalid_judge_models_format' | 'cli.run.judge_models_single_warning' | 'cli.run.no_debias_length_active' | 'cli.run.invalid_bootstrap_samples' | 'cli.run.bootstrap_samples_too_large' | 'cli.run.skill_section' | 'cli.run.run_section' | 'cli.run.batch_complete' | 'cli.run.eval_complete' | 'cli.run.report_saved' | 'cli.run.report_server_running' | 'cli.run.report_server_view' | 'cli.run.report_server_stop' | 'cli.run.no_serve_in_non_tty' | 'cli.run.no_serve_view_hint' | 'cli.run.gold_load_failed' | 'cli.run.gold_load_issue' | 'cli.run.contamination_warning' | 'cli.common.error_prefix' | 'cli.analyze.view_in_browser' | 'cli.common.skill_dir_not_found' | 'cli.common.skill_file_not_found' | 'cli.common.report_not_found' | 'cli.common.no_judge_model' | 'cli.common.usage_gold_validate' | 'cli.common.warn_load_samples_failed' | 'cli.gen.skill_skipped_existing' | 'cli.gen.skill_generating' | 'cli.gen.skill_done' | 'cli.gen.skill_failed' | 'cli.gen.batch_none_needed' | 'cli.gen.batch_summary' | 'cli.gen.specify_skill_path' | 'cli.gen.samples_already_exists' | 'cli.gen.single_generating' | 'cli.gen.single_done' | 'cli.gen.review_hint' | 'cli.gen.failed' | 'cli.evolve.specify_skill_path' | 'cli.evolve.section_header' | 'cli.evolve.round_baseline' | 'cli.evolve.round_error' | 'cli.evolve.round_done' | 'cli.evolve.summary' | 'cli.evolve.best_path' | 'cli.evolve.versions_saved' | 'cli.evolve.report_link' | 'cli.gold.created_files' | 'cli.gold.next_step_edit_annotations' | 'cli.gold.validate_ok' | 'cli.debias.warn_cost_doubles' | 'cli.saturation.no_data' | 'cli.saturation.verdict_header' | 'cli.saturation.variant_no_trace' | 'cli.saturation.variant_label' | 'cli.saturation.checkpoints' | 'cli.saturation.last_point' | 'cli.saturation.persisted_verdict' | 'cli.saturation.persisted_verdict_saturated' | 'cli.saturation.persisted_verdict_unsaturated' | 'cli.saturation.skipped_too_few_points' | 'cli.help.main' | 'cli.help.diff_usage' | 'cli.help.analyze_usage' | 'cli.help.gold' | 'cli.help.debias_validate' | 'cli.help.saturation' | 'cli.help.verdict' | 'cli.help.diagnose' | 'cli.help.failures' | 'cli.diagnose.coverage_header' | 'cli.diagnose.coverage_unspecified' | 'cli.diagnose.coverage_chars' | 'cli.diagnose.coverage_hint_empty' | 'cli.diagnose.coverage_declared';
50
+ export type CliMessageKey = 'cli.common.lang_invalid_silent' | 'cli.common.help_hint' | 'cli.common.unknown_domain' | 'cli.common.unknown_bench_command' | 'cli.init.scaffolded' | 'cli.init.next_steps_title' | 'cli.init.next_step_edit_samples' | 'cli.init.next_step_edit_skills' | 'cli.init.next_step_run' | 'cli.update.new_version_available' | 'cli.progress.preflight_starting' | 'cli.progress.sample_retry' | 'cli.progress.sample_error' | 'cli.progress.sample_executing' | 'cli.progress.sample_exec_done' | 'cli.progress.output_preview' | 'cli.progress.judging' | 'cli.progress.judged' | 'cli.progress.skipped' | 'cli.progress.sample_done' | 'cli.progress.sample_failed_done' | 'cli.run.invalid_repeat' | 'cli.run.invalid_judge_repeat' | 'cli.run.no_debias_length_active' | 'cli.run.invalid_bootstrap_samples' | 'cli.run.bootstrap_samples_too_large' | 'cli.run.skill_section' | 'cli.run.run_section' | 'cli.run.batch_complete' | 'cli.run.eval_complete' | 'cli.run.report_saved' | 'cli.run.report_server_running' | 'cli.run.report_server_view' | 'cli.run.report_server_stop' | 'cli.run.no_serve_in_non_tty' | 'cli.run.no_serve_view_hint' | 'cli.run.gold_load_failed' | 'cli.run.gold_load_issue' | 'cli.run.contamination_warning' | 'cli.common.error_prefix' | 'cli.analyze.view_in_browser' | 'cli.common.skill_dir_not_found' | 'cli.common.skill_file_not_found' | 'cli.common.report_not_found' | 'cli.common.no_judge_model' | 'cli.common.judge_models_single_only' | 'cli.common.usage_gold_validate' | 'cli.common.warn_load_samples_failed' | 'cli.gen.skill_skipped_existing' | 'cli.gen.skill_generating' | 'cli.gen.skill_done' | 'cli.gen.skill_failed' | 'cli.gen.batch_none_needed' | 'cli.gen.batch_summary' | 'cli.gen.specify_skill_path' | 'cli.gen.samples_already_exists' | 'cli.gen.single_generating' | 'cli.gen.single_done' | 'cli.gen.review_hint' | 'cli.gen.failed' | 'cli.evolve.specify_skill_path' | 'cli.evolve.section_header' | 'cli.evolve.round_baseline' | 'cli.evolve.round_error' | 'cli.evolve.round_done' | 'cli.evolve.summary' | 'cli.evolve.best_path' | 'cli.evolve.versions_saved' | 'cli.evolve.report_link' | 'cli.gold.created_files' | 'cli.gold.next_step_edit_annotations' | 'cli.gold.validate_ok' | 'cli.debias.warn_cost_doubles' | 'cli.saturation.no_data' | 'cli.saturation.verdict_header' | 'cli.saturation.variant_no_trace' | 'cli.saturation.variant_label' | 'cli.saturation.checkpoints' | 'cli.saturation.last_point' | 'cli.saturation.persisted_verdict' | 'cli.saturation.persisted_verdict_saturated' | 'cli.saturation.persisted_verdict_unsaturated' | 'cli.saturation.skipped_too_few_points' | 'cli.help.main' | 'cli.help.diff_usage' | 'cli.help.analyze_usage' | 'cli.help.gold' | 'cli.help.debias_validate' | 'cli.help.saturation' | 'cli.help.verdict' | 'cli.help.diagnose' | 'cli.help.failures' | 'cli.diagnose.coverage_header' | 'cli.diagnose.coverage_unspecified' | 'cli.diagnose.coverage_chars' | 'cli.diagnose.coverage_hint_empty' | 'cli.diagnose.coverage_declared' | 'cli.doctor.rule.skill_readable' | 'cli.doctor.rule.skill_metadata' | 'cli.doctor.rule.dependencies' | 'cli.doctor.rule.samples_contract' | 'cli.doctor.skill_readable.pass' | 'cli.doctor.skill_metadata.pass' | 'cli.doctor.dependencies.pass' | 'cli.doctor.samples_contract.pass' | 'cli.doctor.skill_readable.fail.missing' | 'cli.doctor.skill_readable.fail.empty' | 'cli.doctor.skill_readable.fail.too_short' | 'cli.doctor.skill_readable.hint.missing' | 'cli.doctor.skill_readable.hint.too_short' | 'cli.doctor.skill_metadata.fail.frontmatter_invalid' | 'cli.doctor.skill_metadata.fail.missing_skillmd' | 'cli.doctor.skill_metadata.hint.frontmatter' | 'cli.doctor.skill_metadata.hint.missing_skillmd' | 'cli.doctor.dependencies.fail' | 'cli.doctor.dependencies.hint' | 'cli.doctor.samples_contract.skipped' | 'cli.doctor.samples_contract.warn.empty' | 'cli.doctor.samples_contract.warn.missing_prompt' | 'cli.doctor.samples_contract.hint' | 'cli.help.doctor_usage' | 'cli.doctor.no_skill_found' | 'cli.doctor.gate_blocked' | 'cli.run.skip_connectivity_warning';
51
51
  export interface CliMessage {
52
52
  zh: string;
53
53
  en: string;
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-dict.d.ts","sourceRoot":"","sources":["../../../src/cli/i18n-dict.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,MAAM,MAAM,aAAa,GAErB,gCAAgC,GAChC,sBAAsB,GACtB,2BAA2B,GAC3B,kCAAkC,GAElC,qBAAqB,GACrB,2BAA2B,GAC3B,iCAAiC,GACjC,gCAAgC,GAChC,wBAAwB,GAExB,kCAAkC,GAElC,iCAAiC,GACjC,2BAA2B,GAC3B,2BAA2B,GAC3B,+BAA+B,GAC/B,+BAA+B,GAC/B,6BAA6B,GAC7B,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,0BAA0B,GAE1B,wBAAwB,GACxB,8BAA8B,GAC9B,qCAAqC,GACrC,qCAAqC,GACrC,iCAAiC,GACjC,mCAAmC,GACnC,qCAAqC,GAErC,uBAAuB,GACvB,qBAAqB,GACrB,wBAAwB,GACxB,uBAAuB,GACvB,sBAAsB,GACtB,+BAA+B,GAC/B,4BAA4B,GAC5B,4BAA4B,GAC5B,6BAA6B,GAC7B,4BAA4B,GAC5B,0BAA0B,GAC1B,yBAAyB,GACzB,+BAA+B,GAC/B,yBAAyB,GAEzB,6BAA6B,GAE7B,gCAAgC,GAChC,iCAAiC,GACjC,6BAA6B,GAC7B,2BAA2B,GAC3B,gCAAgC,GAChC,qCAAqC,GAErC,gCAAgC,GAChC,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,uBAAuB,GACvB,4BAA4B,GAC5B,gCAAgC,GAChC,2BAA2B,GAC3B,qBAAqB,GACrB,qBAAqB,GACrB,gBAAgB,GAEhB,+BAA+B,GAC/B,2BAA2B,GAC3B,2BAA2B,GAC3B,wBAAwB,GACxB,uBAAuB,GACvB,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,wBAAwB,GAExB,wBAAwB,GACxB,qCAAqC,GACrC,sBAAsB,GAEtB,8BAA8B,GAE9B,wBAAwB,GACxB,+BAA+B,GAC/B,iCAAiC,GACjC,8BAA8B,GAC9B,4BAA4B,GAC5B,2BAA2B,GAC3B,kCAAkC,GAClC,4CAA4C,GAC5C,8CAA8C,GAC9C,uCAAuC,GAEvC,eAAe,GACf,qBAAqB,GACrB,wBAAwB,GACxB,eAAe,GACf,0BAA0B,GAC1B,qBAAqB,GACrB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GAEnB,8BAA8B,GAC9B,mCAAmC,GACnC,6BAA6B,GAC7B,kCAAkC,GAClC,gCAAgC,CAAC;AAErC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,CAq4BtD,CAAC"}
1
+ {"version":3,"file":"i18n-dict.d.ts","sourceRoot":"","sources":["../../../src/cli/i18n-dict.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,MAAM,MAAM,aAAa,GAErB,gCAAgC,GAChC,sBAAsB,GACtB,2BAA2B,GAC3B,kCAAkC,GAElC,qBAAqB,GACrB,2BAA2B,GAC3B,iCAAiC,GACjC,gCAAgC,GAChC,wBAAwB,GAExB,kCAAkC,GAElC,iCAAiC,GACjC,2BAA2B,GAC3B,2BAA2B,GAC3B,+BAA+B,GAC/B,+BAA+B,GAC/B,6BAA6B,GAC7B,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,0BAA0B,GAC1B,iCAAiC,GAEjC,wBAAwB,GACxB,8BAA8B,GAC9B,iCAAiC,GACjC,mCAAmC,GACnC,qCAAqC,GAErC,uBAAuB,GACvB,qBAAqB,GACrB,wBAAwB,GACxB,uBAAuB,GACvB,sBAAsB,GACtB,+BAA+B,GAC/B,4BAA4B,GAC5B,4BAA4B,GAC5B,6BAA6B,GAC7B,4BAA4B,GAC5B,0BAA0B,GAC1B,yBAAyB,GACzB,+BAA+B,GAC/B,yBAAyB,GAEzB,6BAA6B,GAE7B,gCAAgC,GAChC,iCAAiC,GACjC,6BAA6B,GAC7B,2BAA2B,GAC3B,qCAAqC,GACrC,gCAAgC,GAChC,qCAAqC,GAErC,gCAAgC,GAChC,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,uBAAuB,GACvB,4BAA4B,GAC5B,gCAAgC,GAChC,2BAA2B,GAC3B,qBAAqB,GACrB,qBAAqB,GACrB,gBAAgB,GAEhB,+BAA+B,GAC/B,2BAA2B,GAC3B,2BAA2B,GAC3B,wBAAwB,GACxB,uBAAuB,GACvB,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,wBAAwB,GAExB,wBAAwB,GACxB,qCAAqC,GACrC,sBAAsB,GAEtB,8BAA8B,GAE9B,wBAAwB,GACxB,+BAA+B,GAC/B,iCAAiC,GACjC,8BAA8B,GAC9B,4BAA4B,GAC5B,2BAA2B,GAC3B,kCAAkC,GAClC,4CAA4C,GAC5C,8CAA8C,GAC9C,uCAAuC,GAEvC,eAAe,GACf,qBAAqB,GACrB,wBAAwB,GACxB,eAAe,GACf,0BAA0B,GAC1B,qBAAqB,GACrB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GAEnB,8BAA8B,GAC9B,mCAAmC,GACnC,6BAA6B,GAC7B,kCAAkC,GAClC,gCAAgC,GAEhC,gCAAgC,GAChC,gCAAgC,GAChC,8BAA8B,GAC9B,kCAAkC,GAElC,gCAAgC,GAChC,gCAAgC,GAChC,8BAA8B,GAC9B,kCAAkC,GAElC,wCAAwC,GACxC,sCAAsC,GACtC,0CAA0C,GAC1C,wCAAwC,GACxC,0CAA0C,GAE1C,oDAAoD,GACpD,gDAAgD,GAChD,4CAA4C,GAC5C,gDAAgD,GAEhD,8BAA8B,GAC9B,8BAA8B,GAE9B,qCAAqC,GACrC,wCAAwC,GACxC,iDAAiD,GACjD,kCAAkC,GAElC,uBAAuB,GACvB,2BAA2B,GAC3B,yBAAyB,GACzB,mCAAmC,CAAC;AAExC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,CAsjCtD,CAAC"}
@@ -57,8 +57,8 @@ export const CLI_DICT = {
57
57
  en: "Run 'omk --help' to see usage",
58
58
  },
59
59
  'cli.common.unknown_domain': {
60
- zh: "未知顶层命令: {domain} (请用 'omk bench <command>' 或 'omk analyze <dir>')",
61
- en: "Unknown domain: {domain} (use 'omk bench <command>' or 'omk analyze <dir>')",
60
+ zh: "未知顶层命令: {domain} (请用 'omk bench <command>'、'omk doctor [path]' 或 'omk analyze <dir>')",
61
+ en: "Unknown domain: {domain} (use 'omk bench <command>', 'omk doctor [path]' or 'omk analyze <dir>')",
62
62
  },
63
63
  'cli.common.unknown_bench_command': {
64
64
  zh: "未知子命令: bench {command} (运行 'omk --help' 查看可用列表)",
@@ -128,6 +128,10 @@ export const CLI_DICT = {
128
128
  zh: '[{i}/{n}] {sample}/{variant} ✓ {ms}ms {input}+{output} tokens{cost}{score}\n',
129
129
  en: '[{i}/{n}] {sample}/{variant} ✓ {ms}ms {input}+{output} tokens{cost}{score}\n',
130
130
  },
131
+ 'cli.progress.sample_failed_done': {
132
+ zh: '[{i}/{n}] {sample}/{variant} ✗ {ms}ms {input}+{output} tokens{cost} error={error}\n',
133
+ en: '[{i}/{n}] {sample}/{variant} ✗ {ms}ms {input}+{output} tokens{cost} error={error}\n',
134
+ },
131
135
  'cli.run.invalid_repeat': {
132
136
  zh: '⚠ --repeat "{value}" 无效 (期望 ≥ 1 的整数), 已按 1 次评测执行\n',
133
137
  en: '⚠ --repeat "{value}" is invalid (expected an integer ≥ 1), falling back to 1 run\n',
@@ -136,14 +140,6 @@ export const CLI_DICT = {
136
140
  zh: '⚠ --judge-repeat "{value}" 无效 (期望 ≥ 1 的整数), 已按 1 次 judge 执行\n',
137
141
  en: '⚠ --judge-repeat "{value}" is invalid (expected an integer ≥ 1), falling back to 1 judge call\n',
138
142
  },
139
- 'cli.run.invalid_judge_models_format': {
140
- zh: '--judge-models 格式错误: "{part}", 应为 "executor:model" (例如 claude:opus)',
141
- en: '--judge-models format error: "{part}", expected "executor:model" (e.g. claude:opus)',
142
- },
143
- 'cli.run.judge_models_single_warning': {
144
- zh: 'ℹ --judge-models 只指定了 1 个 judge ({executor}:{model}), 不会进入 ensemble 模式。如需 ensemble, 至少配 2 个。\n',
145
- en: 'ℹ --judge-models specified only 1 judge ({executor}:{model}); ensemble not triggered. Configure at least 2 for ensemble mode.\n',
146
- },
147
143
  'cli.run.no_debias_length_active': {
148
144
  zh: 'ℹ --no-debias-length 已生效: judge prompt 退回 v2-cot, 与 < v0.21 报告 hash 一致。\n',
149
145
  en: 'ℹ --no-debias-length is active: judge prompt reverts to v2-cot, matching < v0.21 report hashes.\n',
@@ -229,8 +225,12 @@ export const CLI_DICT = {
229
225
  en: 'Report not found: {id}',
230
226
  },
231
227
  'cli.common.no_judge_model': {
232
- zh: '未指定评委模型。请加 --judge-model <id>, 或确保 report.meta.judgeModel 已写。',
233
- en: 'No judge model. Pass --judge-model <id> or ensure report has meta.judgeModel.',
228
+ zh: '未指定评委。请加 --judge-models <executor:model>, 或确保 report.meta.judgeModels 已写。',
229
+ en: 'No judge configured. Pass --judge-models <executor:model> or ensure the report has meta.judgeModels.',
230
+ },
231
+ 'cli.common.judge_models_single_only': {
232
+ zh: 'bench {cmd} 仅支持单评委。--judge-models 只能传一个 executor:model entry。',
233
+ en: 'bench {cmd} only supports a single judge. --judge-models accepts exactly one executor:model entry.',
234
234
  },
235
235
  'cli.common.usage_gold_validate': {
236
236
  zh: '用法: omk bench gold validate <dir>',
@@ -261,8 +261,8 @@ export const CLI_DICT = {
261
261
  en: 'No eval-samples need generating (all skills already have paired files)',
262
262
  },
263
263
  'cli.gen.batch_summary': {
264
- zh: '\n共生成 {n} 份 eval-samples, 请审查后运行: omk bench run --each',
265
- en: '\nGenerated {n} eval-samples files. Review them, then run: omk bench run --each',
264
+ zh: '\n共生成 {n} 份 eval-samples, 请审查后运行: omk bench run --batch',
265
+ en: '\nGenerated {n} eval-samples files. Review them, then run: omk bench run --batch',
266
266
  },
267
267
  'cli.gen.specify_skill_path': {
268
268
  zh: '请指定 skill 文件路径, 例如: omk bench gen-samples skills/my-skill.md',
@@ -297,20 +297,20 @@ export const CLI_DICT = {
297
297
  en: '\n=== Evolution: {path} ===\n',
298
298
  },
299
299
  'cli.evolve.round_baseline': {
300
- zh: '第 0 轮 (基线): score={score} (${cost})\n',
301
- en: 'Round 0 (baseline): score={score} (${cost})\n',
300
+ zh: '第 0 轮 (基线): score={score} ({cost})\n',
301
+ en: 'Round 0 (baseline): score={score} ({cost})\n',
302
302
  },
303
303
  'cli.evolve.round_error': {
304
304
  zh: '第 {round} 轮: ✗ 改进生成失败: {error}\n',
305
305
  en: 'Round {round}: ✗ improvement generation failed: {error}\n',
306
306
  },
307
307
  'cli.evolve.round_done': {
308
- zh: '第 {round} 轮: score={score} ({delta}) {status} (${cost})\n',
309
- en: 'Round {round}: score={score} ({delta}) {status} (${cost})\n',
308
+ zh: '第 {round} 轮: score={score} ({delta}) {status} ({cost})\n',
309
+ en: 'Round {round}: score={score} ({delta}) {status} ({cost})\n',
310
310
  },
311
311
  'cli.evolve.summary': {
312
- zh: '\n✅ {start} → {final} (+{percent}%) | 共 {rounds} 轮 | ${cost}\n',
313
- en: '\n✅ {start} → {final} (+{percent}%) | {rounds} rounds | ${cost}\n',
312
+ zh: '\n✅ {start} → {final} (+{percent}%) | 共 {rounds} 轮 | {cost}\n',
313
+ en: '\n✅ {start} → {final} (+{percent}%) | {rounds} rounds | {cost}\n',
314
314
  },
315
315
  'cli.evolve.best_path': {
316
316
  zh: '最优版本: {best} → {target}\n',
@@ -393,6 +393,7 @@ oh-my-knowledge — 知识工件评测工具集
393
393
  omk bench diff <id1> <id2> 对比两份评测报告
394
394
  omk bench evolve <skill> 通过迭代评测自我改进 skill
395
395
 
396
+ omk doctor [path] skill 健康检查(评测前置门禁)
396
397
  omk analyze <dir> 分析 cc session trace, 生成 skill 健康度日报 (v0.18)
397
398
 
398
399
  bench run 选项:
@@ -412,8 +413,7 @@ bench run 选项:
412
413
  在一个文件里声明 samples + variants + model + executor。
413
414
  CLI flag 会覆盖配置文件中的同名字段。
414
415
  配置中的相对路径相对于配置文件所在目录解析。
415
- --model <name> 被测模型 (默认: sonnet)
416
- --judge-model <name> 评委模型 (默认: haiku)
416
+ --model <name> 任务执行模型 (默认: sonnet)
417
417
  --output-dir <path> 报告输出目录 (默认: ~/.oh-my-knowledge/reports/)
418
418
  --no-judge 跳过 LLM 评委
419
419
  --no-cache 禁用结果缓存
@@ -425,12 +425,13 @@ bench run 选项:
425
425
  --judge-repeat <n> 每个 (sample × dimension) 调 LLM 评委 N 次评估
426
426
  自洽性 (默认: 1)。多轮间高 stddev = 评委在该评分维度
427
427
  上不稳定, 分数有噪声。
428
- --judge-models <list> 多评委 ensemble。逗号分隔的 executor:model, 如
429
- claude:opus,openai:gpt-4o,gemini:pro。每个评委对所有
430
- (sample × dimension) 打分; 报告含每评委分布 + Pearson
431
- / MAD 评委间一致性。能反驳 "Claude 评委评 Claude 同
432
- 模态偏置" 的质疑。可与 --judge-repeat 组合。
433
- 成本 ~ N_judges × N_repeat × N_samples。
428
+ --judge-models <list> 评委配置, 逗号分隔的 executor:model, 如
429
+ claude:haiku 或 claude:opus,openai:gpt-4o。
430
+ 1 条 = 单评委 (默认 claude:haiku); ≥ 2 条 = ensemble,
431
+ 每个评委对所有 (sample × dimension) 打分, 报告
432
+ 含每评委分布 + Pearson / MAD 评委间一致性。能反驳
433
+ "Claude 评委评 Claude 同模态偏置" 的质疑。可与
434
+ --judge-repeat 组合。成本 ~ N_judges × N_repeat × N_samples。
434
435
  --bootstrap 计算 bootstrap 置信区间 (无分布假设, 对 LLM 序数评分
435
436
  比 t 区间更靠谱)。给出每个 variant 均值 CI + treatment
436
437
  vs control 差值的 pairwise CI (CI 不跨 0 即显著)。
@@ -439,12 +440,11 @@ bench run 选项:
439
440
  stderr 警告提示耗时。
440
441
  --retry <n> 失败任务最多重试 N 次, 指数退避 (默认: 0)
441
442
  --resume <report-id> 从历史报告恢复, 跳过已完成任务
442
- --executor <name> 执行器: claude / openai / gemini / anthropic-api /
443
- openai-api, 或任意 shell 命令 (例如 "python my_provider.py")
444
- --judge-executor <name> 评委执行器 (默认: 同 --executor)
445
- --each 对每个 skill 独立 vs baseline 评测
443
+ --executor <name> 执行器: claude / claude-sdk / codex / openai / gemini /
444
+ anthropic-api / openai-api, 或任意 shell 命令 (例如 "python my_provider.py")
445
+ --batch 批量评测:每个 skill 独立 vs baseline
446
446
  需要每个 skill 有配对的 {name}.eval-samples.json
447
- --skip-preflight 评测前跳过模型连通性预检
447
+ --skip-connectivity 跳过 LLM 模型连通性检测 (--resume 时自动跳过)
448
448
  --mcp-config <path> 通过 MCP server 抓 URL 用的 MCP 配置文件
449
449
  (默认: 当前目录下的 .mcp.json)
450
450
  --no-serve 评测后不自动启动报告 server
@@ -483,10 +483,10 @@ bench report 选项:
483
483
  --dev 开发模式: lib/ 文件改动时自动重启
484
484
 
485
485
  bench gen-samples 选项:
486
- --each 为所有还没 eval-samples 的 skill 生成
486
+ --batch 为所有还没 eval-samples 的 skill 生成
487
487
  --count <n> 每个 skill 生成多少条用例 (默认: 5)
488
488
  --model <name> 生成用的模型 (默认: sonnet)
489
- --skill-dir <path> skill 目录 (默认: skills), 配合 --each 用
489
+ --skill-dir <path> skill 目录 (默认: skills), 配合 --batch 用
490
490
 
491
491
  analyze 选项:
492
492
  <dir> 输入: cc session JSONL 文件 / 目录
@@ -502,8 +502,8 @@ bench evolve 选项:
502
502
  --rounds <n> 最大演化轮数 (默认: 5)
503
503
  --target <score> 达到该分数即提前停止
504
504
  --samples <path> 用例文件 (默认: eval-samples.json)
505
- --model <name> 被测模型 (默认: sonnet)
506
- --judge-model <name> 评委模型 (默认: haiku)
505
+ --model <name> 任务执行模型 (默认: sonnet)
506
+ --judge-models <executor:model> 评委 (默认: claude:haiku, evolve 仅支持单评委)
507
507
  --improve-model <name> 生成改进版的模型 (默认: sonnet)
508
508
  --concurrency <n> 并发评测任务数 (默认: 1)
509
509
  --timeout <seconds> 单任务执行超时 (秒, 默认: 120)
@@ -520,7 +520,7 @@ bench evolve 选项:
520
520
  omk bench run --control baseline --treatment v1,v2,v3
521
521
  omk bench run --config eval.yaml
522
522
  omk bench run --config eval.yaml --model sonnet-4.6 # CLI 覆盖配置
523
- omk bench run --each
523
+ omk bench run --batch
524
524
  omk bench run --dry-run
525
525
  omk bench report --port 8080
526
526
  omk bench report --export v1-vs-v2-20260326-1832
@@ -539,6 +539,7 @@ Usage:
539
539
  omk bench diff <id1> <id2> Compare two evaluation reports
540
540
  omk bench evolve <skill> Self-improve a skill through iterative evaluation
541
541
 
542
+ omk doctor [path] skill health check (pre-eval gate)
542
543
  omk analyze <dir> Analyze cc session trace(s), produce skill health report (v0.18)
543
544
 
544
545
  Options for "bench run":
@@ -558,8 +559,7 @@ Options for "bench run":
558
559
  Declares samples + variants + model + executor in one file.
559
560
  CLI flags override config fields when both are provided.
560
561
  Relative paths inside the config are resolved against its directory.
561
- --model <name> Model under test (default: sonnet)
562
- --judge-model <name> Judge model (default: haiku)
562
+ --model <name> Task execution model (default: sonnet)
563
563
  --output-dir <path> Report output directory (default: ~/.oh-my-knowledge/reports/)
564
564
  --no-judge Skip LLM judging
565
565
  --no-cache Disable result caching
@@ -571,12 +571,14 @@ Options for "bench run":
571
571
  --judge-repeat <n> Call LLM judge N times per (sample × dimension) for self-
572
572
  consistency (default: 1). High stddev across runs = the
573
573
  judge is unstable on this rubric and the score is noisy.
574
- --judge-models <list> Multi-judge ensemble. Comma-separated executor:model pairs,
575
- e.g. claude:opus,openai:gpt-4o,gemini:pro. Each judge scores
576
- every (sample × dimension); report includes per-judge break-
577
- down + Pearson/MAD inter-judge agreement. Refutes "Claude
578
- judge Claude same-modality bias" critique. Combines with
579
- --judge-repeat. Cost ~ N_judges × N_repeat × N_samples.
574
+ --judge-models <list> Judge configuration. Comma-separated executor:model pairs,
575
+ e.g. claude:haiku or claude:opus,openai:gpt-4o.
576
+ 1 entry = single judge (default claude:haiku); ≥ 2 entries
577
+ = ensemble — every judge scores each (sample × dimension);
578
+ the report includes per-judge breakdown + Pearson/MAD
579
+ inter-judge agreement, which refutes "Claude judges Claude
580
+ same-modality bias" critique. Combines with --judge-repeat.
581
+ Cost ~ N_judges × N_repeat × N_samples.
580
582
  --bootstrap Compute bootstrap confidence intervals (distribution-free,
581
583
  preferred over t-interval for ordinal LLM scores). Adds
582
584
  per-variant CI on the mean + pairwise CI on treatment-vs-
@@ -586,12 +588,11 @@ Options for "bench run":
586
588
  triggers a stderr warning about runtime cost.
587
589
  --retry <n> Retry failed tasks up to N times with exponential backoff (default: 0)
588
590
  --resume <report-id> Resume from a previous report, skipping completed tasks
589
- --executor <name> Executor: claude, openai, gemini, anthropic-api, openai-api,
590
- or any shell command (e.g. "python my_provider.py")
591
- --judge-executor <name> Executor for LLM judge (default: same as --executor)
592
- --each Evaluate each skill independently against baseline
591
+ --executor <name> Executor: claude, claude-sdk, codex, openai, gemini,
592
+ anthropic-api, openai-api, or any shell command (e.g. "python my_provider.py")
593
+ --batch Batch evaluation: each skill independently against baseline
593
594
  Requires {name}.eval-samples.json paired with each skill
594
- --skip-preflight Skip model connectivity check before evaluation
595
+ --skip-connectivity Skip LLM model connectivity check (auto-skipped when --resume)
595
596
  --mcp-config <path> MCP config file for URL fetching via MCP servers
596
597
  (default: .mcp.json in current directory)
597
598
  --no-serve Skip auto-starting report server after evaluation
@@ -637,10 +638,10 @@ Options for "bench report":
637
638
  --dev Dev mode: auto-restart on lib/ file changes
638
639
 
639
640
  Options for "bench gen-samples":
640
- --each Generate for all skills missing eval-samples
641
+ --batch Generate for all skills missing eval-samples
641
642
  --count <n> Number of samples to generate per skill (default: 5)
642
643
  --model <name> Model for generation (default: sonnet)
643
- --skill-dir <path> Skill directory (default: skills), used with --each
644
+ --skill-dir <path> Skill directory (default: skills), used with --batch
644
645
 
645
646
  Options for "analyze":
646
647
  <dir> Input: cc session JSONL file / dir (e.g. ~/.claude/projects/<slug>)
@@ -655,8 +656,8 @@ Options for "bench evolve":
655
656
  --rounds <n> Maximum evolution rounds (default: 5)
656
657
  --target <score> Stop early when score reaches this threshold
657
658
  --samples <path> Sample file (default: eval-samples.json)
658
- --model <name> Model under test (default: sonnet)
659
- --judge-model <name> Judge model (default: haiku)
659
+ --model <name> Task execution model (default: sonnet)
660
+ --judge-models <executor:model> Judge config (default: claude:haiku; evolve is single-judge only)
660
661
  --improve-model <name> Model for generating improvements (default: sonnet)
661
662
  --concurrency <n> Parallel eval tasks (default: 1)
662
663
  --timeout <seconds> Executor timeout per task in seconds (default: 120)
@@ -673,7 +674,7 @@ Examples:
673
674
  omk bench run --control baseline --treatment v1,v2,v3
674
675
  omk bench run --config eval.yaml
675
676
  omk bench run --config eval.yaml --model sonnet-4.6 # CLI overrides config
676
- omk bench run --each
677
+ omk bench run --batch
677
678
  omk bench run --dry-run
678
679
  omk bench report --port 8080
679
680
  omk bench report --export v1-vs-v2-20260326-1832
@@ -748,8 +749,7 @@ Examples:
748
749
  ' --reports-dir <dir> 报告存储目录 (默认: ~/.oh-my-knowledge/reports)',
749
750
  ' --samples <path> 覆盖用例文件 (默认: 从 report.meta.request 读)',
750
751
  ' --variant <name> 校验哪个 variant (默认: 第一个)',
751
- ' --judge-executor <name> 评委调用执行器 (默认: claude)',
752
- ' --judge-model <model> 评委模型 ID (默认: 沿用 report)',
752
+ ' --judge-models <executor:model> 评委 (默认: 沿用 report.meta.judgeModels[0]; debias-validate 仅支持单评委)',
753
753
  ' --bootstrap-samples N bootstrap 迭代次数 (默认 1000)',
754
754
  ' --seed N 固定 CI 随机种子',
755
755
  '',
@@ -766,8 +766,7 @@ Examples:
766
766
  ' --reports-dir <dir> report store dir (default: ~/.oh-my-knowledge/reports)',
767
767
  ' --samples <path> override samples file (default: from report.meta.request)',
768
768
  ' --variant <name> which variant to validate (default: first)',
769
- ' --judge-executor <name> executor for judge calls (default: claude)',
770
- ' --judge-model <model> judge model id (default: from report)',
769
+ ' --judge-models <executor:model> Judge (default: from report.meta.judgeModels[0]; debias-validate is single-judge only)',
771
770
  ' --bootstrap-samples N bootstrap iterations (default 1000)',
772
771
  ' --seed N deterministic CI seed',
773
772
  '',
@@ -902,8 +901,7 @@ Examples:
902
901
  '',
903
902
  '选项:',
904
903
  ' --reports-dir <dir> 报告存储目录',
905
- ' --judge-executor <name> 执行器 (默认: claude)',
906
- ' --judge-model <id> 聚类用的模型 (默认: 沿用 report.meta.judgeModel)',
904
+ ' --judge-models <executor:model> 评委 (默认: 沿用 report.meta.judgeModels[0]; failures 仅支持单评委)',
907
905
  ' --max-clusters <n> 最多聚成几类 (默认 5)',
908
906
  ' --threshold <num> compositeScore < threshold 算失败 (默认 3)',
909
907
  ' --max-feed <n> 最多喂给 LLM 多少条 (默认 50, 超出取最差)',
@@ -919,8 +917,7 @@ Examples:
919
917
  '',
920
918
  'Options:',
921
919
  ' --reports-dir <dir> report store dir',
922
- ' --judge-executor <name> executor (default: claude)',
923
- ' --judge-model <id> model for clustering (default: from report.meta.judgeModel)',
920
+ ' --judge-models <executor:model> Judge (default: from report.meta.judgeModels[0]; failures is single-judge only)',
924
921
  ' --max-clusters <n> max number of clusters (default 5)',
925
922
  ' --threshold <num> compositeScore < threshold counts as failure (default 3)',
926
923
  ' --max-feed <n> max samples to feed the LLM (default 50, takes the worst)',
@@ -948,5 +945,185 @@ Examples:
948
945
  zh: '声明',
949
946
  en: 'declared',
950
947
  },
948
+ // ============ omk doctor 健康检查 ============
949
+ 'cli.doctor.rule.skill_readable': {
950
+ zh: 'skill 文件可读',
951
+ en: 'skill file readable',
952
+ },
953
+ 'cli.doctor.rule.skill_metadata': {
954
+ zh: 'skill 元数据合法',
955
+ en: 'skill metadata valid',
956
+ },
957
+ 'cli.doctor.rule.dependencies': {
958
+ zh: '前置依赖完整',
959
+ en: 'dependencies present',
960
+ },
961
+ 'cli.doctor.rule.samples_contract': {
962
+ zh: '用例 ↔ skill 输入约定',
963
+ en: 'samples ↔ skill contract',
964
+ },
965
+ // pass
966
+ 'cli.doctor.skill_readable.pass': {
967
+ zh: 'skill 内容长度 {length} 字符',
968
+ en: 'skill content {length} chars',
969
+ },
970
+ 'cli.doctor.skill_metadata.pass': {
971
+ zh: '元数据格式合法',
972
+ en: 'metadata format valid',
973
+ },
974
+ 'cli.doctor.dependencies.pass': {
975
+ zh: '依赖检查通过',
976
+ en: 'all dependencies present',
977
+ },
978
+ 'cli.doctor.samples_contract.pass': {
979
+ zh: '用例 {count} 条,prompt 字段齐全',
980
+ en: '{count} samples, all with prompt',
981
+ },
982
+ // skill_readable
983
+ 'cli.doctor.skill_readable.fail.missing': {
984
+ zh: 'skill 文件无内容(content 为空)',
985
+ en: 'skill file has no content (content is null)',
986
+ },
987
+ 'cli.doctor.skill_readable.fail.empty': {
988
+ zh: 'skill 文件 trim 后为空',
989
+ en: 'skill file is empty after trim',
990
+ },
991
+ 'cli.doctor.skill_readable.fail.too_short': {
992
+ zh: 'skill 内容过短(只有 {length} 字符,最低 10)',
993
+ en: 'skill content too short ({length} chars, minimum 10)',
994
+ },
995
+ 'cli.doctor.skill_readable.hint.missing': {
996
+ zh: '请确认 skill 文件路径正确,文件可读且非空',
997
+ en: 'verify skill file path is correct and the file is readable',
998
+ },
999
+ 'cli.doctor.skill_readable.hint.too_short': {
1000
+ zh: 'skill 至少需要写一句完整的指令,过短的内容评测出来无意义',
1001
+ en: 'a skill needs at least a full instruction sentence — too short content yields meaningless eval',
1002
+ },
1003
+ // skill_metadata
1004
+ 'cli.doctor.skill_metadata.fail.frontmatter_invalid': {
1005
+ zh: 'front-matter 格式错误: {error}',
1006
+ en: 'front-matter format error: {error}',
1007
+ },
1008
+ 'cli.doctor.skill_metadata.fail.missing_skillmd': {
1009
+ zh: 'directory-skill 缺少 SKILL.md 入口文件',
1010
+ en: 'directory-skill missing SKILL.md entry file',
1011
+ },
1012
+ 'cli.doctor.skill_metadata.hint.frontmatter': {
1013
+ zh: 'front-matter 用 YAML 语法,key: value 或 - item 形式。可参考 examples/multi-skills 下的 skill 写法',
1014
+ en: 'front-matter uses YAML syntax (key: value or - item). See examples/multi-skills for reference',
1015
+ },
1016
+ 'cli.doctor.skill_metadata.hint.missing_skillmd': {
1017
+ zh: 'directory-skill 必须有 SKILL.md 文件作为入口。或将 skill 写成单文件 .md',
1018
+ en: 'directory-skills require a SKILL.md entry file. Alternatively, write the skill as a single .md file',
1019
+ },
1020
+ // dependencies
1021
+ 'cli.doctor.dependencies.fail': {
1022
+ zh: '前置依赖检查失败: {summary}',
1023
+ en: 'dependency check failed: {summary}',
1024
+ },
1025
+ 'cli.doctor.dependencies.hint': {
1026
+ zh: '安装缺失的工具或设置环境变量;若依赖确实可用 (e.g. shim 化测试),修正 skill 引用方式',
1027
+ en: 'install missing tools or set required env vars; if deps are actually present (e.g. shimmed in tests), adjust skill references',
1028
+ },
1029
+ // samples_contract
1030
+ 'cli.doctor.samples_contract.skipped': {
1031
+ zh: '未提供 samples,跳过此项检查',
1032
+ en: 'no samples provided, skipped',
1033
+ },
1034
+ 'cli.doctor.samples_contract.warn.empty': {
1035
+ zh: 'samples 列表为空',
1036
+ en: 'samples list is empty',
1037
+ },
1038
+ 'cli.doctor.samples_contract.warn.missing_prompt': {
1039
+ zh: '{count} 条用例缺 prompt 字段',
1040
+ en: '{count} samples missing prompt field',
1041
+ },
1042
+ 'cli.doctor.samples_contract.hint': {
1043
+ zh: '用例必须至少包含 prompt 字段。详见 docs/sample-design-spec.md',
1044
+ en: 'samples must contain at least a prompt field. See docs/sample-design-spec.md',
1045
+ },
1046
+ // ============ omk doctor CLI level ============
1047
+ 'cli.help.doctor_usage': {
1048
+ zh: `
1049
+ oh-my-knowledge — omk doctor 健康检查
1050
+
1051
+ 用法:
1052
+ omk doctor [path] 在 path 上跑评测前置健康检查
1053
+ omk doctor 在当前目录(或 ./skills)批量跑
1054
+
1055
+ 参数:
1056
+ path .md 单文件、目录或省略(=cwd)。目录会批量检查所有 skill
1057
+
1058
+ 选项:
1059
+ --json 把 DoctorReport 打到 stdout(CI 消费用)
1060
+ --gate 静默模式: 通过 exit 0 / 不通过 exit 1, 仅 stderr 出问题摘要
1061
+ --executor <name> executor 名(仅向后兼容, doctor 不直接打 LLM)
1062
+ --model <name> model 名(同上)
1063
+ --timeout <seconds> rule 执行超时(默认 8)
1064
+ --lang <zh|en> 切换输出语言
1065
+
1066
+ 示例:
1067
+ omk doctor examples/code-review/skills/v1.md
1068
+ omk doctor examples/code-review/skills --json | jq .failed
1069
+ omk doctor --gate; echo $?
1070
+
1071
+ doctor 检查项(纯静态 / 零 LLM 调用):
1072
+ - skill 文件可读 + 内容有最小长度
1073
+ - skill 元数据合法 (front-matter 若有)
1074
+ - 前置依赖完整 (引用的 CLI 工具 / 文件 / 环境变量)
1075
+ - 用例 ↔ skill 输入约定 (warn 级, 仅传 samples 时跑)
1076
+
1077
+ executor / judge 连通性由 evaluation preflight 负责, 不在 doctor 范围内。
1078
+ omk bench run / omk bench gate 内置 doctor 强制门禁, 不可 skip — 静态检查
1079
+ 零成本无理由跳过。LLM 连通性可用 --skip-connectivity 跳过 (--resume 时自动)。
1080
+ `.trim() + '\n',
1081
+ en: `
1082
+ oh-my-knowledge — omk doctor health check
1083
+
1084
+ Usage:
1085
+ omk doctor [path] Run pre-evaluation health check on path
1086
+ omk doctor Batch check current dir (or ./skills)
1087
+
1088
+ Arguments:
1089
+ path A .md file, directory, or omit (= cwd). Directory mode batches all skills.
1090
+
1091
+ Options:
1092
+ --json Print DoctorReport JSON to stdout (CI-friendly)
1093
+ --gate Silent mode: exit 0 if pass, exit 1 if fail; brief stderr summary only
1094
+ --executor <name> executor name (kept for compat; doctor does not call LLM)
1095
+ --model <name> model name (same)
1096
+ --timeout <seconds> per-rule timeout (default 8)
1097
+ --lang <zh|en> Output language
1098
+
1099
+ Examples:
1100
+ omk doctor examples/code-review/skills/v1.md
1101
+ omk doctor examples/code-review/skills --json | jq .failed
1102
+ omk doctor --gate; echo $?
1103
+
1104
+ Checks (pure static / zero LLM calls):
1105
+ - skill file readable + minimum content length
1106
+ - skill metadata valid (front-matter if present)
1107
+ - dependencies present (referenced CLI tools / files / env vars)
1108
+ - samples ↔ skill contract (warn-level, only when samples provided)
1109
+
1110
+ executor / judge connectivity is handled by evaluation preflight, not doctor.
1111
+ omk bench run / omk bench gate run doctor as mandatory; no skip flag — static
1112
+ checks cost nothing to run. LLM connectivity can be skipped with --skip-connectivity
1113
+ (auto-skipped on --resume).
1114
+ `.trim() + '\n',
1115
+ },
1116
+ 'cli.doctor.no_skill_found': {
1117
+ zh: '未在 {path} 下发现 skill 文件。\n doctor 期望 .md 文件、目录(包含 .md 或 SKILL.md)或 cwd 下的 skills/ 子目录。',
1118
+ en: 'No skills found at {path}.\n doctor expects a .md file, a directory (containing .md or SKILL.md), or skills/ under cwd.',
1119
+ },
1120
+ 'cli.doctor.gate_blocked': {
1121
+ zh: 'skill 健康检查未通过, 评测已中止。doctor 是评测必经环节, 无 skip 选项 — 请修复上述问题后重跑。',
1122
+ en: 'skill health check failed; evaluation aborted. doctor is mandatory and not skippable — fix the issues above and re-run.',
1123
+ },
1124
+ 'cli.run.skip_connectivity_warning': {
1125
+ zh: '⚠️ --skip-connectivity 已启用: 跳过 LLM 模型连通性检测。请确保 executor / judge 已通过其他方式验证可达。',
1126
+ en: '⚠️ --skip-connectivity enabled: LLM connectivity check skipped. Verify executor / judge are reachable by other means.',
1127
+ },
951
1128
  };
952
1129
  //# sourceMappingURL=i18n-dict.js.map