Dashboard
The Raiken dashboard is a browser-based interface for exploration, test generation, and managing your test suite.
Overview
The dashboard connects to the CLI server via tRPC and streams agent output in real time. Exploration runs are supported, and tests are generated only when explicitly requested.
Key features
Prompt composer
Write natural language descriptions of what you want Raiken to do:
Explore the login flow and capture DOM context.Generate a test that validates the dashboard welcome message.The prompt composer supports:
- Multi-line input for complex scenarios
- File references with
@path/to/file.tsx - URL references like
http://localhost:3000/login
Real-time streaming
Watch your test generate token-by-token:
Generating test: "user login flow"━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78%
import { test, expect } from '@playwright/test';
test('user can log in with valid credentials', async ({ page }) => { await page.goto('/login'); await page.getByLabel('Email').fill('user@example.com'); █No waiting for completion — review as it writes and cancel early if needed.
Selector suggestions
The dashboard shows suggested selectors ranked by stability:
| Selector | Type | Stability |
|---|---|---|
getByRole('button', { name: 'Sign in' }) | Role | High |
getByLabel('Email') | Label | High |
getByTestId('login-form') | Test ID | Medium |
locator('.btn-primary') | CSS | Low |
Role-based and label-based selectors are preferred for their resilience to UI changes.
Interactive review
After generation:
- Review — Read through the generated test
- Edit — Make manual adjustments if needed
- Retry — Refine your prompt and regenerate
- Save — Save to your project’s test directory
Discovery runtime panel
The dashboard includes a dedicated discovery workflow with:
- Start, continue, auth-assist, and clear actions
- Runtime phase visibility (
idle,running,paused,completed,error) - Session metadata (current URL/depth, counters, blockers)
- Event timeline (started, continued, page discovered, auth blocked, completed, error)
- Discovered pages and unresolved blockers tables
Polling adapts by runtime phase to balance responsiveness and overhead.
Workflow
1. Start the dashboard
raiken startOpen http://localhost:7101 in your browser.
2. Enter a prompt
Describe the test you want in natural language:
Generate tests for the Counter component that testincrement, decrement, and reset functionality.3. Review the output
The test streams to the UI. Review it as it’s generated.
4. Save or refine
If the test looks good, save it. Save and run actions require approval unless autonomy is enabled. If it needs work, add a follow-up prompt:
Add a test for the edge case where decrement is clickedwhen the counter is already at zero.5. Run your tests
Once saved, run tests with your usual workflow:
npx playwright testDiscovery workflow
- Open the Discovery view in the dashboard.
- Start discovery for a target URL.
- If auth is required, run auth-assist and continue.
- Monitor runtime/timeline until completed.
- Review discovered pages and blocker outcomes.
Tips
- Be specific — Clear prompts produce better tests
- Iterate — Start simple, then refine with follow-up prompts
- Use file references —
@src/components/Login.tsxgives Raiken more context - Include URLs — Helps Raiken capture the right page for DOM context