Skip to main content

Requirements Traceability Matrix toolkit for GenAI-driven development

Project description

RTMX

Requirements Traceability Matrix toolkit for AI-driven development.

CI Coverage Status PyPI version Python versions License


RTMX brings requirements traceability to modern software development. Track what you're building, why you're building it, and prove it works—all from your terminal.

Documentation · Quickstart · RTMX Sync

rtmx status

Why RTMX?

For AI-assisted development, RTMX provides the context AI agents need:

  • Token-efficient CSV format that fits in context windows
  • Clear requirement IDs for precise references (REQ-AUTH-001)
  • Dependency graphs that show what to build next
  • MCP server for real-time AI agent integration

For teams, RTMX brings clarity:

  • One command to see project progress: make rtm
  • Prioritized backlog with blocking dependencies
  • Tests linked directly to requirements

For compliance, RTMX provides traceability:

  • Every requirement linked to its test
  • Audit-ready CSV database (version-controlled, diff-friendly)
  • Validation that catches gaps before reviewers do

Security

RTMX is designed with security-first principles:

Property Description
Local-first Your data stays on your machine—no cloud required
Git-native Full version history and audit trail via git
Human-readable CSV format is auditable, no opaque databases
Open source Apache-2.0 license, fully auditable codebase
No telemetry Zero data collection in the core tool

RTMX Sync (coming soon) adds real-time collaboration with end-to-end encryption, SSO/SAML, and on-premises deployment options for defense and regulated industries.

Installation

pip install rtmx

Quick Start

1. Set up RTMX in your project

rtmx setup

This creates everything you need:

  • rtmx.yaml — Configuration file
  • docs/rtm_database.csv — Requirements database
  • docs/requirements/ — Requirement specification files
  • Makefile targets (make rtm, make backlog)
  • AI agent configs (CLAUDE.md, .cursorrules)

For existing projects, use --branch to review changes before merging:

rtmx setup --branch    # Creates a git branch for review
rtmx setup --pr        # Creates branch + opens PR

2. Check your status

rtmx status -v    # Verbose output with category breakdown
rtmx status -vv   # Very verbose with requirement details
rtmx status -vvv  # Maximum detail

3. See what to work on next

rtmx backlog

4. Run health checks

rtmx health

AI Agent Integration

RTMX provides an MCP (Model Context Protocol) server for seamless AI agent integration:

rtmx mcp-server

This allows AI assistants like Claude to:

  • Query project status and requirements
  • Understand what to build next
  • Check dependencies and blockers
  • Validate changes against requirements

Configure in your MCP client:

{
  "mcpServers": {
    "rtmx": {
      "command": "rtmx",
      "args": ["mcp-server"]
    }
  }
}

Pytest Integration

Link your tests directly to requirements:

import pytest

@pytest.mark.req("REQ-AUTH-001")
@pytest.mark.scope_unit
def test_oauth_login():
    """Validates REQ-AUTH-001: OAuth 2.0 authentication."""
    assert authenticate_user(token) == expected_user

RTMX automatically tracks which requirements have tests and which don't.

Available markers:

Marker Purpose
@pytest.mark.req("REQ-XXX-NNN") Links test to requirement
@pytest.mark.scope_unit Unit test scope
@pytest.mark.scope_integration Integration test scope
@pytest.mark.scope_system System/E2E test scope

Commands

Core Commands

Command Description
rtmx setup Complete RTMX setup (config, RTM, agents, Makefile)
rtmx init Minimal setup (config and RTM database only)
rtmx status Show completion progress (-v, -vv, -vvv for detail)
rtmx backlog Show prioritized incomplete requirements
rtmx health Run integration health checks
rtmx config Show or validate configuration

Analysis Commands

Command Description
rtmx deps Show dependency graph
rtmx cycles Detect circular dependencies
rtmx reconcile Check/fix dependency reciprocity
rtmx analyze Discover requirements from project artifacts
rtmx diff Compare RTM versions (for PRs)

Dashboard Commands

Command Description
rtmx serve Start web dashboard with REST API
rtmx tui Launch interactive terminal dashboard

Integration Commands

Command Description
rtmx from-tests Scan tests for requirement markers
rtmx bootstrap Generate RTM from tests, GitHub, or Jira
rtmx sync Synchronize with GitHub Issues or Jira
rtmx install Install prompts into AI agent configs
rtmx makefile Generate Makefile targets
rtmx mcp-server Start MCP server for AI agent integration
rtmx docs Generate schema and config documentation

Makefile Integration

After rtmx setup, you get these Makefile targets:

make rtm       # Quick status check
make backlog   # See what's next
make health    # Run health checks

Python API

from rtmx import RTMDatabase, Status

# Load and query
db = RTMDatabase.load("docs/rtm_database.csv")
incomplete = db.filter(status=Status.MISSING)
phase1 = db.filter(phase=1)

# Graph operations
cycles = db.find_cycles()
blockers = db.critical_path()

# Validation
errors = db.validate()
violations = db.check_reciprocity()

# Modify and save
db.update("REQ-SW-001", status=Status.COMPLETE)
db.save()

Configuration

rtmx.yaml:

rtmx:
  database: docs/rtm_database.csv
  requirements_dir: docs/requirements
  schema: core
  pytest:
    marker_prefix: "req"
    register_markers: true

RTM Schema

The CSV database includes these columns:

Column Required Description
req_id Yes Unique identifier (e.g., REQ-AUTH-001)
category Yes High-level grouping
requirement_text Yes Human-readable description
status Yes COMPLETE, PARTIAL, MISSING, NOT_STARTED
priority No P0, HIGH, MEDIUM, LOW
phase No Development phase number
dependencies No Pipe-separated req IDs this depends on
blocks No Pipe-separated req IDs this blocks
test_module No Test file path
test_function No Test function name

See the schema documentation for the complete schema.

CI/CD Integration

RTMX provides GitHub Actions workflows:

Health check on every push:

- run: pip install rtmx
- run: rtmx health --format ci

RTM diff on pull requests:

- run: |
    git show origin/main:docs/rtm_database.csv > base.csv
    rtmx diff base.csv docs/rtm_database.csv --format markdown

Development

git clone https://github.com/rtmx-ai/rtmx.git
cd rtmx
make dev      # Install with dev dependencies
make test     # Run tests
make lint     # Run linter

License

Apache License 2.0 — see LICENSE for details.

Contributing

Contributions welcome! Please read our contributing guidelines before submitting PRs.


Built by ioTACTICAL Engineering
dev@rtmx.ai

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtmx-0.0.7.tar.gz (732.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtmx-0.0.7-py3-none-any.whl (213.7 kB view details)

Uploaded Python 3

File details

Details for the file rtmx-0.0.7.tar.gz.

File metadata

  • Download URL: rtmx-0.0.7.tar.gz
  • Upload date:
  • Size: 732.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for rtmx-0.0.7.tar.gz
Algorithm Hash digest
SHA256 a976563bac9699a4594dca4eacc54f52ba0220de838c53971ab040f8061fcf22
MD5 8f1c66ab8b8ea09928492163decf2ed8
BLAKE2b-256 008d7b29418dc18cbbfc877169ad02b0666e19613e9c15a5d7c85a9084bdeaaf

See more details on using hashes here.

File details

Details for the file rtmx-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: rtmx-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 213.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for rtmx-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 38a51155c328a3494018d8b8842f706d9b85f7e2767c698a62e6cd0d567aba82
MD5 d13ff87d22a4e97847736c20c5ae9586
BLAKE2b-256 511f4ae0eaf19c2f9173b09cc4ce24c193efaac9e13d4b6fffafb77e82498a77

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page