Skip to main content

A lightweight, git-native scaffolding for bounded multi-agent coding

Project description

wtcraft

Git-native governance for agent worktrees.

wtcraft is a lightweight governance core for worktree-based agent workflows. It defines task contracts, tracks lifecycle state, and exposes deterministic scope and verification checks for CLIs, agents, and graphical clients.

npm version PyPI version CI GitHub release License

wtcraft icon

Install

pipx install wtcraft       # pip / pipx (recommended — isolated venv)
npm install -g wtcraft     # npm (global)
brew tap zywkloo/wtcraft https://github.com/zywkloo/wtcraft && brew install wtcraft

Short alias available after install: wtc

Quick Start

wtcraft --version                        # print the installed CLI version
wtcraft init                            # scaffold harness into current repo
wtcraft init --local                    # scaffold locally; ignore via .git/info/exclude
wtcraft patch                           # append routing stubs to CLAUDE.md / AGENTS.md
wtcraft lang install --lang zh-CN       # enforce output language in CLAUDE.md
wtcraft new feat/my-task                # create worktree + task contract
wtcraft new --base origin/main feat/x   # override the base branch/ref explicitly
wtcraft status                          # list active worktree contracts
wtcraft capabilities --json             # discover machine-protocol features
wtcraft status --json --repo /repo      # machine-readable status for a target repo
wtcraft check <worktree-name-or-path>   # verify Scope / Off-limits
wtcraft verify <worktree-name-or-path>  # run Verification commands

wtcraft new resolves its base in this order: --base, then WTCRAFT_BASE_BRANCH, then origin/HEAD, then local main, local master, local develop, and finally the current branch.

After running wtcraft init, you can use these slash commands in Claude Code:

  • /planwt <task description>: Plan task + create worktree
  • /finishwt <worktree-name>: Run verification and finish
  • /statuswt: List active worktree task files

The Layered Agent Team

  • Orchestrator (e.g., Gemini 3.5 Flash): Sits at the top of the workflow. Highly tool-agentic, low-latency, and coordinates the overall project state. It focuses on environment orchestration, git logistics, verification suites, and telemetry. Core features like cross-repository worktree monitoring, automated session summarization, and active agent handoff routing are coming soon (upcoming role integration).

  • Planner (e.g., Claude Opus 4.8): The slow, high-reasoning "architect". It reads the requirement, analyzes the code context, and designs the bounded execution contract (.worktree-task.md) specifying Scope, Off-limits, and Verification steps.

  • Executor (e.g., GPT-5.4): The precision coder. It is budget-friendly, highly focused, and operates strictly inside the isolated worktree sandbox, adhering strictly to the contract boundaries.

  • Verifier (e.g., Claude Opus Fable 5): The quality gatekeeper. It automatically conducts code reviews, checks for style/security constraints, and runs PR-level checks. If verification fails, it can trigger a feedback loop back to the Planner or Executor.

  • Finisher (e.g., Gemini Flash 3.5): Performs deterministic boundary validation (wtcraft check), test suite verification (wtcraft verify), and cleans up local worktree assets after a successful merge to keep the development disk clean. Additionally, in an upcoming release (integrating with PR #12), the Finisher will aggregate and report token telemetry to track cost, budget, and API usage per agent model (Coming Soon).

Commands

Command Arguments What it does
wtcraft init [--patch-agent-files] [--local] [--repo <path>] Scaffold harness files. Does not overwrite. --local keeps scaffold clone-local via Git-resolved .git/info/exclude.
wtcraft patch [--repo <path>] Alias for init --patch-agent-files. Appends routing stubs to CLAUDE.md / AGENTS.md.
wtcraft unpatch [--repo <path>] Remove the routing stub from CLAUDE.md / AGENTS.md.
wtcraft lang install|remove [--repo <path>] Add or remove language enforcement rules (e.g. install --lang zh-CN).
wtcraft new [--repo <path>] [--base <branch>] <type/name> Create a worktree and local .worktree-task.md contract.
wtcraft status [--json] [--repo <path>] List active worktree tasks and their status. --json is the machine-readable status surface.
wtcraft check [--json] [--repo <path>] <worktree-path-or-name> Verify the worktree's changes stay within Scope / Off-limits boundaries.
wtcraft verify [--json] [--repo <path>] <worktree-path-or-name> Run the Verification commands declared in the worktree's contract.
wtcraft capabilities --json Report supported machine-protocol features for external launchers.
wtcraft --version Print the installed CLI version.
wtcraft help [command] Show usage.

Why

AI agents (and human contributors) hallucinate, over-engineer, and accidentally break unrelated code. While parallel agents are useful, raw parallelism creates common problems: unclear handoffs, context pollution, and file collisions.

wtcraft provides a definitive safety harness. It focuses on handoff, boundaries, and deterministic containment, not just concurrency.

  • Git-Native Containment: Keep agent work physically isolated with git worktree.
  • Task Contracts: Make agent handoffs explicit with a per-task whitelist in .worktree-task.md.
  • Deterministic Gating: Enforce scope boundaries at the commit/PR level. If a task isn't in scope, the code doesn't merge.
  • Budget-Aware: Avoid infinite LLM loops and track API usage per worktree.

No hosted platform is required. No custom runtime is required. You can use Aider, Cursor, Claude, or Devin — wtcraft simply wraps your working directory in a zero-trust governance layer.

Docs

Testing

bash tests/run_all.sh

License

Apache-2.0. See LICENSE.

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

wtcraft-0.4.2.tar.gz (31.9 kB view details)

Uploaded Source

Built Distribution

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

wtcraft-0.4.2-py3-none-any.whl (36.7 kB view details)

Uploaded Python 3

File details

Details for the file wtcraft-0.4.2.tar.gz.

File metadata

  • Download URL: wtcraft-0.4.2.tar.gz
  • Upload date:
  • Size: 31.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wtcraft-0.4.2.tar.gz
Algorithm Hash digest
SHA256 20e9d056c97c3fd7bab82f3e7c3219fd0565f1891fe8043833dad7fd65ed916a
MD5 799ac33819ecef10660eadc10b668d4b
BLAKE2b-256 dbf993ba8a696c9184e10defd31d3b0b9f09451eb8717e1525629711f7d7f40f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wtcraft-0.4.2.tar.gz:

Publisher: publish.yml on zywkloo/wtcraft

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

File details

Details for the file wtcraft-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: wtcraft-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 36.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wtcraft-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d08c781dba4d04d6d899ec438a355c344fd53ceb4c7d0303a1ac71956d2616f8
MD5 3ec7c1555b002e1ef475acc1c117bd2e
BLAKE2b-256 0977363d73c85546ecc235ef2e49aff97f357098c0a29d23154e7da3200242b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for wtcraft-0.4.2-py3-none-any.whl:

Publisher: publish.yml on zywkloo/wtcraft

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

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