Skip to main content

Code Mower

Code Mower adds a supervised operating layer around AI coding agents. It helps teams give one builder ownership of a change, obtain independent reviews on the current pull-request head, recover stalled work, and measure which builder and reviewer combinations are useful on their own codebase.

The current release is supervised-pilot, bring-your-own-agent-loop software. It is not a drop-in unattended merge gate. Humans still own credentials, repository policy, reviewer promotion, and exceptional decisions.

The current source candidate is v1.4.2, with target install spec code-mower==1.4.2. Publication and installed-package qualification are pending #952. The published v1.4.0 and v1.4.1 artifacts remain unchanged. Install commands below target v1.4.2 after publication; candidate rehearsals use the exact verified artifact.

Documentation on main follows the source on main. After v1.4.2 publication, start with the v1.4.2 guide.

What Code Mower Adds

You can run Claude Code, Codex, Devin, or another coding agent directly. Code Mower supplies the shared workflow around them:

  • one orchestrator and one writer per branch;
  • provider-neutral work orders, handoffs, status, and recovery;
  • independent, structured reviews bound to the current PR head;
  • repository-specific calibration before a reviewer gains merge authority;
  • local reports for quality, latency, cost, interventions, and outcomes;
  • setup diagnostics for provider auth, GitHub permissions, and private-repo Actions cost; and
  • optional, explicitly authorized organizational context and metadata sharing.

The default setup is deliberately small: Claude Code and Codex. Additional participants are opt-in and keep their own execution, privacy, cost, and promotion requirements.

Start Here

Code Mower requires Python 3.12 or newer. A laptop or workstation should use one stable pipx installation:

python3.12 --version
export CODE_MOWER_PYTHON="$(command -v python3.12)"
pipx install --python "$CODE_MOWER_PYTHON" code-mower==1.4.2
command -v code-mower
code-mower --version

Hosted agents and CI machines can use uv tool install; contributors should use scripts/dev-python and an editable virtual environment. The Install And Bootstrap guide gives the exact cold-install, upgrade, optional Coworker, and contributor commands.

From the repository you want to pilot:

code-mower init --easy
code-mower init --easy --apply --output-dir .code-mower.generated
code-mower doctor --adoption --repo OWNER/REPO
code-mower lanes status --repo OWNER/REPO

init --easy previews the Claude + Codex setup and changes nothing. --apply writes a reviewable generated tree; it does not copy those files into your repository, start a provider, enable auto-merge, or upload data. Review and edit the generated configuration before opening the setup PR.

To inspect representative output first, use the synthetic calibration example and Board demo.

Follow Try Code Mower In 10 Minutes to run Codex and Claude manually against that first PR. Automation tokens, recurring dispatch, branch-protection changes, and auto-merge are not prerequisites for the manual reviewer-gate pilot.

After the first peer-review loop works, follow Build Loop In 30 Minutes to add automated builder dispatch and the stricter promoted-pilot repository settings.

Participants And Sessions

Choose participants interactively or explicitly:

code-mower init --interactive
code-mower init --with claude,codex,devin

Both commands preview by default. Add --apply only when you are ready to write the generated setup.

The agent that starts a session is the implicit orchestrator:

code-mower session start \
  --repo OWNER/REPO \
  --with claude,codex,devin \
  --host codex

session start saves an operating brief and takes the local single-orchestrator lease. It does not launch every selected product. The host uses the execution paths available for each participant and records explicit handoffs where Code Mower has no automatic transport. Later, from anywhere in the checkout, code-mower session show --current finds the brief the live lease names and code-mower session lease show reports the lease itself; neither changes state. The default is 12 hours. A later process can renew or release the same session ID with session lease renew --session-id SESSION_ID or session lease release --session-id SESSION_ID; stop its writers before release. Use session start --dry-run or --no-lease for read-only work.

Codex, Claude Code, and Cursor are qualified for the shared session, telemetry, lease, and Jira-authority contract in v1.4.2. Devin, Grok Bot, Antigravity, Muse, and custom hosts are recognized for briefs and provenance, while their execution remains an explicit handoff or provider-specific transport. See Participants And Sessions and the Provider Matrix.

Optional Organizational Context

The base installation works without an organizational-memory provider. The optional Coworker integration gives approved Claude, Codex, and Devin roles the same bounded, cited evidence through an explicitly selected private account. Account identity and credentials stay outside the repository.

After installing the optional dependencies and connecting an approved account, the guided path carries one work item through retrieval, builder delivery, current-head attachment, independent review, and private feedback:

code-mower session start --repo OWNER/REPO --host codex --work-item EXAMPLE-123
code-mower session context prepare .code-mower/sessions/SESSION.json
code-mower session context deliver .code-mower/sessions/SESSION.json
code-mower session context attach .code-mower/sessions/SESSION.json --pr 42
code-mower session context feedback .code-mower/sessions/SESSION.json \
  --reviewer claude

Every delivery and feedback read reauthorizes online. Private evidence and private review findings must not be copied into tracked files or public logs. Start with Optional Organizational Context Setup.

