{
  "schemaVersion": "1.0",
  "item": {
    "slug": "iammeter-openclaw",
    "name": "IAMMETER",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/IAMMETER/iammeter-openclaw",
    "canonicalUrl": "https://clawhub.ai/IAMMETER/iammeter-openclaw",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/iammeter-openclaw",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=iammeter-openclaw",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "package.json",
      "references/api.md",
      "scripts/cli.js",
      "scripts/iammeter_client.js"
    ],
    "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/iammeter-openclaw"
    },
    "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/iammeter-openclaw",
    "agentPageUrl": "https://openagent3.xyz/skills/iammeter-openclaw/agent",
    "manifestUrl": "https://openagent3.xyz/skills/iammeter-openclaw/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/iammeter-openclaw/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": "iammeter Skill (Node.js)",
        "body": "A Node.js client and CLI for the iammeter API, based on the official swagger spec.\n\nFeatures\n\nToken is loaded automatically: first from the IAMMETER_TOKEN environment variable,\nthen from ~/.openclaw/openclaw.json (skills.entries.iammeter.apiKey)\nList user sites (sitelist)\nGet latest data for all meters (metersdata)\nGet latest upload data for a single meter (meterdata / meterdata2)\nQuery site energy history (energyhistory) and export CSV\nPower analysis (poweranalysis), offline analysis (offlineanalysis)\n\nConfiguration\n\nOption A (OpenClaw / Clawhub): set the token in the Skills UI. It is stored in\n~/.openclaw/openclaw.json under skills.entries.iammeter.apiKey and injected\nas the IAMMETER_TOKEN environment variable at runtime.\nOption B (local testing): export IAMMETER_TOKEN=<your_token> before running.\n\nFiles\n\nreferences/api.md — endpoint reference summarized from swagger\nscripts/iammeter_client.js — Node.js client wrapping common endpoints\nscripts/cli.js — CLI: sitelist|meters|meter|history|poweranalysis|offlineanalysis\npackage.json — dependencies (axios, yargs)\n\nUsage (local testing)\n\nInstall dependencies:\ncd ~/.openclaw/workspace/skills/iammeter\nnpm install\n\n\nRun:\nnode scripts/cli.js sitelist\nnode scripts/cli.js meters\nnode scripts/cli.js meter <device_sn>\nnode scripts/cli.js history <placeId> 2026-02-01 2026-02-25 --out out.csv\n\nNotes\n\nSome endpoints have strict rate limits (see references/api.md for details).\nDo not commit real tokens to public repositories."
      },
      {
        "title": "Credits",
        "body": "API endpoints and fields from https://www.iammeter.com/swaggerui/swagger.json"
      },
      {
        "title": "About IAMMETER",
        "body": "IAMMETER is an energy monitoring solution provider offering Wi-Fi-based single-phase and three-phase smart meters with multiple open interfaces, including Modbus/TCP, MQTT, HTTP/HTTPS API, TCP, and Local Push protocols.\nThese open communication options make IAMMETER devices easy to integrate with OpenHAB and other open-source platforms.\n\nLearn more about supported protocols and APIs:\nDevice communication protocols: https://www.iammeter.com/newsshow/blog-fw-features\n\nIAMMETER Cloud API: https://www.iammeter.com/docs/system-api"
      }
    ],
    "body": "iammeter Skill (Node.js)\n\nA Node.js client and CLI for the iammeter API, based on the official swagger spec.\n\nFeatures\n\nToken is loaded automatically: first from the IAMMETER_TOKEN environment variable, then from ~/.openclaw/openclaw.json (skills.entries.iammeter.apiKey)\nList user sites (sitelist)\nGet latest data for all meters (metersdata)\nGet latest upload data for a single meter (meterdata / meterdata2)\nQuery site energy history (energyhistory) and export CSV\nPower analysis (poweranalysis), offline analysis (offlineanalysis)\n\nConfiguration\n\nOption A (OpenClaw / Clawhub): set the token in the Skills UI. It is stored in ~/.openclaw/openclaw.json under skills.entries.iammeter.apiKey and injected as the IAMMETER_TOKEN environment variable at runtime.\nOption B (local testing): export IAMMETER_TOKEN=<your_token> before running.\n\nFiles\n\nreferences/api.md — endpoint reference summarized from swagger\nscripts/iammeter_client.js — Node.js client wrapping common endpoints\nscripts/cli.js — CLI: sitelist|meters|meter|history|poweranalysis|offlineanalysis\npackage.json — dependencies (axios, yargs)\n\nUsage (local testing)\n\nInstall dependencies: cd ~/.openclaw/workspace/skills/iammeter npm install\n\nRun: node scripts/cli.js sitelist node scripts/cli.js meters node scripts/cli.js meter <device_sn> node scripts/cli.js history <placeId> 2026-02-01 2026-02-25 --out out.csv\n\nNotes\n\nSome endpoints have strict rate limits (see references/api.md for details).\nDo not commit real tokens to public repositories.\nCredits\nAPI endpoints and fields from https://www.iammeter.com/swaggerui/swagger.json\nAbout IAMMETER\n\nIAMMETER is an energy monitoring solution provider offering Wi-Fi-based single-phase and three-phase smart meters with multiple open interfaces, including Modbus/TCP, MQTT, HTTP/HTTPS API, TCP, and Local Push protocols. These open communication options make IAMMETER devices easy to integrate with OpenHAB and other open-source platforms.\n\nLearn more about supported protocols and APIs: Device communication protocols: https://www.iammeter.com/newsshow/blog-fw-features\n\nIAMMETER Cloud API: https://www.iammeter.com/docs/system-api"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/IAMMETER/iammeter-openclaw",
    "publisherUrl": "https://clawhub.ai/IAMMETER/iammeter-openclaw",
    "owner": "IAMMETER",
    "version": "0.2.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/iammeter-openclaw",
    "downloadUrl": "https://openagent3.xyz/downloads/iammeter-openclaw",
    "agentUrl": "https://openagent3.xyz/skills/iammeter-openclaw/agent",
    "manifestUrl": "https://openagent3.xyz/skills/iammeter-openclaw/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/iammeter-openclaw/agent.md"
  }
}