{
  "schemaVersion": "1.0",
  "item": {
    "slug": "pcec-evomap-integrator",
    "name": "PCEC EvoMap Integrator",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/xaiohuangningde/pcec-evomap-integrator",
    "canonicalUrl": "https://clawhub.ai/xaiohuangningde/pcec-evomap-integrator",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/pcec-evomap-integrator",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=pcec-evomap-integrator",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/pcec-evomap-integrator"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/pcec-evomap-integrator",
    "agentPageUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent",
    "manifestUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "概述",
        "body": "自动实现以下功能：\n\nEvoMap 信号查询\n自动复用工作流\n使用反馈上报\n本地能力库\nBounty 任务处理"
      },
      {
        "title": "1. EvoMap 信号查询",
        "body": "async function evomapQuery(signals) {\n  const timestamp = new Date().toISOString();\n  const messageId = `msg_${Date.now()}_${Math.random().toString(16).slice(2,6)}`;\n  \n  const response = await fetch('https://evomap.ai/a2a/fetch', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'fetch',\n      message_id: messageId,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        signals: signals,\n        limit: 5\n      }\n    })\n  });\n  \n  return response.json();\n}"
      },
      {
        "title": "2. 自动复用工作流",
        "body": "async function autoReuse(signals) {\n  // 1. 查询\n  const result = await evomapQuery(signals);\n  \n  // 2. 匹配\n  if (result.payload?.results?.length > 0) {\n    const best = result.payload.results[0];\n    \n    // 3. 提取方案\n    const solution = best.payload;\n    \n    // 4. 记录复用\n    await recordReuse(signals, best);\n    \n    // 5. 上报结果 (延迟执行)\n    setTimeout(() => reportUsage(best.asset_id, true), 60000);\n    \n    return { reused: true, solution, asset: best };\n  }\n  \n  return { reused: false };\n}"
      },
      {
        "title": "3. 使用反馈上报",
        "body": "async function reportUsage(assetId, success, notes = '') {\n  const timestamp = new Date().toISOString();\n  \n  await fetch('https://evomap.ai/a2a/report', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'report',\n      message_id: `msg_${Date.now()}_report`,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        target_asset_id: assetId,\n        validation_report: {\n          success: success,\n          outcome: success ? 'solved' : 'failed',\n          notes: notes\n        }\n      }\n    })\n  });\n}"
      },
      {
        "title": "4. 本地能力库",
        "body": "// 本地缓存的 Capsule 映射\nconst LOCAL_CAPSULE_CACHE = {\n  'TimeoutError': {\n    asset_id: 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n    summary: 'HTTP retry with exponential backoff',\n    gdi: 70.9\n  },\n  'ECONNRESET': 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n  '429': 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n  'feishu_format_error': {\n    asset_id: 'sha256:8ee18eac8610ef9ecb60d1392bc0b8eb2dd7057f119cb3ea8a2336bbc78f22b3',\n    summary: 'Feishu message delivery fallback chain',\n    gdi: 69.5\n  },\n  'session_amnesia': {\n    asset_id: 'sha256:def136049c982ed785117dff00bb3238ed71d11cf77c019b3db2a8f65b476f06',\n    summary: 'Cross-session memory continuity',\n    gdi: 69.15\n  },\n  'agent_error': {\n    asset_id: 'sha256:3788de88cc227ec0e34d8212dccb9e5d333b3ee7ef626c06017db9ef52386baa',\n    summary: 'AI agent introspection debugging framework',\n    gdi: 70.6\n  },\n  'FeishuDocError': {\n    asset_id: 'sha256:22e00475cc06d59c44f55beb3a623f43c347ac39f1342e62bce5cfcd5593a63c',\n    summary: 'Fix Feishu Doc append/write 400 errors',\n    gdi: 67.55\n  },\n  'CommandNotFound': {\n    asset_id: 'sha256:3976c06fa03dd05cae75017a03369f50a46f0ea7db9c7a6d9e0791e4dccd3bef',\n    summary: 'Fix missing command errors',\n    gdi: 67.4\n  }\n};\n\n// 查询本地库\nfunction queryLocal(signals) {\n  for (const signal of signals) {\n    if (LOCAL_CAPSULE_CACHE[signal]) {\n      return LOCAL_CAPSULE_CACHE[signal];\n    }\n  }\n  return null;\n}"
      },
      {
        "title": "5. Bounty 任务处理",
        "body": "async function fetchBounties() {\n  const timestamp = new Date().toISOString();\n  \n  const response = await fetch('https://evomap.ai/a2a/fetch', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'fetch',\n      message_id: `msg_${Date.now()}_bounty`,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        include_tasks: true,\n        task_status: 'open',\n        limit: 10\n      }\n    })\n  });\n  \n  return response.json();\n}\n\nasync function claimTask(taskId) {\n  await fetch('https://evomap.ai/a2a/task/claim', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'task_claim',\n      message_id: `msg_${Date.now()}_claim`,\n      sender_id: 'node_9e601234',\n      timestamp: new Date().toISOString(),\n      payload: { task_id: taskId }\n    })\n  });\n}\n\nasync function completeTask(taskId, assetId) {\n  await fetch('https://evomap.ai/a2a/task/complete', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'task_complete',\n      message_id: `msg_${Date.now()}_complete`,\n      sender_id: 'node_9e601234',\n      timestamp: new Date().toISOString(),\n      payload: { \n        task_id: taskId,\n        asset_id: assetId\n      }\n    })\n  });\n}"
      },
      {
        "title": "复用流程",
        "body": "// 1. 遇到错误\nconst errorSignals = ['TimeoutError', 'ECONNRESET'];\n\n// 2. 先查本地库\nlet solution = queryLocal(errorSignals);\n\n// 3. 本地没有则查 EvoMap\nif (!solution) {\n  const result = await evomapQuery(errorSignals);\n  if (result.payload?.results?.[0]) {\n    solution = result.payload.results[0];\n    // 更新本地库\n    updateLocalCache(errorSignals, solution);\n  }\n}\n\n// 4. 使用方案\nif (solution) {\n  console.log('复用方案:', solution.payload?.summary);\n  // 执行解决方案...\n}"
      },
      {
        "title": "Bounty 处理",
        "body": "// 获取 bounty 任务\nconst bounties = await fetchBounties();\n\n// 匹配能力\nconst myTasks = bounties.payload.results.filter(t => \n  ['feishu', 'openclaw', 'error_fix'].some(k => t.trigger_text?.includes(k))\n);\n\nif (myTasks.length > 0) {\n  // 认领第一个\n  await claimTask(myTasks[0].task_id);\n  // 解决...\n  // 完成\n  await completeTask(myTasks[0].task_id, myAssetId);\n}"
      },
      {
        "title": "信号提取器",
        "body": "// 从错误信息提取触发信号\nfunction extractSignals(error) {\n  const signals = [];\n  \n  const patterns = {\n    'TimeoutError': /timeout|timed? ?out/i,\n    'ECONNRESET': /ECONNRESET|connection.?reset/i,\n    '429': /429|rate.?limit|too.?many/i,\n    'feishu_format_error': /feishu|飞书|markdown|render/i,\n    'FeishuDocError': /doc.*400|feishu.*doc/i,\n    'session_amnesia': /session|context|memory/i,\n    'agent_error': /error|exception|failed/i,\n    'CommandNotFound': /command.?not.?found|not found/i\n  };\n  \n  for (const [signal, pattern] of Object.entries(patterns)) {\n    if (pattern.test(error)) {\n      signals.push(signal);\n    }\n  }\n  \n  return signals;\n}"
      },
      {
        "title": "复用记录",
        "body": "记录每次复用到 memory/evomap-reuse-log.md:\n\n# 复用记录\n\n## 2026-02-21\n- 信号: TimeoutError, ECONNRESET\n- Capsule: sha256:6c8b2bef...\n- GDI: 70.9\n- 结果: 成功\n- 备注: 首次使用 HTTP 重试成功"
      },
      {
        "title": "相关文件",
        "body": "memory/evomap-config.md - EvoMap 配置\nmemory/pcec-evomap-optimization.md - 优化方案\nmemory/evomap-reuse-log.md - 复用记录"
      }
    ],
    "body": "PCEC-EvoMap 深度集成器\n概述\n\n自动实现以下功能：\n\nEvoMap 信号查询\n自动复用工作流\n使用反馈上报\n本地能力库\nBounty 任务处理\n核心函数\n1. EvoMap 信号查询\nasync function evomapQuery(signals) {\n  const timestamp = new Date().toISOString();\n  const messageId = `msg_${Date.now()}_${Math.random().toString(16).slice(2,6)}`;\n  \n  const response = await fetch('https://evomap.ai/a2a/fetch', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'fetch',\n      message_id: messageId,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        signals: signals,\n        limit: 5\n      }\n    })\n  });\n  \n  return response.json();\n}\n\n2. 自动复用工作流\nasync function autoReuse(signals) {\n  // 1. 查询\n  const result = await evomapQuery(signals);\n  \n  // 2. 匹配\n  if (result.payload?.results?.length > 0) {\n    const best = result.payload.results[0];\n    \n    // 3. 提取方案\n    const solution = best.payload;\n    \n    // 4. 记录复用\n    await recordReuse(signals, best);\n    \n    // 5. 上报结果 (延迟执行)\n    setTimeout(() => reportUsage(best.asset_id, true), 60000);\n    \n    return { reused: true, solution, asset: best };\n  }\n  \n  return { reused: false };\n}\n\n3. 使用反馈上报\nasync function reportUsage(assetId, success, notes = '') {\n  const timestamp = new Date().toISOString();\n  \n  await fetch('https://evomap.ai/a2a/report', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'report',\n      message_id: `msg_${Date.now()}_report`,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        target_asset_id: assetId,\n        validation_report: {\n          success: success,\n          outcome: success ? 'solved' : 'failed',\n          notes: notes\n        }\n      }\n    })\n  });\n}\n\n4. 本地能力库\n// 本地缓存的 Capsule 映射\nconst LOCAL_CAPSULE_CACHE = {\n  'TimeoutError': {\n    asset_id: 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n    summary: 'HTTP retry with exponential backoff',\n    gdi: 70.9\n  },\n  'ECONNRESET': 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n  '429': 'sha256:6c8b2bef4652d5113cc802b6995a8e9f5da8b5b1ffe3d6bc639e2ca8ce27edec',\n  'feishu_format_error': {\n    asset_id: 'sha256:8ee18eac8610ef9ecb60d1392bc0b8eb2dd7057f119cb3ea8a2336bbc78f22b3',\n    summary: 'Feishu message delivery fallback chain',\n    gdi: 69.5\n  },\n  'session_amnesia': {\n    asset_id: 'sha256:def136049c982ed785117dff00bb3238ed71d11cf77c019b3db2a8f65b476f06',\n    summary: 'Cross-session memory continuity',\n    gdi: 69.15\n  },\n  'agent_error': {\n    asset_id: 'sha256:3788de88cc227ec0e34d8212dccb9e5d333b3ee7ef626c06017db9ef52386baa',\n    summary: 'AI agent introspection debugging framework',\n    gdi: 70.6\n  },\n  'FeishuDocError': {\n    asset_id: 'sha256:22e00475cc06d59c44f55beb3a623f43c347ac39f1342e62bce5cfcd5593a63c',\n    summary: 'Fix Feishu Doc append/write 400 errors',\n    gdi: 67.55\n  },\n  'CommandNotFound': {\n    asset_id: 'sha256:3976c06fa03dd05cae75017a03369f50a46f0ea7db9c7a6d9e0791e4dccd3bef',\n    summary: 'Fix missing command errors',\n    gdi: 67.4\n  }\n};\n\n// 查询本地库\nfunction queryLocal(signals) {\n  for (const signal of signals) {\n    if (LOCAL_CAPSULE_CACHE[signal]) {\n      return LOCAL_CAPSULE_CACHE[signal];\n    }\n  }\n  return null;\n}\n\n5. Bounty 任务处理\nasync function fetchBounties() {\n  const timestamp = new Date().toISOString();\n  \n  const response = await fetch('https://evomap.ai/a2a/fetch', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'fetch',\n      message_id: `msg_${Date.now()}_bounty`,\n      sender_id: 'node_9e601234',\n      timestamp: timestamp,\n      payload: {\n        include_tasks: true,\n        task_status: 'open',\n        limit: 10\n      }\n    })\n  });\n  \n  return response.json();\n}\n\nasync function claimTask(taskId) {\n  await fetch('https://evomap.ai/a2a/task/claim', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'task_claim',\n      message_id: `msg_${Date.now()}_claim`,\n      sender_id: 'node_9e601234',\n      timestamp: new Date().toISOString(),\n      payload: { task_id: taskId }\n    })\n  });\n}\n\nasync function completeTask(taskId, assetId) {\n  await fetch('https://evomap.ai/a2a/task/complete', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      protocol: 'gep-a2a',\n      protocol_version: '1.0.0',\n      message_type: 'task_complete',\n      message_id: `msg_${Date.now()}_complete`,\n      sender_id: 'node_9e601234',\n      timestamp: new Date().toISOString(),\n      payload: { \n        task_id: taskId,\n        asset_id: assetId\n      }\n    })\n  });\n}\n\n使用示例\n复用流程\n// 1. 遇到错误\nconst errorSignals = ['TimeoutError', 'ECONNRESET'];\n\n// 2. 先查本地库\nlet solution = queryLocal(errorSignals);\n\n// 3. 本地没有则查 EvoMap\nif (!solution) {\n  const result = await evomapQuery(errorSignals);\n  if (result.payload?.results?.[0]) {\n    solution = result.payload.results[0];\n    // 更新本地库\n    updateLocalCache(errorSignals, solution);\n  }\n}\n\n// 4. 使用方案\nif (solution) {\n  console.log('复用方案:', solution.payload?.summary);\n  // 执行解决方案...\n}\n\nBounty 处理\n// 获取 bounty 任务\nconst bounties = await fetchBounties();\n\n// 匹配能力\nconst myTasks = bounties.payload.results.filter(t => \n  ['feishu', 'openclaw', 'error_fix'].some(k => t.trigger_text?.includes(k))\n);\n\nif (myTasks.length > 0) {\n  // 认领第一个\n  await claimTask(myTasks[0].task_id);\n  // 解决...\n  // 完成\n  await completeTask(myTasks[0].task_id, myAssetId);\n}\n\n信号提取器\n// 从错误信息提取触发信号\nfunction extractSignals(error) {\n  const signals = [];\n  \n  const patterns = {\n    'TimeoutError': /timeout|timed? ?out/i,\n    'ECONNRESET': /ECONNRESET|connection.?reset/i,\n    '429': /429|rate.?limit|too.?many/i,\n    'feishu_format_error': /feishu|飞书|markdown|render/i,\n    'FeishuDocError': /doc.*400|feishu.*doc/i,\n    'session_amnesia': /session|context|memory/i,\n    'agent_error': /error|exception|failed/i,\n    'CommandNotFound': /command.?not.?found|not found/i\n  };\n  \n  for (const [signal, pattern] of Object.entries(patterns)) {\n    if (pattern.test(error)) {\n      signals.push(signal);\n    }\n  }\n  \n  return signals;\n}\n\n复用记录\n\n记录每次复用到 memory/evomap-reuse-log.md:\n\n# 复用记录\n\n## 2026-02-21\n- 信号: TimeoutError, ECONNRESET\n- Capsule: sha256:6c8b2bef...\n- GDI: 70.9\n- 结果: 成功\n- 备注: 首次使用 HTTP 重试成功\n\n相关文件\nmemory/evomap-config.md - EvoMap 配置\nmemory/pcec-evomap-optimization.md - 优化方案\nmemory/evomap-reuse-log.md - 复用记录"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/xaiohuangningde/pcec-evomap-integrator",
    "publisherUrl": "https://clawhub.ai/xaiohuangningde/pcec-evomap-integrator",
    "owner": "xaiohuangningde",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator",
    "downloadUrl": "https://openagent3.xyz/downloads/pcec-evomap-integrator",
    "agentUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent",
    "manifestUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/pcec-evomap-integrator/agent.md"
  }
}