Implements marchat terminal client TUI, commands, keystore, and WebSocket client behavior. Use when editing client/, Bubble Tea models, :commands, themes, notifications, or client configuration paths.
Implements marchat server hub, WebSocket handlers, admin web, health, and startup validation. Use when editing server/, cmd/server/, hub routing, admin panel, or server configuration.
Writes and runs marchat tests with race detection, coverage, and dialect smoke patterns. Use when adding tests, fixing test failures, measuring coverage, or when the user mentions go test, -race, TESTING.md, or CI database smoke.
Changes marchat SQL schema and queries across SQLite, PostgreSQL, and MySQL using dialect helpers. Use when editing server/db.go, db_dialect.go, schema migrations, MARCHAT_DB_PATH, or multi-database behavior.
Implements and refactors marchat Go code with project toolchain and quality gates. Use when adding features, fixing bugs, touching client/server/plugin code, or when the user asks to develop, build, or validate marchat changes.
Develops and maintains marchat plugins: SDK, host IPC, manager install path, store downloads, and Ed25519 licenses. Use when editing plugin/, plugin commands, or plugin_state.json behavior.
Updates marchat documentation and changelogs to match code and release practice. Use when editing CHANGELOG.md, README.md, ARCHITECTURE.md, PROTOCOL.md, TESTING.md, or other project markdown.
Drafts conventional commit messages and pull request bodies for marchat without committing or pushing unless explicitly requested. Use when the user asks for a commit message, PR description, or git workflow help; also read at the end of every substantive implementation task.