Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add timoshinoleg-eng/1c-ai-workbench --skill web-testgit clone --depth 1 https://github.com/timoshinoleg-eng/1c-ai-workbenchWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/timoshinoleg-eng/1c-ai-workbench/web-test)<a href="https://agentmods.dev/skills/timoshinoleg-eng/1c-ai-workbench/web-test"><img src="https://agentmods.dev/badge/skills/timoshinoleg-eng/1c-ai-workbench/web-test/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/timoshinoleg-eng/1c-ai-workbench/web-test"><img src="https://agentmods.dev/badge/skills/timoshinoleg-eng/1c-ai-workbench/web-test.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00044 | $0.07572 |
| Opus 5.5 | $0.00018 | $0.03029 |
| Sonnet 5.5 | $0.00009 | $0.01514 |
| Haiku 4.5 | $0.00004 | $0.00757 |
Grade A, and why
web-test scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
86% identical to web-test — 61 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 589 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/web-test — Browser automation for 1C web client
Automates user interactions with 1C:Enterprise web client via Playwright — navigating sections, filling forms, reading tables and reports, filtering lists.
Quick start
RUN="${CLAUDE_SKILL_DIR}/scripts/run.mjs"
# One-shot: opens browser → runs script → closes browser → exits
node $RUN run http://localhost:8081/bpdemo test-scenario.js
# Or pipe inline:
cat <<'SCRIPT' | node $RUN run http://localhost:8081/bpdemo -
await navigateSection('Продажи');
await openCommand('Заказы клиентов');
await clickElement('Создать');
await fillFields({ 'Клиент': 'Альфа' });
await clickElement('Провести и закрыть');
SCRIPT
Setup (first time)
cd "${CLAUDE_SKILL_DIR}/scripts" && npm install
Requires Node.js 18+. npm install downloads Playwright and Chromium.
URL resolution
Read .v8-project.json from project root. Each database has id and optional webUrl.
Construct URL as http://localhost:8081/<id> or use webUrl if set.
Use /web-publish first if the database is not published.
Execution modes
Autonomous mode (preferred for complete scenarios)
node $RUN run <url> script.js # exits when done, no session
Interactive mode (step-by-step development)
# 1. Start session (run_in_background=true, prints JSON when ready)
node $RUN start <url>
# 2. Execute scripts against running session
cat <<'SCRIPT' | node $RUN exec -
const form = await getFormState();
console.log(JSON.stringify(form, null, 2));
SCRIPT
# 2b. Execute without video recording (for debugging/testing)
cat script.js | node $RUN exec - --no-record
# 2c. Override exec HTTP timeout (default 30 min). Use for long scripts
# such as multi-block recordings + addNarration.
cat script.js | node $RUN exec - --timeout-min=120
cat script.js | node $RUN exec - --timeout=7200000
WEB_TEST_EXEC_TIMEOUT_MS=7200000 node $RUN exec script.js
# 3. Screenshot
node $RUN shot result.png
# 4. Stop (logout + close)
node $RUN stop
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- .gitignore 56 B
- recording.md 15 KB
- regress.md 21 KB
- scripts/browser.mjs 3.2 KB runs code
- scripts/cli/commands/exec.mjs 1.3 KB runs code
- scripts/cli/commands/run.mjs 764 B runs code
- scripts/cli/commands/shot.mjs 638 B runs code
- scripts/cli/commands/start.mjs 1000 B runs code
- scripts/cli/commands/status.mjs 485 B runs code
- scripts/cli/commands/stop.mjs 555 B runs code
- scripts/cli/commands/test.mjs 20 KB runs code
- scripts/cli/exec-context.mjs 5.2 KB runs code
- scripts/cli/server.mjs 1.3 KB runs code
- scripts/cli/session.mjs 724 B runs code
- scripts/cli/test-runner/assertions.mjs 2.9 KB runs code
- scripts/cli/test-runner/discover.mjs 1.7 KB runs code
- scripts/cli/test-runner/reporters.mjs 4.6 KB runs code
- scripts/cli/test-runner/severity.mjs 2.6 KB runs code
- scripts/cli/util.mjs 4.0 KB runs code
- scripts/dom.mjs 2.4 KB runs code
- scripts/dom/_shared.mjs 22 KB runs code
- scripts/dom/edd.mjs 4.2 KB runs code
- scripts/dom/edit-state.mjs 2.0 KB runs code
- scripts/dom/errors-stack.mjs 2.6 KB runs code
- scripts/dom/errors.mjs 6.4 KB runs code
- scripts/dom/filter.mjs 8.3 KB runs code
- scripts/dom/form-state.mjs 1.4 KB runs code
- scripts/dom/forms.mjs 31 KB runs code
- scripts/dom/grid-edit.mjs 14 KB runs code
- scripts/dom/grid.mjs 44 KB runs code
- scripts/dom/nav.mjs 3.9 KB runs code
- scripts/dom/submenu.mjs 7.7 KB runs code
- scripts/engine/core/click.mjs 6.0 KB runs code
- scripts/engine/core/clipboard.mjs 3.6 KB runs code
- scripts/engine/core/errors.mjs 12 KB runs code
- scripts/engine/core/helpers.mjs 6.3 KB runs code
- scripts/engine/core/scroll-horiz.mjs 2.0 KB runs code
- scripts/engine/core/session.mjs 15 KB runs code
- scripts/engine/core/state.mjs 6.6 KB runs code
- scripts/engine/core/wait.mjs 4.0 KB runs code
- scripts/engine/forms/click-form.mjs 5.7 KB runs code
- scripts/engine/forms/click-popup.mjs 4.3 KB runs code
- scripts/engine/forms/close.mjs 2.4 KB runs code
- scripts/engine/forms/fill.mjs 7.6 KB runs code
- scripts/engine/forms/select-value.mjs 54 KB runs code
- scripts/engine/forms/state.mjs 1.4 KB runs code
- scripts/engine/nav/navigation.mjs 10 KB runs code
- scripts/engine/recording/captions.mjs 12 KB runs code
- scripts/engine/recording/capture.mjs 8.6 KB runs code
- scripts/engine/recording/highlight.mjs 16 KB runs code
- scripts/engine/recording/narration.mjs 8.2 KB runs code
- scripts/engine/recording/tts.mjs 6.8 KB runs code
- scripts/engine/spreadsheet/spreadsheet.mjs 22 KB runs code
- scripts/engine/table/click-cell.mjs 11 KB runs code
- scripts/engine/table/click-row.mjs 4.3 KB runs code
- scripts/engine/table/filter.mjs 11 KB runs code
- scripts/engine/table/grid-toggle.mjs 2.9 KB runs code
- scripts/engine/table/grid.mjs 4.1 KB runs code
- scripts/engine/table/row-fill.mjs 44 KB runs code
- scripts/package-lock.json 1.6 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 589 lines · 44 tokens per session scan A 73fef9560cd7
web-test is a skill published in the GitHub repository timoshinoleg-eng/1c-ai-workbench (0 stars, last pushed 1mo ago), licensed MIT. It adds 44 tokens to every session and 7,572 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 86% identical to web-test, differing in 61 lines, and is treated as a copy.
Other skills, from other repositories
1c-web-test
A browser-automation tool for testing the 1C:Enterprise web client. It uses scripted actions to navigate screens, fill forms, read tables and reports, and apply filters.
1c-web-test
A browser-testing tool for the 1C:Enterprise web client. It uses Playwright to navigate screens, fill forms, read tables and reports, and apply filters.
web-test
A skill for checking a 1C system through its web interface in an interactive browser session.
playwright-test
A skill for creating automated browser tests with Playwright, a tool that checks websites by controlling a real browser. The provided information does not describe its other uses.
webapp-testing
Start/reuse a local app, wait for readiness, inspect rendered state/console/network, act from observed selectors, and verify with evidence.
actionbook-web-test
Run browser-based web tests against websites using Actionbook CLI. Activate when the user wants to test a website workflow, run smoke tests, verify a user flow, check if a web application works, run regression tests, or validate browser-based interactions. Supports test definition, execution, assertion, reporting, and…