Community Os
v1.0.3Manage Telegram bots easily with unified LLM settings, knowledge base replies, auto-reply in groups, and DM control without group setup.
MIT-0
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The code and SKILL.md implement a Telegram bot manager with LLM integration — that matches the name/description. However the registry metadata declares no required environment variables while SKILL.md and code clearly require Telegram bot tokens and multiple LLM API keys. That metadata mismatch is a meaningful incoherence: the skill asks for and uses secrets even though the registry reports none.
Instruction Scope
Runtime instructions tell you to provide bot tokens and LLM API keys and run admin/app.py. The SKILL.md correctly warns there's no built-in auth and says 'Local Only'. The code further: (a) loads .env into os.environ, (b) has an admin UI with no authentication (require_auth returns 'admin' unconditionally), and (c) saves configuration and logs under admin/data. This means sensitive secrets will be accepted and persisted with no auth protection. The 'local only' assertion is not enforced in metadata; the server's bind/launch behavior in the truncated app.py is not visible — that ambiguity raises risk.
Install Mechanism
There is no install spec in the registry (instruction-only), but the package includes Python source and a requirements.txt (standard PyPI packages). No remote downloads or obscure installers are used. Installing dependencies via pip is expected for a Python app; the presence of code files means the user will write and run code locally rather than 'no‑op' instruction-only. This is not inherently malicious but increases the attack surface compared to an instruction-only skill with no code.
Credentials
The skill requests many sensitive environment variables (Telegram bot tokens and multiple LLM API keys) as documented in SKILL.md and via code usage (MINIMAX_API_KEY, OPENAI_API_KEY, etc.). The registry metadata did not declare these, so the skill's declared and actual secret requirements disagree. The code attempts to resolve token values from environment variables using a variety of names (e.g., TELEGRAM_BOT_TOKEN, BOTID_TOKEN, MINIMAX_API_KEY) which is flexible but also increases chance of accidental exposure. Secrets are persisted (admin/data and .env handling), and the admin UI lacks auth, so anyone with HTTP access to the admin UI can view/enter keys.
Persistence & Privilege
The skill does not request 'always: true' and does not modify other skills. It persists configuration and logs to admin/data and reads/writes llm_config/bots JSON files. The notable issue is design: the admin UI has no authentication and require_auth is effectively a no-op, meaning persisted secrets/configs are unprotected. This is a security design choice rather than an elevated platform privilege, but it materially increases risk if the service is exposed beyond localhost.
What to consider before installing
This package appears to implement the functionality it advertises, but exercise caution before installing or running it: 1) The registry metadata claims no required env vars, but SKILL.md and code need Telegram tokens and LLM API keys — do not supply high-privilege or shared keys lightly. 2) The admin UI has no authentication (require_auth returns a default admin). If you run the service, ensure it truly listens only on 127.0.0.1 (bind explicitly) and block external access with a firewall. 3) Secrets are read from .env and saved under admin/data; store them in a secure place, and consider running in an isolated container or dedicated VM. 4) Review the missing LLM implementation (bot_engine.llm / LLMFactory) before use — the skill references an LLMFactory not present in the shipped files, so inspect the provider code you will use. 5) Prefer creating a dedicated Telegram bot token with minimal privileges and separate API keys for this test environment. 6) If you need this functionality but require stronger security, ask the author for optional auth, encryption-at-rest, and an explicit host binding option; otherwise run it offline in a sandbox. Additional info that would raise confidence: the rest of admin/app.py (server launch and host binding), the bot_engine/llm implementation, and clarification from the publisher about why registry metadata omits required env vars.Like a lobster shell, security has layers — review code before you run it.
latest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
SKILL.md
CommunityOS Telegram Bot Skill
Simple Telegram Bot management with LLM and knowledge base.
⚠️ Security Notes
- Local Only - Runs on localhost (127.0.0.1), not exposed to internet
- No Built-in Auth - Admin UI has no authentication, only use locally
- Credentials Required - Needs Telegram bot tokens and LLM API keys (see below)
Required Environment Variables
# Telegram Bot Token (from @BotFather)
TELEGRAM_BOT_TOKEN_XXX=your_bot_token
# LLM API Keys (at least one required)
MINIMAX_API_KEY=your_minimax_key # Recommended - has free tier
OPENAI_API_KEY=your_openai_key
ANTHROPIC_API_KEY=your_anthropic_key
DEEPSEEK_API_KEY=your_deepseek_key
Features
- 🤖 Bot Management - Create, edit, delete Telegram bots
- 🔑 Global LLM Config - Unified LLM settings (MiniMax, OpenAI, Anthropic, DeepSeek)
- 📚 Text Knowledge Base - Paste text directly, bot answers within knowledge scope
- 💬 Auto Reply - Bot auto-replies in groups without group config
- 🔒 DM Control - Toggle Allow DM to control private chat
Quick Start
cd ~/.openclaw/workspace/skills/community-os
# Create venv
python -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Configure environment
cp .env.example .env
# Edit .env with your API keys
# Run
python admin/app.py
Then visit: http://localhost:8878/lite
Architecture
admin/app.py- FastAPI backend (no external dependencies)admin/lite.html- Simple UIbot_engine/- Bot runtime (self-contained, no harness dependency)config/- Configuration files
Note: This skill is self-contained. The harness referenced in some code is not required for the Lite version to work.
Files
12 totalSelect a file
Select a file to preview.
Comments
Loading comments…
