diff --git a/assets/images/rook/commands/rook-command-agent.png b/assets/images/rook/commands/rook-command-agent.png
index 4429eb65b..19d787f32 100644
Binary files a/assets/images/rook/commands/rook-command-agent.png and b/assets/images/rook/commands/rook-command-agent.png differ
diff --git a/assets/images/rook/commands/rook-command-ask.png b/assets/images/rook/commands/rook-command-ask.png
index 3b6d987fd..e2d3897e1 100644
Binary files a/assets/images/rook/commands/rook-command-ask.png and b/assets/images/rook/commands/rook-command-ask.png differ
diff --git a/assets/images/rook/commands/rook-command-auth.png b/assets/images/rook/commands/rook-command-auth.png
index d53498d27..fb56ced07 100644
Binary files a/assets/images/rook/commands/rook-command-auth.png and b/assets/images/rook/commands/rook-command-auth.png differ
diff --git a/assets/images/rook/commands/rook-command-docs.png b/assets/images/rook/commands/rook-command-docs.png
index fbebef6de..e799506cc 100644
Binary files a/assets/images/rook/commands/rook-command-docs.png and b/assets/images/rook/commands/rook-command-docs.png differ
diff --git a/assets/images/rook/commands/rook-command-doctor.png b/assets/images/rook/commands/rook-command-doctor.png
index a625799fe..e06111ee9 100644
Binary files a/assets/images/rook/commands/rook-command-doctor.png and b/assets/images/rook/commands/rook-command-doctor.png differ
diff --git a/assets/images/rook/commands/rook-command-env.png b/assets/images/rook/commands/rook-command-env.png
index 0a9d64122..8adcd00a5 100644
Binary files a/assets/images/rook/commands/rook-command-env.png and b/assets/images/rook/commands/rook-command-env.png differ
diff --git a/assets/images/rook/commands/rook-command-explore.png b/assets/images/rook/commands/rook-command-explore.png
index e440f1db0..ef5b53b7b 100644
Binary files a/assets/images/rook/commands/rook-command-explore.png and b/assets/images/rook/commands/rook-command-explore.png differ
diff --git a/assets/images/rook/commands/rook-command-export.png b/assets/images/rook/commands/rook-command-export.png
index 5d20a73e2..2bf29a035 100644
Binary files a/assets/images/rook/commands/rook-command-export.png and b/assets/images/rook/commands/rook-command-export.png differ
diff --git a/assets/images/rook/commands/rook-command-generate.png b/assets/images/rook/commands/rook-command-generate.png
index 23f7640b4..bae8e00ca 100644
Binary files a/assets/images/rook/commands/rook-command-generate.png and b/assets/images/rook/commands/rook-command-generate.png differ
diff --git a/assets/images/rook/commands/rook-command-guide.png b/assets/images/rook/commands/rook-command-guide.png
index 86b2b3269..0f50f59e4 100644
Binary files a/assets/images/rook/commands/rook-command-guide.png and b/assets/images/rook/commands/rook-command-guide.png differ
diff --git a/assets/images/rook/commands/rook-command-help.png b/assets/images/rook/commands/rook-command-help.png
index a34f66242..9900eec59 100644
Binary files a/assets/images/rook/commands/rook-command-help.png and b/assets/images/rook/commands/rook-command-help.png differ
diff --git a/assets/images/rook/commands/rook-command-login.png b/assets/images/rook/commands/rook-command-login.png
index e98ea8847..53069dbb7 100644
Binary files a/assets/images/rook/commands/rook-command-login.png and b/assets/images/rook/commands/rook-command-login.png differ
diff --git a/assets/images/rook/commands/rook-command-logout.png b/assets/images/rook/commands/rook-command-logout.png
index 137b2b45e..e781cebed 100644
Binary files a/assets/images/rook/commands/rook-command-logout.png and b/assets/images/rook/commands/rook-command-logout.png differ
diff --git a/assets/images/rook/commands/rook-command-mcp.png b/assets/images/rook/commands/rook-command-mcp.png
index 7853110f0..530598292 100644
Binary files a/assets/images/rook/commands/rook-command-mcp.png and b/assets/images/rook/commands/rook-command-mcp.png differ
diff --git a/assets/images/rook/commands/rook-command-plan.png b/assets/images/rook/commands/rook-command-plan.png
index 7fecec19e..70298fc77 100644
Binary files a/assets/images/rook/commands/rook-command-plan.png and b/assets/images/rook/commands/rook-command-plan.png differ
diff --git a/assets/images/rook/commands/rook-command-profile.png b/assets/images/rook/commands/rook-command-profile.png
index 4dd617fe0..d59fe1543 100644
Binary files a/assets/images/rook/commands/rook-command-profile.png and b/assets/images/rook/commands/rook-command-profile.png differ
diff --git a/assets/images/rook/commands/rook-command-project.png b/assets/images/rook/commands/rook-command-project.png
index e95c3a9b7..93fccebb2 100644
Binary files a/assets/images/rook/commands/rook-command-project.png and b/assets/images/rook/commands/rook-command-project.png differ
diff --git a/assets/images/rook/commands/rook-command-report.png b/assets/images/rook/commands/rook-command-report.png
index 4e480c91e..904f22570 100644
Binary files a/assets/images/rook/commands/rook-command-report.png and b/assets/images/rook/commands/rook-command-report.png differ
diff --git a/assets/images/rook/commands/rook-command-run.png b/assets/images/rook/commands/rook-command-run.png
index 597bc3ecc..1c8d8f091 100644
Binary files a/assets/images/rook/commands/rook-command-run.png and b/assets/images/rook/commands/rook-command-run.png differ
diff --git a/assets/images/rook/commands/rook-command-runs.png b/assets/images/rook/commands/rook-command-runs.png
index d2a9f2cbc..8a345ec02 100644
Binary files a/assets/images/rook/commands/rook-command-runs.png and b/assets/images/rook/commands/rook-command-runs.png differ
diff --git a/assets/images/rook/commands/rook-command-scenarios.png b/assets/images/rook/commands/rook-command-scenarios.png
index 1b7306264..50f67034a 100644
Binary files a/assets/images/rook/commands/rook-command-scenarios.png and b/assets/images/rook/commands/rook-command-scenarios.png differ
diff --git a/assets/images/rook/commands/rook-command-status.png b/assets/images/rook/commands/rook-command-status.png
index 0072ca46e..50b8275b1 100644
Binary files a/assets/images/rook/commands/rook-command-status.png and b/assets/images/rook/commands/rook-command-status.png differ
diff --git a/assets/images/rook/commands/rook-command-sync.png b/assets/images/rook/commands/rook-command-sync.png
index 43d26717e..8cb159938 100644
Binary files a/assets/images/rook/commands/rook-command-sync.png and b/assets/images/rook/commands/rook-command-sync.png differ
diff --git a/assets/images/rook/commands/rook-command-ui.png b/assets/images/rook/commands/rook-command-ui.png
index a0e568b4d..f06802856 100644
Binary files a/assets/images/rook/commands/rook-command-ui.png and b/assets/images/rook/commands/rook-command-ui.png differ
diff --git a/assets/images/rook/commands/rook-command-update.png b/assets/images/rook/commands/rook-command-update.png
index 820185846..a479f1e20 100644
Binary files a/assets/images/rook/commands/rook-command-update.png and b/assets/images/rook/commands/rook-command-update.png differ
diff --git a/assets/images/rook/commands/rook-command-whoami.png b/assets/images/rook/commands/rook-command-whoami.png
index 57af64777..be9b65ce1 100644
Binary files a/assets/images/rook/commands/rook-command-whoami.png and b/assets/images/rook/commands/rook-command-whoami.png differ
diff --git a/assets/images/rook/commands/rook-reference-doctor.png b/assets/images/rook/commands/rook-reference-doctor.png
index 9c6765fed..fd07eba86 100644
Binary files a/assets/images/rook/commands/rook-reference-doctor.png and b/assets/images/rook/commands/rook-reference-doctor.png differ
diff --git a/assets/images/rook/guides/rook-tui-agent-picker.png b/assets/images/rook/guides/rook-tui-agent-picker.png
index 55e3634b0..35263e077 100644
Binary files a/assets/images/rook/guides/rook-tui-agent-picker.png and b/assets/images/rook/guides/rook-tui-agent-picker.png differ
diff --git a/assets/images/rook/guides/rook-tui-env-values.png b/assets/images/rook/guides/rook-tui-env-values.png
index 78d185257..b4ee860f8 100644
Binary files a/assets/images/rook/guides/rook-tui-env-values.png and b/assets/images/rook/guides/rook-tui-env-values.png differ
diff --git a/assets/images/rook/guides/rook-tui-explore-confirm.png b/assets/images/rook/guides/rook-tui-explore-confirm.png
index 8be14bc15..d223bf6f8 100644
Binary files a/assets/images/rook/guides/rook-tui-explore-confirm.png and b/assets/images/rook/guides/rook-tui-explore-confirm.png differ
diff --git a/assets/images/rook/guides/rook-tui-generate-plan.png b/assets/images/rook/guides/rook-tui-generate-plan.png
index e07821b23..698c09e75 100644
Binary files a/assets/images/rook/guides/rook-tui-generate-plan.png and b/assets/images/rook/guides/rook-tui-generate-plan.png differ
diff --git a/assets/images/rook/guides/rook-tui-generated-scenarios.png b/assets/images/rook/guides/rook-tui-generated-scenarios.png
index 5e29aa565..d5727d062 100644
Binary files a/assets/images/rook/guides/rook-tui-generated-scenarios.png and b/assets/images/rook/guides/rook-tui-generated-scenarios.png differ
diff --git a/assets/images/rook/guides/rook-tui-get-started.png b/assets/images/rook/guides/rook-tui-get-started.png
index 6312b8de1..8e33de63a 100644
Binary files a/assets/images/rook/guides/rook-tui-get-started.png and b/assets/images/rook/guides/rook-tui-get-started.png differ
diff --git a/assets/images/rook/guides/rook-tui-local-ui.png b/assets/images/rook/guides/rook-tui-local-ui.png
index 804ab179d..ce196b22d 100644
Binary files a/assets/images/rook/guides/rook-tui-local-ui.png and b/assets/images/rook/guides/rook-tui-local-ui.png differ
diff --git a/assets/images/rook/guides/rook-tui-mcp-list.png b/assets/images/rook/guides/rook-tui-mcp-list.png
index dd649adc7..c3ba84996 100644
Binary files a/assets/images/rook/guides/rook-tui-mcp-list.png and b/assets/images/rook/guides/rook-tui-mcp-list.png differ
diff --git a/assets/images/rook/guides/rook-tui-profile-authoring.png b/assets/images/rook/guides/rook-tui-profile-authoring.png
index fbc844b33..a03f30d20 100644
Binary files a/assets/images/rook/guides/rook-tui-profile-authoring.png and b/assets/images/rook/guides/rook-tui-profile-authoring.png differ
diff --git a/assets/images/rook/guides/rook-tui-profile-picker.png b/assets/images/rook/guides/rook-tui-profile-picker.png
index eed011072..5d799843f 100644
Binary files a/assets/images/rook/guides/rook-tui-profile-picker.png and b/assets/images/rook/guides/rook-tui-profile-picker.png differ
diff --git a/assets/images/rook/guides/rook-tui-profile-verified.png b/assets/images/rook/guides/rook-tui-profile-verified.png
index 9bd92d7cc..91865f11b 100644
Binary files a/assets/images/rook/guides/rook-tui-profile-verified.png and b/assets/images/rook/guides/rook-tui-profile-verified.png differ
diff --git a/assets/images/rook/guides/rook-tui-report.png b/assets/images/rook/guides/rook-tui-report.png
index a2c2ee82b..0fccc35de 100644
Binary files a/assets/images/rook/guides/rook-tui-report.png and b/assets/images/rook/guides/rook-tui-report.png differ
diff --git a/assets/images/rook/guides/rook-tui-run-plan.png b/assets/images/rook/guides/rook-tui-run-plan.png
index 1c79bbbc9..06f85596a 100644
Binary files a/assets/images/rook/guides/rook-tui-run-plan.png and b/assets/images/rook/guides/rook-tui-run-plan.png differ
diff --git a/assets/images/rook/guides/rook-tui-run-progress.png b/assets/images/rook/guides/rook-tui-run-progress.png
index af7af7eed..e19d04726 100644
Binary files a/assets/images/rook/guides/rook-tui-run-progress.png and b/assets/images/rook/guides/rook-tui-run-progress.png differ
diff --git a/assets/images/rook/guides/rook-tui-scenarios.png b/assets/images/rook/guides/rook-tui-scenarios.png
index 08d0f0a88..55b1006c3 100644
Binary files a/assets/images/rook/guides/rook-tui-scenarios.png and b/assets/images/rook/guides/rook-tui-scenarios.png differ
diff --git a/assets/images/rook/guides/rook-tui-sync.png b/assets/images/rook/guides/rook-tui-sync.png
index 93b30c286..ca0b65971 100644
Binary files a/assets/images/rook/guides/rook-tui-sync.png and b/assets/images/rook/guides/rook-tui-sync.png differ
diff --git a/assets/images/rook/rook-local-attack-intent.png b/assets/images/rook/rook-local-attack-intent.png
new file mode 100644
index 000000000..4f0504f0e
Binary files /dev/null and b/assets/images/rook/rook-local-attack-intent.png differ
diff --git a/assets/images/rook/rook-local-coverage-gaps.png b/assets/images/rook/rook-local-coverage-gaps.png
new file mode 100644
index 000000000..2aa2b6d69
Binary files /dev/null and b/assets/images/rook/rook-local-coverage-gaps.png differ
diff --git a/docs/agent-assurance-ci-cd.md b/docs/agent-assurance-ci-cd.md
index 4b4fbec7d..6bd9aefa1 100644
--- a/docs/agent-assurance-ci-cd.md
+++ b/docs/agent-assurance-ci-cd.md
@@ -84,7 +84,7 @@ import VerifiedTag from '@site/src/component/verifiedTag';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-11"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -245,7 +245,7 @@ Use an explicit shell error policy, such as set -euo pipefail in Ba
## Gate on Completion and Verdicts
-rook run --json produces one JSON document on stdout, not NDJSON. The document includes ok, run_id, halted, and, when available, report.totals.
+rook run --json produces one JSON document on stdout, not NDJSON; see [structured output](/support/docs/agent-assurance-command-reference/#structured-output-and-progress) for the other commands that do. The document includes ok, run_id, halted, and, when available, report.totals.
A process exit code of zero is **not** an agent-quality gate. The current run/report paths do not implement the older documented 0/1/2/3/4 verdict mapping. A halted run or a run with failed verdicts can still produce an outcome document. Inspect its contents.
diff --git a/docs/agent-assurance-command-reference.md b/docs/agent-assurance-command-reference.md
index c451d6b84..ae0196896 100644
--- a/docs/agent-assurance-command-reference.md
+++ b/docs/agent-assurance-command-reference.md
@@ -96,7 +96,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-25"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -138,7 +138,7 @@ rook profile add --help
Inside the terminal, use `/help run`. Do not paste slash commands into a normal shell.
-The screenshots below were captured inside the **Rook 0.1.5 interactive TUI**, using /help <command> in a saved demo workspace. They show command help, not completed paid operations. Only the Rook content is captured; no desktop, window title, or browser chrome is included.
+The screenshots below were captured inside the **Rook 0.1.11 interactive TUI**, using /help <command> in the quickstart workspace. They show command help, not completed paid operations. Only the Rook content is captured; no desktop, window title, or browser chrome is included.
## Terminal and Help {#terminal-and-help}
@@ -173,7 +173,7 @@ Run Rook from the intended workspace. The current directory selects the local rook ask to ask a question or describe a testing task in natural language. This is Rook's own model-backed operation and can spend Rook credits; it is different from asking a coding assistant that has loaded the Rook skill.
-
+
#### Syntax {#rook-ask-syntax}
@@ -202,7 +202,7 @@ For deterministic automation, prefer the explicit command and flags. Natural lan
Use /guide when you know you want to test an agent but do not yet know which command comes next.
-
+
#### Syntax {#guide-syntax}
@@ -226,7 +226,7 @@ The guide also lists the commands that spend credits (explore, /help to list the current command surface or inspect one command in full.
-
+
#### Syntax {#help-syntax}
@@ -248,9 +248,9 @@ Help, slash-command completion, and shell parsing are derived from the same comm
### /docs {#docs}
-Use /docs to print and open the public Rook repository.
+Use /docs to print and open the Rook documentation site.
-
+
#### Syntax {#docs-syntax}
@@ -296,7 +296,7 @@ There is no rook exit shell command.
Use /login when Rook has no stored credential or the existing token is invalid.
-
+
#### Syntax {#login-syntax}
@@ -345,7 +345,7 @@ If a browser cannot open, follow the URL or instruction printed by the command.
Use /auth to verify the effective credentials against the Rook controller.
-
+
#### Syntax {#auth-syntax}
@@ -386,7 +386,7 @@ Stored authentication is shared by sessions using the same Rook home, profile, a
Use rook whoami outside the interactive terminal to verify which TestMu AI account is authenticated.
-
+
#### Syntax {#rook-whoami-syntax}
@@ -425,7 +425,7 @@ Check ROOK_ENV and the exported LT_USERNAME/LT_A
Use /logout to revoke the current token and remove stored Rook credentials.
-
+
#### Syntax {#logout-syntax}
@@ -478,7 +478,7 @@ Exported LT_USERNAME and LT_ACCESS_KEY are separate fr
Use /plan to check the TestMu AI account plan and credit balance before generating or executing a suite.
-
+
#### Syntax {#plan-syntax}
@@ -521,7 +521,7 @@ Nothing in the project is changed. The command reads the authenticated account a
Use /project to choose the TestMu AI project that owns discovered agents, versions, and runs in the current workspace.
-
+
#### Syntax {#project-syntax}
@@ -563,7 +563,7 @@ If access to the active project is revoked, Rook asks you to choose another proj
Use /explore to tell Rook what local material describes your agent. The target can be a PRD, an office document, an image, a documentation folder, an agent source directory, or a complete local repository.
-
+
#### Syntax {#explore-syntax}
@@ -634,7 +634,7 @@ A PRD or knowledge base describes what should happen. It cannot prove which tool
Use /agent when the selected project contains several discovered agents or when you need to confirm which agent later phases use.
-
+
#### Syntax {#agent-syntax}
@@ -670,7 +670,7 @@ Agent removal is intentionally not a command. Rook's project data is stored as r
A profile names the reviewable hook scripts Rook uses to invoke a live agent. Use /profile to generate those scripts from a prompt, repair them from a failure, verify the target, inspect lifecycle phases, or select a profile.
-
+
#### Syntax {#profile-syntax}
@@ -712,7 +712,7 @@ Rook does not provide profile edit or remove commands. Profiles are plain files
Use /generate after exploration to write test scenarios for the active agent's discovered features.
-
+
#### Syntax {#generate-syntax}
@@ -745,7 +745,7 @@ Generated files remain editable. A scenario whose origin is human is not silentl
Use /scenarios to inspect the active agent's suite and curate what runs by default.
-
+
#### Syntax {#scenarios-syntax}
@@ -774,7 +774,7 @@ Pass IDs as separate arguments for include, exclude, and delete, for example /status to understand where the current machine stands before synchronizing or running tests.
-
+
#### Syntax {#status-syntax}
@@ -805,7 +805,7 @@ Status exits successfully even when the tree is not clean; the state is data, no
Use /sync after exploration, generation, profile changes, or manual edits to record the local project tree upstream.
-
+
#### Syntax {#sync-syntax}
@@ -840,7 +840,7 @@ A timeline run requires the agent to have been synchronized at least once. When
Use /run to plan a selection, execute the active profile's lifecycle hooks, collect evidence, and judge each acceptance criterion.
-
+
#### Syntax {#run-syntax}
@@ -906,7 +906,7 @@ The target's writes are real. Rook cannot roll them back. Use staging data and s
Use /runs sync when a run completed locally but a network or service interruption prevented all verdicts from reaching upstream.
-
+
#### Syntax {#runs-syntax}
@@ -934,7 +934,7 @@ This command repairs result synchronization. Use /sync for agent sp
Use /report to read a stored run from disk. Without a run ID, Rook uses the most recent run for the active agent.
-
+
#### Syntax {#rook-report-syntax}
@@ -1004,7 +1004,7 @@ Use rook ui to open synchronized results in the [Web UI](/support/d
Use /ui to review synchronized results in the hosted TestMu AI application. Add --local to serve the evidence currently on disk.
-
+
#### Syntax {#ui-syntax}
@@ -1061,7 +1061,7 @@ The hosted application starts at **Projects**. Select the project and agent to r
Use /env to manage tokens, endpoint values, and other variables referenced by profiles without writing literal secrets into project files.
-
+
#### Syntax {#env-syntax}
@@ -1119,7 +1119,7 @@ When /profile add finds a credential in supplied material, the gene
Use /mcp to manage MCP servers that Rook can discover or use for read-only verification and controlled tool access.
-
+
#### Interactive syntax {#mcp-interactive-syntax}
@@ -1175,7 +1175,7 @@ Enabled MCP servers in this command remain Rook tools for discovery or independe
Use /doctor as the first diagnostic when Rook cannot authenticate, select a project, reach a service, or start normal work.
-
+
#### Syntax {#doctor-syntax}
@@ -1214,7 +1214,7 @@ Use --session with a recorded Rook session ID to locate its diagnos
Use /update to check for a newer public Rook release. It can also perform an upgrade for a recognized global npm or recorded shell installation, so treat it as an installation-changing command, not a read-only version check.
-
+
#### Syntax {#update-syntax}
@@ -1236,7 +1236,7 @@ The latest public release checked on October 13, 2026 is [0.1.11](https://github
Export a local diagnostic bundle when a support investigation needs more than the error message. The shell command is rook export logs; in the TUI use /export logs.
-
+
```bash
rook export logs --out ./rook-diagnostics.zip
@@ -1288,7 +1288,7 @@ Active project and agent selections, profiles, scenarios, runs, credentials, and
Only use a flag where `rook help ` lists it.
-The plan, status, run, and normal report commands have structured output. Commands such as explore, generate, sync, profile operations, paid report --rca, and update can emit text even when they accept --json. Check the actual stdout before parsing it, then inspect the relevant saved files or make a separate structured read.
+With --json, plan, status, run, a normal report, scenarios list, project --workspace, mcp, and ask write one JSON document to stdout. Commands such as explore, generate, sync, profile operations, paid report --rca, and update can emit text even when they accept --json. Check the actual stdout before parsing it, then inspect the relevant saved files or make a separate structured read.
Keep stdout and stderr separate when saving JSON: do not use 2>&1 for a machine-readable result file. Refusals and parser errors can leave stdout empty. A failure document may contain error or reason; ok: true can accompany a discarded run, so it is not sufficient to establish success. See the [public headless contract](https://github.com/LambdaTest/rook/blob/main/skill-installer/skills/references/headless-contract.md).
diff --git a/docs/agent-assurance-connect-and-explore-agents.md b/docs/agent-assurance-connect-and-explore-agents.md
index 2d941a14c..4035652bd 100644
--- a/docs/agent-assurance-connect-and-explore-agents.md
+++ b/docs/agent-assurance-connect-and-explore-agents.md
@@ -127,7 +127,7 @@ Rook scans deterministically first, then gives its discovery subagent read tools
This real TUI capture shows `/explore .` finding the public triage sample and pausing for registration. Read the discovery summary before choosing **yes**; arrow keys change the choice, Enter submits it, and Esc declines. The progress line shows the current task and credit use while the footer keeps the selected project visible.
-
+
After approval, wait for agent and feature analysis to finish. Review the findings, then select the resulting agent with `/agent`. Discovery writes local records; it does not mean a profile has been verified, scenarios have been generated, or a run has passed.
@@ -279,9 +279,9 @@ Rook also refuses two paths to keep read scope tight:
Launch `rook` in your workspace, then enter `/agent` in the interactive TUI. The picker lists agents in the selected project. Type to filter, use the arrow keys to move, and press Enter to select an agent or Esc to go back. Check the active agent in the footer before exploring or running tests.
-
+
-This saved demo has one agent. Projects containing several agents show more choices in the same picker. You can also select a known agent ID directly:
+This quickstart project has one agent. Projects containing several agents show more choices in the same picker. You can also select a known agent ID directly:
diff --git a/docs/agent-assurance-mcp.md b/docs/agent-assurance-mcp.md
index 4a5fbbc9f..825b4cab6 100644
--- a/docs/agent-assurance-mcp.md
+++ b/docs/agent-assurance-mcp.md
@@ -209,7 +209,7 @@ rook mcp list --json
Each row reports the server name, origin, transport, state, source, and connection or tool status when available.
-
+
This actual first-use capture has no MCP servers: the triage sample is reached by HTTP, not MCP. It is an empty configuration, not a failed connection. After adding a server, repeat `/mcp list` and inspect it with `/mcp get ` before approving or using it. Declaring a server alone does not prove its tools work.
diff --git a/docs/agent-assurance-overview.md b/docs/agent-assurance-overview.md
index e2eb5b783..304eccfcb 100644
--- a/docs/agent-assurance-overview.md
+++ b/docs/agent-assurance-overview.md
@@ -102,7 +102,7 @@ import ThemedImage from '@theme/ThemedImage';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -130,9 +130,9 @@ Commands and stored file formats can change. Test against a disposable or stagin
Launch `rook` from your agent workspace to open the interactive terminal UI (TUI). Enter slash commands such as `/agent`, `/profile`, and `/report` at its prompt; commands beginning with `rook` belong in your regular shell.
-
+
-This TUI capture shows a new session before sign-in and before an agent has been explored. Sign in with `/login`, then select a project with the arrow keys and Enter. The [quickstart](/support/docs/agent-assurance-quickstart/) shows the actual exploration, profile authoring, generation, approval, execution, and report screens in sequence.
+This TUI capture shows a signed-in session in a new workspace, before an agent has been explored. If you are not signed in yet, enter `/login` first; then select a project with the arrow keys and Enter. The [quickstart](/support/docs/agent-assurance-quickstart/) shows the actual exploration, profile authoring, generation, approval, execution, and report screens in sequence.
## Agent Assurance and Agent Testing {#conversation-testing-and-autonomous-testing}
diff --git a/docs/agent-assurance-quickstart.md b/docs/agent-assurance-quickstart.md
index b654942ba..1ba8215f5 100644
--- a/docs/agent-assurance-quickstart.md
+++ b/docs/agent-assurance-quickstart.md
@@ -98,7 +98,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -114,7 +114,7 @@ Install → launch Rook → sign in → select a project
→ generate and review scenarios → sync → approve one run → inspect evidence
```
-The interactive workflow and terminal screenshots were tested with **Rook 0.1.5** on September 28, 2026. Discovery, profile generation, scenario generation, and judging use TestMu AI credits; even a small suite can involve several model calls. Review the proposed work and credit balance before approving it. The browser examples below are separately identified saved runs.
+The interactive workflow and terminal screenshots were tested with **Rook 0.1.11** on October 13, 2026. Discovery, profile generation, scenario generation, and judging use TestMu AI credits; even a small suite can involve several model calls. Review the proposed work and credit balance before approving it. The browser examples below are separately identified saved runs.
Already have a live agent? Follow the same sequence with your own [source or requirements](/support/docs/agent-assurance-connect-and-explore-agents/) and [invocation profile](/support/docs/rook-profiles-and-hooks/#add-a-profile-interactively).
@@ -140,7 +140,7 @@ npm install -g @testmuai/rook
PowerShell on Windows x64:
```powershell
-npm.cmd install -g @testmuai/rook@0.1.11
+npm.cmd install -g @testmuai/rook
```
Then check your installation:
@@ -208,7 +208,7 @@ Invoke-RestMethod -Uri 'http://127.0.0.1:19110/v1/triage' -Method Post -ContentT
The response should say T-1043 triaged as S1 and assigned to platform. and include the recorded tool steps.
-### 2. Open the TUI, Sign In, and Explore {#open-the-tui-and-explore}
+### 2. Open the TUI, sign in, and explore {#open-the-tui-and-explore}
Open the sample folder in your Rook terminal:
@@ -228,7 +228,7 @@ rook.cmd
The Rook banner, command prompt, and footer confirm that you are in interactive mode. If you are already signed in, Rook can open the project chooser automatically:
-
+
If not signed in, enter `/login`, complete the browser flow, and return to this terminal. Use `/doctor` to check readiness and `/plan` to check credits. At a chooser, use arrow keys and Enter; Esc goes back. At the prompt, Tab completes commands. The remaining commands belong **inside this TUI**, not in your shell.
@@ -250,7 +250,7 @@ Run exploration only after the intended test project is selected:
Rook reads the sample and shows discovery progress. When it proposes an agent, review the name, source path, and purpose before choosing **yes** to register it. This is an actual exploration of the public sample:
-
+
Wait for exploration to finish, then open the agent picker:
@@ -278,7 +278,7 @@ Use concurrency 1.
Rook generates the hook and verifies it against the running sample. Approve only the intended local HTTP call and script work; do not approve server startup, dependency installation, or unrelated commands. Wait for the result before continuing.
-
+
This checkpoint shows authoring in progress. Read the exact requested file or command, then approve once with **yes** if it matches the sample setup; the prompt is not evidence that verification has passed.
@@ -294,7 +294,7 @@ Inspect and test the generated result inside the TUI:
Review the generated profiles/local-triage.yaml and scripts/ files below the active agent directory. A successful probe should return the real answer and four tool calls. Stop here if the probe fails; generation and testing will not repair a broken connection automatically.
-
+
This is the successful connection checkpoint: the hook answered, the generated profile was saved, and the footer now includes `local-triage`. Profile verification is not a scenario verdict.
@@ -308,7 +308,7 @@ The sample needs only an execute hook. Use [additional lifecycle ho
Before writing scenarios, Rook shows the plan and offers **proceed**, **discard**, or **change**. Check both the included cases and the features it intentionally leaves uncovered:
-
+
Choose **proceed** only if the scope matches the two requested tickets. Wait for writing to finish, then inspect the saved suite:
@@ -316,10 +316,27 @@ Choose **proceed** only if the scope matches the two requested tickets. Wait for
/scenarios list
```
-
+
The count is a generation target, not a guarantee. In this capture, two scenarios were written and both are runnable against `local-triage`; neither has passed yet. Review the resulting files before running them. Check that every criterion can be evaluated from the answer or the calls your hook actually returns. For example, a JSON-path check against $.steps cannot inspect that field if your hook returned only an answer string.
+Also read each scenario's `calls` list. A `called_with` check needs the arguments to match; with empty `arguments: {}` there is nothing to compare, and the run reports that call as **Unable to Verify** even when the agent made it. In this capture, both generated scenarios had such checks. Add the arguments you expect, or use `called` when only the call matters, then save the file:
+
+```yaml
+calls:
+ - tool: get_ticket
+ expect: called_with
+ arguments: { ticket_id: T-1043 }
+ - tool: set_severity
+ expect: called_with
+ arguments: { ticket_id: T-1043, severity: S1 }
+ - tool: assign_team
+ expect: called_with
+ arguments: { ticket_id: T-1043, team: platform }
+ - tool: reply_to_customer
+ expect: called
+```
+
Choose the scenario for **T-1043**. Do not assume it will always be SC-002.
### 5. Sync, then run one scenario
@@ -330,21 +347,21 @@ Choose the scenario for **T-1043**. Do not assume it will always be SC-002
Wait for the agent to be recorded upstream before starting the run:
-
+
```text
/run --only --profile local-triage --concurrency 1 --name first-triage-run
```
-Replace the placeholder with the generated scenario ID. Review the selected scenario and active profile before proceeding. This plan selects only `SC-002` and explicitly skips `SC-001`:
+Replace the placeholder with the generated scenario ID. Review the selected scenario and active profile before proceeding. This plan selects only `SC-001` and explicitly skips `SC-002`:
-
+
Choose **proceed** to execute this reviewed scope, **discard** to run nothing, or **change** to revise it. Read any additional permission prompts before approving. The plan is not a fixed credit quote; check `/plan` before starting.
While Rook runs, the scenario row shows its current phase. This capture is in **judging**, with `0/1` completed; it is not a final verdict:
-
+
Wait for completion before opening the report. Press Esc only if you intend to interrupt; stopping Rook does not undo actions already performed by the target.
@@ -358,9 +375,9 @@ First read the report, then choose either UI:
/report
```
-
+
-The report names the saved run and its evidence directory. Check the counts, not just the percentage: this run executed one scenario and left four discovered feature areas untested. Reading `/report` does not rerun the target; do not add `--rca` unless you intend to request additional paid analysis.
+The report names the saved run and its evidence directory. Check the counts, not just the percentage: this run executed one scenario, and four of the five discovered features were not tested. Reading `/report` does not rerun the target; do not add `--rca` unless you intend to request additional paid analysis.
| Review on this machine | Review with your team |
|---|---|
diff --git a/docs/agent-assurance-results-and-evidence.md b/docs/agent-assurance-results-and-evidence.md
index eefa303f4..b6dba3f1d 100644
--- a/docs/agent-assurance-results-and-evidence.md
+++ b/docs/agent-assurance-results-and-evidence.md
@@ -84,7 +84,7 @@ import VerifiedTag from '@site/src/component/verifiedTag';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -232,11 +232,29 @@ Launch `rook` in the workspace containing your saved run. In the interactive TUI
Replace `` with the saved run's ID. `/report` without an ID reads the latest local run. If Rook asks you to sign in, use `/login` and retry the report command. Reading an existing report does not rerun the agent; adding `--rca` can start paid analysis.
-This is the completed report from the Rook 0.1.5 [interactive quickstart](/support/docs/agent-assurance-quickstart/), not a help screen:
+This is the completed report from the Rook 0.1.11 [interactive quickstart](/support/docs/agent-assurance-quickstart/), not a help screen:
-
+
-Read the run ID and name, execution counts, verdicts, and coverage warning together. When the run includes adversarial scenarios, the report adds an **OWASP red-team coverage** table that maps the scenario inventory to OWASP LLM and Agentic entries, and a **Known coverage gaps (unverified)** list. A control with no mapped scenario remains unverified. `100% passed of 1 decided` is one passing case, not complete coverage of the agent. This September 28 terminal run is separate from the saved browser examples above. Use `/help report` for additional output and RCA options.
+Read the run ID and name, execution counts, and verdicts together. When the run includes adversarial scenarios, the report adds an **OWASP red-team coverage** table that maps the scenario inventory to OWASP LLM and Agentic entries, and a **Known coverage gaps (unverified)** list. A control with no mapped scenario remains unverified. `1 of 1 executed · 100% passed` is one passing case, not complete coverage of the agent. This October 13 terminal run is separate from the saved browser examples above. Use `/help report` for additional output and RCA options.
+
+With adversarial scenarios in the inventory, the same report includes the coverage table. This excerpt is from a Rook 0.1.11 run of the triage-service sample on October 13, 2026, with rows elided:
+
+```text
+OWASP red-team coverage (scenario inventory; unmapped controls remain unverified)
+risk | generated | executed | reached | verified | Pass | Fail | Unable to Verify
+redteam | 4 | 0 | 0 | 0 | 0 | 0 | 4
+owasp:asi01 | 1 | 0 | 0 | 0 | 0 | 0 | 1
+owasp:llm01 | 1 | 0 | 0 | 0 | 0 | 0 | 1
+owasp:llm02 | 2 | 0 | 0 | 0 | 0 | 0 | 2
+owasp:llm07 | 1 | 0 | 0 | 0 | 0 | 0 | 1
+...
+Known coverage gaps (unverified):
+ F-001 · cross-session-memory-poisoning: no scenario generated; applicability remains unverified
+ F-003 · retrieval-boundary: no scenario generated; applicability remains unverified
+```
+
+Read the columns left to right. **generated** counts attack scenarios in the inventory and **executed** the ones that ran. **reached** counts attacks with grounded evidence that the mapped control was exercised, and **verified** those that ended in a grounded result. **Pass** means the attack was defended and **Fail** that it compromised the agent; anything else, including an attack that never ran, is **Unable to Verify**. In this run all four attacks were written but marked not runnable, so none executed. A zero row means no scenario covers that entry, not that the agent is safe against it.
For shell-based output or automation:
diff --git a/docs/agent-assurance-run-tests.md b/docs/agent-assurance-run-tests.md
index 040a6dffd..c7dd403e1 100644
--- a/docs/agent-assurance-run-tests.md
+++ b/docs/agent-assurance-run-tests.md
@@ -84,7 +84,7 @@ import VerifiedTag from '@site/src/component/verifiedTag';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -207,7 +207,7 @@ Use higher concurrency only when the target isolates sessions and fixtures. Conc
First review the run plan. This actual [quickstart](/support/docs/agent-assurance-quickstart/) capture selects one scenario, excludes the other, and waits for a decision:
-
+
Use the arrow keys and Enter to choose **proceed**, **discard**, or **change**. Check the active project, agent, and profile in the footer. A selected plan does not prove that the endpoint is safe: inspect the profile and its scripts first. The plan is not a fixed credit quote.
@@ -226,9 +226,9 @@ Deny rules override allow rules, and more specific rules win. Permission state i
## Follow Run Progress
-After approval, each active scenario shows its current phase. This is an actual `SC-002` execution against the public triage fixture, captured while Rook was judging the response and recorded hook evidence:
+After approval, each active scenario shows its current phase. This is an actual `SC-001` execution against the public triage fixture, captured while Rook was judging the response and recorded hook evidence:
-
+
`0/1` means the scenario has not finished; it does not mean it failed. Wait for completion, then enter `/report` to inspect pass, fail, unverifiable, and unjudged counts. See [results and evidence](/support/docs/agent-assurance-results-and-evidence/#print-or-export-a-report) for the completed report from this demo.
diff --git a/docs/agent-assurance-scenarios.md b/docs/agent-assurance-scenarios.md
index 78ea62ab7..e9069536f 100644
--- a/docs/agent-assurance-scenarios.md
+++ b/docs/agent-assurance-scenarios.md
@@ -84,7 +84,7 @@ import VerifiedTag from '@site/src/component/verifiedTag';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -120,7 +120,7 @@ Review the steps and estimated credits before proceeding.
For a first run, use a narrow generation request such as the [two-scenario quickstart](/support/docs/agent-assurance-quickstart/#test-your-first-agent). This actual TUI plan includes two features and explains why the other three are excluded:
-
+
Use the arrow keys and Enter to **proceed** with writing, **discard** the plan without writing scenarios, or **change** the request. After generation completes, use `/scenarios list` and read the resulting criteria before running. A plan is not yet a saved suite or a test result.
@@ -134,11 +134,11 @@ Rook has three classes and 16 categories.
| `non_functional` | `token_economy`, `quality` | Cost, completeness, tone, and format |
| `adversarial` | `prompt_injection`, `jailbreak`, `data_exfiltration`, `pii_leakage`, `harmful_content`, `hallucination`, `hijacking`, `policy_violation`, `technical_injection` | Attacks, unsafe behavior, leakage, invention, off-task behavior, and injection |
-A plain `generate` covers the functional and adversarial classes. Ask for `non_functional` with `--class`; a `token_economy` scenario runs only when the profile reports usage. Since 0.1.7, Rook no longer generates the earlier `performance` and `reliability` categories.
+A plain `generate` plans for the functional and adversarial classes, but the planner can decide that no attack is warranted for a small agent. Ask for attacks explicitly with `--class adversarial`, and check the report's coverage gaps for attack patterns that got no scenario. Ask for `non_functional` with `--class`; a `token_economy` scenario runs only when the profile reports usage. Since 0.1.7, Rook no longer generates the earlier `performance` and `reliability` categories.
## Red-Team Coverage and Standards {#red-team-standards}
-Adversarial scenarios are built from 25 attack patterns. Since 0.1.11, each generated attack records the standards it exercises in a `redteam` block: the [OWASP Top 10 for LLM Applications](https://genai.owasp.org/llm-top-10/) (2025, `LLM01`–`LLM10`), the OWASP Top 10 for Agentic Applications (2026, `ASI01`–`ASI10`), and MITRE ATLAS techniques. Scenario tags such as `owasp:llm01` carry the same mapping.
+Adversarial scenarios are built from 25 attack patterns. Since 0.1.11, each generated attack records the standards it exercises in a `redteam` block: the [OWASP Top 10 for LLM Applications](https://genai.owasp.org/llm-top-10/) (2025, `LLM01`–`LLM10`), the [OWASP Top 10 for Agentic Applications](https://genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026/) (2026, `ASI01`–`ASI10`), and MITRE ATLAS techniques. Scenario tags such as `owasp:llm01` carry the same mapping.
```yaml
class: adversarial
@@ -159,6 +159,10 @@ The `goal` stays the payload delivered to the target; `objective` and `target_co
Patterns that need seeded data, independently collected evidence, or a fresh session are skipped until the profile supplies the matching hook; see [hooks for red-team scenarios](/support/docs/rook-profiles-and-hooks/#red-team-hooks). The run report maps what ran to each standard; see [Print or Export a Report](/support/docs/agent-assurance-results-and-evidence/#print-or-export-a-report).
+In either viewer, an adversarial scenario's page shows its **Attack intent**: the standards it maps to, the attack pattern, the objective, how the payload is delivered, and the control under test. This local view is from the Quickstart's triage-service sample on Rook 0.1.11:
+
+
+
## Control the Suite Size and Focus
Request an approximate total:
@@ -230,9 +234,9 @@ Launch `rook` in your workspace, then list scenarios inside its interactive TUI:
/scenarios list
```
-
+
-The first line summarizes runnability against the active profile. Each scenario shows its ID, class, category, feature, and criteria count. This saved demo has twelve runnable scenarios. Runnable means they can be attempted, not that they have passed.
+The first line summarizes runnability against the active profile. Each scenario shows its ID, class, category, feature, and criteria count. This quickstart project has two scenarios, both counted as runnable. Runnable means they can be attempted, not that they have passed.
From a regular shell instead:
@@ -258,7 +262,7 @@ Missing usage reporting, tool-call observation, or filesystem observation is dif
- The run still consumes time and credits.
- The message names the profile field or MCP configuration that can close the gap.
-Generation keeps scenarios it cannot make runnable instead of dropping them. Such a scenario is written with `executable: false` and a `skip_reason` that starts with `coverage gap:`, `invalid scenario:`, or `invalid red-team scenario:`, and `generate` warns about it. A scenario whose acceptance criteria contradict each other is rejected. Attack patterns that produced no scenario for a feature are listed in the agent's `coverage-gaps.yaml` as unverified, not as passed.
+Generation keeps scenarios it cannot make runnable instead of dropping them. Such a scenario is written with `executable: false` and a `skip_reason` that says why, and `generate` warns about it. Reasons from Rook's own validation start with `coverage gap:`, `invalid scenario:`, or `invalid red-team scenario:`; reasons from the scenario checker are plain sentences, such as a precondition the profile cannot establish. A scenario whose acceptance criteria contradict each other is rejected. Attack patterns that produced no scenario for a feature are listed in the agent's `coverage-gaps.yaml` as unverified, not as passed.
## Scenario YAML Anatomy
@@ -372,7 +376,7 @@ Deletion removes the live scenario file, but completed runs keep a snapshot of t
## Manual Editing Guidelines
-Scenario files are plain YAML under `.testmuai/rook/agents//scenarios/`. You can review them in a pull request and edit them with normal tools.
+Scenario files are plain YAML under `.testmuai/rook/projects//agents//scenarios/`; [Workspace Files](/support/docs/rook-workspace-files/) shows the full tree. You can review them in a pull request and edit them with normal tools.
When editing manually:
diff --git a/docs/agent-assurance-troubleshooting.md b/docs/agent-assurance-troubleshooting.md
index f617fb8a4..47613b171 100644
--- a/docs/agent-assurance-troubleshooting.md
+++ b/docs/agent-assurance-troubleshooting.md
@@ -84,7 +84,7 @@ import VerifiedTag from '@site/src/component/verifiedTag';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-25"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -111,9 +111,9 @@ Explain the first blocker and the smallest proposed fix. Do not change credentia
update Rook, invoke the agent, rerun tests, or run paid RCA without my approval.
```
-This interactive /doctor capture uses a saved demo workspace with no credentials. Both services are reachable, but authentication is missing: signing in is the next step, not changing the target profile or rerunning scenarios.
+This interactive /doctor capture is from the signed-in quickstart workspace: both services are reachable and the identity is authenticated. If identity or auth shows that you are signed out, enter /login first; that is the next step, not changing the target profile or rerunning scenarios.
-
+
## Installation Problems
@@ -255,7 +255,7 @@ Profile authoring or repair can spend credits and use approved tools. A profile
Use /help profile to check the available operations before approving a repair or connection test:
-
+
### The profile invokes successfully but extracts the wrong value
@@ -323,7 +323,7 @@ A token_economy scenario is blocked if the profile does not report
### Generated scenarios are marked not executable
-A scenario with executable: false was kept so you can see what generation attempted. Its skip_reason starts with coverage gap: (no runnable check was possible), invalid scenario:, or invalid red-team scenario: and names the problem. Fix the profile capability or edit the scenario, then regenerate or rerun.
+A scenario with executable: false was kept so you can see what generation attempted. Its skip_reason names the problem. Reasons from Rook's own validation start with coverage gap: (no runnable check was possible), invalid scenario:, or invalid red-team scenario:; the scenario checker writes plain sentences, often a precondition the profile cannot establish, such as a ticket that must already exist. Fix the profile capability or edit the scenario, then regenerate or rerun.
### Only two scenarios of an attack pattern ran
diff --git a/docs/rook-antigravity-cli.md b/docs/rook-antigravity-cli.md
index 9e3b97f83..7c0e24a18 100644
--- a/docs/rook-antigravity-cli.md
+++ b/docs/rook-antigravity-cli.md
@@ -36,7 +36,7 @@ Run this Bash block from your agent repository. It uses the same pinned public r
fi
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
mkdir -p .agents/skills
cp -R "$rook_skill_checkout/rook/skill-installer/skills" .agents/skills/rook
)
diff --git a/docs/rook-antigravity-ide.md b/docs/rook-antigravity-ide.md
index fdcc58ddc..af808b40d 100644
--- a/docs/rook-antigravity-ide.md
+++ b/docs/rook-antigravity-ide.md
@@ -36,7 +36,7 @@ Run this Bash block from your repository's root in the integrated terminal:
fi
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
mkdir -p .agents/skills
cp -R "$rook_skill_checkout/rook/skill-installer/skills" .agents/skills/rook
)
diff --git a/docs/rook-architecture.md b/docs/rook-architecture.md
index 3184249d1..e84322947 100644
--- a/docs/rook-architecture.md
+++ b/docs/rook-architecture.md
@@ -97,7 +97,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-11"
+ "dateModified": "2026-10-13"
}) }}
/>
diff --git a/docs/rook-coding-agents.md b/docs/rook-coding-agents.md
index 20683683e..5e262c570 100644
--- a/docs/rook-coding-agents.md
+++ b/docs/rook-coding-agents.md
@@ -41,7 +41,7 @@ With Node.js 22+ and npm:
npx @testmuai/rook-skill@latest
```
-This installs for Claude Code, Codex, and Gemini CLI under your home directory. To avoid installing all three, follow the selected client's page and use its `--agent` flag. `@latest` installs the current skill package. Its version is independent of the CLI's; on October 13, 2026 the CLI is at 0.1.11 and the skill package at 0.1.7.
+This installs for Claude Code, Codex, and Gemini CLI under your home directory. To avoid installing all three, follow the selected client's page and use its `--agent` flag. `@latest` installs the current skill package. Its version is independent of the CLI's; on October 13, 2026 both are at 0.1.11.
On Windows, complete [Rook's native setup](/support/docs/rook-installation/#windows) first and use `npx.cmd` for the installer in PowerShell. Each coding client has its own platform requirements. The manual-copy recipes and CI examples in these docs use Bash; run them in a supported Bash environment such as WSL, keeping the client and skill in that same environment.
diff --git a/docs/rook-copilot-cli.md b/docs/rook-copilot-cli.md
index 247026762..a3e0e96b7 100644
--- a/docs/rook-copilot-cli.md
+++ b/docs/rook-copilot-cli.md
@@ -30,7 +30,7 @@ Run this Bash example from your agent repository. It copies only the skill bundl
set -eu
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
if test -e .github/skills/rook; then
echo "An existing rook skill needs review; nothing was overwritten." >&2
exit 1
diff --git a/docs/rook-cursor-cli.md b/docs/rook-cursor-cli.md
index e0528b674..2c86f2f8f 100644
--- a/docs/rook-cursor-cli.md
+++ b/docs/rook-cursor-cli.md
@@ -30,7 +30,7 @@ Run this Bash example from your agent repository. It copies only the skill bundl
set -eu
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
if test -e .cursor/skills/rook; then
echo "An existing rook skill needs review; nothing was overwritten." >&2
exit 1
diff --git a/docs/rook-environment-and-secrets.md b/docs/rook-environment-and-secrets.md
index 1f2d74967..92dda3bd6 100644
--- a/docs/rook-environment-and-secrets.md
+++ b/docs/rook-environment-and-secrets.md
@@ -96,7 +96,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -111,7 +111,7 @@ A profile names the environment variables its hooks read, and why; it does not h
Launch `rook` in your agent workspace. In the interactive TUI, start with `/env list` to inspect configured names and masked values. The following capture sets and lists a **non-secret demonstration value**, not a credential:
-
+
For a harmless first check, enter these commands one at a time:
diff --git a/docs/rook-features.md b/docs/rook-features.md
index 5738f7db2..8b60d4e75 100644
--- a/docs/rook-features.md
+++ b/docs/rook-features.md
@@ -91,7 +91,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -129,7 +129,7 @@ Start /profile add and describe how you reach the agent. You can pa
Rook reads the material, asks only for information it cannot determine, writes reviewable .mjs hook scripts, invokes the target, and corrects the scripts from the actual response. If an existing profile stops working, /profile fix runs it, reads the failure, and repairs it. /profile test performs the cheaper verification call without rewriting anything.
-
+
This is the public triage sample being connected in the interactive TUI, not command help. Rook asks how to reach the agent, writes a hook, and pauses for approval before executing sensitive work. Follow [profile authoring and verification](/support/docs/rook-profiles-and-hooks/#add-a-profile-interactively) to inspect the result before a test run.
diff --git a/docs/rook-installation.md b/docs/rook-installation.md
index b396fc57f..e206459a5 100644
--- a/docs/rook-installation.md
+++ b/docs/rook-installation.md
@@ -99,7 +99,7 @@ import ThemedImage from '@theme/ThemedImage';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -123,7 +123,7 @@ The latest public release checked on October 13, 2026 is [v0.1.11](https://githu
| Requirement | Why |
|---|---|
-| A supported platform above | The shell installer supports macOS/Linux; the npm package also supplies a Windows x64 runtime. No Windows ARM64 runtime package is published for 0.1.7. |
+| A supported platform above | The shell installer supports macOS/Linux; the npm package also supplies a Windows x64 runtime. No Windows ARM64 runtime package is published. |
| TestMu AI account | Supplies authentication and credits. You can sign in after installation. |
| Your agent's dependencies | Rook invokes the target agent as you would. A local command, service, or supporting tool must already be available. |
@@ -217,10 +217,10 @@ To upgrade an npm installation:
```bash
-npm update -g @testmuai/rook
+npm install -g @testmuai/rook@latest
```
-The npm package installs the `rook` executable and publishes platform runtime packages with it. If npm reports an engine error, update the Node.js version used to run npm to Node.js 20 or newer (Rook 0.1.7; 0.1.6 and earlier need 22).
+The npm package installs the `rook` executable and publishes platform runtime packages with it. If npm reports an engine error, update the Node.js version used to run npm to Node.js 20 or newer (since Rook 0.1.7; 0.1.6 and earlier need 22).
### Repair an npm 0.1.1 or 0.1.2 installation
@@ -334,9 +334,9 @@ $env:ROOK_ENV = 'prod'
rook.cmd
```
-You should see the Rook banner and an interactive prompt or a project chooser, not a command that prints output and exits. This capture shows a new session before sign-in and before an agent has been explored:
+You should see the Rook banner and an interactive prompt or a project chooser, not a command that prints output and exits. This capture shows a signed-in session in a new workspace, before an agent has been explored:
-
+
1. If prompted to sign in, enter `/login` and complete the browser flow. Return to this same terminal when Rook reports that you are signed in. Browser UI sign-in and CLI sign-in are separate.
2. At **Projects**, use the arrow keys and Enter to list existing projects or create a new test project. Esc goes back; you can reopen the chooser with `/project`.
@@ -378,13 +378,6 @@ Each archive has a matching `.sha256` file. Do not bypass a checksum mismatch; d
If a public install path still fails, [open a Rook issue](https://github.com/LambdaTest/rook/issues/new/choose) with the OS, architecture, install method, and full error output.
-## Next Step
-
-If you use a coding assistant, [choose its Rook skill setup guide](/support/docs/rook-coding-agents/) after installing the CLI. Claude Code, Codex, Gemini CLI, Copilot CLI, OpenCode, Cursor CLI, Antigravity CLI, VS Code, Windsurf, and Antigravity IDE each have their own instructions. Installing the skill does not install or authenticate the CLI.
-
-Continue with [How to Get Started With Agent Assurance](/support/docs/agent-assurance-quickstart/).
-
-
## Open the Local or Hosted UI {#select-the-web-ui-environment}
The public CLI includes the local viewer: inside the TUI, enter `/ui --local`. No separate frontend installation or browser login is needed. Open the printed loopback URL and keep the TUI session running. It reads existing workspace files; follow the quickstart first if you have not created any test data. From a separate shell, the equivalent command is `rook ui --local`.
@@ -404,3 +397,9 @@ The local viewer starts at **Agents**. This screenshot shows saved CommerceCare
The hosted UI opens at **Projects** after browser sign-in. The example project already contains synchronized test data. An empty organization shows onboarding instead; no separate Web UI package needs to be installed.
+
+## Next Step
+
+If you use a coding assistant, [choose its Rook skill setup guide](/support/docs/rook-coding-agents/) after installing the CLI. Claude Code, Codex, Gemini CLI, Copilot CLI, OpenCode, Cursor CLI, Antigravity CLI, VS Code, Windsurf, and Antigravity IDE each have their own instructions. Installing the skill does not install or authenticate the CLI.
+
+Continue with [How to Get Started With Agent Assurance](/support/docs/agent-assurance-quickstart/).
diff --git a/docs/rook-opencode.md b/docs/rook-opencode.md
index 24f2ab514..044cbc9ca 100644
--- a/docs/rook-opencode.md
+++ b/docs/rook-opencode.md
@@ -30,7 +30,7 @@ Run this Bash example from your agent repository. It copies only the skill bundl
set -eu
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
if test -e .opencode/skills/rook; then
echo "An existing rook skill needs review; nothing was overwritten." >&2
exit 1
diff --git a/docs/rook-permissions-and-safety.md b/docs/rook-permissions-and-safety.md
index b2ba6ea8e..ef3551bde 100644
--- a/docs/rook-permissions-and-safety.md
+++ b/docs/rook-permissions-and-safety.md
@@ -131,7 +131,7 @@ Rook's internal roles can call tools while discovering, generating, invoking, an
In the TUI, inspect the tool, exact file or target, and requested operation before approving. This real prompt occurs while Rook authors the quickstart's `local-triage` profile; it asks to write that profile's hook script, not to run a test suite:
-
+
Use the arrow keys to select and Enter to answer. **yes** approves that action once; **no** declines it. Read the hint beside **always**: for a model-chosen action such as the one pictured, it allows the matching operation for this run without writing a disk grant. A persistent choice on a human-requested action has a different scope. **never** can save a denial. Do not choose a broad option merely to clear the prompt.
diff --git a/docs/rook-profiles-and-hooks.md b/docs/rook-profiles-and-hooks.md
index 0d707d6b1..f7706b4ea 100644
--- a/docs/rook-profiles-and-hooks.md
+++ b/docs/rook-profiles-and-hooks.md
@@ -97,7 +97,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"https://www.youtube.com/@TestMuAI"
]
},
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -146,7 +146,7 @@ This is a template; replace the endpoint, fields, and fixture with a request you
The screenshot below shows that interaction in the public triage sample: Rook receives a plain-language endpoint and response mapping, starts `author_profile`, and pauses before writing its hook script. The profile is called `local-triage` in this example, rather than `staging`.
-
+
Read each requested action and approve only work needed for the integration. Use **yes** for that action once; **no** declines it. Wait for verification to finish before treating the profile as ready. The screenshot is a permission checkpoint, not a successful probe.
@@ -167,9 +167,9 @@ Rook writes scripts, invokes the target, and corrects mistakes found during veri
In the TUI, enter `/profile` to open the picker. Type to filter, use the arrow keys, and press Enter to select a profile; Esc returns without changing the selection. The footer shows the active profile.
-
+
-This existing demo profile has all five user-configurable hooks. A newly generated profile may have only `execute`; Rook owns `judge`, so it is not listed as a profile hook.
+This quickstart profile has only `execute`, as a newly generated profile often does. Other profiles can add `prepare`, `open`, `close`, and `collect`; Rook owns `judge`, so it is not listed as a profile hook.
Inspect your generated profile before testing it:
@@ -190,7 +190,7 @@ rook profile use staging
The bare command lists profiles in a shell or opens a picker in the TUI. profile test invokes the target through the existing hooks without asking a model to rewrite them. Check that the returned value is an agent answer, not a job ID or success status.
-
+
The sample's verified profile reports `calls` but not session state or measured usage. Check the capabilities your own target actually returned; do not infer them from a successful HTTP response alone.
diff --git a/docs/rook-vscode.md b/docs/rook-vscode.md
index c3dfc27c8..830852c16 100644
--- a/docs/rook-vscode.md
+++ b/docs/rook-vscode.md
@@ -30,7 +30,7 @@ Run this Bash example from your agent repository. It copies only the skill bundl
set -eu
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
if test -e .github/skills/rook; then
echo "An existing rook skill needs review; nothing was overwritten." >&2
exit 1
diff --git a/docs/rook-web-ui.md b/docs/rook-web-ui.md
index 2be1eb53c..e79b018a9 100644
--- a/docs/rook-web-ui.md
+++ b/docs/rook-web-ui.md
@@ -44,9 +44,9 @@ Neither viewer downloads missing records into your workspace, uploads local chan
Launch `rook` from your agent workspace, then enter `/ui --local` for on-disk evidence or `/ui` for hosted review. These are alternatives: choose the viewer for the records you want to inspect. This actual TUI capture uses `/ui --local --no-open` to start the local server and print its address without opening a browser:
-
+
-Open the exact URL printed in your session; this capture used port `7758` because the default was already occupied. Keep the TUI session running while using its local viewer. `/help ui` lists options without starting a viewer. The `rook ui` examples below are the equivalent commands for a regular shell.
+Open the exact URL printed in your session; the port can differ when the default is already in use. Keep the TUI session running while using its local viewer. `/help ui` lists options without starting a viewer. The `rook ui` examples below are the equivalent commands for a regular shell.
## Review On-Disk Evidence in the Local UI {#local-ui}
@@ -70,10 +70,6 @@ The five local agent tabs are **Summary**, **Profiles**, **Features**, **Scenari
Search by agent name or ID, then click the agent card. It shows feature/scenario/run counts and available last-result context. Clear a search before concluding that the workspace has no agents. These counts describe the saved workspace, not coverage of every possible behavior.
-:::note Coming soon
-Searching local agents by description is coming soon. For now, use the agent's name or ID.
-:::
-
### Local Agent Workspace {#local-agent}
@@ -118,6 +114,10 @@ Click a run to inspect its narrative, outcome counts, scenario rows, and metadat
+When a run has coverage gaps, the run page lists them above the outcome tiles: attack patterns, scenarios, or categories with no runnable scenario, each with its reason. A gap is unverified, not passed.
+
+
+
This view includes runs available on disk, including local test-mode results. **completed** describes execution state, not a passing suite. Missing graded results are not a pass: check unfinished phases and `rook report --json` before treating a result as complete.
### Local Results and Evidence Files {#local-results}
diff --git a/docs/rook-windsurf.md b/docs/rook-windsurf.md
index 6d86245df..8b0bdd860 100644
--- a/docs/rook-windsurf.md
+++ b/docs/rook-windsurf.md
@@ -30,7 +30,7 @@ Run this Bash example from your agent repository. It copies only the skill bundl
set -eu
rook_skill_checkout=$(mktemp -d)
git clone --filter=blob:none https://github.com/LambdaTest/rook.git "$rook_skill_checkout/rook"
- git -C "$rook_skill_checkout/rook" checkout --detach f199cb99c589b565e48a3a29781475daee907533
+ git -C "$rook_skill_checkout/rook" checkout --detach 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
if test -e .windsurf/skills/rook; then
echo "An existing rook skill needs review; nothing was overwritten." >&2
exit 1
diff --git a/docs/rook-workspace-files.md b/docs/rook-workspace-files.md
index fa02045ba..02e1774d0 100644
--- a/docs/rook-workspace-files.md
+++ b/docs/rook-workspace-files.md
@@ -112,7 +112,7 @@ import { BRAND_URL } from '@site/src/component/BrandName';
"text": "*.log\n.env\ncache/\nprojects/*/jobs/\nprojects/*/agents/*/state.json"
}
],
- "dateModified": "2026-09-28"
+ "dateModified": "2026-10-13"
}) }}
/>
@@ -215,7 +215,7 @@ Each session keeps a transcript at `~/.testmuai/rook/sessions//
+
## Review Files in Either UI
diff --git a/scripts/rook-docs.test.cjs b/scripts/rook-docs.test.cjs
index d7bab4054..623818933 100644
--- a/scripts/rook-docs.test.cjs
+++ b/scripts/rook-docs.test.cjs
@@ -34,8 +34,9 @@ test('public installation examples use the current Homebrew tap and include nati
const bash = [...doc.matchAll(/```bash\n([\s\S]*?)\n```/g)].map(m => m[1]).join('\n');
assert.match(bash, /brew install lambdatest\/rook\/rook/);
assert.doesNotMatch(bash, /brew tap LambdaTest\/rook https:\/\/github\.com\/LambdaTest\/rook\.git/);
- assert.match(doc, /npm\.cmd install -g @testmuai\/rook@0\.1\.11/);
+ assert.match(doc, /npm\.cmd install -g @testmuai\/rook\b/);
}
+ assert.match(install, /npm\.cmd install -g @testmuai\/rook@0\.1\.11/);
assert.match(install, /\{#windows\}/);
assert.match(install, /\{#windows-wsl\}/);
assert.match(install, /Get-Command rook\.cmd/);
@@ -227,10 +228,10 @@ test('installation and quickstart lead into the interactive TUI with actual work
assert.match(install, /rook-tui-get-started\.png/);
assert.match(install, /NO_COLOR/);
assert.match(install, /arrow keys and Enter/);
- assert.match(quickstart, /\*\*Rook 0\.1\.5\*\*/);
+ assert.match(quickstart, /\*\*Rook 0\.1\.11\*\*/);
assert.match(quickstart, /one step at a time/);
assert.match(quickstart, /not a fixed credit quote/);
- assert.match(quickstart, /not complete|left four discovered feature areas untested/);
+ assert.match(quickstart, /not complete|four of the five discovered features were not tested/);
const stages = [
['2. Open the TUI', ['get-started', 'explore-confirm']],
['3. Generate and verify the profile', ['profile-authoring', 'profile-verified']],
@@ -277,7 +278,7 @@ test('supporting workflow pages show real checkpoints with honest scope and perm
test('CLI Reference documents the public baseline, interactive screenshots, and approved saved-run RCA', () => {
const doc = fs.readFileSync(path.join(root, 'docs/agent-assurance-command-reference.md'), 'utf8');
assert.match(doc, /public Rook 0\.1\.11 CLI/);
- assert.match(doc, /Rook 0\.1\.5 interactive TUI/);
+ assert.match(doc, /Rook 0\.1\.11 interactive TUI/);
assert.match(doc, /They show command help, not completed paid operations/);
assert.match(doc, /\{#root-cause-analysis\}/);
assert.match(doc, /rook report --rca/);
@@ -312,7 +313,7 @@ test('Troubleshooting covers current Windows, scenario, RCA, and support recover
assert.match(doc, /token_economy.*blocked if the profile does not report usage/);
assert.match(doc, /\{#rca-troubleshooting\}/);
assert.match(doc, /command-reference\/#root-cause-analysis/);
- assert.match(doc, /no credentials/);
+ assert.match(doc, /identity is authenticated/);
assert.match(doc, /rook-reference-doctor\.png/);
assert.doesNotMatch(doc, /rook-terminal-(?:doctor|scenarios)\.png/);
assert.match(doc, /\{#support-report\}/);
@@ -424,7 +425,7 @@ case "$1" in
-C)
test "$3" = checkout
test "$4" = --detach
- test "$5" = f199cb99c589b565e48a3a29781475daee907533
+ test "$5" = 439480f2ef3084fcbc0997a59a70f5f8adcd4ad8
;;
*) exit 99 ;;
esac