Skills for LLM agents to interact with communication services via the agentio CLI
npx claudepluginhub plosson/agentioSkills for LLM agents to interact with Gmail, Telegram, and Google Chat via the agentio CLI
Run LLM agent workflows in GitHub Actions. No servers. No Zapier. Just cron.
agentio is a CLI that lets LLM agents interact with Gmail, Slack, JIRA, Telegram, Google Chat, and RSS feeds. Designed for CI/CD pipelines and scheduled automation.
You want your AI agent to:
agentio makes this trivial. Authenticate once locally, export your config as a single encrypted file, and run anywhere — GitHub Actions, GitLab CI, or any CI/CD platform.
A scheduled workflow that reads your emails, has Claude summarize them, and posts to Slack:
# .github/workflows/daily-briefing.yml
name: Daily Briefing
on:
schedule:
- cron: '0 7 * * 1-5'
jobs:
briefing:
runs-on: ubuntu-latest
env:
AGENTIO_CONFIG: ${{ secrets.AGENTIO_CONFIG }}
AGENTIO_KEY: ${{ secrets.AGENTIO_KEY }}
CLAUDE_CODE_OAUTH_TOKEN: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
steps:
- uses: actions/checkout@v4
- run: curl -LsSf https://agentio.me/install | sh
- run: npm install -g @anthropic-ai/claude-code
- run: agentio config import && agentio claude install
- run: claude -p "$(cat prompt.md)" --max-turns 30 --dangerously-skip-permissions
# prompt.md
Fetch my unread emails from the last 24 hours using agentio-gmail.
Summarize them by urgency and sender.
Post the summary to Slack using agentio-slack.
See examples/daily-briefing/ for the complete working example.
macOS / Linux:
curl -LsSf https://agentio.me/install | sh
Windows (PowerShell):
iwr -useb https://agentio.me/install.ps1 | iex
Homebrew (macOS/Linux):
brew tap plosson/agentio
brew install agentio
Scoop (Windows):
scoop bucket add agentio https://github.com/plosson/scoop-agentio
scoop install agentio
npm / bun:
npx @plosson/agentio --help
# or global install
npm install -g @plosson/agentio
# Add your Gmail account (opens browser for OAuth)
agentio gmail profile add
# Add Slack webhook
agentio slack profile add
# Add any other services you need...
agentio config export
# Outputs:
# ✓ Exported to agentio.config
# ✓ Encryption key: abc123...
#
# Store BOTH in your CI/CD secrets!
All credentials are encrypted with AES-256-GCM. The export file is useless without the key.
Note: GitHub secrets are limited to 48KB per secret. Only add the profiles you need for your workflow to keep the exported config small.
| Secret | Value |
|---|---|
AGENTIO_CONFIG | Base64-encoded contents of agentio.config |
AGENTIO_KEY | The encryption key from export |
# Get base64 for GitHub secret
cat agentio.config | base64
env:
AGENTIO_CONFIG: ${{ secrets.AGENTIO_CONFIG }}
AGENTIO_KEY: ${{ secrets.AGENTIO_KEY }}
steps:
- run: agentio config import # Auto-detects env vars
- run: agentio gmail list --limit 10
Done. Your agent can now access all your services securely in CI/CD.
| Service | Auth | Commands |
|---|---|---|
| Gmail | OAuth | list, get, search, send, reply, archive, mark, attachment, export |
| Slack | Webhook | send |
| Telegram | Bot Token | send |
| Google Chat | Webhook/OAuth | send, list, get |
| JIRA | OAuth | projects, search, get, comment, transitions, transition |
| Discourse | API Key | list, get, categories |
| RSS | None | articles, get, info |
# List recent emails
agentio gmail list --limit 10
# Search
agentio gmail search --query "from:boss@company.com is:unread"
# Get specific email
agentio gmail get <message-id>
# Send (body from stdin works great with LLMs)
echo "Generated by my agent" | agentio gmail send --to user@example.com --subject "Daily Report"
# Download attachments
agentio gmail attachment <message-id> --output ./downloads
# Export as PDF
agentio gmail export <message-id> --output email.pdf
# Send message
agentio slack send "Deployment complete ✓"
# Send rich Block Kit message
agentio slack send --json blocks.json
# Send to channel
agentio telegram send "Alert: New items found"