Skip to content

signett CLI

@signett/eval installs the signett executable for headless agent testing, portable evaluation suites, and baseline regression checks.

sh
npm install --save-dev @signett/eval
npx signett --help

The package name is scoped, but the executable is signett. Installing signett alone does not provide this command.

signett agent

Run a natural-language task against the exact WebMCP tools exposed by a page.

text
signett agent [suite.mjs] [options]
OptionMeaning
--config pathJavaScript module or JSON agent suite; equivalent to the positional path.
--task idRun only the saved task with this ID.
--trials nRun each selected task n times; defaults to 1.
--url URLPage URL for an ad-hoc run. Requires --prompt.
--prompt textNatural-language task for an ad-hoc run. Requires --url.
--endpoint URLChat Completions-compatible model endpoint.
--model nameModel identifier sent to the endpoint.
--api-key-env nameEnvironment variable containing the provider key; default is
SIGNETT_AGENT_API_KEY.
--output pathEvidence JSON file for one Trial or directory for multiple Trials.
--listPrint selected task IDs without opening a browser.
-h, --helpShow command help.

CLI provider values override values saved in the suite. The API key is read from the selected environment variable. Signett sends it as a bearer token when it is present and does not write it to Evidence.

Agent suite shape

Use defineAgentTestSuite() from @signett/eval/agent to validate a JavaScript suite. JSON suites can describe tasks and provider settings but cannot implement lifecycle or oracle functions.

Field or hookPurpose
schemaVersionMust be 1.
idStable lower-kebab-case suite ID.
providerOptional endpoint, model, and apiKeyEnv defaults.
application.idStable application ID.
application.urlPage URL or function returning it.
application.browserHeadless-browser options such as chromePath or extra Chrome args.
application.prepare()Start or provision dependencies before each Trial.
application.reset()Restore authoritative state before each Trial.
application.snapshot()Capture application state before and after the agent run.
application.establishSession()Establish fresh-profile authentication after opening the page.
application.runtimeEvidence()Collect application-owned runtime evidence.
application.grade()Return the authoritative and safe-success grade.
application.cleanup()Release Trial resources even after a failed Trial.
application.recordPayloadsOpt into recording tool arguments/results; defaults to false.
tasksOne or more saved prompts, expectations, and budgets.
provenanceApplication-owned version or environment metadata.
createComplete()Optional custom model-completion adapter.

A task may require or forbid tool names and set maxToolErrors. Its budgets can limit total time, per-tool time, model steps, tool calls, and retained result characters. Defaults are 120 seconds, 45 seconds per tool, 8 model steps, 32 calls, and 20,000 result characters.

Each Trial uses a fresh browser profile. By default, Evidence includes tool names and event metadata but redacts tool arguments and results. Prefer an application-owned oracle for consequential jobs; the fallback interface grade is not authoritative.

signett eval

Run a portable evaluation definition with Cases, conditions, adapters, and an oracle.

text
signett eval [evaluation.mjs] [options]
OptionMeaning
--case id[,id]Select Cases.
--condition id[,id]Select conditions.
--trials nTrials per Case and condition; defaults to 5.
--baseline idCondition used as the report baseline.
--output pathEvidence and report output directory.
--against report.jsonCompare the new report with a reviewed baseline.
--max-safe-regression nAllowed safe-success decrease from 0 through 1.
--max-duration-ratio nOptional duration regression ratio.
--max-token-ratio nOptional token regression ratio.
--listPrint selected Cases and conditions.
--dry-runPrint the schedule without running Trials.
-h, --helpShow command help.

signett check

Compare an existing candidate report with a reviewed baseline without rerunning Trials.

text
signett check candidate/report.json --against baseline/report.json [options]

--against is required. The command also accepts --output, --max-safe-regression, --max-duration-ratio, and --max-token-ratio. It writes check.json and check.md, prints the reasons for any regression, and exits unsuccessfully when the policy fails.

Continue with the headless agent codelab or the authenticated evaluation codelab.

Your product capabilities, directly usable by agents.