拉斯塔电报机器人
TypeScript单仓库包含:
- 电报机器人(每个用户链接)
- Planka MCP服务器(每个用户令牌)
- 链接门户web应用程序(在HTTPS页面上收集Planka凭据,交换令牌;确实如此 不 存储密码)
- Next.js管理面板(Basic Auth)用于查看链接的用户(从不显示解密的令牌)
先决条件
- Node.js
^20.19 || ^22.12 || >=24(Prisma 7需要) - 可访问的链接门户URL(对于真实用户:HTTPS)
设置
- 复制环境:
- 复制 .env.example 到 .env 并填充值。
- 安装deps:
- npm install
- 初始化数据库(Prisma迁移):
- npm run db:setup
- 运行dev:
- npm run dev
📚 用于生产部署和数据库迁移,请参阅 移民\_ GIDE.md
管理面板
- 运行在
http://localhost:3000在npm run dev. - 通过HTTP基本身份验证进行保护
ADMIN_BASIC_AUTH_USER/ADMIN_BASIC_AUTH_PASS.
服务端口
所有服务在代码默认值、环境变量和Docker之间使用一致的端口配置:
| 服务 | 端口 | 描述 |
|---|---|---|
| 管理面板 | 3000 | Next.js管理仪表板,带基本身份验证 |
| 电报机器人 | 3001 | 健康检查服务器(机器人通过轮询运行) |
| 链接门户 | 3002 | OAuth回调处理程序和令牌交换 |
| MCP Planka | 3100 | 用于Planka集成的MCP服务器(HTTP模式) |
| MCP光栅 | 3101 | 用于光栅食品订购的MCP服务器(HTTP模式) |
每项服务:
- ✅ 有
PORT源代码中的默认值 - ✅ 有
PORT在Dockerfile ENV中配置 - ✅ 有
EXPOSEDockerfile中的声明 - ✅ 用途
process.env.PORT用于运行时覆盖
安全说明
- 切勿将密码/令牌粘贴到聊天中。
- 链接门户只存储Planka访问令牌(静态加密),从不存储密码。
- 旋转
ENCRYPTION_KEY只有当你同时旋转/重新加密存储的秘密时。
AI聊天功能
Telegram机器人现在包括使用OpenRouter的人工智能聊天功能:
设置
- 从获取API密钥 openrouter.ai/keys
- 通过管理面板配置
http://localhost:3000或设置.env:
OPENROUTER_API_KEY=sk-or-v1-...
DEFAULT_AI_MODEL=anthropic/claude-3.5-sonnet特性
- 对话式人工智能:与机器人自然聊天
- 记忆:跨消息维护对话上下文
- Planka集成:AI可以使用工具来管理你的Planka板、列表和卡片
- 会话管理:查看聊天记录、开始新对话或清除当前聊天记录
可用命令
/start-显示欢迎消息和可用命令/new_chat-开始新的对话/history-查看最近的聊天会话/clear_chat-清除当前对话/link_planka-连接您的Planka帐户(任务管理所需)/planka_status-检查Planka连接状态/planka_unlink-断开Planka帐户的连接
运作原理
- 向机器人发送任何消息(不是命令)以开始聊天
- AI维护对话历史和上下文
- 如果您已链接您的Planka帐户,AI可以:
- 列出你的棋盘和卡片 - 创建新卡 - 更新现有卡 - 搜索所有卡片 - 在列表之间移动卡片
模型选项
管理面板现在提供 400+AI模型 OpenRouter提供实时定价:
智能功能
- 🤖 自动布线 (
openrouter/auto)-自动为每个提示选择最佳模型 - 💰 免费模型优先 -顶部展示的免费模型
- 🔍 搜索和筛选 -按姓名/ID搜索,仅按免费型号筛选
- 💵 实时定价 -查看每百万代币的实时成本
- 📊 按提供商分组 -由Anthropic、OpenAI、谷歌、Meta等组织。
受欢迎的型号包括:
- 克劳德3.5十四行诗 -最适合推理和工具使用
- GPT-4o -能力很强,多模式
- 双子座2.0闪光灯 -快速、免费且功能强大
- Llama 3.1 70B -开源,功能强大
接下来呢
- 在下添加更多MCP服务器
packages/(例如午餐、账目)。 - 添加流媒体响应以获得更好的用户体验
- 实现用户对AI模型选择的偏好
- 添加对话导出功能
