process-messageslisted
Install: claude install-skill agentflock/myna
# myna-process-messages
If vault_path is not in context, read `~/.myna/config.yaml` first. If the file does not exist, tell the user to run `/myna:setup` and stop.
Extract and structure data from email, Slack, and pasted documents, then route each item to the right vault destination. A single input can produce entries for multiple destinations — this is correct behavior, not duplication.
---
## Before You Start
Read `_system/config/workspace.yaml`.
---
## Sources
### Email
Read emails from folders mapped to projects in projects.yaml (`email_folders` per project). **Never read the inbox** — that's `/myna:email-triage`. **Never read the `draft_replies_folder`** — that's `/myna:draft-replies`.
Skip the folder named in `triage.draft_replies_folder` (default: `DraftReplies`) entirely.
For each project, process emails in the configured `email_folders`. Each folder maps to exactly one project — use that mapping for routing. No ambiguity.
### Slack
Read messages from channels mapped to projects in projects.yaml (`slack_channels` per project). Process only messages after the last-processed timestamp stored in `_system/logs/processed-channels.md` for each channel.
DMs and unmapped channels: if the user pastes a message from a DM or unmapped channel, route using context clues and any project mention. Keyword routing tags are supported: `TODO`, `LOG`, `BLOCKER`, `DECISION`, `RECOGNITION`. Messages without a keyword tag go through normal extraction.
User can also paste a Sl