Changelog
Cotterpin changelog: always getting stronger
The Cotterpin changelog: every release, in plain language. Nothing updates itself: cotterpin update --fetch downloads a signed release when you ask, and a repository moves to it only when you run cotterpin upgrade. Subscribe via RSS.
Releases
-
Watch, free routes and paid plans — and Cotterpin inside your agent
The first release candidate. It may still change before the final 0.3.0 release.
- NewInside Claude Code, Codex and Grok.
cotterpin adapters install <claude|codex|grok>adds Cotterpin's skills, agents, route commands and guard hooks to the agent tool, once for your whole machine, in the tool's own user folder — after listing every file, showing any block it adds to a file of yours, and asking. Nothing is added to your repositories.cotterpin adapters uninstallremoves exactly those files again. - NewOnly where you set it up. Your agent's hooks run in every repository you open, but Cotterpin answers only in a repository set up with
cotterpin init; elsewhere it says nothing and records nothing. A session that has worked in a Cotterpin repository keeps its guards when it steps out of it. To guard every repository on your machine instead, setCOTTERPIN_HOOKS_EVERYWHERE=1. - ImprovedYour
.gitignoreis left alone.cotterpin initkeeps Cotterpin's per-developer state out of commits through Git's own exclude file, so setting up a repository commits only.cotterpin/policy.yamland the lock. - NewFree: Watch and the free routes. Cotterpin is free to install, with no card, no sign-up and no time limit.
cotterpin initsends nothing and starts in Watch: it reports what it would have refused and never blocks. The language packs' upgrade routes and the Snyk vulnerability fixes run in full on every plan. - NewPro and Team, sold through Paddle.
cotterpin subscribeopens Paddle's checkout in your browser;cotterpin machinesmoves a licence between your machines yourself;cotterpin billingopens Paddle's customer portal. Each asks before it contacts our licence service. - NewEveryday commands:
cotterpin audit(a findings report that changes nothing),fix(mechanical fixes, after you approve),updateandupdate --rollback, andwhy. - NewTen-second commits.
cotterpin commitruns the fast checks, defers the rest, andcotterpin push-gateholds a push until they are green. - GatesJava: 157 gates — tests, persistence, SQL migrations, API shape, caching, security and logging — plus 51 language-neutral gates for any repository. Only gates with a zero-false-positive record block from install; the rest stay advisory until they earn it. Opt out of one finding with a reason:
// cotterpin:allow <ID> <reason>. - NewMemory that's enforced.
cotterpin memorykeeps facts per user, repository and task, with provenance and a lifecycle. Each session starts with a compact index; a fact moves to a wider scope only with a person's signed approval; and every rule memory names the hook, gate or check that enforces it —cotterpin memory auditverifies it is really wired. - New
cotterpin report. Refusals per rule and risk tier, what Watch let through, the guard's false-positive rate, time to commit and to push, and cost per landed change — computed on your machine from one redacted record of every decision. Nothing is uploaded. - NewTeam single sign-on.
cotterpin logintakes a Team seat through your Team's identity provider: Okta, Entra ID or Google Workspace (OpenID Connect), or GitHub with an organization. - SecurityApprovals confirmed with your password, or Touch ID where it is enabled for sudo. A destructive agent action waits for
cotterpin approve <id>: a root-owned signer shows you the exact action and signs it with a key only root can read, after the operating system checks it's you — your account password, or your fingerprint on a Mac where Touch ID is enabled for sudo (pam_tid), every time. Set it up once withcotterpin approvals setup. - SecurityEvery agent action has a risk tier — read, low-risk write, sensitive or destructive — and every decision is written to an action audit log the agent cannot edit, move or delete.
- SecurityCredentials never reach an agent. Reading
.env, cloud credential files or the environment into an agent's context is refused, judged by effect; everything Cotterpin prints is redacted. - SecurityHardened mode. Installed root-owned by an administrator with a root-owned security policy, no user file can lower enforcement or drop a machine to Watch. Developer mode stays what it is: a guardrail for agents, not a sandbox.
- ImprovedLighter agent sessions. The adapters now disclose progressively: each session carries a compact summary and loads the one skill, gate or document it needs through
cotterpin mcp serve. For Codex, what a session carries up front fell from 30,565 to 2,551 bytes. - ImprovedSpeed budgets. The agent hook,
cotterpin --versionand the commit tier are timed in our own test suite against measured baselines; anything more than 10% slower fails the release. - ImprovedConsent first. Every machine measurement, and every change outside your repository to your own files or your agent tools' settings, asks first, saying what and why. Declining always works — jobs simply run one at a time. Review your answers with
cotterpin consent. - ImprovedThe Java pack ships as its own package,
cotterpin-pack-java, installed beside Cotterpin. - SecuritySigned releases and licences. Every release publishes a manifest of its files, signed with our release key in AWS KMS; licences are signed with our KMS licence key. Both keys live in Cotterpin's own AWS account and are pinned in the build. Check a download offline with
cotterpin verify --release. - Security
.envand credential files are removed, and recognisable secrets redacted, before anything is sent to your model provider. - FixedThe Java build cache now snapshots multi-module Maven projects.
- FixedThe Java pack's deeper gate fixtures are now included in its package.
- NewInside Claude Code, Codex and Grok.
-
Cotterpin gets its own name
The groundwork for 0.3.0. Its changes reach you in 0.3.0-rc1.
- New
cotterpin connectfinds your Claude, Codex and Grok CLIs and asks each whether it is signed in. It stores nothing. - New
cotterpin checkruns your repository's own declared checks;cotterpin verify --releasechecks, offline, that the release your repository approved is intact. - ImprovedSource available under the PolyForm Internal Use License 1.0.0 (pending solicitor review — see our Software Licence page).
- FixedCodex reporting “Not logged in” is no longer read as signed in.
- New