Skip to main content

Agents see files. You see architecture. dotscope gives agents the architecture.

Project description

dotscope

You give an agent a task. It searches your codebase, finds the files, writes the code, runs the tests, and ships. Sounds fine until you realize it changed a backend endpoint without touching the frontend that calls it. It put a utility function in src/helpers/ instead of next to the module that uses it. It ignored the naming convention every other file follows. And when two agents worked at the same time, they silently overwrote each other's changes.

The code compiled. The tests passed. Production broke.

This happens because agents don't have what you have — the full picture. They see files. You see architecture.

dotscope is the operating system for agent-driven codebases.

One command scans your project and learns the architecture: which files depend on which, what patterns your code follows, how your backend talks to your frontend, and what breaks when something changes. From that point on, every agent gets the full picture before it writes a line.

It does five things:

  1. One search, everything you need. An agent describes what it wants to do. dotscope returns the relevant files, the functions they call, the contracts they must honor, the conventions they must follow, and which files are locked by other agents. One call. Not five.

  2. Enforces contracts across languages. Your Python backend and TypeScript frontend share an invisible API contract. dotscope extracts routes from FastAPI, Flask, and DRF. It extracts fetch calls from React and Angular. It links them automatically. Change a Django ViewSet without updating the Angular component? Blocked.

  3. Routes files to the right place. Before an agent creates a file, it asks dotscope where it should go. dotscope reads the dependency graph and routes the file there. No more src/utils/ graveyards.

  4. Coordinates multiple agents. When Agent A starts working on billing, dotscope locks the blast radius. Agent B works on auth without collision. If they touch the same function, the AST merge driver resolves it semantically — not with conflict markers.

  5. Gets smarter with every commit. Which search results did agents actually use? Which did they ignore? dotscope tracks this and adjusts. Conventions that hold up get enforced harder. Rules that get overridden get quieter.

Here's what it looks like on a real codebase:

$ dotscope ingest

  Analyzing dependency graph...
  Mining git history...
  Discovering conventions...

  Discoveries:
  - version.py and environment.prod.ts always change together
  - workflow-edit-dialog.component.ts and models.py are tightly coupled

  Validation (49 commits backtested):
  - Overall recall: 78%
  - Token reduction: 67% (1.3M → 437K avg)

  Output: 3 .scope files written.

$ dotscope check --backtest

  13 issues flagged across 7 commits:
  - models.py changes need the Angular component updated
  - consumer.py changes need matching parser test updates
  - views.py changes typically need test_api_search.py updated

  3 commits were clean.

One command. Point it at anything.

pip install dotscope && dotscope init

How It Works · Scope Files · Agent Instructions · MIT

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

dotscope-1.2.0.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

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

dotscope-1.2.0-py3-none-any.whl (291.2 kB view details)

Uploaded Python 3

File details

Details for the file dotscope-1.2.0.tar.gz.

File metadata

  • Download URL: dotscope-1.2.0.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for dotscope-1.2.0.tar.gz
Algorithm Hash digest
SHA256 1a40da52e1db3a34ad76634f9677037b47150c4389a493f45d056e484bc4eb3b
MD5 7ea39474839eb67f7aa0b5f9841dc65a
BLAKE2b-256 d1cd13f66f94a2ba73da472a2a3d4555a282b0ea5c2cc2c3aa27cc73c2160565

See more details on using hashes here.

File details

Details for the file dotscope-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: dotscope-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 291.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for dotscope-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f55da89c1a205a5eada08a86a75d99ce63be9339ef76a932e80938a1f7e5bd5d
MD5 36d515ed5ae10e56a110077f0920b0b2
BLAKE2b-256 f3cc2c675a29cd31441a2d440c04e8f80f39937f7bebe4027a90e944a538c04a

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