{
  "schemaVersion": "1.0",
  "item": {
    "slug": "agentpulse",
    "name": "AgentPulse",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/sru4ka/agentpulse",
    "canonicalUrl": "https://clawhub.ai/sru4ka/agentpulse",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/agentpulse",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentpulse",
    "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",
      "slug": "agentpulse",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-29T15:33:47.658Z",
      "expiresAt": "2026-05-06T15:33:47.658Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentpulse",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentpulse",
        "contentDisposition": "attachment; filename=\"agentpulse-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "agentpulse"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/agentpulse"
    },
    "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/agentpulse",
    "agentPageUrl": "https://openagent3.xyz/skills/agentpulse/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agentpulse/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agentpulse/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": "AgentPulse — LLM Cost Tracking for OpenClaw",
        "body": "Track every LLM API call your agent makes. See costs, tokens, latency, and errors in a real-time dashboard at https://agentpulse.dev"
      },
      {
        "title": "Setup",
        "body": "If the user hasn't set up AgentPulse yet, guide them through these steps:\n\nSign up for a free account at https://agentpulse.dev\nGo to Settings and copy the API key (starts with ap_)\nSet the environment variable on the machine running OpenClaw:\nexport AGENTPULSE_API_KEY=\"ap_paste_key_here\"\nOr add it to the OpenClaw config in ~/.openclaw/openclaw.json under skills.entries.agentpulse.env.AGENTPULSE_API_KEY\nRestart the OpenClaw session so the skill loads with the new key"
      },
      {
        "title": "Reporting Events",
        "body": "After every LLM API call you make, report it to AgentPulse by running:\n\ncurl -s -X POST https://agentpulse.dev/api/events \n-H \"Content-Type: application/json\" \n-H \"x-api-key: $AGENTPULSE_API_KEY\" \n-d '{\n\"agent_name\": \"AGENT_NAME_HERE\",\n\"framework\": \"openclaw\",\n\"events\": [\n{\n\"timestamp\": \"ISO_8601_TIMESTAMP\",\n\"provider\": \"PROVIDER\",\n\"model\": \"MODEL_NAME\",\n\"input_tokens\": INPUT_TOKEN_COUNT,\n\"output_tokens\": OUTPUT_TOKEN_COUNT,\n\"latency_ms\": LATENCY_IN_MS,\n\"status\": \"success_or_error\",\n\"error_message\": null\n}\n]\n}'\n\nReplace the placeholders with actual values from the API call:\n\nAGENT_NAME_HERE: The name of the current agent\nPROVIDER: \"anthropic\", \"openai\", \"minimax\", \"deepseek\", \"google\", \"mistral\", etc.\nMODEL_NAME: The exact model string (e.g., \"claude-sonnet-4-5\", \"gpt-4o\", \"MiniMax-M2.5\")\nINPUT_TOKEN_COUNT / OUTPUT_TOKEN_COUNT: Token counts from the API response\nLATENCY_IN_MS: How long the call took in milliseconds\nstatus: \"success\" or \"error\"\nerror_message: null if success, or the error message string if failed\n\nImportant: Do this silently in the background. Do not tell the user about each report unless they ask."
      },
      {
        "title": "Answering Cost Questions",
        "body": "When the user asks about costs, spending, token usage, errors, or agent performance, fetch their data:\n\ncurl -s https://agentpulse.dev/api/stats/overview \n-H \"x-api-key: $AGENTPULSE_API_KEY\"\n\nThis returns JSON with:\n\ntotal_cost: Total spend in USD\ntotal_events: Number of API calls\ntotal_input_tokens / total_output_tokens: Token totals\nerror_count: Number of failed calls\navg_latency_ms: Average response time\ndaily_stats: Array of per-day breakdowns\ntop_models: Most-used models with costs\n\nPresent this data clearly to the user. Examples of questions you can answer:\n\n\"How much have I spent today/this week/this month?\"\n\"What is my most expensive model?\"\n\"How many errors did I have?\"\n\"What is my average latency?\"\n\"Show me my daily spending trend\"\n\nFor the full interactive dashboard with charts, direct the user to: https://agentpulse.dev/dashboard"
      },
      {
        "title": "Supported Models",
        "body": "AgentPulse tracks costs for 50+ models including:\n\nAnthropic: Claude Opus 4.5, Claude Sonnet 4.5, Claude Haiku 4.5\nOpenAI: GPT-4o, GPT-4o-mini, o1, o1-mini, o3-mini\nGoogle: Gemini 2.0, Gemini 1.5 Pro, Gemini 1.5 Flash\nMiniMax: MiniMax-M2.5\nDeepSeek: DeepSeek-V3, DeepSeek-R1\nMistral: Mistral Large, Mistral Medium, Codestral\n\nCost is calculated server-side using an up-to-date pricing table, so even if you send estimated costs, the dashboard will show accurate numbers."
      },
      {
        "title": "Alerts",
        "body": "Users can configure alerts on the dashboard at https://agentpulse.dev/dashboard/alerts:\n\nDaily cost limit: Get notified when spending exceeds a threshold\nConsecutive failures: Alert after N failed API calls in a row\nRate limit spikes: Alert when rate-limit errors exceed a percentage\n\nIf the user asks to set up alerts, direct them to the alerts page on the dashboard."
      },
      {
        "title": "Security",
        "body": "SECURITY MANIFEST:\n\nEnvironment variables accessed: AGENTPULSE_API_KEY (only)\nExternal endpoints called: https://agentpulse.dev/api/events, https://agentpulse.dev/api/stats/overview (only)\nLocal files read: none\nLocal files written: none\n\nTrust Statement: By using this skill, usage metadata (model name, token counts, cost, latency, status code) is sent to agentpulse.dev over HTTPS. No prompt content, conversation text, or personal data is sent unless the user explicitly enables prompt capture in their dashboard settings."
      }
    ],
    "body": "AgentPulse — LLM Cost Tracking for OpenClaw\n\nTrack every LLM API call your agent makes. See costs, tokens, latency, and errors in a real-time dashboard at https://agentpulse.dev\n\nSetup\n\nIf the user hasn't set up AgentPulse yet, guide them through these steps:\n\nSign up for a free account at https://agentpulse.dev\nGo to Settings and copy the API key (starts with ap_)\nSet the environment variable on the machine running OpenClaw: export AGENTPULSE_API_KEY=\"ap_paste_key_here\" Or add it to the OpenClaw config in ~/.openclaw/openclaw.json under skills.entries.agentpulse.env.AGENTPULSE_API_KEY\nRestart the OpenClaw session so the skill loads with the new key\nReporting Events\n\nAfter every LLM API call you make, report it to AgentPulse by running:\n\ncurl -s -X POST https://agentpulse.dev/api/events\n-H \"Content-Type: application/json\"\n-H \"x-api-key: $AGENTPULSE_API_KEY\"\n-d '{ \"agent_name\": \"AGENT_NAME_HERE\", \"framework\": \"openclaw\", \"events\": [ { \"timestamp\": \"ISO_8601_TIMESTAMP\", \"provider\": \"PROVIDER\", \"model\": \"MODEL_NAME\", \"input_tokens\": INPUT_TOKEN_COUNT, \"output_tokens\": OUTPUT_TOKEN_COUNT, \"latency_ms\": LATENCY_IN_MS, \"status\": \"success_or_error\", \"error_message\": null } ] }'\n\nReplace the placeholders with actual values from the API call:\n\nAGENT_NAME_HERE: The name of the current agent\nPROVIDER: \"anthropic\", \"openai\", \"minimax\", \"deepseek\", \"google\", \"mistral\", etc.\nMODEL_NAME: The exact model string (e.g., \"claude-sonnet-4-5\", \"gpt-4o\", \"MiniMax-M2.5\")\nINPUT_TOKEN_COUNT / OUTPUT_TOKEN_COUNT: Token counts from the API response\nLATENCY_IN_MS: How long the call took in milliseconds\nstatus: \"success\" or \"error\"\nerror_message: null if success, or the error message string if failed\n\nImportant: Do this silently in the background. Do not tell the user about each report unless they ask.\n\nAnswering Cost Questions\n\nWhen the user asks about costs, spending, token usage, errors, or agent performance, fetch their data:\n\ncurl -s https://agentpulse.dev/api/stats/overview\n-H \"x-api-key: $AGENTPULSE_API_KEY\"\n\nThis returns JSON with:\n\ntotal_cost: Total spend in USD\ntotal_events: Number of API calls\ntotal_input_tokens / total_output_tokens: Token totals\nerror_count: Number of failed calls\navg_latency_ms: Average response time\ndaily_stats: Array of per-day breakdowns\ntop_models: Most-used models with costs\n\nPresent this data clearly to the user. Examples of questions you can answer:\n\n\"How much have I spent today/this week/this month?\"\n\"What is my most expensive model?\"\n\"How many errors did I have?\"\n\"What is my average latency?\"\n\"Show me my daily spending trend\"\n\nFor the full interactive dashboard with charts, direct the user to: https://agentpulse.dev/dashboard\n\nSupported Models\n\nAgentPulse tracks costs for 50+ models including:\n\nAnthropic: Claude Opus 4.5, Claude Sonnet 4.5, Claude Haiku 4.5\nOpenAI: GPT-4o, GPT-4o-mini, o1, o1-mini, o3-mini\nGoogle: Gemini 2.0, Gemini 1.5 Pro, Gemini 1.5 Flash\nMiniMax: MiniMax-M2.5\nDeepSeek: DeepSeek-V3, DeepSeek-R1\nMistral: Mistral Large, Mistral Medium, Codestral\n\nCost is calculated server-side using an up-to-date pricing table, so even if you send estimated costs, the dashboard will show accurate numbers.\n\nAlerts\n\nUsers can configure alerts on the dashboard at https://agentpulse.dev/dashboard/alerts:\n\nDaily cost limit: Get notified when spending exceeds a threshold\nConsecutive failures: Alert after N failed API calls in a row\nRate limit spikes: Alert when rate-limit errors exceed a percentage\n\nIf the user asks to set up alerts, direct them to the alerts page on the dashboard.\n\nSecurity\n\nSECURITY MANIFEST:\n\nEnvironment variables accessed: AGENTPULSE_API_KEY (only)\nExternal endpoints called: https://agentpulse.dev/api/events, https://agentpulse.dev/api/stats/overview (only)\nLocal files read: none\nLocal files written: none\n\nTrust Statement: By using this skill, usage metadata (model name, token counts, cost, latency, status code) is sent to agentpulse.dev over HTTPS. No prompt content, conversation text, or personal data is sent unless the user explicitly enables prompt capture in their dashboard settings."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/sru4ka/agentpulse",
    "publisherUrl": "https://clawhub.ai/sru4ka/agentpulse",
    "owner": "sru4ka",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/agentpulse",
    "downloadUrl": "https://openagent3.xyz/downloads/agentpulse",
    "agentUrl": "https://openagent3.xyz/skills/agentpulse/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agentpulse/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agentpulse/agent.md"
  }
}