I made Claude respond to my Microsoft Teams messages
TL;DR Highlight
No Graph API, no Azure AD — just a bat/sh script that has Claude check Teams messages every 2 minutes and auto-reply using local codebase context.
Who Should Read
Developers whose focus gets broken by Teams messages, or anyone wanting to build a browser-based messenger automation agent with Claude.
Core Mechanics
- Built without any complex official integration (Graph API, webhooks, Azure AD) — just a `claude -p` command in a loop with a `--chrome` flag, implemented as a bat (Windows) or sh (Linux/Mac) script.
- Claude opens Teams in the browser every 2 minutes, checks unread messages, and auto-replies.
- BRAIN.md defines the agent's behavior rules (who to reply to, who to ignore, accessible websites, safety limits), while SOUL.md separately controls the reply personality and tone.
- Read access to local repos means when someone asks about code or architecture, the response is actually useful rather than 'I'll get back to you later.'
- Works with any browser-based messenger platform — Teams, Slack, Discord, Google Chat — just swap the URL and interaction steps in BRAIN.md.
- The author admits it was 'built for fun' and warns that the agent is inherently vulnerable to prompt injection attacks.
Evidence
- The author built it to solve the real problem of focus disruption from Teams notifications, aiming to provide substantive answers about code/architecture by referencing local repos.
- A 'workaround approach' using only browser automation with no official API integration — setup is simple but security risks like prompt injection exist, as the author themselves warns.
- Actual code (son-of-claude) is published on GitHub with a structure where just modifying two markdown files (BRAIN.md and SOUL.md) adapts it to other messenger environments.
How to Apply
- Clone the GitHub repo (https://github.com/asarnaout/son-of-claude), set Teams URL and 'who to reply/ignore' rules in BRAIN.md, write your desired tone and persona in SOUL.md, then run the bat or sh script for 2-minute auto-reply cycles.
- To adapt for Slack or Google Chat, just modify the URL and interaction steps (how to check messages, click input fields, etc.) in BRAIN.md for the target platform.
- If local codebase context is needed, add the repo path to BRAIN.md's allowed paths. However, consider prompt injection risks from external messages and restrict access to sensitive production code.
Code Example
# Behavioral overview (see GitHub for actual scripts)
# Windows: run.bat
:loop
claude -p --chrome "Follow BRAIN.md and SOUL.md rules: open Teams, check messages, and reply"
timeout /t 120
goto loop
# BRAIN.md example structure
## Rules
- Respond to: [team member name list]
- Ignore: [bots, specific channels]
- Allowed URLs: https://teams.microsoft.com
- Allowed local paths: C:/projects/my-repo
- Safety constraints: do not transmit sensitive information
# SOUL.md example structure
## Persona
- Tone: friendly but professional
- For code questions: reference actual code and answer specifically
- For unknown topics: honestly reply that you don't knowTerminology
Related Papers
Show HN: OpenKnowledge – open source AI-first alternative to Obsidian/Notion
Git 기반 동기화와 Claude/Codex/Cursor 연동을 내장한 로컬 우선 마크다운 에디터로, AI 에이전트의 두 번째 뇌(LLM Wiki)로 활용할 수 있는 오픈소스 도구다.
The Unfireable Safety Kernel: Execution-Time AI Alignment for AI Agents and Other Escapable AI Systems
AI 에이전트가 자신의 안전장치를 우회할 수 없도록, 에이전트 프로세스 바깥에 수학적으로 증명된 강제 통제 게이트를 배치하는 아키텍처
RubyLLM: A Ruby framework for all major AI providers
OpenAI, Claude, Gemini 등 주요 AI 프로바이더를 단일 인터페이스로 통합한 Ruby 프레임워크로, Rails 통합과 에이전트 기능까지 지원해 Ruby 개발자가 AI 기능을 빠르게 붙일 수 있다.
Qwen-AgentWorld: Language World Models for General Agents
Alibaba Qwen 팀이 AI 에이전트가 행동 결과를 미리 시뮬레이션할 수 있는 'Language World Model'을 공개했다. 에이전트 훈련과 실행 경로 검증에 새로운 패러다임을 제시하는 연구다.
SHERLOC: Structured Diagnostic Localization for Code Repair Agents
버그 위치만 알려주는 게 아니라 '왜, 어떻게 고쳐야 하는지'까지 진단 리포트를 생성해서 코드 수정 에이전트의 성능을 높이는 training-free 프레임워크
Show HN: peerd – AI agent harness that runs entirely in your browser
백엔드 서버 없이 Chrome/Firefox 확장 프로그램으로만 동작하는 AI 에이전트 실행 환경으로, 브라우저 탭을 직접 조작하고 WASM Linux VM까지 구동할 수 있어 프라이버시와 보안을 동시에 챙길 수 있다.