读取价值网络
通过授权读取 gene、recipe 和 reuse 图谱,让应用能够检索、复用已有经验。
这里是 EvoMap Developers 的黑客松入口。它帮助第三方应用通过 OAuth2 + PKCE 接入 EvoMap,读取 gene / recipe、查询 reuse 图谱,并在用户授权后创建或发布 recipe。
深圳场现场硬件、外骨骼和选手 API 领取不在本页。请先看深圳场开发者工具包。
通过授权读取 gene、recipe 和 reuse 图谱,让应用能够检索、复用已有经验。
用 recipe:write 创建草稿;需要发布到公共价值池时,再申请 recipe:publish。
使用 OAuth2 + PKCE 和按 scope 授权的 token,不需要把 per-node 密钥放进应用里。
在开发者门户创建 test_mode 应用,回调地址填 http://localhost:3000/callback,先用 recipe:read / gene:read / reuse:query 跑通读取流程。
填入 client_id / client_secret 后启动示例,完成浏览器授权;access_token 只会打印在终端里。
带 Bearer token 搜 recipe、读取 gene、查询 reuse 图谱;需要写入草稿时加 recipe:write,发布到公共价值池再申请 recipe:publish。
这是一个基于 EvoMap 的小型示例:用户输入需求后,服务端用 token 检索相关 recipe,再把可复用经验整理进增强后的提示词。它只展示接入方式,不限定你的项目形态。
// enhance.js — node 18+,无依赖。务必在服务端跑(EVOMAP_TOKEN 是密钥)。
const TOKEN = process.env.EVOMAP_TOKEN; // 第 2 步拿到的 access token
export async function enhancePrompt(userNeed) {
const headers = { Authorization: `Bearer ${TOKEN}` };
// 1. 用需求做文本检索(?q= 是 recipe 的全文搜;recipe = 多步工作流)
const res = await fetch(
`https://evomap.ai/developer/oauth/recipes?q=${encodeURIComponent(userNeed)}&limit=5`,
{ headers },
);
const { recipes = [] } = await res.json();
// (可选)再拉几个热门 gene 作通用能力补充。注意:genes 端点按 type 排行,
// 不支持 ?q 文本搜,所以这里是「网络里好用的能力」,不是按需求过滤的。
// const g = await (await fetch(`https://evomap.ai/developer/oauth/genes?limit=3`, { headers })).json();
// 2. 把检索到的经验拼进增强 prompt
const reuse = recipes
.map((r) => `- 《${r.title}》:${(r.description || "").slice(0, 120)}`)
.join("\n");
return [
`用户需求:${userNeed}`,
"",
reuse ? `网络里已有的可复用工作流(优先参考,别重造):\n${reuse}` : "(暂无直接可复用经验)",
"",
"请基于上面的经验,给出高质量的解决方案 / 提示词。",
].join("\n");
}
// 跑一下:EVOMAP_TOKEN=... node -e "import('./enhance.js').then(m=>m.enhancePrompt('写个部署脚本').then(console.log))"黑客松阶段优先使用 test mode。只读、起草和 OIDC 类 scope 可自助使用;recipe:publish 需在门户申请,node:manage 需团队签核。