BlastTrace
Pre-Edit Full-Stack Breaking-Change & Contract Blast-Radius Engine
Database Schema$\longleftrightarrow$Backend ORM & Go Services$\longleftrightarrow$API Contracts$\longleftrightarrow$Web (React/Vue)$\longleftrightarrow$Mobile (Flutter/iOS/Android)$\longleftrightarrow$Tests
⚡ What is BlastTrace?
BlastTrace is a high-performance Model Context Protocol (FastMCP) server and standalone developer CLI that prevents AI coding agents (and engineering teams) from silently breaking full-stack web and mobile applications.
Existing linters and AST tools only trace single-language file imports (File A -> File B). They go 100% blind when a schema edit cascades across architectural boundaries:
[Database Column: users.billing_balance]
↓
[Backend ORM / Go Microservice: User.billing_balance]
↓
[API Endpoint: GET /api/v1/user/summary]
↓
[Web & Mobile Clients]:
├─ React Storefront (CheckoutModal.tsx)
├─ Vue / Nuxt 3 Storefront (UserProfile.vue)
├─ Flutter POS Client (product_model.dart)
├─ Native iOS App (UserProfileDto.swift)
└─ Native Android App (UserProfileResponse.kt)
↓
[Targeted Test Suites: pytest, vitest, flutter test]
Powered by the BlastTrace Native Core, BlastTrace deterministically connects schema, code, network contracts, and client consumers into an actionable topology before files are saved, before git commit, and before pull requests merge.
🚀 Quick Start
1. Installation
pip install --upgrade blasttrace
Supports Windows, macOS, and Linux out-of-the-box.
2. Universal 1-Click AI Agent Setup
Automatically connect BlastTrace's 10 pre-edit safety tools to your AI coding agents in 1 single command:
blasttrace install-agent
BlastTrace automatically scans your machine and configures:
- Cursor IDE (workspace
.cursor/mcp.jsonand global settings) - Claude Desktop (
claude_desktop_config.json) - Claude Code CLI (
~/.claude.json) - VS Code Extensions (Cline & Roo Code)
- Windsurf (
mcp_config.json) - Zed Editor (
settings.json) - Custom Frameworks (prints standard universal MCP snippet for LangChain, LlamaIndex, Aider)
3. Standalone Developer CLI (Zero AI Required)
Run pre-edit contract reachability checks directly from your terminal:
# Check full-stack blast radius of any symbol or file
blasttrace check User.balance
# Or inspect blast radius across a specific repository
blasttrace check User.balance /path/to/repo
# Output raw JSON for custom CI/CD pipelines
blasttrace check User.balance --json
Clean Executive Terminal Output:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BlastTrace Contract Reachability Summary
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Target Symbol : User.balance
License Tier : PRO
Total Blast Radius : 28 downstream node(s)
Downstream Breakdown by Layer:
• Backend : 3 impacted
• API : 5 impacted
• Web Storefront (React) : 7 impacted
• Vue / Nuxt Storefront : 2 impacted
• Flutter POS / Client : 3 impacted
• iOS Client (Swift) : 3 impacted
• Android Client (Kotlin) : 2 impacted
• Tests : 3 impacted
Immediate Downstream Paths (Top 5):
-> sample_backend.py (User.balance)
-> sample_backend.py (User.balance) -> sample_backend.py (process_user_checkout)
-> sample_backend.py (User.balance) -> sample_backend.py (get_user_profile)
-> sample_backend.py (User.balance) -> sample_go_service.go (GET /api/v1/user)
-> sample_backend.py (User.balance) -> sample_backend.py (GET /api/v1/user [balance])
... and 23 more path(s) (pass --json for full trace)
Targeted Test Command:
pytest sample_test.py:test_user_checkout_and_balance
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
4. Git Pre-Commit Breaking-Change Gate
Install the automatic pre-commit safety gate across your repository:
blasttrace pre-commit --install
Whenever you or an AI agent attempts to stage breaking contract edits without updating client consumers, BlastTrace halts the commit and outputs the exact impacted consumers.
🛡️ Supported Technology Stacks
| Architectural Layer | Supported Technologies & Frameworks |
|---|---|
| Database & Migrations | PostgreSQL, MySQL, SQLite, SQL DDL migrations (.sql), SQLAlchemy, Alembic, Prisma (schema.prisma), GORM. |
| Backend & Microservices | Python (FastAPI, Flask, Django REST, Pydantic, SQLAlchemy), Go / Golang (Gin, Fiber, Chi, standard net/http, GORM). |
| API Contract Layer | REST endpoints, JSON request/response payloads, OpenAPI / Swagger specifications. |
| Web Frontends | React & Next.js (TypeScript AST, prop-chains, property destructuring), Vue.js & Nuxt 3 (.vue templates, <script setup>, Pinia stores, $fetch, useFetch, Axios). |
| Mobile Client Suite | Flutter / Dart (Dio, HTTP client, fromJson/toJson models), Native iOS (Swift Codable structs, CodingKeys, URLSession, Alamofire), Native Android (Kotlin data class, @SerializedName, Retrofit @GET/@POST, Ktor). |
| Test Suites | Pytest, Unittest, Jest, Vitest, Flutter test (change-aware test selection). |
🔑 Licensing & Tiers
| Tier | Price | Access | Capabilities |
|---|---|---|---|
| Community | $0 (Free Forever) | Zero key needed | Read-only repository topology indexing (index_repository_topology) and basic symbol reachability (analyze_symbol_reachability). |
| Console Tester | Internal Testing | Signed tester key (BT-TEST-...) |
Full Pro access for verified QA and pilot developers. Generated via blasttrace gen-test-key <LABEL>. |
| Pro License | $19/mo (or $180/yr) | Lemon Squeezy Store Key | All 10 FastMCP safety tools, automated Pre-Edit Breaking-Change Gate (PASS/WARN/BLOCK), surgical sync patch generation, and circular dependency interceptor. |
Activate your Pro or Tester key:
blasttrace activate YOUR-LICENSE-KEY
Check current license status:
blasttrace status
🔒 100% Local & Privacy-Preserving
BlastTrace executes entirely on your local machine:
- Zero telemetry: No metrics or usage sent to external servers.
- Air-gapped operation: Deterministic Dependency Reachability Engine runs locally.
- Zero cloud code uploads: Your intellectual property never leaves your workstation.
🌐 Official Links
- Website & Documentation: https://blasttrace.dev
- PyPI Package: https://pypi.org/project/blasttrace/
Metadata
Release files for blasttrace 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| blasttrace-1.2.1.tar.gz | 72.0 kB | Without provenance | Details for blasttrace-1.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| blasttrace-1.2.1-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details for blasttrace-1.2.1-py2.py3-none-any.whl |
Total release size: 133.2 kB
Release files / blasttrace-1.2.1.tar.gz
| Download URL | blasttrace-1.2.1.tar.gz |
|---|---|
| Size | 72.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ff08a3eea4e76ee9d0f510c0024de897b50555c85271e90516a8d164f7b8868b
|
|
BLAKE2b-256 checksum How to use checksums |
a6efd0f969a9988b6376f0bebb3cba89e49e2394f925f387cf48d5d6bdb5bba2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / blasttrace-1.2.1-py2.py3-none-any.whl
| Download URL | blasttrace-1.2.1-py2.py3-none-any.whl |
|---|---|
| Size | 61.2 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
b35f03fcdef8898c3b9506ea5cfb4917a61b9dca1a401ebc03f3f6780085e025
|
|
BLAKE2b-256 checksum How to use checksums |
0d8bbeb22660dacb59d8b5263c795e51263f5d460a997d8e36b7fef01f6c11e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for blasttrace 1.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.