openmerit 0.1.12 → 0.2.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 (56) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +5 -8
  3. package/dist/pi/scout-extension.mjs +23 -10
  4. package/dist/terminal/public/app.js +37 -37
  5. package/dist/terminal/public/styles.css +0 -125
  6. package/dist/terminal/scout-update.json +1 -1
  7. package/dist/terminal/src/cli.mjs +2 -0
  8. package/dist/terminal/src/install.mjs +1 -0
  9. package/dist/terminal/src/scout-instructions.d.ts +2 -2
  10. package/dist/terminal/src/scout-instructions.js +23 -10
  11. package/dist/terminal/src/scout-instructions.ts +23 -10
  12. package/dist/terminal/src/scout.d.ts +77 -0
  13. package/dist/terminal/src/scout.js +181 -0
  14. package/dist/terminal/src/scout.ts +164 -0
  15. package/dist/terminal/src/server.mjs +1 -1
  16. package/docs/commands.md +2 -78
  17. package/docs/getting-started.md +2 -2
  18. package/docs/index.md +4 -13
  19. package/docs/inference-terminal.md +2 -63
  20. package/docs/pi-extension.md +1 -1
  21. package/docs/roadmap.md +4 -17
  22. package/docs/scout.md +29 -250
  23. package/docs/security.md +5 -17
  24. package/docs/testing.md +7 -35
  25. package/docs/troubleshooting.md +1 -1
  26. package/package.json +4 -24
  27. package/dist/core/src/index.d.ts +0 -101
  28. package/dist/core/src/index.js +0 -1649
  29. package/dist/core/src/store.d.ts +0 -35
  30. package/dist/core/src/store.js +0 -102
  31. package/dist/protocol/src/index.d.ts +0 -484
  32. package/dist/protocol/src/index.js +0 -47
  33. package/dist/protocol/src/schemas.d.ts +0 -576
  34. package/dist/protocol/src/schemas.js +0 -280
  35. package/dist/terminal/public/brands/vllm.ico +0 -0
  36. package/dist/terminal/public/flow.css +0 -1
  37. package/dist/terminal/public/flow.js +0 -770
  38. package/dist/terminal/src/demo-policy.mjs +0 -205
  39. package/dist/terminal/src/enterprise-sample.mjs +0 -151
  40. package/docs/adapter-guide.md +0 -191
  41. package/docs/architecture.md +0 -61
  42. package/docs/automation.md +0 -76
  43. package/docs/budgets.md +0 -39
  44. package/docs/demo-backfill.md +0 -31
  45. package/docs/demo-fieldkit.md +0 -49
  46. package/docs/demo-placement.md +0 -32
  47. package/docs/demo-spam.md +0 -17
  48. package/docs/demo-support.md +0 -44
  49. package/docs/demo.md +0 -74
  50. package/docs/first-trial.md +0 -62
  51. package/docs/interactive-demo.md +0 -118
  52. package/docs/lifecycle.md +0 -32
  53. package/docs/metrics-and-evidence.md +0 -48
  54. package/docs/operations.md +0 -40
  55. package/docs/pareto-spec.md +0 -76
  56. package/docs/ux-reference.md +0 -32
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.0 — 2026-11-04
4
+
5
+ - Add `openmerit scout`, a conversation with Scout from the terminal: clarifying questions answered with `--brief` or `--skip`, then up to five models per task, cheapest first among models that reach Scout's quality bar. When you ask for the fastest or newest model, the output names that order and shows each model's time per task or release date. It uses this device's Claude Code or Pi key and limits new conversations to the endpoint IDs in `.openmerit/scout.json`.
6
+ - The installed Scout instructions for Claude Code and Pi tell the agent to relay Scout's questions to the user and to read `tasks[].models`. This needs the matching hosted Scout release, whose `scout_models` MCP tool now runs the Scout agent.
7
+ - **Breaking:** remove the `openmerit`, `openmerit/core` and `openmerit/protocol` package exports, along with the evaluation coordinator, harness protocol, Pareto conformance rules and the repository's `npm run demo` sandbox. The package keeps `openmerit/pi` and the `openmerit` command: `openmerit dash`, `openmerit scout`, Scout setup commands and `openmerit eval`.
8
+ - Remove the hosted Inference Terminal sample at `dash.openmerit.ai`, its `/demo` before/after comparison and the opt-in `?map=flow` map experiment. The local terminal, including its fictional sample (`--demo`), is unchanged.
9
+ - Remove the retired demo guides and the guides that documented only the coordinator: architecture, adapter development, Pareto specification, first trial, metrics and evidence, comparisons and swaps, automatic checks, budgets and permissions, and project files and logs.
10
+
3
11
  ## 0.1.12 — 2026-11-03
