@arcsight-ai/convergence
v1.0.11
Published
Deterministic, stateless convergence boundary engine
Maintainers
Readme
npm install -g @arcsight-ai/convergenceArcSight Convergence
Refactor without breaking production.
Try it right now
Run this on any file in your project:
npx @arcsight-ai/convergence impact src/index.tsNo grep archaeology. No guesswork.
When you change a file in a large codebase you usually don't know:
- what depends on it
- how widely it is used
- what will break
So refactoring becomes a gamble.
You either:
- spend hours tracing dependencies
- or risk breaking production.
ArcSight solves this by showing the blast radius of any change.
Example: Run one command on a file—you get a number. That number is how many files could be affected if you change it.
npx @arcsight-ai/convergence impact src/cli.tsResult:
Blast radius: 12 files
Twelve files could break if you refactor this one.
ArcSight tells you that instantly.
You need: Node.js 18+ (node -v). Works with TypeScript and JavaScript codebases.
| Try the demo | What it does | Use it | Get it |
Try it in 10 seconds
Run the demo in this repo. It analyzes real open-source repos and shows you:
- The architecture hub (the most depended-on file)
- Which files depend on it
- The blast radius of changing it
- Whether the architecture has drifted
- A refactor safety report in ~10 seconds
Run the demo (copy and paste):
git clone https://github.com/arcsight-ai/convergence.git
cd convergence
bash demo/run-demo.shFirst run clones two repos (~1 min); after that, ~10 seconds. Output goes to demo/output/; a summary is written to demo/DEMO.md. The demo only reads the repos—it never modifies them.
Preview the report: demo/DEMO.md (view on GitHub or after cloning).
Troubleshooting: Run the script from inside the convergence folder; ensure Node.js 18+ is installed (node -v).
What it does
| You want to… | You get… | |--------------|----------| | Find the most connected file | graph — the hub (most dependents) | | Understand why a file matters | why — what depends on it | | See what breaks if you change a file | impact or blast — blast radius (number of affected files) | | Spot the riskiest files | hotspots — highest architectural risk | | See how the architecture changed over time | drift — dependency changes across commits | | Block bad architecture in CI | guard — pass/fail vs a baseline |
Same inputs give same outputs (deterministic). Safe to use in scripts and CI.
What developers use this for
Find blast radius before refactoring:
npx @arcsight-ai/convergence impact src/services/paymentService.tsUnderstand why a file is risky:
npx @arcsight-ai/convergence why src/services/paymentService.tsDetect architecture regressions in CI:
npx @arcsight-ai/convergence guardAsk "what if I change this?" before committing:
npx @arcsight-ai/convergence impact src/services/paymentService.tsLarge-scale architecture demo
Run ArcSight against the Next.js framework:
npm run demo:nextjsThis analyzes one of the largest JavaScript frameworks and demonstrates:
- blast radius detection
- architecture risk explanation
- refactor impact simulation
- CI architecture protection
ArcSight reveals hidden dependency risk in seconds.
Use it in your project
Install from npm (@arcsight-ai/convergence):
# Run without installing (easiest)
npx @arcsight-ai/convergence --help
# Or install globally
npm install -g @arcsight-ai/convergence
convergence --help
# Or install in your project
npm install @arcsight-ai/convergence
npx convergence --helpRun all commands from your project root (where your source code lives).
Commands
| What you want | Command |
|---------------|---------|
| See all commands | npx @arcsight-ai/convergence --help |
| Impact of changing a file | npx @arcsight-ai/convergence impact <file> |
| Blast radius (how many files affected) | npx @arcsight-ai/convergence blast <file> |
| Why a file matters (what depends on it) | npx @arcsight-ai/convergence why <file> |
| Most risky files | npx @arcsight-ai/convergence hotspots |
| Architecture drift over time | npx @arcsight-ai/convergence drift |
| Guard against architecture regressions | npx @arcsight-ai/convergence guard |
| JSON output | Add --json to any command that supports it |
Examples:
npx @arcsight-ai/convergence impact src/cli.ts
npx @arcsight-ai/convergence hotspots --top 20
npx @arcsight-ai/convergence why src/services/payment.tsNext step: Run the demo above, or run npx @arcsight-ai/convergence impact <file> in your repo for your first blast radius. One command, one number—no UI to install.
Where to get it
- npm: @arcsight-ai/convergence
- Works with TypeScript and JavaScript codebases.
- Install only from npm or your organization's approved registry.
License: MIT · Feedback: Open an issue
Refactoring should not require courage.
ArcSight tells you what breaks before you change anything.
