Files
Peter Steinberger 99d662473c fix(channels): fail-fast headless channel setup with plugin-declared env contracts (#122530)
* fix(channels): validate headless channel setup

* docs(channels): document headless provisioning

* fix(channels): repair setup metadata typing

* chore(channels): regenerate official channel catalog for env metadata

* fix(slack): keep mode-conditional env contract plugin-owned

Static --use-env declaration keeps only the unconditional SLACK_BOT_TOKEN;
socket-vs-HTTP conditional requirements (app token, signing secret) stay in
Slack's own setup validation so HTTP mode no longer demands an irrelevant
SLACK_APP_TOKEN.

* chore(sdk): regenerate api baselines and catalog after rebase

* fix(slack): align manifest env declaration with runtime contract

* chore(sdk): regenerate api baselines after rebase

* chore(sdk): regenerate api baselines after rebase

* chore(sdk): regenerate api baselines after rebase
2026-08-12 17:12:15 +00:00

89 lines
2.2 KiB
JSON

{
"name": "@openclaw/telegram",
"version": "2026.8.1",
"private": true,
"description": "OpenClaw Telegram channel plugin",
"type": "module",
"dependencies": {
"@grammyjs/runner": "2.0.3",
"@grammyjs/transformer-throttler": "1.2.1",
"grammy": "1.45.1",
"typebox": "1.3.6",
"undici": "8.9.0",
"zod": "4.4.3"
},
"devDependencies": {
"@openclaw/plugin-sdk": "workspace:*"
},
"openclaw": {
"extensions": [
"./index.ts"
],
"setupEntry": "./setup-entry.ts",
"setupFeatures": {
"configPromotion": true
},
"channel": {
"id": "telegram",
"configuredState": {
"env": {
"anyOf": [
"TELEGRAM_BOT_TOKEN"
]
}
},
"approvalFlags": [
"native"
],
"label": "Telegram",
"selectionLabel": "Telegram (Bot API)",
"detailLabel": "Telegram Bot",
"docsPath": "/channels/telegram",
"docsLabel": "telegram",
"blurb": "simplest way to get started — register a bot with @BotFather and get going.",
"systemImage": "paperplane",
"selectionDocsPrefix": "",
"selectionDocsOmitLabel": true,
"selectionExtras": [
"https://openclaw.ai"
],
"markdownCapable": true,
"setup": {
"fields": [
{
"key": "token",
"kind": "string",
"sensitive": true,
"cli": {
"flags": "--token <token>",
"description": "Telegram bot token"
}
},
{
"key": "tokenFile",
"kind": "string",
"sensitive": true,
"cli": {
"flags": "--token-file <path>",
"description": "Telegram bot token file"
}
},
{
"key": "useEnv",
"kind": "boolean",
"cli": {
"flags": "--use-env",
"description": "Use TELEGRAM_BOT_TOKEN"
},
"envVars": ["TELEGRAM_BOT_TOKEN"]
}
]
},
"commands": {
"nativeCommandsAutoEnabled": true,
"nativeSkillsAutoEnabled": true
}
}
}
}