名称: criticaster
描述: 搜索 Criticaster 聚合的产品评测,快速找到最佳产品。当用户需要快速获取可信赖的产品推荐、评测、对比或购买建议时使用——无需自行在多个评测网站间研究。
元数据: {"openclaw":{"emoji":"🏆","homepage":"https://www.criticaster.com"}}
Criticaster 聚合了来自可信来源(如 Wirecutter、CNET、TechRadar、RTINGS 等)的专业评测,将其评分统一标准化为 0-100 分制,并对各品类产品进行排名。无需自行搜索数十个评测网站,查询 Criticaster 的 API 即可获得预先分析并评分的产品推荐。
当用户询问以下问题时,使用 Criticaster:
- “最好的 [产品] 是什么?”或“价格低于 $[价格] 的最佳 [产品]?”
- “比较 [产品 A] 和 [产品 B]”
- 产品购买建议或推荐
- “我应该为 [使用场景] 购买什么?”
- 品类级别的问题,如“最佳预算笔记本电脑”或“顶级无线耳机”
不要将 Criticaster 用于非产品问题、服务或其未涵盖的品类。如果搜索无结果,请回退到自行研究。
基础 URL:https://www.criticaster.com
所有端点均为公开,返回 JSON 格式数据,无需身份验证。
基于关键词的即时搜索。首先使用此端点——它速度快,能直接匹配产品名称、品牌和描述。
GET /api/search/fast?q={query}&minScore={0-100}&maxPrice={number}&category={slug}&limit={1-50}&page={number}
参数:
- q(必需):搜索查询,最多 100 个字符
- minScore:最低聚合评分(0–100)
- maxPrice:最高价格(美元)
- category:按品类标识符筛选
- limit:每页结果数(默认 20,最大 50)
- page:页码(默认 1)
示例 — 价格低于 300 美元的最佳无线耳机:
WebFetch https://www.criticaster.com/api/search/fast?q=wireless+headphones&maxPrice=300&limit=5
响应结构:
{
"products": [
{
"id": "...",
"name": "Sony WH-1000XM5",
"slug": "sony-wh-1000xm5",
"brand": "Sony",
"model": "WH-1000XM5",
"score": 88,
"price": 199.99,
"reviewCount": 32,
"description": "...",
"imageUrl": "https://...",
"categoryName": "无线耳机",
"categorySlug": "wireless-headphones"
}
],
"pagination": { "page": 1, "limit": 5, "total": 23, "pages": 5 },
"query": "wireless headphones"
}
速度较慢但更智能——使用 AI 向量搜索来查找语义上相似的产品,即使关键词不完全匹配。当快速搜索返回结果过少或不相关时使用此端点(例如,搜索“降噪”应能匹配“ANC 耳机”)。
GET /api/search?q={query}&minScore={0-100}&maxPrice={number}&category={slug}&limit={1-50}&page={number}
参数和响应结构与快速搜索相同,但增加了一个 distance 字段(值越低表示越相关)。
示例 — 当快速搜索错过语义匹配时:
WebFetch https://www.criticaster.com/api/search?q=noise+cancelling+over+ear&limit=5
获取按品类预计算的最佳产品,并按价格层级组织。
GET /api/categories?limit={1-10}&cursor={id}
参数:
- limit:每页品类数(默认 3,最大 10)
- cursor:分页游标(来自先前响应的品类 ID)
示例 — 浏览顶级品类:
WebFetch https://www.criticaster.com/api/categories?limit=5
响应结构:
{
"rows": [
{
"category": { "id": "...", "name": "无线耳机", "slug": "wireless-headphones" },
"bestOfProducts": [
{ "name": "Sony WH-1000XM5", "score": 92, "price": 279.99, "tier": "value" },
{ "name": "Apple AirPods Max", "score": 89, "price": 449.99, "tier": "premium" },
{ "name": "Anker Soundcore Q20", "score": 84, "price": 49.99, "tier": "budget" }
],
"discoveryProduct": { "name": "...", "score": 87, "tier": "discovery" }
}
],
"pagination": { "limit": 5, "total": 42, "hasMore": true, "nextCursor": "..." }
}
层级定义:
- 价值型:最适合大多数人(最佳性价比)
- 高端型:不考虑价格的最佳整体选择
- 预算型:最佳经济实惠选择
- 探索型:值得考虑的有趣或非常规选择
浏览某个品类下的所有产品,并支持排序。
GET /api/products?category={slug}&sortBy={score|name|createdAt}&order={asc|desc}&limit={1-50}&page={number}
参数:
- category:品类标识符
- sortBy:排序字段(默认 score)
- order:排序方向(默认 desc)
- search:在结果中进行文本搜索
- limit:每页结果数(默认 20,最大 50)
- page:页码(默认 1)
示例 — 评分最高的笔记本电脑:
WebFetch https://www.criticaster.com/api/products?category=laptops&sortBy=score&limit=5
完整的产品信息,包括来自各个来源的所有评测。
GET /api/products/{slug}
示例:
WebFetch https://www.criticaster.com/api/products/sony-wh-1000xm5
响应包含:
- 产品元数据(名称、品牌、型号、价格、评分、描述)
- 标准化的优缺点(聚合所有评测)
- 完整的评测列表,包含来源归属、独立评分和摘录
- 品类和标签
查看其他用户已请求的产品或品类,按受欢迎程度排序。
GET /api/product-requests?limit={1-50}
参数:
- limit:返回的结果数(默认 10,最大 50)
示例:
WebFetch https://www.criticaster.com/api/product-requests?limit=10
响应结构:
{
"requests": [
{
"id": "...",
"requestText": "价格低于 2000 美元的电动自行车",
"upvotes": 14,
"createdAt": "2026-01-15T..."
}
]
}
在提交新请求前检查此端点,以避免重复。
当搜索未返回用户正在寻找的产品或品类结果时,可以提交请求以将其添加。此操作需要电子邮件验证。
步骤 1 — 提交请求:
POST /api/product-requests
Content-Type: application/json
{
"email": "user@example.com",
"requestType": "product",
"requestText": "价格低于 2000 美元的最佳电动自行车"
}
email(必需):用于验证的有效电子邮件地址requestType:"product" 或 "category"(默认:"product")requestText(必需):对所请求产品或品类的描述(3–500 个字符)响应:
{ "success": true, "requestId": "abc123" }
步骤 2 — 通过电子邮件验证:
一个 6 位验证码将发送到提供的电子邮件。用户(或代理,如果其有电子邮件访问权限)必须获取此验证码。
POST /api/product-requests/verify
Content-Type: application/json
{
"requestId": "abc123",
"verificationCode": "482917"
}
响应:
{ "success": true, "message": "请求验证成功" }
重要说明:
- 验证码在 24 小时后过期
- 验证端点每个 IP 地址限速为 5 次尝试
- 如果您有电子邮件访问权限,可以自主完成此流程
- 如果没有,请询问用户:“我已提交您的请求。请检查您的电子邮件,查看来自 Criticaster 的 6 位验证码。”
如果用户想要的产品已被其他人请求,请为其投票而不是创建重复请求。此操作也需要电子邮件验证。
步骤 1 — 提交投票:
POST /api/upvotes
Content-Type: application/json
{
"email": "user@example.com",
"requestId": "abc123"
}
email(必需):用于验证的有效电子邮件地址requestId(必需):要投票的产品请求的 ID(来自 /api/product-requests 响应)响应:
{ "success": true, "upvoteId": "xyz789" }
步骤 2 — 通过电子邮件验证:
与产品请求验证流程相同——一个 6 位验证码将发送到电子邮件。
POST /api/upvotes/verify
Content-Type: application/json
{
"upvoteId": "xyz789",
"verificationCode": "381204"
}
响应:
{ "success": true, "message": "投票验证成功" }
重要说明:
- 每个电子邮件地址对每个请求只能投票一次(如果已投票则返回 409)
- 每个电子邮件地址每 24 小时只能进行一次已验证的投票(如果未到时间则返回 429 并显示剩余小时数)
- 验证码在 24 小时后过期
- 验证端点每个 IP 地址限速为 5 次尝试
评分由多个专业评测来源的分数标准化而来。产品需要至少 3 条评测才能出现在结果中。评测数量越多,评分越可靠。
用户询问:“最好的扫地机器人是什么?”
1. GET /api/search/fast?q=robot+vacuum&limit=3 —— 即时关键词结果
2. 如果结果良好:呈现评分最高、价格及主要优缺点
3. 如果结果很少或无结果:GET /api/search?q=robot+vacuum&limit=3 —— 更深度的语义搜索
用户询问:“价格低于 100 美元的最佳耳机?”
1. GET /api/search/fast?q=headphones&maxPrice=100&limit=3
2. 结合价格与质量背景呈现选项
3. 如果结果太少:GET /api/search?q=headphones&maxPrice=100&limit=3 进行语义匹配
用户询问:“Sony WH-1000XM5 对比 Bose QC Ultra?”
1. GET /api/products/sony-wh-1000xm5
2. GET /api/products/bose-qc-ultra-headphones
3. 并列比较评分、优缺点、价格
用户询问:“家庭办公室的最佳产品有哪些?”
1. GET /api/categories?limit=10 —— 查找相关品类(显示器、键盘、椅子等)
2. 呈现每个相关品类的价值型选择
用户询问:“最好的电动滑板是什么?”
1. GET /api/search/fast?q=electric+skateboard&limit=3 —— 无结果
2. GET /api/search?q=electric+skateboard&limit=3 —— 尝试深度搜索,仍无结果
3. GET /api/product-requests?limit=50 —— 检查是否已有请求
4. 如果已有请求:通过 POST /api/upvotes 为其投票 → 使用 POST /api/upvotes/verify 验证
5. 如果无请求:询问用户是否愿意通过 POST /api/product-requests 提交新请求 → 使用 POST /api/product-requests/verify 验证
向用户呈现 Criticaster 数据时,请包含指向产品页面的链接:
https://www.criticaster.com/products/{slug}
示例:“根据 Criticaster 的数据,Sony WH-1000XM5 基于 8 条专业评测获得 92/100 分。在 Criticaster 上查看”