4
12
 
5
13
  - Replace the obsolete Pi 0.87 evaluation adapter with native Scout support for Pi 1.5.0. Share browser device approval, private client/scope/project credentials, installer lifecycle and Scout instructions with Claude Code; keep Pi's native MCP, tools, model, permissions and session ownership intact.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  OpenMerit provides a local Inference Terminal for understanding an application's models, services, recorded activity, and compute, plus Scout guidance for application-model choices.
4
4
 
5
- The terminal reads existing evidence; Scout recommends candidates to evaluate. Neither is a request router or proof of application-quality improvements. A separate standalone evaluation CLI and reusable core coordinator support explicit evaluation workflows.
5
+ The terminal reads existing evidence; Scout recommends candidates to evaluate. Neither is a request router or proof of application-quality improvements. A separate standalone evaluation CLI supports explicit evaluation workflows.
6
6
 
7
7
  ## Open the terminal
8
8
 
@@ -16,9 +16,9 @@ openmerit dash
16
16
 
17
17
  No Pi installation or provider API key is needed. The terminal opens a browser connected to a read-only loopback service. Supported source/configuration declarations establish inventory; existing application logs or exports supply request history. Prompts, responses, and credentials are not retained by terminal collection. Unsupported or missing evidence remains unknown.
18
18
 
19
- The terminal and hosted dashboard follow the device's light/dark preference without a theme control. CLI and terminal product analytics are off unless explicitly enabled; see [the analytics contract](docs/inference-terminal.md#optional-cli-product-analytics).
19
+ The terminal follows the device's light/dark preference without a theme control. CLI and terminal product analytics are off unless explicitly enabled; see [the analytics contract](docs/inference-terminal.md#optional-cli-product-analytics).
20
20
 
