Design philosophy
Simple terminal operations —rqb init, rqb serve, rqb validate, rqb exec — work best when run directly. They are fast, composable, and don’t need an agent in the loop.
Slash commands exist for tasks that are genuinely complex: where the right answer depends on understanding your codebase, your domain model, or the relationships between data — not just executing a formula.
Available commands
/rqb
Create specs, enrich expected responses, or build and run pipelines. Routes automatically based on what you pass.
/rqb-debug
Diagnose a failing endpoint or pipeline across validation, execution, and diff.
/rqb
When to use: Creating new specs, enriching expected responses and tests, or building and running flow pipelines. The command routes based on your argument:Scan mode
What makes it intelligent: The agent doesn’t just runrqb import project and stop. When automatic discovery produces stubs, the agent reads your handler source code — request/response types, DTOs, model classes — and produces specs with real field names and semantically accurate example values. A user.email field becomes "[email protected]", not "string".
What the agent does:
- Tries
rqb import projectfirst (OpenAPI or running server) - If stubs are produced, reads handler source to enrich field shapes
- If nothing is detected, finds route files and reads full type definitions
- Creates specs via
rqb_authorMCP tool (validates before writing, never overwrites) - Runs
rqb validate api-docs/thenrqb index
Enrich mode
What makes it intelligent: The agent uses a bounded evidence ladder — reads the spec, inspects the matching handler and referenced DTO/schema files, optionally executes the live dev endpoint, then stops and asks for an example if the shape is unknown. It never guesses. What the agent does:- Reads the spec and its route handler
- Runs
rqb_execwithinfer_expected: trueif the server is up — uses the live response - Writes real field values to
## Expected response - Adds
## Assertions: at minimumstatusand onebody.<key>: exists - Adds
## Tests: happy path + auth failure + one validation error
Flow mode
What makes it intelligent: Before writing a single line, the agent reasons about data dependencies — which step producesauthToken? Which downstream steps need it? What should be asserted at each step to make the flow meaningful, not just a sequence of “status 200” checks?
What the agent does when building:
- Reads existing specs to understand what data each endpoint returns
- Maps the capture/inject chain before writing
- Identifies missing specs (offers to create them)
- Writes the pipeline file with meaningful assertions at each step
- Validates with
rqb validate
- Executes
rqb_flowMCP tool - Reports each step’s status, captured values (secrets masked), and first failure with diagnosis
/rqb-debug
When to use: An endpoint is returning an unexpected result, a spec diff is failing, or a pipeline is breaking at a specific step.Single endpoint
What the agent does:- Locates the spec via
rqb_searchMCP orrg - Validates the spec structure
- Dry-runs to check what’s being sent (baseUrl, auth, path params)
- Executes and interprets the result:
Pipeline
What the agent does:- Reads all step files — checks order, capture expressions, inject names, referenced specs
- Runs the full flow via
rqb_flowMCP - Identifies the first failing step
- Debugs that step in isolation with captured values from prior steps injected as
--var