testforge-a2a
v1.0.0
Published
A2A agent for test analysis — coverage, quality, generation, and pro insights
Maintainers
Readme
testforge-a2a is an A2A (Agent-to-Agent) protocol server for test analysis. It exposes 13 skills — coverage reporting, missing test detection, quality analysis, test generation, and pro insights — over a JSON-RPC 2.0 HTTP API.
Architecture
graph LR
A[Orchestrator Agent] -->|POST /tasks| B[testforge-a2a]
B --> C[coverage-report]
B --> D[missing-tests]
B --> E[test-quality]
B --> F[generate-unit-tests]
B --> G[mutation-testing PRO]
C --> H[Analysis Results]
D --> H
E --> H
F --> H
G --> HSkills
| Skill | Description | Tier |
|---|---|---|
| coverage-report | Analyze test coverage per file (c8/Istanbul) | Free |
| missing-tests | Find source files with no test coverage | Free |
| test-quality | Detect quality issues in test files | Free |
| test-config | Validate test framework configuration | Free |
| generate-unit-tests | Generate unit test scaffolding from exports | Free |
| generate-integration-tests | Generate integration tests from route files | Free |
| generate-e2e-tests | Generate E2E scaffolding (Playwright/Cypress) | Free |
| mutation-testing | Measure test suite effectiveness via mutation | PRO |
| flaky-detection | Detect flaky test patterns | PRO |
| test-impact | Find tests impacted by changed files | PRO |
| snapshot-audit | Audit snapshot tests for issues | PRO |
| mock-analysis | Analyze mock usage for over-mocking and issues | PRO |
| test-report | Comprehensive test health report | PRO |
Quick Start
# Free skills
npx testforge-a2a
# With PRO skills
PRO_LICENSE=your-license npx testforge-a2aThe server listens on port 3004 by default (PORT env var to override).
Usage
# Check agent card
curl http://localhost:3004/.well-known/agent.json
# Run coverage report
curl -X POST http://localhost:3004/tasks \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "coverage-report",
"params": { "project_path": "/path/to/project" }
}'
# Generate unit tests
curl -X POST http://localhost:3004/tasks \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "generate-unit-tests",
"params": { "project_path": "/path/to/project", "file_path": "src/utils.ts" }
}'Health Check
curl http://localhost:3004/health
# {"status":"ok","uptime":42.5}Environment Variables
| Variable | Description | Default |
|---|---|---|
| PORT | Server port | 3004 |
| PRO_LICENSE | License key to unlock PRO skills | — |
License
MIT — Craftpipe
