Skip to main content
ClaudeWave
Skill936 repo starsupdated 11d ago

caspian-connect-telegram

>-

Install in Claude Code
Copy
git clone --depth 1 https://github.com/TryCaspian/caspian-sdk /tmp/caspian-connect-telegram && cp -r /tmp/caspian-connect-telegram/packages/opencode/src/skills/caspian-connect-telegram ~/.claude/skills/caspian-connect-telegram
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Caspian connect Telegram

Connect a Telegram bot to Caspian and enable `telegram` in the plugin admit
list (`channels` in `~/.config/opencode/caspian.json`). Without `telegram` in
`channels`, Telegram events are rejected at admit (blast-radius wall).

## When to use

- User asks to connect Telegram / BotFather / Telegram bot
- User runs `/caspian:connect-telegram` or `/caspian-connect-telegram`

## Prerequisites (token)

Bot token must exist in **one** of (prefer file over chat):

1. `TELEGRAM_BOT_TOKEN` in the environment
2. Project `.env` → `TELEGRAM_BOT_TOKEN=...`
3. `~/.config/opencode/caspian.env` → `TELEGRAM_BOT_TOKEN=...`

Do **not** store the token in `caspian.json`. Prefer not pasting the token into chat.

## How

1. Call **`caspian_connections`** to see if Telegram is already linked and whether
   `telegram` is already in plugin channels.
2. Call **`caspian_connect_telegram`**.
3. If the tool asks for a token, instruct the user to create a bot with
   @BotFather, write `TELEGRAM_BOT_TOKEN=...` into `.env` or `caspian.env`, then
   re-run the command. Do not invent a token.
4. On success, present connection id / channels. If **RESTART REQUIRED**, say:

   > Restart OpenCode (quit and relaunch) so admit loads
   > `"channels": ["email", "telegram"]` (or your updated list). Until then,
   > Telegram messages are still rejected.

5. After restart, Telegram inbound should flow into OpenCode like email.