arcanon

Your First Scan

Scan a repo and see your services in the dashboard.

Prerequisites

1. Set up credentials

Get your API key from Settings > API Keys in the dashboard, then run in Claude Code:

/arcanon:login arc_your_key_here

The key is stored at ~/.arcanon/config.json (mode 0600). ARCANON_API_KEY as an environment variable also works if you'd rather not persist it.

2. Scan your repo

From any repo root, run:

/arcanon:map

The plugin runs locally — detecting services, endpoints, and connections from your code via Claude agents. Results land in a local SQLite graph at ~/.arcanon/projects/<hash>/impact-map.db. Nothing leaves your machine yet.

3. View your graph

You have two viewing surfaces. Pick one or both.

3a. Locally (just for you)

After a scan, the plugin's worker serves a local graph viewer at http://localhost:37888. No account, no upload — perfect for local development.

What you get: canvas graph with pan/zoom, filters (protocol, layer, boundary, language), isolate mode (1–3 hops), search, and PNG export. See Local Graph Viewer for the full feature list.

You can also ask Claude directly — the plugin exposes an MCP server, so prompts like "which services consume user-service?" are answered from the local graph without a round-trip.

3b. Share with your team

When you're ready for cross-repo drift detection, impact analysis that spans teammates' services, or a dashboard everyone can open — push your scan to Arcanon Hub:

/arcanon:sync

Or enable automatic sync in arcanon.config.json:

{ "hub": { "auto-sync": true } }

Open app.arcanon.dev and navigate to Architecture. Services appear as nodes in the graph with connections between them.

  • Click a node to see endpoints, schemas, and drift
  • Use filters to focus by language, repo, or team
  • Check Impact to see what breaks if a service changes

The Hub graph is scoped to your org and merges scans from every teammate and repo — so the dashboard shows strictly more than any single local scan.

Tips for better results

Install your dependencies before scanning. The scanner analyses installed packages to find connections made through internal SDKs and wrapper functions:

npm ci          # Node.js
pip install -r requirements.txt  # Python
bundle install  # Ruby

Link sibling repos in arcanon.config.json so the scanner picks up cross-repo calls:

{
  "project-name": "api",
  "linked-repos": ["../auth-service", "../shared-schemas"]
}

Add a .arcanon.toml if the scanner misdetects service names or misses services:

[services."packages/api"]
name = "api-server"

What gets detected

Examples
ServicesDockerfiles, docker-compose services, Kubernetes deployments
EndpointsFastAPI routes, Express handlers, Spring Boot controllers, OpenAPI specs
Connectionsfetch, axios, httpx, gRPC, Kafka, Redis, NATS, PostgreSQL
SchemasRequest/response types, protobuf messages, GraphQL types

Next steps

On this page