Releases: SalvucciFacundo/go-arch
Release list
v2.0.2
v2.0.1
Go-Arch v2.0.1 🔄
Patch release with new capabilities since v2.0.0: full pack lifecycle over MCP, a self-update command, and workspace tools over MCP.
✨ What's New
🔄 go-arch update
Self-update command — downloads the latest release, verifies its SHA-256 checksum, and atomically replaces the running binary.
go-arch update- Already up to date → reports and exits 0.
- Checksum mismatch → refuses to replace.
- Permission denied → prints the exact
sudo <binary> updatecommand.
🤖 MCP — full pack lifecycle
install_template— install a pack from a Go module (allowHooksdefault false for safety).list_packs— list installed packs with versions.remove_pack— remove an installed pack.update_pack— update a pack to its latest version.
🗂️ MCP — workspace tools
workspace_list— list services in a workspace.workspace_upgrade— upgrade all (or one) workspace service; chdir-free via root injection; dry-run default,apply: truecommits; legacy servicesskipped, batch continues.workspace_check— architecture check per workspace service.upgrade_project— optionalservice+workspacePathparams for chdir-free single-service upgrade.
MCP tool count: 11 → 14. All new params optional — zero backward-compat impact.
📦 Assets
Linux (tar.gz, .deb, .rpm, .apk, .pkg.tar.zst), macOS (amd64/arm64), Windows (amd64/arm64) + SHA-256 checksums.
🔗 Install / Update
curl -fsSL https://raw.githubusercontent.com/SalvucciFacundo/go-arch/main/install.sh | bash
# or
go install github.com/SalvucciFacundo/go-arch@latest
# then keep it fresh:
go-arch updatev2.0.0
Go-Arch v2.0.0 🚀
Go-Arch is no longer just a CLI — it's a framework. This release covers the full roadmap: project evolution, a plugin ecosystem, executable generators, lifecycle hooks, and multi-project workspaces. The project was renamed from go-arch-cli → go-arch (GitHub redirects the old URL).
🎉 Highlights
- Framework positioning — a CLI, an ecosystem of installable template packs, executable generators, hooks, and workspaces.
- Project renamed to
go-arch— installers andgo installuse the new name.
✨ New Features
📦 Plugins (installable template packs)
template install|list|remove|update— publishable, versioned template packs fetched via the Go module proxy (go-arch template install github.com/you/go-arch-express).- Pack contract v1:
go-arch.yamlmanifest withcontract_version,name,version,hooks,layout,binary_assets. new --template <pack>— scaffold from an installed pack (wizard bypass).- Engine resolution chain:
local > global > pack > embedded. - Upgrade re-renders pack-sourced files from the recorded pack (PROTECTED when missing).
⚙️ Generators (plugins v2)
- Executable generation logic in packs via YAML recipe DSLs (steps:
template,binary,run,prompt,use: builtin/<name>). - Pre-flight path sandboxing (zero writes on path escape).
generate <name>three-tier dispatch (pack → builtin → component) +--list.- MCP:
generate_componentgainsgeneratorArgs; newlist_generatorstool. GENERATOR_NAMEenv for generator hooks.
🔄 Lifecycle Hooks
pre-new/post-new/pre-generate/post-generatein.go-arch.yaml(string shorthand or object form).- Timeouts (30s default),
ignore_failure, stop-on-first semantics. - MCP parity; upgrade never fires hooks.
🗂️ Multi-Project Workspaces
go-arch.workspace.yamlat the monorepo root mapping services to paths.workspace upgrade(dry-run by default,--yesapplies) andworkspace check— continue-on-error with per-service summary.--service <name>ongenerate/check/upgrade.- Opt-in: single-project behavior is byte-identical (ADR-7 intact).
⬆️ Project Evolution
go-arch upgrade— propagates template changes via a fingerprint manifest without clobbering user edits (legacy whitelist fallback).generateauto-registers routes via a generated registry in templ+HTMX projects.doctor— environment diagnostics.
🔧 Breaking Changes
- Repository renamed
go-arch-cli→go-arch— old URLs redirect. - None in CLI commands — all existing commands work as before.
📦 Assets
Linux (tar.gz, .deb, .rpm, .apk, .pkg.tar.zst), macOS (amd64/arm64), Windows (amd64/arm64) + SHA-256 checksums.
🔗 Install
curl -fsSL https://raw.githubusercontent.com/SalvucciFacundo/go-arch/main/install.sh | bash
# or
go install github.com/SalvucciFacundo/go-arch@latestv1.8.0
Changelog
- 27d1e01 Merge pull request #1 from SalvucciFacundo/feat/templ-htmx-frontend-1
- f84dd7e Merge pull request #10 from SalvucciFacundo/feat/mcp-tools-serve-setup
- d08ef96 Merge pull request #11 from SalvucciFacundo/feat/quality-infra
- b199793 Merge pull request #12 from SalvucciFacundo/docs/commands-mcp-tools
- ecd4505 Merge pull request #13 from SalvucciFacundo/docs/readme-architecture
- 2ab65c8 Merge pull request #14 from SalvucciFacundo/fix/goreleaser-main
- 622eed4 Merge pull request #5 from SalvucciFacundo/feat/templ-htmx-frontend-2
- 7043d4b Merge pull request #6 from SalvucciFacundo/feat/templ-htmx-frontend-3
- a2d3159 Merge pull request #7 from SalvucciFacundo/feat/templ-htmx-frontend-4
- e3c6bf9 Merge pull request #8 from SalvucciFacundo/feat/templ-htmx-frontend
- ee0d65f Merge pull request #9 from SalvucciFacundo/feat/generate-templ-views
- ac2b05a ci: add format, vet, test, and lint quality gates
- 4e06adb ci: use golangci-lint-action v6 for v1.64.8 and scope gofmt to Go files
- 89b9d31 docs(sdd): archive generate-templ-views change and sync cli spec
- b796ca5 docs(sdd): archive quality-infra change and sync cli spec
- 31689c3 docs(sdd): archive templ-htmx-frontend change artifacts and sync cli spec
- 6ee6fe4 feat(cli): add UseTemplHTMX wizard flag with config and go.mod wiring
- 7274e22 feat(cli): add version subcommand with GoReleaser ldflags injection
- aaf3beb feat(cli): print templ generate hint after web-enabled new
- 936a8e6 feat(cli): wire use_templ_htmx gate and success hint into generate
- eab9588 feat(mcp): add serve_project and setup_environment tools
- 29d5d51 feat(mcp): expose page and component types in generate_component
- a64a39a feat(mcp): expose useTemplHTMX in new_project tool
- 84344a9 feat(scaffold): add templ page and component generation templates
- 0e9e461 feat(scaffold): add templ+htmx web templates, binary asset, and web-aware main
- efd0f45 feat(scaffold): generate templ page and component files with guards
- c5b5778 fix(quality): resolve gofmt and errcheck findings for CI gate
- ce0f148 fix(scaffold): drop empty internal/adapters and domain imports from hexagonal main
- a2bc77b fix: generate ports interface in hexagonal CRUD scaffolding
- de6a239 fix: point goreleaser main to the root package so version.go is included
- 08139c7 refactor: translate user-facing messages and comments to English
- b52878d test(scaffold): cover web build and counter handler functional behavior
- 1ccbb92 test(scaffold): cover web file generation, main path/content, and asset integrity
v1.7.0
Changelog
- f6839c4 feat: add native MCP server command and tool definitions
v1.6.0
Changelog
- 54bfdef refactor: implement standardized UI logging and integrate samber/oops for structured error handling across CLI commands
v1.5.0
v1.4.0
v1.3.0
v1.2.0
Changelog
- 350a67c feat: add native support for Arch Linux and Alpine packages in release pipeline