Roles

  • Orchestrator: the hosting agent by default; coordinates the work item, assignments, evidence, reviews, recovery, and owner actions.
  • Builder: the only writer for its PR branch.
  • Reviewer: an independent current-head audit. A builder's own review does not satisfy the peer-review requirement.
  • Merge authority: repository policy. Selecting a participant never grants it.
  • Context provider: supplies approved evidence; it cannot build, review, orchestrate, write to the tracker, or merge.

Code Mower records builder provenance for Claude Code, Codex, Cursor-style hosted builders, Devin, and other authoring lanes. Its generated templates now support the supervised issue-to-merge loop end to end, with provider-specific adapters handling product differences.

What Calibration Does And Does Not Prove

The generated starter corpus proves that the command and report paths work. It does not prove that a reviewer should gate merges.

Bootstrap a draft from recent repository history:

code-mower calibration auto-discover \
  --repo OWNER/REPO \
  --last-n 20 \
  --output .code-mower/draft-calibration-corpus.json

Review every proposed disposition. Promote a lane only after known-clean and known-blocked evidence satisfies the lane promotion policy.

Local Status And Board

lanes status is the concise terminal view. The optional Board serves the same redacted metadata on loopback:

code-mower lanes status --repo OWNER/REPO
code-mower productivity report --repo OWNER/REPO
code-mower board serve --repo OWNER/REPO

Plain board serve is read-only. Add --record-events to append throttled, metadata-only local history:

code-mower board serve --repo OWNER/REPO --record-events
code-mower board record --repo OWNER/REPO
code-mower board events
code-mower board doctor --repo OWNER/REPO
code-mower board reset --repo OWNER/REPO --yes

The Board includes the owner queue, reviewer verdict history and spend/latency when those local inputs exist. Local paths are redacted by default. The Board does not upload data.

Optional Cloud Sharing

The OSS package works without CodeMower.com. Cloud sharing is an explicit, dry-run-first path for sanitized metadata and selected reports:

code-mower cloud dogfood --json
code-mower cloud board-snapshot --repo-slug OWNER/REPO --json

Neither command uploads without --yes. Default bundles exclude source code, raw diffs, model transcripts, raw stdout/stderr, auth output, issue body text, local secret values, and secrets. See Cloud Sharing and the Cloud Data Contract.

Current Capabilities And Limits

Area v1.4.2 posture
Default builders and reviewers Claude Code + Codex
Session hosts Codex, Claude Code, and Cursor qualified; other identities recognized but require explicit handoff/provider transport
Devin Maintained local builder lane and an exact PR-bound hosted work-order library seam (code_mower.devin_work_orders, no packaged CLI command); local review remains informational and Devin is not yet a qualified peer orchestrator
Organizational context Optional Coworker delivery to approved Claude/Codex/Devin roles
Work trackers GitHub Issues by default; Jira Cloud is optional and guarded
Forge and merge gate GitHub
Cloud Optional metadata/report upload; no upload by default
Graphify Optional bounded local repository-graph provider behind the packet contract; no default dependency and no network access for the provider
Slack Command and authenticated bounded ingress foundation only; no Slack worker delivery, results, or orchestration authority

GitLab, Bitbucket, broad unattended rollout, uncalibrated merge gates, Devin peer-orchestrator/reviewer parity, a hosted work-order CLI, a required Graphify dependency, and Slack worker delivery are outside the v1.4.2 candidate. The current priorities and boundaries are recorded in Current State And Roadmap.

Documentation

Install And First Use

Sessions, Builders, And Reviewers

Context And Trackers

Trust, Operations, And Project Records

License

The Code Mower open-source core is licensed under Apache-2.0. Hosted reporting, managed integrations, private telemetry and benchmark products, enterprise controls, and support are separate commercial surfaces unless licensed otherwise.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

code_mower-1.4.2.tar.gz (2.8 MB view details)

Uploaded Source

Built Distribution

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

code_mower-1.4.2-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file code_mower-1.4.2.tar.gz.

File metadata

  • Download URL: code_mower-1.4.2.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for code_mower-1.4.2.tar.gz
Algorithm Hash digest
SHA256 aff202eea9748ab3734ea6b90ba3b48ea5aea1e21ae87fba03b77b64d5cdec42
MD5 42535f624521c3553ff56b85102956a0
BLAKE2b-256 7e1fa6a479e2f0ce1ede5497d3bd6500b3bc8e730a8a9abfb6014061ea4100c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_mower-1.4.2.tar.gz:

Publisher: release.yml on codemower-ai/code-mower

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file code_mower-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: code_mower-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for code_mower-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f8bf24dd8a982ed5ab28302e837cd5d2aeece6d984ed1c44fcb4688c3fb7a522
MD5 799c674c8a071d3dfc351bccb7af8acd
BLAKE2b-256 ea3be35d2dc7f2cf0c1a639fbcb73cf58175a80ffca72465a3cfc022e55b20b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_mower-1.4.2-py3-none-any.whl:

Publisher: release.yml on codemower-ai/code-mower

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.4.2 This release

2 files

1.4.1

2 files

1.4.0

2 files

1.3.1

2 files

1.3.0

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.15

2 files

1.0.14

2 files

1.0.13

2 files

1.0.12

2 files

1.0.11

2 files

1.0.10

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page