- Introduced StripMessageDirectives in the agent loop to remove internal
[[name:value]] routing tags from user-facing content while preserving
them in session store for model context
- Narrowed regex from wildcard `(?s)\[\[.*?\]\]` to structured
`\[\[\w+(?::[^\]\n]+)?\]\]` to avoid false positives on legitimate content
- Preserved [[tts...]] tags for TTS AutoTagged pipeline compatibility
- Added 15 unit tests covering strip, preserve, and edge cases
- Fixed step numbering in agent loop (steps 5-9)