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 agentmods add commands/drag88/claude-dev-framework/e2egit clone --depth 1 https://github.com/drag88/claude-dev-frameworkWhat 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 | $0.00015 | $0.01439 |
| Opus 5 | $0.00008 | $0.00720 |
| Sonnet 5 | $0.00003 | $0.00288 |
| Haiku 4.5 | $0.00002 | $0.00144 |
Grade A, and why
e2e 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 yesterday.
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.
How it starts
The opening of the file, as written. The whole thing — 240 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/cdf:e2e - End-to-End Testing
Triggers
- E2E test creation and execution requests
- Browser automation testing needs
- Cross-browser compatibility testing
- Visual regression and screenshot testing
Usage
/cdf:e2e [action] [target] [--browser chromium|firefox|webkit|all] [--headed] [--debug]
Arguments
action: run | create | debug | reporttarget: Test file, directory, or pattern--browser: Browser to use (default: chromium)--headed: Run with visible browser--debug: Enable Playwright inspector
Behavioral Flow
Running Tests
/cdf:e2e run
# Runs all e2e tests in headless mode
/cdf:e2e run tests/checkout.spec.ts --headed
# Run specific test with visible browser
/cdf:e2e run --browser all
# Cross-browser testing
Creating Tests
/cdf:e2e create "user login flow"
# Creates new test file with Page Object Model structure
Debugging Tests
/cdf:e2e debug tests/failing.spec.ts
# Opens Playwright inspector for step-through debugging
Page Object Model Pattern
All E2E tests should use Page Object Model for maintainability.
Page Object Structure
// pages/LoginPage.ts
import { Page, Locator } from '@playwright/test';
export class LoginPage {
readonly page: Page;
readonly emailInput: Locator;
readonly passwordInput: Locator;
readonly submitButton: Locator;
readonly errorMessage: Locator;
constructor(page: Page) {
this.page = page;
this.emailInput = page.getByLabel('Email');
this.passwordInput = page.getByLabel('Password');
this.submitButton = page.getByRole('button', { name: 'Sign in' });
this.errorMessage = page.getByRole('alert');
}
async goto() {
await this.page.goto('/login');
}
async login(email: string, password: string) {
await this.emailInput.fill(email);
await this.passwordInput.fill(password);
await this.submitButton.click();
}
async getErrorMessage() {
return this.errorMessage.textContent();
}
}
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.
- yesterday First seen · 240 lines · 15 tokens per session scan A 76ed2ca66923
e2e is a command published in the GitHub repository drag88/claude-dev-framework (2 stars, last pushed 1mo ago), licensed MIT. It adds 15 tokens to every session and 1,439 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
merge
Finalize work on a branch: verify docs + tree are clean, merge to main, clean up. Supports both standard git checkout -b branches and git worktree flows — auto-detected at pre-flight.
expect
Diff-aware AI browser testing — reads the git diff, maps changes to affected pages via the route map, generates a targeted test plan, and executes it via agent-browser (Rust daemon + CDP, ARIA-tree-first) with pass/fail reporting. Use when testing UI changes, verifying PRs before merge, or running regression checks on…
speckit.tasks
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
dev
Runs Vendure in development mode. By default it starts three processes: the GraphQL server (ts-node ./src/index.ts), the worker (ts-node ./src/index-worker.ts), and the dashboard (a Vite dev server).
start
Runs a project that has already been compiled with vendure build.
pipeline-undo
Undo a pipeline run's result. With worktree isolation (the current engine), this is clean and low-risk: a run never touches your checkout — its result lives only on a pipeline/ branch (and, for a --push run, on the remote). "Undo" therefore means deleting that branch and its worktree, not reverting your working tree.