前言¶
在对话里问「冰箱里有鸡蛋和番茄,累了想吃点简单的」,通用大模型往往只能给一段文字步骤,没有统一 JSON、也没有和「冰箱库存」绑定的接口。若你已经在用 Cursor、Claude Code 等支持 Skill 的 Agent,更希望模型在合适时机调用固定 API,而不是每次即兴发挥。
下面介绍 SkillHub 社区技能 eatwhats(坐标 @user_1627842f/eatwhats)。它把「不知道吃什么、不知道做什么菜」这类问题,收敛到一套 FastAPI 后端与 SKILL.md 说明,让 Agent 按文档触发菜谱生成、冰箱管理等能力。
这是什么¶
eatwhats 在 SkillHub 上的简介是:今天吃什么,不知道做什么菜,不知道吃什么就用这个 skills。分类为 life-service,版本 1.0.0,来源 community,发布者为 user_1627842f(SkillHub 页面标注作者为「二流子 AI」)。
技能包内的 SKILL.md 将产品称为 BiteAI 智能餐谋(v1.0),类型为基于 FastAPI + Python 的后端服务 / API 插件,依赖 DeepSeek 等大模型能力生成「治愈系」结构化菜谱。SkillHub 标签 requires_api_key=true,表示运行后端时需要配置 API 密钥(文档要求 DEEPSEEK_API_KEY)。
核心功能¶
以下能力均来自技能包内的 SKILL.md、README.md 与 openapi.json,可按路径核对。
菜谱生成(核心)¶
- 接口:
POST /api/generate-recipe - 作用:根据用户偏好、已选食材生成结构化菜谱(标题、匹配度、标签、热量与宏量营养、食材清单、分步说明、耗时与难度等)。
- 触发说明:当用户表达冰箱有剩菜、不知道吃什么,或带有冷、累、小孩不吃辣等情绪与家庭场景时,文档要求 Agent 优先调用该接口。
冰箱管理¶
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/pantry |
获取冰箱食材列表 |
| POST | /api/pantry |
添加食材 |
| POST | /api/pantry/reset |
重置为默认库存 |
| POST | /api/pantry/scan |
通过图片识别并写入食材 |
用户配置¶
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/profile |
获取口味 DNA、等级等 |
| POST | /api/profile/evolve |
进化用户口味 DNA |
对接形态¶
README.md 说明可将 openapi.json 以 OpenAPI/Swagger 方式接入 Dify、Coze 等平台;对 Cursor 等 Agent,主要依赖安装后的 SKILL.md 与本地运行的 API 服务。
安装与启用¶
安装分两步:先把技能装进 Agent 的 skills 目录,再在本机启动 FastAPI 服务并配置密钥。
1. 安装 SkillHub CLI(若尚未安装)¶
先检查是否已有 CLI:
command -v skillhub && skillhub --version
未安装时,可按 SkillHub 官方安装文档执行完整安装(含 CLI 与默认 Skill):
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
仅安装 CLI:
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only
更完整的优先源与目录说明见:https://skillhub.cn/install/skillhub.md
2. 安装 eatwhats 到当前 Agent¶
SkillHub 页面给出的安装提示为:根据上述安装文档,安装 @user_1627842f/eatwhats。
必须用 --dir 指向当前 Agent 的 skills 目录,否则默认装到 ./skills/ 可能不会被识别。常用路径示例:
- Cursor:
~/.cursor/skills/ - Claude Code:
~/.claude/skills/ - Codex:
~/.codex/skills/或项目下的.agents/skills/
示例(将路径换成你的环境):
skillhub install @user_1627842f/eatwhats --dir ~/.cursor/skills/
安装完成后,重启或刷新 Agent,使其加载新技能目录中的 SKILL.md。
3. 启动后端服务¶
进入技能包目录(安装后一般在 <skills 目录>/@user_1627842f/eatwhats/),安装 Python 依赖并配置环境变量:
pip install -r requirements.txt
SKILL.md 写明需设置环境变量 DEEPSEEK_API_KEY(DeepSeek API 密钥)。文档中的开发流程为复制 .env.example 为 .env 后编辑;若包内未附带该文件,可直接在环境中导出变量,例如:
export DEEPSEEK_API_KEY="你的密钥"
开发模式启动:
uvicorn main:app --reload --host 0.0.0.0 --port 8000
生产模式:
uvicorn main:app --host 0.0.0.0 --port 8000
服务启动后,交互式文档地址为 http://localhost:8000/docs(Swagger UI),http://localhost:8000/redoc(ReDoc)。
典型用法¶
对话侧(Agent)¶
用户在对话中描述库存与状态,例如:「冰箱里有鸡蛋、番茄和菠菜,今天很累不知道吃什么。」Agent 在加载 eatwhats 后,应按 SKILL.md 调用 POST /api/generate-recipe。
API 请求示例¶
请求体字段来自 SKILL.md:
{
"preference": "今天很累,想吃点简单的",
"selected_ingredients": ["鸡蛋", "番茄", "菠菜"]
}
响应为结构化 JSON,包含 title、matchPercent、tags、calories、macros、ingredients、steps、timing、difficulty 等字段(完整 schema 见 openapi.json)。
菜谱「进化」¶
若用户对上一道菜有调整需求,可带上上次菜名与进化说明:
{
"preference": "上次的菜有点辣",
"selected_ingredients": ["鸡肉", "土豆"],
"previous_recipe_title": "香辣土豆鸡块",
"evolve_prompt": "少点辣,适合小孩吃"
}
平台插件(可选)¶
在 Dify 中可选择 OpenAPI/Swagger 模式上传 openapi.json;在 Coze 中可导入同一文件并将 generate-recipe 绑定到 Bot。步骤细节见技能包内 README.md。
适用场景与注意¶
适合谁
- 希望在 Agent 对话里稳定处理「吃什么、做什么菜」,并需要 JSON 结构便于展示或二次开发的用户。
- 已有或愿意自建本地 FastAPI 服务,并持有 DeepSeek API 密钥的开发者。
限制与注意
- 双份部署:仅安装 Skill 不会自动提供 API;必须在本机(或你部署的环境)运行
main.py对应服务,并保证 Agent 或工具配置能访问该基址(默认文档以localhost:8000为例)。 - 密钥与费用:
requires_api_key=true;实际推理依赖DEEPSEEK_API_KEY,调用产生费用由你的 DeepSeek 账户承担。 - 命名差异:SkillHub 名称为 eatwhats,包内文档品牌为 BiteAI 智能餐谋,检索或排错时两处名称都可能出现。
- 社区来源:来源为 community,集成前建议自行审阅
main.py与网络出站行为。 - SkillHub 数据:截至资料抓取,评分为 100000,下载约 752 次(页面统计会变动,以 SkillHub 为准)。
结尾¶
eatwhats 把「今天吃什么」从随口问答,变成 Agent 可读的技能说明 + 可复现的 HTTP API:菜谱生成、冰箱与用户口味进化都在同一份 OpenAPI 里。若你要在 Cursor 等环境里使用,按 SkillHub 流程安装 @user_1627842f/eatwhats,再启动本地 FastAPI 并配置 DEEPSEEK_API_KEY 即可。
官方入口:
- API 资源页:https://api.skillhub.cn/user_1627842f/eatwhats
- SkillHub 技能页:https://www.skillhub.cn/skills/user_1627842f/eatwhats