orchestration, telegram, cron
by @kiril-shturman
Orchestrate a PM bot and one or more Dev bots in a private Telegram group. Use to turn plain chat commands like "DEV skill install <slug>" and "DEV cron add...
clawhub install pm-dev-orchestratorπ About This Skill
name: pm-dev-orchestrator description: Orchestrate a PM bot and one or more Dev bots in a private Telegram group. Use to turn plain chat commands like "DEV skill install
pm-dev-orchestrator
Set up a PM bot (planner) that issues structured commands in a private Telegram group, and a Dev bot (executor) that runs those commands on its own server.
This skill is written for the Dev bot (executor). It contains:
Core idea
from.id)
- inside the allowed group chat id
- with strict prefix: DEV No extra polling bot is needed: Dev bot is just an OpenClaw instance connected to Telegram. When it receives a group message, it parses and runs the allowlisted actions.
Required config values (fill these)
GROUP_CHAT_ID β Telegram group chat id (e.g. -5259247075 or -100...).PM_FROM_ID β Telegram numeric id of the PM bot. Example from our setup: 7790959648.DEV_BOT_TOKEN β BotFather token for the Dev bot.Dev bot: OpenClaw Telegram group allowlist
In ~/.openclaw/openclaw.json on the Dev server, set:
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "",
"dmPolicy": "allowlist",
"allowFrom": [],
"groupPolicy": "allowlist",
"groupAllowFrom": [],
"groups": {
"": {}
}
}
}
}
Restart gateway:
openclaw gateway restart
Command format (PM β Dev in the group)
All executable commands must be a single line starting with DEV .
Skill management
DEV skill install DEV skill update DEV skill search DEV skill listRules:
must be a ClawHub slug like claw-guru or StaticAI/android-adb.~/workspace/skills (OpenClaw workspace).Cron management
DEV cron listDEV cron add every=10m name="dm-check" message="..."DEV cron add cron="*/5 * * * *" name="health" message="..."DEV cron enable id= on|off DEV cron remove id=DEV cron run id=Notes:
message=... becomes the agentTurn prompt for the cron job (isolated).Dev executor (recommended): implement as Dev bot behavior (no extra daemon)
Recommended: do not run an extra process. Instead, configure the Dev botβs behavior to:
1) Ignore everything except DEV ... commands.
2) For allowed commands, run the corresponding local CLI (clawhub / openclaw cron ...).
3) Reply with a short, machine-readable status.
Dev bot behavior contract (copy into Dev bot system instructions)
When you receive a Telegram group message:
chat.id != GROUP_CHAT_ID: ignore.from.id != PM_FROM_ID: ignore.DEV : ignore.Otherwise parse and execute.
Output format (reply in group):
OK ERR Keep it under ~10 lines.
Optional script
scripts/dev_executor.py is included as a parser/executor scaffold for testing, but the primary path is the Dev bot behavior above.
Safety rules (non-negotiable)
PM_FROM_ID in GROUP_CHAT_ID.Troubleshooting
groupAllowFrom + groups) and restart gateway.openclaw logs --follow, make PM bot send a message, read from.id.π Tips & Best Practices
groupAllowFrom + groups) and restart gateway.openclaw logs --follow, make PM bot send a message, read from.id.