fix(cli): rename aactl binary to awrit (TD-CLI-001)#8
Merged
Conversation
Mechanical rename of the CLI binary from aactl to awrit across the
ship-to-main surface. No logic changes — pure directory/file/string
rename to align the CLI identity with the product brand.
Production:
- cmd/aactl/ -> cmd/awrit/ (directory rename via git mv, preserves history)
- docs/aactl-reference.md -> docs/awrit-reference.md (file rename)
- cmd/awrit/root.go: Cobra Use field "aactl" -> "awrit"
- cmd/broker/main.go: error message "Run 'aactl init'..." -> "Run 'awrit init'..."
- .github/workflows/ci.yml: go build ./cmd/aactl -> ./cmd/awrit
- .gitignore: /awrit added alongside /aactl (both listed during transition
so stray binaries under either name stay untracked)
- internal/cfg/configfile.go: user-visible aactl references in comments updated
- internal/cfg/cfg.go: aactl references in inline doc comments updated
Docs + scripts + tests (bulk sed):
- docs/api.md, docs/architecture.md, docs/awrit-reference.md,
docs/common-tasks.md, docs/design-decisions.md, docs/getting-started-operator.md,
docs/integration-patterns.md, docs/scenarios.md, docs/scope-model.md,
docs/troubleshooting.md
- scripts/gates.sh, scripts/stack_up.sh
- README.md, CONTRIBUTING.md, docker-compose.yml
- tests/LIVE-TEST-TEMPLATE.md, tests/app-launch-tokens/env.sh,
tests/p0-production-foundations/{env.sh, user-stories.md},
tests/p1-admin-secret/{env.sh, user-stories.md},
tests/sec-l1/regression-plan.md,
tests/sec-l2a/{env.sh, user-stories.md}
Intentionally NOT updated (historical records):
- tests/*/evidence/*.md — past test run evidence files describe what
happened at the time using the tool name as it existed then. Rewriting
these would misrepresent history.
- CHANGELOG historical entries — same principle. Only the new "Unreleased"
entry for this rename is added.
- MEMORY.md, FLOW.md, .plans/**, .claude/**, .agents/** — stripped from
main anyway, developer-facing tracking that uses the old name for
historical context.
NOT in scope:
- Go module path rename (github.com/devonartis/agentauth) — gated on the
GitHub repo rename, separate work
- agentauth -> agentwrit brand sweep across docs for the TD-TOKEN-001 /
TD-CFG-001 / TD-010 defaults — separate direct-push to develop per user
instruction ("push not a pr for the docs")
Validation: go build ./..., go vet ./..., gofmt -l, go test ./... all
green across all 16 packages (cmd/awrit now compiles as the CLI binary).
Marks TD-CLI-001 RESOLVED in TECH-DEBT.md.
devonartis
added a commit
that referenced
this pull request
Apr 12, 2026
Includes: - PR #6: hardcoded identity audit fixes (TD-TOKEN-001/002/003, TD-CFG-001/002, TD-TEST-001) - PR #7: adminTTL → cfg.AdminTokenTTL (TD-010) - PR #8: aactl → awrit binary rename (TD-CLI-001) - PR #11: docs audit P1/P2 corrections + docs-layout-archon-style sweep - PR #12: runtime rebrand alignment — problemdetails URN, obs metrics, awrit init config path (TD-RUNTIME-001, TD-OBS-001, TD-CLI-002), GitHub repo rename agentauth → agentwrit, Go module path rename, README/CONTRIBUTING/docs sweep, CI brand-alignment gate - Direct-to-develop: brand sweep docs (684083b) Stripped 16 dev-only paths: MEMORY.md, FLOW.md, TECH-DEBT.md, MEMORY_ARCHIVE.md, CLAUDE.md, AGENTS.md, COWORK_SESSION.md, COWORK_DOCS_AUDIT.md, .plans/, .claude/, .agents/, audit/, adr/, .vscode/, .active_module, generate_pdf.py.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Mechanical rename of the CLI binary from
aactltoawritacross the ship-to-main surface. No logic changes — pure directory, file, and string rename. Aligns the CLI tool identity with the product brand.Resolves: TD-CLI-001 (marked RESOLVED in
TECH-DEBT.md).Scope
Renames (git mv, history preserved):
cmd/aactl/→cmd/awrit/docs/aactl-reference.md→docs/awrit-reference.mdString rewrites across ~36 files:
Usefield in root.gocmd/broker/main.goerror message.github/workflows/ci.ymlbuild step.gitignore(both/awritand/aactllisted during transition)internal/cfg/cfg.go+internal/cfg/configfile.gouser-visible commentsIntentionally NOT updated (historical records)
tests/*/evidence/*.md— past test run evidence describes what happened at the time. Rewriting would misrepresent history.CHANGELOG.mdhistorical entries — same principle. Only the new Unreleased entry is added.MEMORY.md,FLOW.md,.plans/**,.claude/**,.agents/**— stripped from main, developer-facing tracking uses the old name for historical context.NOT in scope (separate work)
github.com/devonartis/agentauth) — gated on the GitHub repo renameagentauth→agentwritbrand sweep across docs for the TD-TOKEN-001 / TD-CFG-001 / TD-010 default changes — separate direct-push to develop per explicit user instruction ("push not a pr for the docs")Test plan
go build ./...clean (cmd/awrit now compiles)go vet ./...cleangofmt -lreturns emptygo test ./...— all packages pass locally (16/16 including the new cmd/awrit test)gates-passedaggregator greendocker-buildgate validates the broker image still builds with the newcmd/awritpathsmoke-l25gate validates the broker + awrit CLI still work end-to-end against the L2.5 contract