Requirements Traceability · Jira/Confluence automation

Know which requirements actually hold true — at every commit.

acp links your tests to your requirements and tells you, at a specific git commit, what's verified, failing, or quietly drifted — catches regressions, runs your suites from a live dashboard, and automates Jira/Confluence both ways. Any stack. No Jira required.

What it does

One toolkit, four jobs

A single CLI (acp) + MCP server for agents. Use one part or all of it.

🔎 Requirements traceability + regression pipeline

Link tests (Playwright, Jest, Vitest, node:test, xUnit…) to requirements via a simple @KEY tag, and see — at the current commit — what's verified, failing, unverified, specified, drifted or stale. Save git-stamped run history and flag regressions when a "done" requirement breaks.

@KEY tags / mappingJUnit · TRXdrift & stale guards--fail-on regression

📊 Live web dashboard

acp trace serve is a secured, self-contained portal: filterable matrix, coverage trend, per-requirement drill-down, run history. Trigger tests from the browser — ▶ per requirement or per suite — and watch the output stream live. Always-on local or a git-backed team dashboard.

token auth▶ run buttonslive SSE outputauto-refresh

🔁 Jira & Confluence automation

Publish markdown → Jira epics/stories and Confluence pages, and pull them back into round-trippable markdown folders (recursive, with sub-tasks & child pages). Mermaid diagrams round-trip both ways. Stamp verified Jira issues, or post the report to Confluence.

markdown ⇄ Jira/Confluencemermaid both waysCLI + MCP

🗳️ Interactive decisions

acp questions turns an open-questions doc (a flow diagram + a checklist) into a self-contained interactive page: answer in a browser, the diagram recolours and rejected branches dim, and answers export straight to Jira/Confluence.

mermaid flowautosave / resumeexport → publish

How it works

It joins three things on one key

Everything keys off a stable requirement id (a Jira/issue key, or your own). Three datasets are gathered independently, then joined — so a "done" with no passing test can't hide.

RequirementsJira · Confluence · GitHub/GitLab issues · markdown · any script
Testswhich tests claim each key (@KEY tags or a mapping)
Resultsdo they pass? (JUnit / TRX from your CI)
joined at the current git commit → a per-requirement state, regression diff, and a report you can store anywhere

Built to adopt

Fits any company, any stack

No lock-in to Atlassian or to a framework. Pick the pieces that match how your team already works.

🧩 Your requirements

Jira epic, Confluence page, GitHub or GitLab issues, a local markdown file — or a command source that runs any script and reads its output. No Jira? Use markdown or your issue tracker.

🧪 Your test stack

Autodetected per project. Anything that emits JUnit XML or TRX works — Playwright, Jest, Vitest, node:test, xUnit, and more. Tag tests with the requirement key and they light up.

💾 Store results anywhere

Local session files (runs/, RTM.html), committed to git, POSTed to your own server, or to the built-in acp trace collector — a server of record that aggregates every team's runs.

🔔 Plugs into your flow

A copy-paste GitHub Action that fails the PR on a regression and comments the report, Slack/Teams notifications, a scheduled n8n job, and an MCP server so AI agents can run it too.

For AI agents

Drive it from Claude or Copilot

acp ships an MCP server, so your local AI agent can run the whole lifecycle — from a Jira ticket to verified tests — without you copy-pasting between tools.

Requirementpull the Jira ticket + docs as context
Use casescaptured as a mermaid decision flow
Unit + E2E testsscaffolded & tagged with the key
Verified ✅traced — done means done
the agent's definition of done isn't "code written" — it's a passing test that references the ticket
// .mcp.json — register acp with Claude Code or Copilot
{ "mcpServers": { "acp": { "command": "acp-mcp" } } }

// then ask your agent:
"Implement PROJ-123: pull it, scaffold the test, write the code,
 and don't stop until requirement_status says it's verified."
jira_to_markdown questions_to_html scaffold_test requirements_trace requirement_status markdown_to_confluence

Paste-ready agent flow prompts ↗

Get started

From zero to a dashboard in three commands

Node 20+ (and Docker for the always-on dashboard). That's it.

1

Install

One npm install gives you the acp command.

npm i -g ai-confluence-pipeline
2

Set up in your repo

Autodetects your test frameworks and a requirements source, and writes a ready config. Pick a stack profile if you like.

acp trace init            # or: acp trace init --profile github
3

Open the dashboard

Live matrix with Run buttons and history. Tag your tests with the requirement key (@PROJ-1) and they appear.

acp trace serve           # → http://localhost:8787
4

Gate your PRs (optional)

Re-run the suites and fail the build on any regression — locally or in CI.

acp trace --run --fail-on regression
5

Whole team in one go (optional)

Generates a portal token, an always-on Docker service, and a PR GitHub Action.

acp trace init --all && docker compose -f docker-compose.trace.yml up -d

Open source · MIT

Make "done" mean done.

Free and self-hostable. Read the docs, run it on a repo, and see your real requirement coverage today.

CLI + MCP for agents No Jira required Self-hosted & private Any test framework