-
v0.16.0 Stable
released this
2026-07-17 16:26:09 +00:00 | 405 commits to main since this releaseChangelog
Features
9efecc3feat(mcp): elicitation-gate forced worktree remove of a dirty or locked tree (#168)bb1a9f9feat(prune): rename deletion switch to --delete-branches on both surfaces (#205)0ceef4ffeat(worktree): real cobra subcommands + short-flag validation in drift test (#169)a676c00feat(worktrees): dir+path rebase addressing parity + onto= default (#174 #175)
Bug Fixes
c7a43b1fix(api): normalize missing leading slash in endpoint (#198)35c823afix(clone): interactive auth-login offer + coverage for credential routing (#163)c977751fix(deps): case-insensitive epic title prefix check (#210)c738f93fix(elicitation): drop the bare-close reason dialog - refusal parity across clients (#167)e1a6f6bfix(errors): typed, actionable message for owner_repo 404s (#173)08093fffix(mcp): madt_api_call returns tool error on non-2xx, jq/template not applied to errors5731c7ffix(mcp): server instructions + README use delete_branches; bind + alias tests lock the rename057f049fix(release): cadence measures releasable scope, not commit volume
Refactors
936a372refactor(issue): split issue_test.go into per-concern test files4a49deerefactor(mcp): move stray cross-noun helpers into helpers.go86e55dfrefactor(repo): split repo_test.go into per-concern test filesd0a90d5refactor(service): move issue self-assignment flow out of cmd/gitcbe32e1refactor(workflow): split finish.go into per-phase files
Documentation
3456ab7docs(adr): ADR 0029 - strict-omission destruction model (#207)615d273docs(comparison): plain hyphen in the install row78d20a2docs(comparison): update worktree rebase clause (#174 #175)0ce2651docs(prune): fix stale confirm=/--yes references missed by prior regen
Other
9851540Revert "chore(assets): update madtea logo"21b99b9merge main: reconcile elicitation.go package doc after #167 close-reason removalce3f700merge main: union #168 force-remove gate with #174/#175 rebase addressing + onto default; regenerate reference docs96363a1ux(clone): clone public repos unauthenticated; fix double error wrap1015bbdux(install): narrate the plan and confirm each step, including sudo (#162)
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
3 downloads
-
v0.15.2 Stable
released this
2026-07-16 17:28:17 +00:00 | 456 commits to main since this releaseChangelog
Features
ab8ebb8feat(actions): give the runner family an org form (#122)7f249a3feat(adr): madtea adr command group - race-free new + drift-guard check (#26)b9b4867feat(api): exit nonzero on HTTP error responses, matching gh api (#105)bea98f1feat(finish): complete a remote-only branch via owner_repo= (no local checkout) (#49)dd00d0bfeat(gate): self-heal preflight for poisoned module cache (#132)77ffd6cfeat(gpg-key): add top-level gpg-key command group with scope preflight (#53)d7dda5ffeat(mcp): extract DirScope embeddable with enforced tool matrix (#62)93307a3feat(mcp): harden serve against mid-session drops with KeepAlive + stdout write watchdogb37a84afeat(mcp): launch scope is the credential scope - refusals, parity guard, and the dir= report carve-out on madt_issues493b04bfeat(mcp): madt_auth_login - in-session OAuth login, secure backend only (#89)5131c4efeat(orchestrate): reconcile mode gets dir=/owner_repo= on DirScope (#14)124f62afeat(ref-inspect): add contains ancestry check and worktree read-verb steering (#126)a59588bfeat(release): stamp tag version into artifact plugin.json at assemble time (#121)64c3bf1feat(release): version-free asset filenames - stable latest-download URLs and a real Linux install one-liner0f8894afeat(repos): description in list output, check-metadata audit, user-repos suggestions (#50)7c260e5feat(worktrees): port ephemeral-worktree revert to CLI pr revert and orchestrate (#131)d33f739feat(worktrees): run conflict-capable PR revert in an ephemeral worktree (#20)
Bug Fixes
733b906fix(actions): strip event_payload from runs/tasks; add tasks pagination (#123)fdf49e3fix(api): propagate first-page HTTP status through --paginate (#105)33af7d4fix(config): GetConfigForDir reads the target dir's own repo-local tokenc6f6186fix(dates): normalize YYYY-MM-DD date-only input for all date filter flags (#91)4fcd842fix(finish): surface real error from resolveForeignDefaultBranch (#93)e80a138fix(hooks): close the git -c/-C commit early-exit bypass (#19)a9ee2defix(hooks): deny commit-creating continuation forms; madt_commit completes in-progress merge/revert/cherry-pick (#19)9bd3175fix(issues): forward labels_filter as names and assignee as assigned_by (#142)6960a3cfix(mcp): enforce param scope on madt_ref_inspect; trim accepted-list globals (#127)7461796fix(mcp): enforce per-action param scope, stop swallowing inapplicable params (#127)ee19a95fix(mcp): trim the org param doc under the madt_actions schema byte budget2bf7039fix(mcp,cli): remove instance-breaking user/org delete; pin gated destructive remote surface (#120)79dc9defix(orchestrate): name the worktree when reconcile checkout fails because branch is locked (#24)28f781afix(orchestrate): thread invoking dir=/owner_repo= into reconcile conflict rails (#14)bfcb893fix(prune): bare prune is a pure dry run - gate fetch --prune behind confirm (#133)02fb8aafix(serve): test-scope lifecycle log path under go test (#95)b8ef918fix(worktrees): refuse rebase targeting the primary checkout; name path in result lines (#125)
Documentation
e3a1c19docs(readme): restore the sixfold.space footer logo block
Other
58cb948merge main into issue-26-adr-command-group: reconcile COMPARISON summary + regenerated reference docs071f2a9merge: integrate main (tasks pagination) with the org runner surface1cbf417ux(clone): name the resolved forge host; warn on mirror=true (#97)4ae7748ux(mcp): probe credentials at initialize and warn in the banner when unauthed (#88)2f71d25ux(worktrees): bounded conflict detail + sanctioned resolve path on rebase conflict (#21)
Upgrading from v0.15.1 or older
This release renames the downloadable archives to version-free filenames (
madtea_linux_amd64.tar.gz), which makes thereleases/download/latest/...install links permanently stable. Older installed binaries construct the previous versioned filename when self-updating, somadtea updatefrom v0.15.1 or older fails withno release asset madtea_0.15.2_.... Reinstall once by hand; every latermadtea updatethen works normally (0.15.2+ understands both naming eras):curl -fsSL https://codeberg.org/sixfold_space/madtea/releases/download/latest/madtea_linux_amd64.tar.gz | tar -xz ./madtea_linux_amd64/madtea installmacOS:
brew upgrade --cask madtea- Windows:scoop update madtea- or grab the matching archive for your platform from this page. Details in #164.Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
v0.15.1 Stable
released this
2026-07-15 16:09:54 +00:00 | 509 commits to main since this releaseChangelog
Features
d3801a0feat(compat): detect forge flavor and gate capabilities per host357e226feat(mcp): rename name= → branch= on madt_branch_create and madt_branch_delete (#58)8c79760feat(prs/finish): merge-state visibility on get + tailored merge-failure advice (#22)a56f92cfeat(status): one-call feature-branch orient read — branch-ahead commits + mainline release cadence (#38)102ac39feat(ux): surface MCP tool errors via PostToolUse hook + serve log (#70)
Bug Fixes
59e906dfix(api): add dir list/list-root to contents suggestion; extend tests (closes #43)eedd400fix(auth): store OAuth client-id per-forge under host-keyed global key245c30cfix(docs): correct per-file package comments for tools_localgit, tools_branches, keychain (#17)125aad8fix(docs): keychain.go comments — RetrieveLegacy is read-only, deletion is DeleteLegacy (#17)3f51f49fix(finish/merge): back off 5s→10s→15s on transient 405 'try again later'a44b132fix(gate): auto-bootstrap mcp-conformance npm deps in fresh worktrees (#23)a912b92fix(hooks): detect orchestrate reconcile subcommand correctly in steer (#18)8969b90fix(labels): resolve org-label names for PR list; verify cross-repo search, closes #64997ce50fix(labels): resolve org-level labels by name, closes #12acb6031fix(labels): trim whitespace from CSV parts in ResolveLabelsCSV7d0f176fix(mcp): make madt_orchestrate reconcile mode reachable via schema (#18)e38e8b9fix(mcp): update agent guidance to use branch= on madt_branch_create/delete (#58)bf95c99fix(merge): extend default_merge_style honoring to orchestrate batch merges3fd8b3cfix(merge): honor repo default_merge_style when no strategy chosenfe588f7fix(plugin): set the plugin author to jon@sixfold.spacef110c7efix(pr/merge): route pr merge + mcp merge through transient-405 backoff (#13)f0431bafix(prune): dry-run/delete set mismatch, single-run tracking-ref cleanup, no raw git passthrough (#63)79cb0bbfix(pull): match git's informativeness on refuse and success (#16)b4b2667fix(release): make release.sh survive tag.gpgsign and a missing forge release1f3fd5cfix(release): ship license + docs in archives, drop unused man pages (#61)818f3e3fix(release): vendor plugin artifact into claude-plugins; satellite preflight + resumable post-publish8ed233bfix(serve): disclose the PostToolUse error-surfacing hook in the install consent copy (#70)35fe04afix(update): enrich update-failure errors with the request URL and a cause-specific hint4c7a182fix: scrub internal identity tokens from the public source treec606ab1fix: stop shipping dev-session .claude/ artifacts in the source tree
Performance
Documentation
df63677docs(adr): ADR 0027 — launch scope is the credential boundary; dir= is never a token selector (refs #90, #59)052ec73docs(go): add per-file package doc comments for config, cmdutil, mcp (#17)6f20e25docs(readme): replace placeholder tap/bucket install URLs with the real Codeberg repos17e3e7ddocs(releasing): update satellite targets to their sixfold_space/Codeberg homes890911bdocs: restructure README into a plain quick-start + build-from-source document
Other
4ea33d0merge main into issue-79-desc-citation-sweep (consent-line union with worktree steering hook)6a247aestyle(danglingref): Fprintf over concatenated WriteString in violation reports (#79)d876c1fux(add): conflict-aware staging confirmation during in-progress merge (#25)1c8d581ux(steering): hard-steer raw git worktree to the madtea worktree surface (#69)8e3a5d5ux(steering): sweep ADR-number citations from shipped steer/refusal strings (#15)b25ce8cux(steering): terminal/forwarding guard texts + hook internal-ref sweep (#15)
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
v0.15.0 Stable
released this
2026-07-13 20:38:48 +00:00 | 579 commits to main since this releaseChangelog
Features
bad3108feat(config): host-keyed TokenStore v2 with legacy retrieval (ADR 0025)d6f38f3feat(config): host-keyed token resolution with legacy migration (ADR 0025)4d8d5b5feat(config): origin-first forge resolution and host-keyed credentials (ADR 0025)c678594feat(config): origin-first resolution chain (ADR 0025)27863d6feat(config): per-dir/per-URL resolution, origin-aware login, session forge, dir= forge routing (ADR 0025 T5-T10)d5fb8c1feat(config): remote host parsing + origin-derived forge URL (ADR 0025)
Bug Fixes
36efc3afix(ci): run jobs on Debian glibc image so JS actions get a working node40723f9fix(config): keep RetrieveLegacy dormant until Task 3 migration wiringcfe3e93fix(release): preflight fetch goes through madtea's authenticated path32f79eafix(release): retarget release + self-update from internal Gitea to Codeberg38250b3fix: genericize internal fixtures/comments that crept into HEAD since issue 1275
Refactors
51ce1b3refactor: rename camelCase MadTea/madTea identifiers to Madtea/madtea
Documentation
ff325e1docs(adr): ADR 0025 — origin-first forge resolution and host-keyed credentials
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads