niceeval 0.5.4 → 0.6.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/INDEX.md +55 -0
- package/dist/agents/types.d.ts +317 -0
- package/dist/context/types.d.ts +335 -0
- package/dist/i18n/core.d.ts +11 -0
- package/dist/i18n/en.d.ts +181 -0
- package/dist/i18n/index.d.ts +5 -0
- package/dist/i18n/zh-CN.d.ts +183 -0
- package/dist/o11y/execution-tree.d.ts +103 -0
- package/dist/o11y/otlp/parse.d.ts +3 -0
- package/dist/o11y/otlp/receiver.d.ts +21 -0
- package/dist/o11y/otlp/select.d.ts +22 -0
- package/dist/o11y/otlp/turn-otel.d.ts +43 -0
- package/dist/o11y/types.d.ts +190 -0
- package/dist/report/aggregate.d.ts +57 -0
- package/dist/report/aggregate.js +212 -0
- package/dist/report/built-ins/cost-pass-rate-comparison.d.ts +1 -0
- package/dist/report/built-ins/cost-pass-rate-comparison.js +17 -0
- package/dist/report/built-ins/index.d.ts +1 -0
- package/dist/report/built-ins/index.js +2 -0
- package/dist/report/components.d.ts +178 -0
- package/dist/report/components.js +132 -0
- package/dist/report/compute.d.ts +106 -0
- package/dist/report/compute.js +618 -0
- package/dist/report/flag.d.ts +6 -0
- package/dist/report/flag.js +8 -0
- package/dist/report/format.d.ts +32 -0
- package/dist/report/format.js +126 -0
- package/dist/report/index.d.ts +19 -0
- package/dist/report/index.js +30 -0
- package/dist/report/load.d.ts +12 -0
- package/dist/report/load.js +56 -0
- package/dist/report/locale.d.ts +83 -0
- package/dist/report/locale.js +160 -0
- package/dist/report/metrics.d.ts +21 -0
- package/dist/report/metrics.js +115 -0
- package/dist/report/primitives.d.ts +64 -0
- package/dist/report/primitives.js +113 -0
- package/dist/report/react/AttemptList.d.ts +23 -0
- package/dist/report/react/AttemptList.js +20 -0
- package/dist/report/react/DeltaTable.d.ts +8 -0
- package/dist/report/react/DeltaTable.js +24 -0
- package/dist/report/react/EvalList.d.ts +10 -0
- package/dist/report/react/EvalList.js +0 -0
- package/dist/report/react/ExperimentList.d.ts +10 -0
- package/dist/report/react/ExperimentList.js +15 -0
- package/dist/report/react/GroupSummary.d.ts +8 -0
- package/dist/report/react/GroupSummary.js +8 -0
- package/dist/report/react/MetricBars.d.ts +10 -0
- package/dist/report/react/MetricBars.js +48 -0
- package/dist/report/react/MetricLine.d.ts +9 -0
- package/dist/report/react/MetricLine.js +68 -0
- package/dist/report/react/MetricMatrix.d.ts +10 -0
- package/dist/report/react/MetricMatrix.js +23 -0
- package/dist/report/react/MetricScatter.d.ts +9 -0
- package/dist/report/react/MetricScatter.js +100 -0
- package/dist/report/react/MetricTable.d.ts +11 -0
- package/dist/report/react/MetricTable.js +26 -0
- package/dist/report/react/RunOverview.d.ts +8 -0
- package/dist/report/react/RunOverview.js +12 -0
- package/dist/report/react/Scoreboard.d.ts +8 -0
- package/dist/report/react/Scoreboard.js +26 -0
- package/dist/report/react/cell.d.ts +9 -0
- package/dist/report/react/cell.js +9 -0
- package/dist/report/react/chart-math.d.ts +14 -0
- package/dist/report/react/chart-math.js +68 -0
- package/dist/report/react/colors.d.ts +14 -0
- package/dist/report/react/colors.js +45 -0
- package/dist/report/react/fixtures.d.ts +19 -0
- package/dist/report/react/fixtures.js +393 -0
- package/dist/report/react/format.d.ts +3 -0
- package/dist/report/react/format.js +7 -0
- package/dist/report/react/index.d.ts +6 -0
- package/dist/report/react/index.js +14 -0
- package/dist/report/report.d.ts +24 -0
- package/dist/report/report.js +49 -0
- package/dist/report/text/faces.d.ts +29 -0
- package/dist/report/text/faces.js +503 -0
- package/dist/report/text/layout.d.ts +75 -0
- package/dist/report/text/layout.js +173 -0
- package/dist/report/text/plot.d.ts +37 -0
- package/dist/report/text/plot.js +81 -0
- package/dist/report/text/table.d.ts +8 -0
- package/dist/report/text/table.js +86 -0
- package/dist/report/tree.d.ts +99 -0
- package/dist/report/tree.js +228 -0
- package/dist/report/types.d.ts +420 -0
- package/dist/report/types.js +4 -0
- package/dist/report/web.d.ts +15 -0
- package/dist/report/web.js +37 -0
- package/dist/results/annotated-source.d.ts +61 -0
- package/dist/results/attempt-evidence.d.ts +69 -0
- package/dist/results/attempt-source.d.ts +15 -0
- package/dist/results/locator.d.ts +75 -0
- package/dist/results/locator.js +0 -0
- package/dist/results/select.d.ts +45 -0
- package/dist/results/select.js +230 -0
- package/dist/results/source-hash.d.ts +9 -0
- package/dist/results/types.d.ts +204 -0
- package/dist/runner/eval-source.d.ts +22 -0
- package/dist/runner/fingerprint.d.ts +23 -0
- package/dist/runner/types.d.ts +332 -0
- package/dist/sandbox/docker-stream.d.ts +24 -0
- package/dist/sandbox/docker.d.ts +84 -0
- package/dist/sandbox/e2b.d.ts +31 -0
- package/dist/sandbox/errors.d.ts +4 -0
- package/dist/sandbox/local-files.d.ts +6 -0
- package/dist/sandbox/paths.d.ts +4 -0
- package/dist/sandbox/registry.d.ts +13 -0
- package/dist/sandbox/resolve.d.ts +40 -0
- package/dist/sandbox/retry.d.ts +10 -0
- package/dist/sandbox/shell.d.ts +11 -0
- package/dist/sandbox/source-files.d.ts +13 -0
- package/dist/sandbox/types.d.ts +203 -0
- package/dist/sandbox/vercel.d.ts +37 -0
- package/dist/scoring/types.d.ts +70 -0
- package/dist/shared/aggregate.d.ts +29 -0
- package/dist/shared/aggregate.js +55 -0
- package/dist/shared/types.d.ts +27 -0
- package/dist/shared/verdict.d.ts +27 -0
- package/dist/shared/verdict.js +34 -0
- package/dist/tty-line.d.ts +6 -0
- package/dist/types.d.ts +7 -0
- package/dist/util.d.ts +22 -0
- package/docs-site/zh/concepts/adapter.mdx +5 -5
- package/docs-site/zh/concepts/assert.mdx +8 -8
- package/docs-site/zh/concepts/evals.mdx +5 -5
- package/docs-site/zh/concepts/experiment.mdx +2 -2
- package/docs-site/zh/concepts/judge.mdx +9 -9
- package/docs-site/zh/concepts/overview.mdx +2 -2
- package/docs-site/zh/concepts/tier.mdx +6 -6
- package/docs-site/zh/example/claude-code-codex-plugin.mdx +9 -5
- package/docs-site/zh/example/claude-code-codex-skill.mdx +12 -7
- package/docs-site/zh/guides/agent-feedback-loop.mdx +235 -78
- package/docs-site/zh/guides/connect-otel.mdx +3 -3
- package/docs-site/zh/guides/connect-your-agent.mdx +2 -2
- package/docs-site/zh/guides/custom-reports.mdx +196 -36
- package/docs-site/zh/guides/experiments.mdx +7 -1
- package/docs-site/zh/guides/fixtures.mdx +1 -1
- package/docs-site/zh/guides/official-adapters.mdx +31 -9
- package/docs-site/zh/guides/publish-report.mdx +3 -3
- package/docs-site/zh/guides/report-components.mdx +194 -55
- package/docs-site/zh/guides/reporters.mdx +2 -2
- package/docs-site/zh/guides/results-data.mdx +35 -34
- package/docs-site/zh/guides/runner.mdx +2 -2
- package/docs-site/zh/guides/sandbox-agent.mdx +2 -2
- package/docs-site/zh/guides/{sandbox-backends.mdx → sandbox-providers.mdx} +11 -11
- package/docs-site/zh/guides/viewing-results.mdx +199 -79
- package/docs-site/zh/guides/write-experiment.mdx +9 -1
- package/docs-site/zh/guides/write-send.mdx +2 -2
- package/docs-site/zh/index.mdx +4 -3
- package/docs-site/zh/introduction.mdx +2 -1
- package/docs-site/zh/quickstart.mdx +5 -3
- package/docs-site/zh/reference/builtin-agents.mdx +38 -13
- package/docs-site/zh/reference/capabilities.mdx +1 -1
- package/docs-site/zh/reference/cli.mdx +36 -13
- package/docs-site/zh/reference/define-agent.mdx +12 -12
- package/docs-site/zh/reference/define-config.mdx +1 -1
- package/docs-site/zh/reference/define-eval.mdx +3 -3
- package/docs-site/zh/reference/events.mdx +7 -1
- package/docs-site/zh/reference/expect.mdx +3 -3
- package/package.json +10 -6
- package/src/agents/bub.ts +129 -42
- package/src/agents/claude-code.test.ts +152 -0
- package/src/agents/claude-code.ts +127 -13
- package/src/agents/codex.test.ts +192 -0
- package/src/agents/codex.ts +151 -12
- package/src/agents/index.ts +9 -3
- package/src/agents/manifest.ts +41 -0
- package/src/agents/plugin-config.test.ts +94 -0
- package/src/agents/shared.ts +33 -2
- package/src/agents/skills.test.ts +214 -0
- package/src/agents/skills.ts +304 -0
- package/src/agents/streaming.ts +5 -5
- package/src/agents/types.ts +54 -2
- package/src/cli.ts +74 -47
- package/src/context/context.test.ts +20 -2
- package/src/context/control-flow.ts +1 -1
- package/src/context/session.test.ts +92 -1
- package/src/context/session.ts +23 -1
- package/src/context/types.ts +4 -4
- package/src/define.test.ts +8 -8
- package/src/define.ts +11 -11
- package/src/expect/index.ts +5 -5
- package/src/i18n/en.ts +34 -15
- package/src/i18n/zh-CN.ts +37 -21
- package/src/index.ts +1 -1
- package/src/o11y/execution-tree.test.ts +452 -0
- package/src/o11y/execution-tree.ts +367 -0
- package/src/o11y/otlp/receiver.ts +1 -1
- package/src/o11y/otlp/select.ts +7 -3
- package/src/o11y/parsers/claude-code.test.ts +175 -0
- package/src/o11y/parsers/claude-code.ts +32 -0
- package/src/o11y/types.ts +6 -1
- package/src/report/aggregate.ts +26 -20
- package/src/report/built-in-user-parity.test.tsx +643 -0
- package/src/report/built-ins/cost-pass-rate-comparison.tsx +23 -0
- package/src/report/built-ins/index.ts +2 -0
- package/src/report/components.tsx +223 -50
- package/src/report/compute.ts +358 -53
- package/src/report/dual-render.test.tsx +1125 -0
- package/src/report/flag.ts +1 -1
- package/src/report/format.ts +50 -2
- package/src/report/index.ts +48 -14
- package/src/report/load.ts +1 -1
- package/src/report/locale.ts +206 -0
- package/src/report/metrics.ts +39 -15
- package/src/report/primitives.tsx +100 -2
- package/src/report/react/AttemptList.tsx +115 -0
- package/src/report/react/DeltaTable.tsx +9 -6
- package/src/report/react/EvalList.tsx +0 -0
- package/src/report/react/ExperimentList.tsx +108 -0
- package/src/report/react/GroupSummary.tsx +66 -0
- package/src/report/react/MetricBars.tsx +24 -13
- package/src/report/react/MetricLine.tsx +21 -21
- package/src/report/react/MetricMatrix.tsx +8 -4
- package/src/report/react/MetricScatter.tsx +136 -96
- package/src/report/react/MetricTable.tsx +115 -15
- package/src/report/react/RunOverview.tsx +48 -26
- package/src/report/react/Scoreboard.tsx +15 -7
- package/src/report/react/cell.tsx +18 -9
- package/src/{view/app/lib/chart.ts → report/react/chart-math.ts} +2 -6
- package/src/report/react/colors.ts +24 -15
- package/src/report/react/enhance.js +129 -0
- package/src/report/react/fixtures.ts +163 -34
- package/src/report/react/format.ts +1 -1
- package/src/report/react/index.tsx +22 -6
- package/src/report/react/render.test.tsx +164 -31
- package/src/report/react/styles.css +405 -213
- package/src/report/report.test.ts +403 -94
- package/src/report/report.ts +29 -11
- package/src/report/text/faces.ts +303 -95
- package/src/report/text/layout.ts +76 -11
- package/src/report/text/table.ts +98 -0
- package/src/report/tree.ts +103 -20
- package/src/report/types.ts +196 -25
- package/src/report/web.ts +46 -19
- package/src/results/annotated-source.test.ts +146 -0
- package/src/results/annotated-source.ts +128 -0
- package/src/results/attempt-evidence.test.ts +158 -0
- package/src/results/attempt-evidence.ts +158 -0
- package/src/results/attempt-source.ts +48 -0
- package/src/results/copy.ts +154 -139
- package/src/results/format.ts +54 -47
- package/src/results/host-equivalence.test.ts +527 -0
- package/src/results/index.ts +56 -14
- package/src/results/locator.test.ts +198 -0
- package/src/results/locator.ts +0 -0
- package/src/results/open.ts +392 -175
- package/src/results/results.test.ts +943 -494
- package/src/results/select.ts +129 -23
- package/src/results/skipped-notice.ts +0 -0
- package/src/results/source-hash.ts +28 -0
- package/src/results/types.ts +98 -62
- package/src/results/writer.ts +304 -176
- package/src/runner/attempt.test.ts +170 -0
- package/src/runner/attempt.ts +48 -13
- package/src/runner/discover.test.ts +65 -0
- package/src/runner/discover.ts +6 -2
- package/src/runner/eval-source.test.ts +121 -0
- package/src/runner/eval-source.ts +45 -0
- package/src/runner/fingerprint.ts +54 -1
- package/src/runner/remote-sandbox.ts +1 -1
- package/src/runner/report.test.ts +6 -8
- package/src/runner/report.ts +5 -4
- package/src/runner/reporters/artifacts.ts +27 -41
- package/src/runner/reporters/braintrust.test.ts +3 -3
- package/src/runner/reporters/braintrust.ts +1 -1
- package/src/runner/reporters/console.ts +6 -6
- package/src/runner/reporters/json.ts +4 -4
- package/src/runner/reporters/live.test.ts +56 -0
- package/src/runner/reporters/live.ts +36 -10
- package/src/runner/reporters/quiet.test.ts +66 -0
- package/src/runner/reporters/quiet.ts +49 -0
- package/src/runner/reporters/shared.ts +5 -5
- package/src/runner/reporters/table.ts +17 -17
- package/src/runner/run.ts +61 -102
- package/src/runner/types.ts +43 -32
- package/src/sandbox/checkpoint.ts +1 -1
- package/src/sandbox/docker.ts +15 -2
- package/src/sandbox/e2b.ts +11 -5
- package/src/sandbox/errors.ts +13 -0
- package/src/sandbox/index.ts +3 -3
- package/src/sandbox/local-files.ts +1 -1
- package/src/sandbox/registry.ts +6 -5
- package/src/sandbox/resolve.ts +38 -23
- package/src/sandbox/retry.test.ts +68 -0
- package/src/sandbox/retry.ts +44 -0
- package/src/sandbox/types.ts +24 -24
- package/src/sandbox/vercel.ts +17 -3
- package/src/scoring/collector.ts +3 -3
- package/src/scoring/judge.ts +2 -2
- package/src/scoring/scoped.ts +13 -1
- package/src/scoring/types.ts +7 -7
- package/src/scoring/verdict.ts +4 -4
- package/src/shared/aggregate.ts +23 -3
- package/src/shared/types.ts +2 -2
- package/src/shared/{outcome.ts → verdict.ts} +15 -15
- package/src/show/compose.ts +12 -132
- package/src/show/index.ts +125 -94
- package/src/show/render.ts +660 -160
- package/src/show/show.test.ts +472 -253
- package/src/source-loc.ts +1 -1
- package/src/tty-line.ts +32 -0
- package/src/types.ts +2 -2
- package/src/util.test.ts +21 -1
- package/src/util.ts +5 -1
- package/src/view/app/App.tsx +33 -198
- package/src/view/app/components/AttemptModal.tsx +6 -6
- package/src/view/app/components/CodeView.tsx +2 -2
- package/src/view/app/components/CopyControls.tsx +32 -36
- package/src/view/app/components/SkippedRunsBanner.tsx +140 -0
- package/src/view/app/components/ui/badge.tsx +1 -1
- package/src/view/app/components/ui/dialog.tsx +2 -2
- package/src/view/app/i18n.ts +40 -31
- package/src/view/app/lib/artifact-url.ts +1 -1
- package/src/view/app/lib/attempt-route.test.ts +37 -47
- package/src/view/app/lib/attempt-route.ts +26 -26
- package/src/view/app/lib/rows.ts +9 -112
- package/src/view/app/lib/verdict.ts +25 -0
- package/src/view/app/main.tsx +9 -12
- package/src/view/app/pages/RunsPage.tsx +4 -4
- package/src/view/app/pages/TracesPage.tsx +3 -3
- package/src/view/app/shared.ts +0 -1
- package/src/view/app/types.ts +6 -51
- package/src/view/artifact-serving.test.ts +136 -0
- package/src/view/client-dist/app.css +1 -1
- package/src/view/client-dist/app.js +21 -21
- package/src/view/data.test.ts +214 -143
- package/src/view/data.ts +166 -120
- package/src/view/index.ts +23 -11
- package/src/view/server.ts +52 -17
- package/src/view/shared/types.ts +22 -31
- package/src/view/styles.css +117 -327
- package/src/view/view-report.test.ts +146 -98
- package/src/report/default-report.tsx +0 -222
- package/src/report/dual-face.test.tsx +0 -527
- package/src/report/react/CaseList.tsx +0 -70
- package/src/view/app/components/CostScoreChart.tsx +0 -147
- package/src/view/app/components/ExperimentTable.tsx +0 -284
- package/src/view/app/components/GroupSelector.tsx +0 -61
- package/src/view/app/components/primitives.tsx +0 -43
- package/src/view/app/lib/outcome.ts +0 -82
package/src/i18n/en.ts
CHANGED
|
@@ -8,10 +8,22 @@ export const en = {
|
|
|
8
8
|
"agent.diagnose.noTranscript": "transcript was not generated",
|
|
9
9
|
"agent.diagnose.outputTail": "output tail: {{tail}}",
|
|
10
10
|
"agent.diagnose.zeroEvents": "transcript exists but contains 0 events",
|
|
11
|
-
"bub.homeDetectFailed": "Failed to detect sandbox $HOME (empty output from `printf $HOME`). Refusing to fall back to a
|
|
11
|
+
"bub.homeDetectFailed": "Failed to detect sandbox $HOME (empty output from `printf $HOME`). Refusing to fall back to a provider-specific path; check the sandbox provider.",
|
|
12
|
+
"bub.checkpointCaptureFailed": "bub checkpoint cache backfill failed (this sandbox is unaffected; later sandboxes will reinstall): {{error}}",
|
|
13
|
+
"bub.checkpointRestoreFailed": "bub checkpoint restore failed, falling back to a full install: {{error}}",
|
|
12
14
|
"bub.installFailed": "bub install failed after {{attempts}} attempts:\n{{tail}}",
|
|
13
15
|
"bub.setupNotRun": "bub adapter setup() has not run in this sandbox (missing home/workspace info). The runner must call setup before send.",
|
|
14
16
|
"checkpoint.emptyTar": "checkpoint: tar is empty (paths: {{paths}})",
|
|
17
|
+
"skill.localMissing": "Local skill path \"{{path}}\" does not exist (resolved to {{resolved}}). Paths are resolved from the project root you run niceeval in.",
|
|
18
|
+
"skill.localDirNoSkillFile": "Local skill directory \"{{path}}\" has no SKILL.md. A directory-shaped skill must contain SKILL.md at its root.",
|
|
19
|
+
"skill.localUnsupportedShape": "Local skill path \"{{path}}\" has an unsupported shape. Accepted: a directory containing SKILL.md, or a single .md file.",
|
|
20
|
+
"skill.repoCloneFailed": "Could not fetch repo skill {{source}} (ref: {{ref}}):\n{{tail}}",
|
|
21
|
+
"skill.repoNoSkills": "Repo skill {{source}} contains no SKILL.md.",
|
|
22
|
+
"skill.repoAmbiguous": "Repo skill {{source}} contains multiple skills; select which ones to enable with `skills: [...]`. Available: {{available}}.",
|
|
23
|
+
"skill.repoUnknownSkill": "Repo skill {{source}} (ref: {{ref}}) has no skill named \"{{skill}}\". Available: {{available}}.",
|
|
24
|
+
"skill.copyFailed": "Could not install skill \"{{name}}\" into {{dest}}:\n{{tail}}",
|
|
25
|
+
"plugin.marketplaceFailed": "Could not connect {{agent}} marketplace \"{{name}}\" (source: {{source}}, ref: {{ref}}):\n{{tail}}",
|
|
26
|
+
"plugin.installFailed": "Could not install {{agent}} plugin \"{{name}}\" (marketplace: {{marketplace}}):\n{{tail}}",
|
|
15
27
|
"cli.all": "(all)",
|
|
16
28
|
"cli.browserOpenFailed": "Could not open the browser automatically. Open manually: {{url}}\n",
|
|
17
29
|
"cli.clean.done": "Deleted .niceeval/ historical run artifacts.\n",
|
|
@@ -40,15 +52,23 @@ export const en = {
|
|
|
40
52
|
"niceeval — agent-native evals\n\n" +
|
|
41
53
|
"Usage:\n" +
|
|
42
54
|
" niceeval exp [group|experiment] [eval-id-prefix…] run experiments\n" +
|
|
43
|
-
" niceeval show [eval-id-prefix…]
|
|
44
|
-
" bare: current verdicts per experiment (composed across runs)
|
|
55
|
+
" niceeval show [eval-id-prefix… | @<locator>] read results in the terminal\n" +
|
|
56
|
+
" bare: current verdicts per experiment (composed across runs), each row\n" +
|
|
57
|
+
" with a compact attempt index (locator + evidence capability letters\n" +
|
|
58
|
+
" [E,X,⏱,D] + failure reason)\n" +
|
|
45
59
|
" a single eval id: attempts + assertion details\n" +
|
|
46
|
-
"
|
|
60
|
+
" @<locator> exactly one attempt: no flag -> compact overview;\n" +
|
|
61
|
+
" with a flag -> that evidence slice\n" +
|
|
62
|
+
" --eval the Eval source captured when this attempt ran,\n" +
|
|
63
|
+
" assertions mapped back to source lines\n" +
|
|
64
|
+
" --execution this attempt's execution event stream (messages/thinking/\n" +
|
|
65
|
+
" Skill loads/tool calls); OTel adds timing to the same node when present\n" +
|
|
66
|
+
" --diff[=file] sandbox workspace file-change summary; =file expands one file\n" +
|
|
47
67
|
" --history cross-run timeline (mutually exclusive with --report)\n" +
|
|
48
68
|
" --run <dir> pin a results dir --experiment <id> one experiment\n" +
|
|
49
|
-
" --
|
|
69
|
+
" --report <file> custom report\n" +
|
|
50
70
|
" niceeval list list discovered evals\n" +
|
|
51
|
-
" niceeval view [eval-id-prefix…|
|
|
71
|
+
" niceeval view [eval-id-prefix…|snapshot.json] [--out dir] [--port n] [--no-open]\n" +
|
|
52
72
|
" report slot + evidence rooms; --report <file> swaps in your report\n" +
|
|
53
73
|
" (same file as show); --run <dir> pins a results dir;\n" +
|
|
54
74
|
" --experiment <id> one experiment\n" +
|
|
@@ -70,10 +90,9 @@ export const en = {
|
|
|
70
90
|
"cli.show.historyReportConflict":
|
|
71
91
|
"`--history` and `--report` are mutually exclusive: --history is the built-in trend view. For a custom trend, compose exp.snapshots inside your report file instead.\n",
|
|
72
92
|
"cli.show.evidenceNeedsEval":
|
|
73
|
-
"--
|
|
74
|
-
"cli.show.
|
|
75
|
-
|
|
76
|
-
"cli.show.attemptNotFound": "Attempt {{attempt}} not found for {{evalId}}. Available attempts: {{available}}\n",
|
|
93
|
+
"--eval / --execution / --diff show one attempt's evidence, but the selection matched {{matched}} evals. Pick an attempt locator from the index below:\n{{index}}\n",
|
|
94
|
+
"cli.show.locatorMalformed": "{{message}}\n",
|
|
95
|
+
"cli.show.locatorNotFound": "{{message}}\n",
|
|
77
96
|
"cli.eval.noMatch": "No eval matched: {{patterns}}.\n",
|
|
78
97
|
"cli.eval.noMatchHintExperiment": "Hint: \"{{pattern}}\" is an experiment{{kind}}; you probably meant: niceeval exp {{pattern}}\n",
|
|
79
98
|
"cli.eval.noMatchKnown": "Discovered {{count}} evals: {{evals}}\n",
|
|
@@ -88,7 +107,7 @@ export const en = {
|
|
|
88
107
|
"cli.noAgent": "No agent specified (use --agent <name>).\n",
|
|
89
108
|
"cli.none": "(none)",
|
|
90
109
|
"cli.pressCtrlC": "Press Ctrl+C to exit.\n",
|
|
91
|
-
"cli.resultsPath": "Structured results: {{path}} (
|
|
110
|
+
"cli.resultsPath": "Structured results: {{path}} (snapshot.json + per-attempt result.json / events.json / trace.json / diff.json)\n",
|
|
92
111
|
"cli.run.experimentRequired":
|
|
93
112
|
"Run evals through an experiment: use `niceeval exp [group|config] [eval id prefix]`.\n" +
|
|
94
113
|
" Docs: node_modules/niceeval/docs-site/zh/guides/write-experiment.mdx\n",
|
|
@@ -190,18 +209,18 @@ export const en = {
|
|
|
190
209
|
"runner.startSandboxTeardown": "sandbox teardown (environment provisioning hooks)...",
|
|
191
210
|
"runner.timeout": "attempt timed out ({{timeoutMs}}ms)\nRecent progress:\n{{recentLogs}}",
|
|
192
211
|
"runner.traceSelected": " -> kept {{count}} semantic spans",
|
|
193
|
-
"runner.resumeCarry": " · reusing {{carried}}
|
|
212
|
+
"runner.resumeCarry": " · reusing {{carried}} settled results from last run, re-running {{retry}} evals\n",
|
|
194
213
|
"runner.resumeCarryDetail": " carried [{{experiment}}] {{evals}}\n",
|
|
195
214
|
"runner.useRemoteAgent": "using remote agent (no sandbox created)...",
|
|
196
|
-
"sandbox.
|
|
215
|
+
"sandbox.providerNotImplemented": "{{provider}} sandbox provider is not implemented; use docker, vercel, or e2b",
|
|
197
216
|
"sandbox.missingSpec":
|
|
198
217
|
"sandbox agent needs a sandbox, but none was given. niceeval no longer picks a default — set `sandbox` in defineExperiment()/defineConfig() to dockerSandbox() / vercelSandbox() / e2bSandbox() (import from \"niceeval/sandbox\").\n" +
|
|
199
|
-
" Docs: node_modules/niceeval/docs-site/zh/guides/sandbox-
|
|
218
|
+
" Docs: node_modules/niceeval/docs-site/zh/guides/sandbox-providers.mdx",
|
|
200
219
|
"sandbox.dependencyMissing.docker": "Docker sandbox requires 'dockerode'. Install it with: pnpm add dockerode @types/dockerode",
|
|
201
220
|
"sandbox.dependencyMissing.e2b": "E2B sandbox requires 'e2b'. Install it with: pnpm add e2b",
|
|
202
221
|
"sandbox.dependencyMissing.vercel": "Vercel sandbox requires '@vercel/sandbox'. Install it with: pnpm add @vercel/sandbox",
|
|
203
222
|
"sandbox.forceCleanup": " · [sandbox] force-cleaning {{count}} sandboxes...\n",
|
|
204
|
-
"sandbox.stopFailed": " · [sandbox] failed to stop sandbox {{id}} (ignored;
|
|
223
|
+
"sandbox.stopFailed": " · [sandbox] failed to stop sandbox {{id}} (ignored; provider TTL should clean it up): {{message}}\n",
|
|
205
224
|
"sandbox.stopTimeout": "stop timed out ({{timeoutMs}}ms)",
|
|
206
225
|
"scoring.evalError": "evaluation error: {{error}}",
|
|
207
226
|
"session.fileFallback": "[file]",
|
package/src/i18n/zh-CN.ts
CHANGED
|
@@ -6,13 +6,25 @@ export const zhCN = {
|
|
|
6
6
|
"agent.diagnose.noTranscript": "transcript 未生成",
|
|
7
7
|
"agent.diagnose.outputTail": "输出末尾:{{tail}}",
|
|
8
8
|
"agent.diagnose.zeroEvents": "transcript 存在但 0 事件",
|
|
9
|
-
"bub.homeDetectFailed": "无法探测沙箱 $HOME(printf $HOME 输出为空)
|
|
9
|
+
"bub.homeDetectFailed": "无法探测沙箱 $HOME(printf $HOME 输出为空)。不兜底到 provider 专属固定路径,请检查沙箱 provider。",
|
|
10
|
+
"bub.checkpointCaptureFailed": "bub checkpoint 缓存回填失败(本沙箱不受影响,后续沙箱会重新安装):{{error}}",
|
|
11
|
+
"bub.checkpointRestoreFailed": "bub checkpoint 还原失败,回退到全量安装:{{error}}",
|
|
10
12
|
"bub.installFailed": "bub 安装失败(重试 {{attempts}} 次):\n{{tail}}",
|
|
11
13
|
"bub.setupNotRun": "bub adapter 的 setup() 尚未在该沙箱运行(缺 home/workspace 信息);运行器应先调 setup 再 send。",
|
|
12
14
|
"checkpoint.emptyTar": "checkpoint: tar 为空(paths: {{paths}})",
|
|
15
|
+
"skill.localMissing": "本地 skill 路径不存在:\"{{path}}\"(解析到 {{resolved}})。path 相对跑 niceeval 的项目根解析。",
|
|
16
|
+
"skill.localDirNoSkillFile": "本地 skill 目录 \"{{path}}\" 里没有 SKILL.md。目录形态的 skill 必须在根下带一个 SKILL.md。",
|
|
17
|
+
"skill.localUnsupportedShape": "本地 skill 路径 \"{{path}}\" 形态不支持。只接受:含 SKILL.md 的目录,或单个 .md 文件。",
|
|
18
|
+
"skill.repoCloneFailed": "repo skill 拉取失败:{{source}}(ref: {{ref}})\n{{tail}}",
|
|
19
|
+
"skill.repoNoSkills": "repo skill {{source}} 里没找到任何 SKILL.md。",
|
|
20
|
+
"skill.repoAmbiguous": "repo skill {{source}} 里有多个 skill,必须用 `skills: [...]` 明确选择要启用哪些。可选:{{available}}。",
|
|
21
|
+
"skill.repoUnknownSkill": "repo skill {{source}}(ref: {{ref}})里没有名为 \"{{skill}}\" 的 skill。可选:{{available}}。",
|
|
22
|
+
"skill.copyFailed": "skill \"{{name}}\" 装进 {{dest}} 失败:\n{{tail}}",
|
|
23
|
+
"plugin.marketplaceFailed": "{{agent}} marketplace \"{{name}}\" 连接失败(source: {{source}}, ref: {{ref}}):\n{{tail}}",
|
|
24
|
+
"plugin.installFailed": "{{agent}} plugin \"{{name}}\"(marketplace: {{marketplace}})安装失败:\n{{tail}}",
|
|
13
25
|
"cli.all": "(全部)",
|
|
14
26
|
"cli.browserOpenFailed": "无法自动打开浏览器,请手动访问:{{url}}\n",
|
|
15
|
-
"cli.clean.done": "已删除 .niceeval/
|
|
27
|
+
"cli.clean.done": "已删除 .niceeval/ 历史运行 artifact。\n",
|
|
16
28
|
"cli.config.missing":
|
|
17
29
|
"找不到 niceeval.config.ts。\n" +
|
|
18
30
|
"修法:\n" +
|
|
@@ -28,7 +40,7 @@ export const zhCN = {
|
|
|
28
40
|
"runner.budgetUnenforceable":
|
|
29
41
|
"{{budgetKey}} 的 budget:连续多个 attempt 完成后都拿不到成本数据(agent 不上报用量且模型不在价格表)——该 agent 的 budget 无法执行,取消护栏继续跑。\n",
|
|
30
42
|
"judge.modelMissing":
|
|
31
|
-
"judge 未配置模型:在 defineConfig({ judge: { model: \"...\" } })、eval 的 judge 配置或环境变量 NICEEVAL_JUDGE_MODEL
|
|
43
|
+
"judge 未配置模型:在 defineConfig({ judge: { model: \"...\" } })、eval 的 judge 配置或环境变量 NICEEVAL_JUDGE_MODEL 里指定裁判模型(没有内置默认模型)。\n" +
|
|
32
44
|
" 文档:node_modules/niceeval/docs-site/zh/guides/scoring-guide.mdx",
|
|
33
45
|
"loaders.yamlMissing":
|
|
34
46
|
"loadYaml(\"{{path}}\") 需要 YAML 解析器:请先 `pnpm add yaml`(或改用 loadJson + JSON 数据集)。",
|
|
@@ -38,19 +50,24 @@ export const zhCN = {
|
|
|
38
50
|
"niceeval — agent-native evals\n\n" +
|
|
39
51
|
"用法:\n" +
|
|
40
52
|
" niceeval exp [组|实验] [eval-id 前缀…] 跑实验\n" +
|
|
41
|
-
" niceeval show [eval-id 前缀…]
|
|
42
|
-
" 裸跑:每个 experiment
|
|
53
|
+
" niceeval show [eval-id 前缀… | @<locator>] 终端读结果\n" +
|
|
54
|
+
" 裸跑:每个 experiment 的现刻判定(跨 run 合成),每行带紧凑 attempt 索引\n" +
|
|
55
|
+
" (locator + 证据 capability 字母 [E,X,⏱,D] + 失败原因)\n" +
|
|
43
56
|
" 单个 eval id:attempt 与断言明细\n" +
|
|
44
|
-
"
|
|
57
|
+
" @<locator> 精确一个 attempt:无 flag → 紧凑全景;带 flag → 对应证据切面\n" +
|
|
58
|
+
" --eval 该 attempt 运行时保存的 Eval 源码,断言标回源码行\n" +
|
|
59
|
+
" --execution 该 attempt 的执行事件流(消息/thinking/Skill/工具调用),\n" +
|
|
60
|
+
" 有 OTel 时同一节点补时间\n" +
|
|
61
|
+
" --diff[=文件] sandbox 工作区文件改动摘要;=文件 展开单个文件\n" +
|
|
45
62
|
" --history 跨 run 时间轴(与 --report 互斥)\n" +
|
|
46
63
|
" --run <目录> 钉死结果目录 --experiment <id> 只看该实验\n" +
|
|
47
|
-
" --
|
|
64
|
+
" --report <文件> 自定义报告\n" +
|
|
48
65
|
" niceeval list 列出发现到的 eval\n" +
|
|
49
|
-
" niceeval view [eval-id 前缀…|
|
|
66
|
+
" niceeval view [eval-id 前缀…|snapshot.json] [--out 目录] [--port n] [--no-open]\n" +
|
|
50
67
|
" 报告槽 + 证据室;--report <文件> 整槽换成自定义报告(与 show 同一文件)\n" +
|
|
51
68
|
" --run <目录> 钉死结果目录 --experiment <id> 只看该实验\n" +
|
|
52
|
-
" --out <目录> 静态导出:index.html
|
|
53
|
-
" niceeval clean 删除 .niceeval/
|
|
69
|
+
" --out <目录> 静态导出:index.html 连同查看器 artifact,可直接静态托管\n" +
|
|
70
|
+
" niceeval clean 删除 .niceeval/ 历史 artifact\n" +
|
|
54
71
|
" niceeval init 脚手架 config + evals/\n\n" +
|
|
55
72
|
"标志:\n" +
|
|
56
73
|
" --runs n --max-concurrency n --timeout ms --budget usd --tag t\n" +
|
|
@@ -67,10 +84,9 @@ export const zhCN = {
|
|
|
67
84
|
"cli.show.historyReportConflict":
|
|
68
85
|
"`--history` and `--report` are mutually exclusive: --history is the built-in trend view. For a custom trend, compose exp.snapshots inside your report file instead.\n",
|
|
69
86
|
"cli.show.evidenceNeedsEval":
|
|
70
|
-
"--
|
|
71
|
-
"cli.show.
|
|
72
|
-
|
|
73
|
-
"cli.show.attemptNotFound": "Attempt {{attempt}} not found for {{evalId}}. Available attempts: {{available}}\n",
|
|
87
|
+
"--eval / --execution / --diff show one attempt's evidence, but the selection matched {{matched}} evals. Pick an attempt locator from the index below:\n{{index}}\n",
|
|
88
|
+
"cli.show.locatorMalformed": "{{message}}\n",
|
|
89
|
+
"cli.show.locatorNotFound": "{{message}}\n",
|
|
74
90
|
"cli.eval.noMatch": "没有匹配的 eval:{{patterns}}。\n",
|
|
75
91
|
"cli.eval.noMatchHintExperiment": "提示:\"{{pattern}}\" 是实验{{kind}},你大概想跑:niceeval exp {{pattern}}\n",
|
|
76
92
|
"cli.eval.noMatchKnown": "已发现 {{count}} 个 eval:{{evals}}\n",
|
|
@@ -85,14 +101,14 @@ export const zhCN = {
|
|
|
85
101
|
"cli.noAgent": "未指定 agent(用 --agent <name>)。\n",
|
|
86
102
|
"cli.none": "(无)",
|
|
87
103
|
"cli.pressCtrlC": "按 Ctrl+C 退出。\n",
|
|
88
|
-
"cli.resultsPath": "结构化结果:{{path}}(
|
|
104
|
+
"cli.resultsPath": "结构化结果:{{path}}(snapshot.json + 每 attempt 的 result.json / events.json / trace.json / diff.json)\n",
|
|
89
105
|
"cli.run.experimentRequired":
|
|
90
106
|
"运行 eval 必须通过 experiment:用 `niceeval exp [实验组|配置] [eval id 前缀]`。\n" +
|
|
91
107
|
" 文档:node_modules/niceeval/docs-site/zh/guides/write-experiment.mdx\n",
|
|
92
108
|
"cli.run.experimentRequiredHint": "提示:\"{{pattern}}\" 是实验{{kind}},你大概想跑:niceeval exp {{pattern}}\n",
|
|
93
109
|
"cli.run.experimentRequiredKnown": "已发现实验:{{experiments}}\n",
|
|
94
110
|
"cli.unimplemented": "命令 \"{{command}}\" 暂未实现(MVP)。\n",
|
|
95
|
-
"cli.view.exportedDir": "已导出静态查看站:{{out}}(整个目录可直接静态托管;本地打开 {{out}}/index.html 需经 http 服务,file://
|
|
111
|
+
"cli.view.exportedDir": "已导出静态查看站:{{out}}(整个目录可直接静态托管;本地打开 {{out}}/index.html 需经 http 服务,file:// 下 artifact fetch 不可用)\n",
|
|
96
112
|
"cli.view.incompatible": "{{dir}}: 由 niceeval {{producer}} 写入(schemaVersion {{schemaVersion}}),当前 CLI 只读 schemaVersion {{supported}}。\n运行 `{{command}}` 查看这份报告。\n",
|
|
97
113
|
"cli.view.noResults": "{{root}} 下没有结果。先 `niceeval exp` 跑一轮,再 `niceeval view`。\n",
|
|
98
114
|
"cli.view.incompatibleForeign": "{{dir}}: 由 {{name}} {{version}} 写入(schemaVersion {{schemaVersion}}),当前 CLI 只读 schemaVersion {{supported}}。\n请用写出它的那个工具查看这份报告。\n",
|
|
@@ -187,18 +203,18 @@ export const zhCN = {
|
|
|
187
203
|
"runner.startSandboxTeardown": "sandbox teardown(环境预置钩子)…",
|
|
188
204
|
"runner.timeout": "attempt 超时({{timeoutMs}}ms)\n最近进度:\n{{recentLogs}}",
|
|
189
205
|
"runner.traceSelected": " → 留 {{count}}(按语义)",
|
|
190
|
-
"runner.resumeCarry": " · 复用上次 {{carried}}
|
|
206
|
+
"runner.resumeCarry": " · 复用上次 {{carried}} 个已判定的结果,重跑 {{retry}} 个 eval\n",
|
|
191
207
|
"runner.resumeCarryDetail": " 复用 [{{experiment}}] {{evals}}\n",
|
|
192
208
|
"runner.useRemoteAgent": "使用 remote agent(不创建沙箱)…",
|
|
193
|
-
"sandbox.
|
|
209
|
+
"sandbox.providerNotImplemented": "{{provider}} sandbox provider not implemented; use docker, vercel, or e2b",
|
|
194
210
|
"sandbox.missingSpec":
|
|
195
|
-
"沙箱型 agent 需要一个 sandbox,但没有提供。niceeval
|
|
196
|
-
" 文档:node_modules/niceeval/docs-site/zh/guides/sandbox-
|
|
211
|
+
"沙箱型 agent 需要一个 sandbox,但没有提供。niceeval 不再自动选默认 provider——请在 defineExperiment()/defineConfig() 里把 sandbox 设成 dockerSandbox() / vercelSandbox() / e2bSandbox()(从 \"niceeval/sandbox\" 导入)。\n" +
|
|
212
|
+
" 文档:node_modules/niceeval/docs-site/zh/guides/sandbox-providers.mdx",
|
|
197
213
|
"sandbox.dependencyMissing.docker": "Docker sandbox requires 'dockerode'. Install it with: pnpm add dockerode @types/dockerode",
|
|
198
214
|
"sandbox.dependencyMissing.e2b": "E2B sandbox requires 'e2b'. Install it with: pnpm add e2b",
|
|
199
215
|
"sandbox.dependencyMissing.vercel": "Vercel sandbox requires '@vercel/sandbox'. Install it with: pnpm add @vercel/sandbox",
|
|
200
216
|
"sandbox.forceCleanup": " · [sandbox] 强制清理 {{count}} 个沙箱…\n",
|
|
201
|
-
"sandbox.stopFailed": " · [sandbox] 停沙箱 {{id}} 失败(
|
|
217
|
+
"sandbox.stopFailed": " · [sandbox] 停沙箱 {{id}} 失败(已忽略,靠 provider 过期兜底):{{message}}\n",
|
|
202
218
|
"sandbox.stopTimeout": "stop 超时({{timeoutMs}}ms)",
|
|
203
219
|
"scoring.evalError": "评估出错: {{error}}",
|
|
204
220
|
"session.fileFallback": "[file]",
|