基础版本:1.1 更新版本:1.2
cyberTrack 是一个面向个人/单团队的“工程蓝图风”资产管理控制台,支持资产录入、到期提醒、数据备份/恢复、AI 资产分析,以及 Telegram 机器人通知。
- AI 资产顾问
- 修复自建公益站模型输入体验,支持前端自由填写模型名并记住上次选择。
- 优化 AI 错误处理与提示:模型不存在、渠道不可用、上游 503、超时等场景给出明确反馈。
- 优化分析 Prompt 与 Markdown 渲染稳定性,减少表格/标题错乱与超时概率。
- Telegram Bot
- 修复
/help在 HTML parse mode 下因<...>占位符导致的指令无响应问题。 - 新增
/detail <ID/关键词>指令,并接入命令分发、帮助文案、Telegram 命令菜单。 - AI 回答不再推荐未实现命令,提升可用性一致性。
- 优化 TG AI 调用链:压缩上下文、模型回退、错误文案细化。
- 修复
- 通知配置
- 修复“邮件通知配置刷新后被重置”的问题,保留本地已配置的 Email/Telegram/Webhook 设置并安全回写服务端。
核心功能
- 资产管理:VPS/域名/账号/手机号等资源的增删改查与分类浏览'
- 到期提醒:每日定时扫描(Cron)+ 即时变更通知(新增/更新/删除)
- Telegram Bot:指令交互(/status /expiring /list /search 等)与通知推送d
- 数据管理:导出备份、覆盖/合并导入、预检查与错误明细下载
- 汇率:服务端缓存 + 手动覆盖(避免第三方 API 波动)
- AI 资产顾问:多平台模型选择,服务端代理,Key 可选
- 主题:工程蓝图风 UI(网格底纹、虚线、准星标注)
components/前端 UI 组件功能services/前端服务层(API 调用、缓存逻辑)functions/Cloudflare Pages Functions(后端逻辑)functions/api/v1/资源/设置/汇率 APIfunctions/services/telegram/Telegram 机器人指令处理functions/cron.ts每日定时到期扫描functions/db/schema.tsD1 数据表结构
前置条件:Node.js 18+,npm
- 安装依赖
npm install
- 启动开发服务
npm run dev
在 Cloudflare 创建 D1 数据库,并在 wrangler.toml 中配置:
[[d1_databases]]
binding = "DB"
database_name = "cybertrack-db"
database_id = "YOUR_D1_DATABASE_ID"
在 Cloudflare 创建 KV,并在 wrangler.toml 中配置:
[[kv_namespaces]]
binding = "CLOUDTRACK_KV"
id = "YOUR_KV_NAMESPACE_ID"
必需
API_SECRET:API 访问密钥(用于后端请求鉴权)
可选(启用对应功能时才需配置)
TELEGRAM_BOT_TOKEN:Telegram Bot TokenOPENAI_API_KEYDEEPSEEK_API_KEYOPENROUTER_API_KEYOPENROUTER_SITE_URL(可选)OPENROUTER_APP_TITLE(可选)GITHUB_TOKENGITHUB_MODELS_URL(GitHub Models Chat Completions endpoint)CUSTOM_AI_BASE_URL(自建 OpenAI 兼容服务地址)CUSTOM_AI_API_KEY(可选)CUSTOM_AI_ENDPOINT(可选,完整接口路径)CUSTOM_AI_ENDPOINTS(可选,多端点列表)API_KEY(Gemini,保留兼容)
AI 配置增强(可选)
AI_DEFAULT_PROVIDER:默认提供商(openai/deepseek/openrouter/github/custom/gemini)AI_DEFAULT_MODEL:全局默认模型AI_OPENAI_MODEL/AI_DEEPSEEK_MODEL/AI_OPENROUTER_MODEL/AI_GITHUB_MODEL/AI_CUSTOM_MODEL/AI_GEMINI_MODELAI_TIMEOUT_MS:请求超时(毫秒)AI_RETRIES:重试次数(默认 1)AI_RETRY_DELAY_MS:重试间隔(毫秒)AI_MAX_TOKENS:最大输出 tokenAI_TEMPERATURE:采样温度
npm run build- 推送代码到 GitHub
- Cloudflare Pages 自动构建部署
默认使用 API_SECRET 校验,请在请求头中携带:
X-API-Key: YOUR_API_SECRET
支持的访问模式(通过 ACCESS_MODE 环境变量控制):
access-code(默认):只校验API_SECRETcloudflare:只允许 Cloudflare Access 登录用户hybrid:Cloudflare Access 或 API_SECRET 其一满足即可
- 在设置页填写 Chat ID
- 点击“一键激活 Webhook”
- 在 Telegram 输入
/查看命令菜单
- 直接对机器人发送
/start,机器人会回显 Chat ID
/start绑定并查看 Chat ID/status资产概览/expiring30 天内到期/list资产列表/search 关键词
- 服务端优先返回手动覆盖的汇率
- 无覆盖时使用服务端缓存(24h)
- 缓存失效会请求实时汇率
- 请求失败自动回退默认汇率
wrangler.toml 已配置北京时间 09:00 触发:
[[triggers]]
crons = ["0 1 * * *"]
支持 OpenAI、DeepSeek、OpenRouter、GitHub Models、自建公益站(OpenAI 兼容),均为 可选。 未配置的 AI 平台不会影响其他功能。
前端可选择:
- 平台
- 模型名称(支持手动输入)
默认平台与模型由环境变量控制,若未设置则使用内置默认值。
GitHub Models 的 GITHUB_MODELS_URL 需要填写完整 endpoint,例如:
https://models.inference.ai.azure.com/chat/completions
CUSTOM_AI_BASE_URL: 你的服务地址(如https://example.com)- 接口路径默认为
/v1/chat/completions
{
"metadata": {
"version": 1,
"exportedAt": "2026-02-04T09:00:00.000Z",
"source": "cyber-track"
},
"resources": [
{
"id": "...",
"name": "My VPS",
"provider": "AWS",
"expiryDate": "2026-12-01",
"cost": 10,
"currency": "USD",
"type": "VPS",
"tags": ["prod"]
}
]
}
- 支持覆盖/合并
- 合并模式优先按
name + type + provider匹配 - 日期格式必须为
YYYY-MM-DD - 支持错误明细下载
Q: 没配置某个 AI Key 会怎样? A: 只影响对应平台,其他功能不受影响。
Q: 汇率显示 fallback 是什么? A: 实时 API 获取失败时的回退汇率,可手动覆盖。
MIT