Attribution lifecycle
1
A coding agent starts an edit
The agent integration checkpoints the working tree before it changes files. This separates existing human work from the agent’s upcoming changes.
2
The agent records its changes
After the edit, the integration records the changed lines with the agent, model, and session context. Temporary checkpoint data lives under
.git/ai.3
You keep working normally
Human edits and later agent edits create more checkpoints.
autter status summarizes the current working-tree attribution.4
A commit creates an authorship log
When you commit, Autter condenses checkpoints into a line-level authorship log and associates it with the commit through a Git note.
5
Git operations preserve attribution
Autter updates attribution after supported history operations, including rebase, cherry-pick, stash, merge, squash merge, reset, and amend.
6
Connected mode adds organization context
When enabled, local Git notes remain available. Autter additionally redacts and queues captured transcripts in content-addressed storage, then syncs transcript and usage data to the owning organization’s environment.
What an authorship note contains
An authorship note maps line ranges to prompt or session identifiers. Its metadata can include:- Agent and model
- Human Git identity
- Generated, deleted, accepted, and overridden line counts
- Commit associations
- A reference to prompt content stored outside Git
Why prompts stay outside Git
Git notes should remain compact and safe to share with repository collaborators. Autter stores prompt records separately and links them by identifier. This design supports access control and reduces the chance of committing secrets or personal data into repository history. Connected deployments apply best-effort secret redaction on the developer machine before a transcript enters the upload queue. You should still avoid entering secrets in coding-agent prompts. Each uploaded transcript is keyed by a hash of its normalized content. The authorship note stores acas:<hash> reference instead of embedding the full conversation in Git.
Supported history operations
Autter’s rewrite handling is eventually consistent. A note can appear shortly after the Git operation completes.