21
- Explore the [hosted sample](https://dash.openmerit.ai/) or [before/after dashboard demo](https://dash.openmerit.ai/demo). Both use fictional data and make no inference calls. See [the terminal guide](docs/inference-terminal.md) for configuration, discovery, diagnostics, history limits, and agent access.
21
+ Run `openmerit dash --demo` to explore a fictional sample workspace. See [the terminal guide](docs/inference-terminal.md) for configuration, discovery, diagnostics, history limits, and agent access.
22
22
 
23
23
  ## Connect Scout to Claude Code
24
24
 
@@ -42,17 +42,14 @@ Package publication and website deployment are separate releases. Pi setup requi
42
42
 
43
43
  The standalone `openmerit eval` CLI is unchanged by the Pi replacement. Evaluate Claude Code, Codex and OpenCode with explicit tasks, model scope, budget and graders. Freeze Scout's shortlist and compare fresh repeated attempts after source changes. Budget and sandbox blocks stay separate from task scores; unknown costs stay unknown. See [agent evaluations](docs/agent-evaluations.md) for setup, graders, budgets and availability.
44
44
 
45
- The core coordinator remains available for custom harnesses: task profiles, controlled experiments, baseline and frontier validation, evidence contracts, budgets, approvals and rollback requests. The harness performs the work and supplies evidence; core validation does not establish that external measurements are truthful. The older Pi lifecycle walkthroughs are retained as historical/core references, not supported commands in the new Scout adapter.
46
-
47
45
  ## Documentation
48
46
 
49
- The [documentation overview](docs/index.md) links current guides and historical references. The website at [openmerit.ai/docs](https://openmerit.ai/docs/) is deployed separately from the package and this checkout.
47
+ The [documentation overview](docs/index.md) links the current guides. The website at [openmerit.ai/docs](https://openmerit.ai/docs/) is deployed separately from the package and this checkout.
50
48
 
51
49
  - [Getting started](docs/getting-started.md) and [troubleshooting](docs/troubleshooting.md)
52
50
  - [Scout](docs/scout.md) and [Pi adapter](docs/pi-extension.md)
53
51
  - [Inference Terminal](docs/inference-terminal.md) and [agent evaluations](docs/agent-evaluations.md)
54
52
  - [Security and data handling](docs/security.md)
55
- - [Architecture](docs/architecture.md), [adapter development](docs/adapter-guide.md), and [Pareto specification](docs/pareto-spec.md)
56
53
  - [Testing](docs/testing.md) and [current limitations](docs/roadmap.md)
57
54
 
58
55
  ## Development
@@ -63,6 +60,6 @@ npm run verify
63
60
  npm run dash -- /path/to/application
64
61
  ```
65
62
 
66
- `packages/terminal` contains the CLI, collectors, hosted sample, and browser interface. `packages/protocol` and `packages/core` provide evaluation contracts and coordination; `packages/pi` supplies only the native Scout adapter. The package exports `openmerit/core`, `openmerit/protocol`, and `openmerit/pi`. See the [Pi package README](packages/pi/README.md) for bounded adapter tests. Provider credentials belong to the harness or its environment and must never be committed.
63
+ `packages/terminal` contains the CLI, collectors and browser interface. `packages/eval` contains the standalone `openmerit eval` runner, and `packages/pi` supplies only the native Scout adapter. The package exports `openmerit/pi` and the `openmerit` command. See the [Pi package README](packages/pi/README.md) for bounded adapter tests. Provider credentials belong to the harness or its environment and must never be committed.
67
64
 
68
65
  Edit documentation in `docs/`, then run `npm run check:docs`. The website is generated from those Markdown files. See [documentation maintenance](docs/site-documentation.md) and the [production-source reconciliation note](docs/site-domain-migration.md) before deployment; a local build does not publish changes.
@@ -46,6 +46,8 @@ count as model choices, not implementation details. Identify this decision befor
46
46
  writing model-specific code, installing a model package or downloading weights.
47
47
 
48
48
  Follow the skill's project access policy. If it is missing, ask and save it first.
49
+ Scout may answer with clarifying questions: relay them to the user and continue
50
+ the same Scout conversation with their answers before choosing.
49
51
  If Scout is unavailable, fails or has no suitable evidence/candidate, disclose the
50
52
  gap and pause the model decision; do not fall back to a remembered or SDK-default
51
53
  model. You may continue work that does not commit to a model.
@@ -92,17 +94,28 @@ is not permission to search all models.
92
94
 
93
95
  ## Searching
94
96
 
95
- Call \`scout_models\` with a non-confidential task description and
96
- \`endpointIds\` set to the saved inventory, including \`[]\` when empty.
97
- Existing-only never broadens. For existing-first, if no existing candidate fits,
98
- explain the gap and ask before a separate search without \`endpointIds\`. Send
97
+ Call \`scout_models\` with a non-confidential task description as \`prompt\` and
98
+ \`endpointIds\` set to the saved inventory, including \`[]\` when empty. Send
99
99
  only task requirements, never source files, secrets or real customer records.
100
-
101
- Compare model AND endpoint, evidence, reference cost/time, unknowns and
102
- warnings. For multiple tasks read \`tasks[].slots[0].recommendations\`; the
103
- top-level list is empty. Prefer the cheapest usable option the quality evidence
104
- supports, without claiming benchmarks prove application accuracy. Use the
105
- returned provider model ID and the project's actual SDK and protocol.
100
+ If the MCP tool is unavailable, run
101
+ \`npx -y openmerit@latest scout "<task>" --json\`; it applies the saved inventory.
102
+
103
+ Scout is a conversation with the agent behind openmerit.ai/scout. When
104
+ \`status\` is \`needs_answers\`, fill in what the user or project already states,
105
+ show the user Scout's brief and remaining questions, and wait for their answers.
106
+ Then call again with the returned \`conversationId\` and \`brief\` set to the
107
+ rewritten components, or \`skip: true\` if the user wants Scout to assume. Never
108
+ answer Scout's questions with guesses. Send later refinements to the same
109
+ \`conversationId\`. A call with only a \`conversationId\` reads an interrupted turn.
110
+
111
+ When \`status\` is \`recommended\`, Scout has split the work into \`tasks\`, one
112
+ per model, each with up to five ranked \`models\`; cover every task. Each
113
+ model's \`cost\` names the \`endpointId\` and \`providerModelId\` to call.
114
+ Existing-only never broadens. For existing-first, if no existing candidate fits a
115
+ task, explain the gap and ask before a new conversation without \`endpointIds\`.
116
+ Compare quality evidence, reference cost/time and watch-outs. Prefer the cheapest
117
+ usable option the evidence supports, without claiming benchmarks prove
118
+ application accuracy. Use the project's actual SDK and protocol.
106
119
 
107
120
  ## Boundaries
108
121