Gentleman persona scope + residue cleanup
This release closes two related bugs in the gentleman persona that affected anyone using it across the supported agents (Claude Code, OpenCode, Kilocode, Kimi, Kiro, Cursor, Codex, VSCode Copilot, Windsurf, Antigravity, Qwen, Pi, OpenClaw, Gemini).
Bug 1 — Persona was bleeding into generated artifacts
Before: choosing the gentleman persona made the agent generate code, UI labels, comments, and commit messages in Rioplatense Spanish with voseo and persona stylistic emphasis. The persona was supposed to style how the agent talks to you, not what it builds.
After: every persona-gentleman.md and output-style-gentleman.md now has an explicit ## Persona Scope (CRITICAL) block stating the persona governs only the assistant's reply to the user. Artifacts default to English unless you explicitly ask for another language for that artifact.
Bug 2 — Switching gentleman → neutral left residual config
Before: picking neutral after gentleman left:
~/.claude/output-styles/gentleman.mdorphaned on disk"outputStyle": "Gentleman"orphaned in~/.claude/settings.jsonagent.gentlemanoverlay orphaned in~/.config/opencode/opencode.jsonand~/.config/kilo/opencode.json
Claude Code would still read the orphaned outputStyle and apply gentleman behavior, so users who picked neutral kept seeing the Argentine tone. That's the "I picked neutral and it still talks in Argentine" report.
After: switching personas runs symmetric cleanup. Both gentle-ai install and gentle-ai sync clean Claude residuals. The OpenCode/Kilocode agent.gentleman cleanup is intentionally install-only to avoid colliding with SDD's overlay during sync.
What you need to do
Just run:
gentle-ai sync
Existing installs pick up the fix automatically — no reinstall required.
Coverage
12 new tests in internal/components/persona/inject_test.go covering switch cleanup paths, idempotency, sync regression guard, malformed JSON, and Kimi empty-output-style invariant. Full suite passes across 46 packages.
Files changed
18 files, +836 / -63 — assets for the 6 affected persona variants, inject.go cleanup branches, inject_test.go coverage, and the regenerated golden files.