crew-notify
Set up outbound notifications to Microsoft Teams or Telegram - deploy results and "Claude stopped and is waiting" questions - and explain the two-way MCP…
Skill by mbadali25
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/mbadali25-crew-notify
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: devops, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/crew-notify
What's inside
- Skill name
crew-notify- Description
- Set up outbound notifications to Microsoft Teams or Telegram - deploy results and "Claude stopped and is waiting" questions - and explain the two-way MCP options. Use when the user says set up notifications, notify me, send to Teams, set up a Telegram bot, post updates to a channel, wire up a webhook, or asks how to get alerted when a promotion fails or Claude is waiting on them.
- License
- GPL-2.0
- Instructions
- 262 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
- Instructions read files in your home folder (~/.ssh, ~/.aws…)
Files (1)
- SKILL.md
SKILL.md (first lines)
# Notifications
Outbound only, by design. crew sends messages; it never reads a channel and
never accepts instructions from one. The reason is at the bottom of this file
and it is worth reading before you decide to go two-way.
---
## Microsoft Teams
L-0725: crew itself no longer posts to a Teams webhook (`notify.urlEnv` is gone), so
`"provider": "teams"` sends nothing. The webhook below still works for your own
scripts; crew's built-in notifier is Telegram only.
### The old way no longer works
If you find a tutorial saying "channel ••• → Connectors → Incoming Webhook,"
close it. <cite>Office 365 Connectors were permanently disabled across
18–22 May 2026</cite>, and that path is gone. The supported route is a
**Workflows (Power Automate)** webhook.
### Setup
1. In Teams, click the **•••** next to the target channel → **Workflows**.
2. Choose the template **Post to a channel when a webhook request is received**.
(Private channels are supported; if the picker does not offer yours, create
the flow from the Power Automate portal instead.)
3. Confirm the Team and Channel, finish the flow, and copy the URL it gives you.
4. Export it in your shell profile — never in the repo, never in config:
```bash
export CREW_TEAMS_WEBHOOK='https://prod-xx.westus.logic.azure.com/workflows/...'
```
5. Test before trusting it:
```bash
curl -sS -X POST "$CREW_TEAMS_WEBHOOK" -H 'Content-Type: application/json' \
-d '{"type":"message","attachments":[{"contentType":"application/vnd.microsoft.card.adaptive","content":{"type":"AdaptiveCard","version":"1.4","body":[{"type":"TextBlock","text":"crew wired up","wrap":true}]}}]}'
```
### Limits worth knowing
- Messages post as the **Flow bot**. Custom bot name and icon are not available
via Workflows webhooks — do not spend time trying.
- Interactive buttons do not render on MessageCard payloads. Use Adaptive Cards
if you want richer layout, but see the warning about approvals below.
- The flow runs under whoever created it. If that person leaves, the
notifications stop. Create it from a service or shared account if this matters.
---
## Telegram
Yes — Telegram integrations are bots. You create one through another bot.
### Setup
1. Message **@BotFather** in Telegram → `/newbot` → follow prompts.
2. Copy the token it gives you (looks like `123456789:AA...`).
3. Send your new bot any message, or add it to a group and post there.
A bot cannot message you first; the conversation must be opened from your side.
4. Find the chat id:
```bash
curl -sS "https://api.telegram.org/bot${CREW_TELEGRAM_TOKEN}/getUpdates" \
| python3 -c 'import json,sys;print([u["message"]["chat"]["id"] for u in json.load(sys.stdin)["result"]])'
```
Group ids are negative. That is normal, not an error.
5. Export both:
```bash
export CREW_TELEGRAM_TOKEN='123456789:AA...'
```
On Windows, set it for your user from PowerShell. `.Trim()` drops the
trailing space or newline a paste often carries; the hooks trim too, but the
`curl` test below does not:
```powershell
[Environment]::SetEnvironmentVariable('CREW_TELEGRAM_TOKEN', '123456789:AA...'.Trim(), 'User')
```
Restart Claude Code afterwards so the hooks see it.
6. Test:
```bash
curl -sS -X POST "https://api.telegram.org/bot${CREW_TELEGRAM_TOKEN}/sendMessage" \
--data-urlencode "chat_id=<id>" --data-urlencode "text=crew wired up"
```
### Note
If you add the bot to a group, privacy mode means it only sees messages
addressed to it — which is fine here, since crew never reads anyway.
---
## Configuration
Set it once, machine-wide, in `~/.claude/crew/config.json` - `notify` is a
global key ("the person's own chat, not the project's"). A repo's
`.crew/config.json` overrides any key it sets; a repo that leaves `provider`
null inherits the global one, and a repo that says `"provider": "none"` opts
out on purpose (`crew_notify.py config` prints that it overrides the global
provider). `tokenEnv` is read from the global file only: a
repo's is ignored, with a notice, so a cloned repo cannot pick which variable
becomes the request URL. That cannot stop a repo setting the variable's
value: a project's `.claude/settings.json` `env` block can set the variable
your global `tokenEnv` names for sessions in that repo, and crew
cannot tell that value from yours. Redirects are refused. `config` masks `chatId`.
```json
"notify": {
"provider": "telegram",
"tokenEnv": "CREW_TELEGRAM_TOKEN",From mbadali25/useful-claude-add-ons, GPL-2.0.
More from mbadali25/useful-claude-add-ons
- 0.603score
crew-qa-standards
mbadali25
Harness, QA-review and environment standards plus a report-only audit (parallel tests, pinned linters CI really runs, gate rules that can fail, QA environment…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
crew-best-practices
mbadali25
Community best practices for working with Claude Code - context management, planning, TDD, hooks, skills, subagents, slash commands and MCP - with what crew…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
crew-graph
mbadali25
Build and query a code graph of this repository with graphify, keeping it on the filesystem as graph.json and fresh on commit.
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
crew-diagrams
mbadali25
Author architecture, process, sequence, ER and data-flow diagrams as Mermaid that pass a measured readability check (no crossing lines, nothing drawn through…
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-docs
mbadali25
Keep CHANGELOG.md, README.md, SECURITY.md, TODO.md, ADRs, generated docs, and the API and feature reference current as work lands.
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-change
mbadali25
The change-request template, the ten questions a change board requires, and how each field maps onto ServiceDesk Plus, Jira and a local file.
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-context
mbadali25
Manage context exhaustion - warn near the limit, write handoff notes, and resume work after a clear or compact.
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-debugging
mbadali25
Find the cause of a defect before proposing a fix - read errors, reproduce, check recent changes, gather evidence from this repo's code map and verification…
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-memory
mbadali25
Conventions for durable project memory across repos, including Obsidian vault integration.
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-cloud
mbadali25
Configure the official AWS and Azure MCP servers safely for a repo.
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-providers
mbadali25
Set up, verify, and invoke external model providers - Codex, Kimi Code or GitHub Copilot for QA review, Gemini for design second opinions.
SkillAFreshness: A★ 2Claude Code +9 - 0.595score
crew-execute
mbadali25
Execute an approved plan task by task, in this session - TDD per step, a ruling instead of a silent deviation, and only four conditions that stop for a…
SkillAFreshness: A★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 17
- Last commit (this folder)
- Oct 21, 2026 (7 days ago)
- Last release
- Jul 28, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- GPL-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from mbadali25
- 0.603score
crew-qa-standards
mbadali25
Harness, QA-review and environment standards plus a report-only audit (parallel tests, pinned linters CI really runs, gate rules that can fail, QA environment…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
crew-graph
mbadali25
Build and query a code graph of this repository with graphify, keeping it on the filesystem as graph.json and fresh on commit.
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
crew-best-practices
mbadali25
Community best practices for working with Claude Code - context management, planning, TDD, hooks, skills, subagents, slash commands and MCP - with what crew…
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
crew-diagrams
mbadali25
Author architecture, process, sequence, ER and data-flow diagrams as Mermaid that pass a measured readability check (no crossing lines, nothing drawn through…
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-debugging
mbadali25
Find the cause of a defect before proposing a fix - read errors, reproduce, check recent changes, gather evidence from this repo's code map and verification…
SkillAFreshness: A★ 2Claude Code +9 - 0.598score
crew-context
mbadali25
Manage context exhaustion - warn near the limit, write handoff notes, and resume work after a clear or compact.
SkillAFreshness: A★ 2Claude Code +9
Cite this page
crew-notify skill. Agent Mart. https://agentmart.dev/skills/mbadali25-crew-notify (last updated 2026-10-24)