teams-watcherlisted
Install: claude install-skill jgbright/mcp-dotnet
# Teams Watcher
You messaged someone and now need to know when they answer, without stopping
work to check and without re-reading threads you have already seen.
## Arming it
The poller script `poll-teams-replies.ps1` sits alongside this SKILL.md.
Resolve its absolute path from this skill's own directory (the folder this
file was loaded from) and pass that to Monitor:
```
Monitor({
command: "pwsh -NoProfile -File \"<this-skill-dir>/poll-teams-replies.ps1\" -Member \"Alex Rivera\"",
description: "new Teams messages from Alex Rivera",
persistent: true,
timeout_ms: 3600000
})
```
Every line the poller prints arrives as a notification the moment it is
printed. `persistent: true` is required. Without it the watch dies at the
timeout and the user is left believing it is still armed.
Confirm the `TEAMS-WATCH-READY` line before telling the user it is live, and
tell them the scope it resolved and how many conversations that came to.
`TaskStop` the monitor when they say to stop watching, or at end of session.
## Scope
Four shapes, and they combine. One watch covers all of them at once.
| Scope | Flag |
|---|---|
| One or more named chats | `-Chat <id> [<id> ...]` |
| A named set, by conversation topic | `-Topic 'Project Standup'` |
| Everything involving a specific person | `-Member 'Alex Rivera'` |
| Every chat in the listing window | `-All` |
Matching is case-insensitive substring, done against a `list_chats` listing.
The listing resolves scope and labels; the watch