RightNow 是一个 AI 驱动的私人健身教练系统。它不是单纯的健身记录工具,而是把用户身体数据、训练计划、饮食记录、饮水计划、AI 对话、知识库和微信 Bot 串成一套可执行的“AI 私教闭环”。
当前版本已经进入 RightNow x OpenClaw 架构:RightNow 负责结构化业务数据与产品体验,OpenClaw 负责多通道智能体、工具调用、记忆和会话运行时。
RightNow 使用 PostgreSQL 保存真实业务数据:
- 用户档案、身体数据、目标体型
- 体重、饮食、训练、TODO
- AI 私教评估、深度问卷、首版计划、执行进度
- 微信绑定、Agent 工具调用审计
OpenClaw 保存智能体会话、长期记忆、每日记忆和工具调用上下文。两者分工明确:
- RightNow 数据库是事实来源。
- OpenClaw memory/session 是 AI 教练的语义记忆。
- RAG 知识库提供专业健身和营养知识。
AI 不只输出一段建议,而是生成可以落地执行的数据:
- 训练计划:几分化、今天练什么、具体动作、重量、组数、次数
- 饮食计划:每日热量、碳水、蛋白质、脂肪目标
- 饮水计划:每日饮水量、时间点、每次饮水量
- TODO 展开:每个训练动作都会进入今日 TODO
- 数据看板:饮食和宏量目标与实际记录同步
用户可以在 Web 端完成注册、建档、理想图生成和私教评估;后续微信 Bot 可以继续同一个用户的对话和数据:
- 微信绑定后识别用户身份
- 微信消息进入同一套 Chat/Agent 链路
- 食物拍照和饮食记录可同步回 Web 看板
- 训练、饮食、TODO、计划数据都来自同一套后端事实层
RightNow 通过 OpenClaw 插件把业务能力暴露为工具:
- 读取用户完整上下文
- 查询今日饮食/训练/TODO
- 分析食物文字和图片
- 写入饮食记录
- 创建或完成 TODO
- 开始、更新和完成训练会话
- 检索 FAQ、核心理论和书籍知识库
这让 AI 教练可以真正读写产品数据,而不是只做聊天回复。
知识库分成多层:
- L1 FAQ:高频问题快速回答
- L2 Core Theory:训练、营养、动作选择等核心理论
- L3 Books:更深层的营养学、书籍和资料
AI 教练可以先给出明确建议,再按需检索更深入的理论依据。
- 注册/登录
- 填写身体数据:性别、身高、体重、年龄
- 选择理想体型
- 上传当前照片
- 生成理想身材图
- 进入私教模块
- 确认诊断卡
- 完成深度沟通问题
- 生成首版私教方案
- 确认执行并存档
- 诊断卡:BMI、BMR、TDEE、体脂估算、目标周期
- 深度问卷:训练频率、单次时长、饮食环境、伤病限制
- 训练计划:按每周可训练天数生成一分化/三分化/四分化
- 动作编辑:支持修改动作、重量、组数、次数
- 饮水计划:支持修改时间点和每次饮水量
- 方案存档:再次进入私教模块时不重复评估
- 手动记录饮食
- 食物文字识别
- 食物图片识别
- 餐前拍照预估
- 今日热量汇总
- 碳水、蛋白质、脂肪统计
- 今日训练动作
- 训练会话
- 动作、重量、次数记录
- 同肌群历史查询
- 训练反馈卡
- 今日训练动作展开到 TODO
- 饮食目标与宏量目标进入数据看板
- 训练、饮食、饮水计划可形成每日执行闭环
- Web 端生成绑定码
- 微信端发送绑定码完成绑定
- 微信消息转发到 RightNow 后端
- 后端进入 OpenClaw/Chat 链路
- 回复再通过微信桥发回用户
React Web App
-> Nginx
-> NestJS Backend
-> PostgreSQL
-> OpenClaw Gateway
-> RightNow OpenClaw Plugin
-> RAG Service
-> WeChat Bridge
- React
- Vite
- TypeScript
- Tailwind-style utility classes
- Axios API client
- Three.js / React Three Fiber
- NestJS
- Prisma
- PostgreSQL
- JWT auth
- Multer/static uploads
- StepFun/OpenAI-compatible model calls
- OpenClaw Gateway client
- OpenClaw Gateway
- OpenAI-compatible
/v1/chat/completions - Per-user agent routing
- Tool calling
- Memory/session persistence
- Plugin hooks
- FastAPI-style Python service
- Chroma/vector persistence
- FAQ/core/books multi-layer retrieval
- Node.js
- Tencent iLink Bot API
- Internal token protected backend calls
backend/ NestJS API and Prisma schema
frontend/ React/Vite web app
rag-service/ RAG service and ingestion scripts
wechat-bridge/ WeChat iLink bridge
openclaw/extensions/ RightNow OpenClaw plugin
docs/ Architecture and implementation notes
docker-compose.prod.yml Production compose template
nginx.conf Nginx SPA/API proxy template
Copy .env.example to .env and fill in private values locally or on your server.
Do not commit:
.env.env.*- API keys
- database passwords
- gateway tokens
- certificates
- upload data
- WeChat login tokens
Install dependencies:
npm install
cd frontend && npm install
cd ../backend && npm installStart services according to your local Docker/PostgreSQL/OpenClaw setup. The production compose file is a template and expects private secrets from .env.
This repository keeps the RightNow application code, the RightNow OpenClaw extension, and safe deployment templates.
The following runtime assets are intentionally not committed:
- real
.envfiles and production secrets - TLS certificates and server-specific Nginx assets
- OpenClaw upstream runtime/source checkout used by production images
- RAG raw knowledge folders such as
cleaned-data/,blogger-data/,l1-faq/,l2-core/, andl3-books/ - upload files, WeChat login state, vector database volumes, and database dumps
For production deployment, provide those private/runtime assets on the server through .env, Docker volumes, or a separate private provisioning process.
- Browser clients should only talk to RightNow backend APIs.
- OpenClaw Gateway tokens must stay server-side.
- Agent tool calls go through
/api/agent/rpcwithAGENT_SERVICE_TOKEN. - User-facing Web auth uses JWT.
- WeChat bridge internal calls use
INTERNAL_API_TOKEN. - Production server IPs, domains, certificates and real API keys are intentionally not stored in this repository.
RightNow is moving toward a full AI private coach loop:
User data
-> AI assessment
-> structured training/diet/water plan
-> TODO execution
-> food/training logging
-> dashboard feedback
-> AI adjustment
-> Web + WeChat continuous coaching
The goal is not only to answer fitness questions, but to help users execute the plan every day with persistent context and measurable feedback.