U-004 migrated the Hermes personas into agents/{planner,coder,validator}/SOUL.md
(the canonical source) but nothing had ever actually deployed the compiled
.claude/agents/*.md into graphlemon's own repo -- every real test throughout
PH1-PH4 ran against throwaway target-project clones that got this step via
project_scaffold, never against graphlemon self-targeting itself. The real
U-042 self-hosting attempt surfaced this immediately: `claude --agent planner`
failed outright with "--agent 'planner' not found". Deployed via
agent_profile.deploy_agent_definitions() and committed -- self-target worktree
isolation only sees committed content, so this has to be tracked, not just
written to disk, for any future self-target task to find its own persona.
Also commits the real agent-memory files a genuine self-target run generated
(architecture doc §8 decision 1: memory must be git-traceable) and gitignores
.claude/workflows/ (one-shot, uniquely-named dynamic-workflow scripts written
per Work Node call -- pure runtime clutter, never reused, not source content).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>