Add new reactionTrigger option to Discord guild config that allows reactions
to invoke an agent turn immediately, instead of just queueing a system event.
Modes:
- off (default): existing behavior, reactions queue system events
- own: trigger when reacting to bot's own messages
- all: trigger on any reaction
- allowlist: trigger for reactions from users in guilds.<id>.users
Key implementation details:
- Unique MessageSid format for reactions to avoid inbound deduplication
- Pass token through reaction listeners for reply delivery
- Body format prompts agent to acknowledge the reaction
New files:
- src/discord/monitor/reaction-trigger.ts: dispatch module for reaction triggers
Modified:
- Schema, types, and allow-list helpers for the new config option
- listeners.ts to check trigger mode and dispatch accordingly
- provider.ts to pass token to reaction listeners
- docs/channels/discord.md with documentation
Add a `paths` option to `memorySearch` config, allowing users to
explicitly specify additional directories or files to include in
memory search.
Follow-up to #2961 as suggested by @gumadeiras — instead of auto-following
symlinks (which has security implications), users can now explicitly
declare additional search paths.
- Add `memorySearch.paths` config option (array of strings)
- Paths can be absolute or relative (resolved from workspace)
- Directories are recursively scanned for `.md` files
- Single `.md` files can also be specified
- Paths from defaults and agent overrides are merged
- Added 4 test cases for listMemoryFiles