{"id":43289325,"url":"https://github.com/devxoul/agent-messenger","last_synced_at":"2026-03-05T07:09:16.536Z","repository":{"id":335438398,"uuid":"1145666734","full_name":"devxoul/agent-messenger","owner":"devxoul","description":"Messenger automation CLI for AI agents","archived":false,"fork":false,"pushed_at":"2026-02-03T17:29:36.000Z","size":875,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-05T06:47:18.537Z","etag":null,"topics":["discord","slack","teams"],"latest_commit_sha":null,"homepage":"https://agent-messenger.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devxoul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-30T04:11:24.000Z","updated_at":"2026-02-04T21:00:10.000Z","dependencies_parsed_at":"2026-02-03T20:04:19.233Z","dependency_job_id":null,"html_url":"https://github.com/devxoul/agent-messenger","commit_stats":null,"previous_names":["devxoul/agent-messenger"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/devxoul/agent-messenger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devxoul%2Fagent-messenger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devxoul%2Fagent-messenger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devxoul%2Fagent-messenger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devxoul%2Fagent-messenger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devxoul","download_url":"https://codeload.github.com/devxoul/agent-messenger/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devxoul%2Fagent-messenger/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29135905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T21:59:57.939Z","status":"ssl_error","status_checked_at":"2026-02-05T21:59:57.628Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discord","slack","teams"],"created_at":"2026-02-01T18:12:04.013Z","updated_at":"2026-03-05T07:09:16.509Z","avatar_url":"https://github.com/devxoul.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Agent Messenger\n\n[![npm version](https://img.shields.io/npm/v/agent-messenger)](https://www.npmjs.com/package/agent-messenger) [![SkillPad - agent-slack](https://img.shields.io/badge/SkillPad-agent--slack-1a1a1a)](https://skillpad.dev/install/devxoul/agent-messenger/agent-slack) [![SkillPad - agent-slackbot](https://img.shields.io/badge/SkillPad-agent--slackbot-1a1a1a)](https://skillpad.dev/install/devxoul/agent-messenger/agent-slackbot) [![SkillPad - agent-discord](https://img.shields.io/badge/SkillPad-agent--discord-1a1a1a)](https://skillpad.dev/install/devxoul/agent-messenger/agent-discord) [![SkillPad - agent-discordbot](https://img.shields.io/badge/SkillPad-agent--discordbot-1a1a1a)](https://skillpad.dev/install/devxoul/agent-messenger/agent-discordbot) [![SkillPad - agent-teams](https://img.shields.io/badge/SkillPad-agent--teams-1a1a1a)](https://skillpad.dev/install/devxoul/agent-messenger/agent-teams)\n\n![Agent Messenger](./docs/public/cover.png)\n\n**Give your AI agent the power to read and send messages across Slack, Discord, Teams and more**\n\nA unified, agent-friendly CLI for messaging platforms. Zero-config credential extraction from your desktop apps—no OAuth flows, no API keys, no admin approval needed. Works out of the box.\n\n## Table of Contents\n\n- [Why Agent Messenger?](#-why-agent-messenger)\n- [Installation](#-installation)\n- [Agent Skills](#-agent-skills)\n  - [SkillPad](#skillpad)\n  - [Skills CLI](#skills-cli)\n  - [Claude Code Plugin](#claude-code-plugin)\n  - [OpenCode Plugin](#opencode-plugin)\n- [Quick Start](#-quick-start)\n- [Supported Platforms](#-supported-platforms)\n- [Platform Guides](#-platform-guides)\n- [Use Cases](#-use-cases)\n  - [Gathering Context](#gathering-context)\n  - [Communicating \u0026 Reporting](#communicating--reporting)\n  - [Automation \u0026 Pipelines](#automation--pipelines)\n  - [...and More](#and-more)\n- [Philosophy](#-philosophy)\n- [Contributing](#-contributing)\n- [License](#-license)\n\n## 🤔 Why Agent Messenger?\n\nMessaging platforms only offer Bot tokens for API access—your AI agent can never act **as you**. Agent Messenger extracts user credentials directly from your installed desktop apps, letting your agent operate on your behalf. Bot tokens are fully supported too for server-side and CI/CD use cases.\n\n- 🎭 **Act as yourself, not a bot** — Extracted user tokens let your agent operate on your behalf\n- 🔑 **No API keys needed** — Automatically extracts credentials from your installed desktop apps\n- ⚡ **Zero setup** — Credentials are auto-extracted on first command. No manual auth step required\n- 🌐 **One interface, multiple platforms** — Learn once, use everywhere (Slack, Discord, Teams)\n- 🤖 **AI-agent friendly** — JSON output by default, perfect for LLM tool use\n- 👤 **Human friendly too** — Add `--pretty` for readable output\n- ⚡ **Token efficient** — CLI, not MCP. Load only what you need. ([Why not MCP?](#philosophy))\n\n## 📦 Installation\n\n```bash\nnpm install -g agent-messenger\n```\n\nOr use your favorite package manager.\n\nThis installs:\n- `agent-slack` — Slack CLI (user token, zero-config)\n- `agent-slackbot` — Slack Bot CLI (bot token, for server-side/CI/CD)\n- `agent-discord` — Discord CLI\n- `agent-discordbot` — Discord Bot CLI (bot token, for server-side/CI/CD)\n- `agent-teams` — Microsoft Teams CLI\n\n## 🧩 Agent Skills\n\nAgent Messenger includes [Agent Skills](https://agentskills.io/) that teach your AI agent how to use these CLIs effectively. Five skills are available:\n\n- **`agent-slack`** — Slack (user token, zero-config)\n- **`agent-slackbot`** — Slack Bot (bot token, for server-side/CI/CD)\n- **`agent-discord`** — Discord\n- **`agent-discordbot`** — Discord Bot (bot token, for server-side/CI/CD)\n- **`agent-teams`** — Microsoft Teams\n\n### SkillPad\n\nSkillPad is a GUI app for Agent Skills. See [skillpad.dev](https://skillpad.dev/) for more details.\n\n[![Available on SkillPad](https://badge.skillpad.dev/agent-slack/dark.svg)](https://skillpad.dev/install/devxoul/agent-messenger/agent-slack) [![Available on SkillPad](https://badge.skillpad.dev/agent-slackbot/dark.svg)](https://skillpad.dev/install/devxoul/agent-messenger/agent-slackbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-discord/dark.svg)](https://skillpad.dev/install/devxoul/agent-messenger/agent-discord) [![Available on SkillPad](https://badge.skillpad.dev/agent-discordbot/dark.svg)](https://skillpad.dev/install/devxoul/agent-messenger/agent-discordbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-teams/dark.svg)](https://skillpad.dev/install/devxoul/agent-messenger/agent-teams)\n\n### Skills CLI\n\nSkills CLI is a CLI tool for Agent Skills. See [skills.sh](https://skills.sh/) for more details.\n\n```bash\nnpx skills add devxoul/agent-messenger\n```\n\n### Claude Code Plugin\n\n```bash\nclaude plugin marketplace add devxoul/agent-messenger\nclaude plugin install agent-messenger\n```\n\nOr within Claude Code:\n\n```\n/plugin marketplace add devxoul/agent-messenger\n/plugin install agent-messenger\n```\n\n### OpenCode Plugin\n\nAdd to your `opencode.jsonc`:\n\n```jsonc\n{\n  \"plugins\": [\n    \"agent-messenger\"\n  ]\n}\n```\n\n## 🚀 Quick Start\n\nGet up and running in 30 seconds:\n\n```bash\n# 1. See your workspace at a glance\nagent-slack snapshot --pretty\n\n# 2. Send a message\nagent-slack message send general \"Hello from the CLI!\"\n```\n\nThat's it. Credentials are extracted automatically from your Slack desktop app on first run. No OAuth flows. No API tokens. No configuration files.\n\n## 📋 Supported Platforms\n\n| Feature | Slack | Discord | Teams |\n|---------|:-----:|:-------:|:-----:|\n| Auto credential extraction | ✅ | ✅ | ✅ |\n| Send \u0026 list messages | ✅ | ✅ | ✅ |\n| Search messages | ✅ | ✅ | — |\n| Threads | ✅ | ✅ | — |\n| Channels \u0026 Users | ✅ | ✅ | ✅ |\n| Reactions | ✅ | ✅ | ✅ |\n| File uploads | ✅ | ✅ | ✅ |\n| Workspace snapshots | ✅ | ✅ | ✅ |\n| Multi-workspace | ✅ | ✅ | ✅ |\n| Activity feed | ✅ | — | — |\n| Drafts | ✅ | — | — |\n| Saved items | ✅ | — | — |\n| Unread messages | ✅ | — | — |\n| Sidebar sections | ✅ | — | — |\n| Bot support | ✅ | ✅ | — |\n\n\u003e ⚠️ **Teams tokens expire in 60-90 minutes.** Re-run `agent-teams auth extract` to refresh. See [Teams Guide](skills/agent-teams/SKILL.md) for details.\n\n## 📖 Platform Guides\n\n- **[Slack Guide](https://agent-messenger.dev/docs/integrations/slack)** — Full command reference for Slack\n- **[Slack Bot Guide](https://agent-messenger.dev/docs/integrations/slackbot)** — Bot token integration for server-side and CI/CD\n- **[Discord Guide](https://agent-messenger.dev/docs/integrations/discord)** — Full command reference for Discord\n- **[Discord Bot Guide](https://agent-messenger.dev/docs/integrations/discordbot)** — Bot token integration for server-side and CI/CD\n- **[Teams Guide](https://agent-messenger.dev/docs/integrations/teams)** — Full command reference for Microsoft Teams\n\n## 💡 Use Cases\n\n### Gathering Context\n\nPull context from conversations before you start working — no tab-switching, no skimming.\n\n\u003e \"Read the #incident-api-outage thread in Slack and summarize the root cause, timeline, and action items so I can write the postmortem.\"\n\n\u003e \"Search our Discord #architecture channel for any previous discussion about event sourcing before I write a proposal.\"\n\n\u003e \"Check my unread messages across all Slack channels and tell me if anything needs my attention.\"\n\n\u003e \"Look through #frontend in Slack for messages about the login page redesign from the past two weeks and summarize the decisions made.\"\n\n\u003e \"Search Teams for any messages mentioning 'API deprecation' so I know if this was discussed before.\"\n\n### Communicating \u0026 Reporting\n\nSend updates, file reports, and notify your team — all from a prompt.\n\n\u003e \"Post a deployment summary to #releases in Slack with the commit hash, changelog, and deploy status.\"\n\n\u003e \"Send a message to the #standup channel with what I worked on yesterday, what I'm doing today, and any blockers.\"\n\n\u003e \"Cross-post this announcement to #general in Slack, the announcements channel in Discord, and the General channel in Teams.\"\n\n\u003e \"Upload the latest test coverage report to #ci-results in Slack.\"\n\n\u003e \"React with ✅ to the last message in #deploy-requests to confirm I've handled it.\"\n\n### Automation \u0026 Pipelines\n\nWire messaging into your CI, scripts, or agent workflows.\n\n\u003e \"After every CI run, post the build status and test results to #builds in Slack — include the branch name and commit link.\"\n\n\u003e \"When a long-running migration finishes, notify me in Discord with the final row count and elapsed time.\"\n\n\u003e \"Every morning at 9am, snapshot my Slack workspace and post a summary of active channels to #team-pulse.\"\n\n\u003e \"Send an alert to #oncall in Slack whenever the error rate exceeds 1% — include the service name and a link to the dashboard.\"\n\n\u003e \"Read the latest message in #releases, then cross-post it to our Discord announcements channel.\"\n\n### ...and More\n\nThese are just starting points. Your agent has full read/write access to Slack, Discord, and Teams — anything you'd do manually in a chat app, it can handle for you. If you build something cool with Agent Messenger, [let me know](https://x.com/devxoul)!\n## 💭 Philosophy\n\n**Why not MCP?** MCP servers expose all tools at once, bloating context and confusing agents. **[Agent Skills](https://agentskills.io/) + agent-friendly CLI** offer a better approach—load what you need, when you need it. Fewer tokens, cleaner context, better output.\n\n**Why not OAuth?** OAuth requires an app and it requires workspace admin approval to install, which can take days. This tool just works—zero setup required. For those who prefer bot tokens (e.g., server-side or CI/CD), see [`agent-slackbot`](skills/agent-slackbot/SKILL.md).\n\nInspired by [agent-browser](https://github.com/vercel-labs/agent-browser) from Vercel Labs.\n\n## 🤝 Contributing\n\n```bash\nbun install    # Install dependencies\nbun link       # Link CLI globally for local testing\nbun test       # Run tests\nbun typecheck  # Type check\nbun lint       # Lint\nbun run build  # Build\n```\n\n## 📄 License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevxoul%2Fagent-messenger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevxoul%2Fagent-messenger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevxoul%2Fagent-messenger/lists"}