Architecture
Architecture ships turned off. Settings, then Architecture, is where you turn it on.
Turn Architecture on
Architecture is off in a new install, so nothing about it appears until you ask for it. Open Settings, choose Architecture, and switch on Show Architecture. That puts Architecture on the sidebar and in the View menu.
The Architecture page in Settings stays visible whether the switch is on or off, so turning it off never hides the way back in.
Read the map
Open the map and Tortie draws the repository as a small map in a full-size tab, grouped by what the repository builds and starts. Each package, program or service gets its own frame, rather than a box per folder. Click a part to drill into it. No contract is needed, nothing is written, and every later open reuses the reading.
The lines between parts are named for what carries the traffic, so you can see at a glance whether two parts talk over an internal call, a channel, a socket or a network request.
Every part also wears a mark saying how far it is proven, and the marks are counted from the code rather than asserted: declared means the code says it exists, composed means something wires it up, reached means something that actually starts can get to it, and tested means a test exercises it. A part with no tracked files at all reads off-repo.
The map is read from the code in TypeScript, JavaScript, Go, Python, Rust, Ruby, Swift, Kotlin, and Objective-C. Swift resolves between targets rather than between files, because a Swift target's files see each other with no import to read.
Look inside a part
Click a part and the panel below the map says what it exposes, what it writes, and what guards it. Each line points at the code it was read from, so you can follow it rather than take it on trust.
A Surfaces tab lists every route, command and channel the code declares, which is the honest answer to “what can reach this from outside”. A Gates worksheet counts the checks standing in front of those surfaces, so a surface with nothing in front of it is visible instead of implied.
Ask what a part is for
With an agent confirmed in Settings, you can ask it to read the repository and say what each part is for, a sentence per part, along with the steps a piece of work takes through the system and the reasons work stops.
Every sentence carries the lines it was found at. Each citation says what actually sits at that line and how rare a match like it is to hit by chance, so a sentence backed by something common reads differently from one backed by something specific. A sentence whose line has since moved is marked stale rather than quietly redrawn.
The reading is drawn beside the same count taken with no model at all, so you can see what the agent added over what the code already showed.
Keep a contract of promises
A contract is a small set of promises about how the parts of a project are allowed to touch. Tortie checks them against the code and says which ones hold, which ones broke and at which line, and which ones it cannot check. A healthy set is 5 to 10 promises: fewer says nothing, and more is a second codebase to keep current.
Draft the contract writes a small deterministic skeleton into docs/arch, drawn from the code alone. It lands as an ordinary uncommitted change, so Source Control shows every line and you commit it or throw it away.
A promise you decide to live with can be accepted on its failing row, with your reason. Accepted promises stay counted and stay visible in your own words, and that control is the one way Tortie ever writes that file.
Choose who fills in the contract
The skeleton comes from the imports, and an agent fills in what each part is for, which promises must hold, and what is missing. None is the shipped answer, and every project keeps the drafted skeleton without an agent.
Claude Code is the only agent Tortie has measured for this work, so most agents cannot fill in a contract yet. Pick the agent and one of its models in Settings, then Architecture.
Aim a session at one part
With a session open, choose Aim at a Promise in the Session menu to put a scope into that session's prompt. The text lands in the prompt and nothing is sent until you press Return.
A shell session, a session Tortie did not start, and a project with no contract each refuse with one sentence naming what would fix it.
Know the current limits
- Architecture is off until you turn it on, on every Mac you install Tortie on.
- Claude Code is the only agent that can fill in a contract today, and Codex is the only one measured for the model reading.
- The map is read from the computer the repository is on, so a project on a remote machine cannot be mapped from here.
- A sentence an agent writes is a lead, not a verdict: a citation says a fact was found near a claim and never that the claim is true.
- A contract is read on the computer its repository is on, so a project on a remote machine cannot be read from here.
- The description an agent writes is the author's own words, and Tortie never checks them.
- A promise backed by quoted code is partly checked: the quoted code is still there, and what it does when it runs is unproven.
