with one click
with one click
Run PR-grade real Codex E2E validation through claude-tap, including resume turns, multiple tool calls, optional image input, viewer verification, and screenshot evidence.
Full pre-PR merge-readiness check. Run this before opening or merging a pull request — it validates local gates (lint, format, tests), CI status, screenshot evidence, and PR metadata in one pass. Also useful for reviewing an existing PR's readiness.
Test JS logic embedded in HTML using two-layer strategy - Python unit tests + Playwright browser integration tests
Fill missing i18n translations in the viewer source JSON. Run this after adding or modifying English or Chinese UI strings in claude_tap/viewer_i18n.json — it auto-translates to ja, ko, fr, ar, de, ru via OpenRouter.
Validate screenshot and viewer HTML quality for PR evidence. Run this after adding or modifying images under .agents/evidence/pr/ or .agents/recordings/, or after generating a new viewer HTML file. Combines image quality checks (resolution, blankness, file size) with Playwright-based viewer rendering verification.
Generate demo assets (GIF/MP4) from real tmux E2E runs and viewer screenshots using asciinema and Playwright
| name | real-e2e-test |
| description | Run real E2E tests against Claude CLI in pytest and tmux modes |
| tags | testing, e2e, integration, tmux |
Run real end-to-end tests that start claude-tap from local source, connect to the
real Claude CLI, and verify trace output.
claude CLI installed and authenticateduv sync --extra devtmux installed for interactive mode (brew install tmux)uv run pytest tests/e2e/ --run-real-e2e --timeout=300 -v
uv run pytest tests/e2e/test_real_proxy.py::TestRealProxy::test_single_turn --run-real-e2e --timeout=180 -v -s
uv run pytest tests/e2e/ --run-real-e2e --timeout=300 -v -s --tb=long
Use this when you need to validate non--p interactive behavior in Claude Code TUI.
scripts/run_real_e2e_tmux.sh
Optional overrides:
PROMPT_ONE="Use the shell tool to run command ls in the current directory, then reply with any 5 filenames only." \
PROMPT_TWO="Thank you." \
SUBMIT_KEY="Enter" \
PERMISSION_MODE="bypassPermissions" \
scripts/run_real_e2e_tmux.sh
Important tmux interaction notes:
Enter for Claude Code TUI in tmux (confirmed working).PROMPT_ONE should intentionally trigger tool use.grep -F instead of rg in shell assertions (rg may be unavailable)..jsonl contains both prompts (PROMPT_ONE, PROMPT_TWO)/v1/messages"type": "tool_use"trace_*.html)--run-real-e2e is required.| Test | Timeout | What It Tests |
|---|---|---|
test_single_turn | 180s | Basic prompt/response trace capture |
test_multi_turn | 300s | Conversation memory with -c flag |
test_tool_use | 180s | Tool use generates multiple trace records |
test_html_viewer_generated | 180s | HTML viewer generated with embedded trace data |
test_api_key_redaction | 180s | API keys redacted from trace output |
test_streaming_sse_capture | 180s | SSE events captured in streaming mode |
test_trace_summary | 180s | CLI stdout includes trace summary and API call count |