{"id":"db32fc8e-5ec5-46ae-a6a5-2653aec97587","entityType":"agent","slug":"clawhub-ajingmiao-aidenote-hermes","name":"AideNote for Hermes","canonicalUrl":"https://www.xpersona.co/agent/clawhub-ajingmiao-aidenote-hermes","canonicalPath":"/agent/clawhub-ajingmiao-aidenote-hermes","generatedAt":"2026-10-10T17:36:56.672Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":null},"description":"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todo...","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.4K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17dmz7eb30afbcqhzpf1cfg9h83jfjt:aidenote-hermes","sourceUrl":"https://clawhub.ai/ajingmiao/aidenote-hermes","homepage":"https://clawhub.ai/ajingmiao/skills/aidenote-hermes","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/ajingmiao/aidenote-hermes","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/ajingmiao/skills/aidenote-hermes","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":63,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"AideNote for Hermes technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":null},"stars":null,"forks":null,"downloads":1389,"packageName":null,"latestVersion":"1.2.9","tractionLabel":"1.4K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T14:22:44.589Z","lastCrawledAt":"2026-10-10T14:22:44.589Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T14:22:44.589Z","lastVerifiedAt":null,"highlights":[{"version":"1.2.9","createdAt":"2026-07-22T07:12:07.610Z","changelog":"新增分享录音与知识库录音查询，完善配对安装、凭证续期和本机连接修复。","fileCount":15,"zipByteSize":41129},{"version":"1.2.4","createdAt":"2026-07-13T08:48:55.401Z","changelog":"同步 GitHub 完整技能源码；固定使用 AideNote 3.2.0 macOS/Windows 安装脚本及校验值；完善一键配对和设备身份重置。","fileCount":8,"zipByteSize":18929},{"version":"1.2.3","createdAt":"2026-07-12T06:35:01.248Z","changelog":"Use immutable versioned bridge artifacts so existing and new installations remain verifiable.","fileCount":8,"zipByteSize":18788},{"version":"1.2.2","createdAt":"2026-07-12T05:58:17.578Z","changelog":"Add account device enrollment support and reset device identity only during explicit repair or reauthorization.","fileCount":8,"zipByteSize":18892},{"version":"1.2.1","createdAt":"2026-07-12T03:31:17.606Z","changelog":"Keep one-time App pairing SAFE under Hermes security audit by using explicit environment allowlists.","fileCount":8,"zipByteSize":19041},{"version":"1.2.0","createdAt":"2026-07-12T03:26:55.782Z","changelog":"Add one-time App pairing and automatic verified bridge installation without manual API Key copy.","fileCount":8,"zipByteSize":18768},{"version":"1.1.0","createdAt":"2026-07-12T00:57:06.051Z","changelog":"新增经 SHA-256 验证的一键本机连接套件安装，自动配置 Hermes API、tunnel、MCP、bridge 与登录自启动，并完善安装状态校验。","fileCount":8,"zipByteSize":16510},{"version":"1.0.0","createdAt":"2026-07-12T00:10:34.452Z","changelog":"首个 Hermes 原生版本：支持录音、详情、待办、知识库与本机 bridge 状态查询；增加本地安全凭证配置和真实 API 调用脚本。","fileCount":8,"zipByteSize":12652}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17dmz7eb30afbcqhzpf1cfg9h83jfjt:aidenote-hermes","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17dmz7eb30afbcqhzpf1cfg9h83jfjt:aidenote-hermes` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/ajingmiao/aidenote-hermes before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T17:36:56.669Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ajingmiao-aidenote-hermes/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":null},"readme":"Skill: AideNote for Hermes\n\nOwner: ajingmiao\n\nSummary: Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todo...\n\nTags: latest:1.2.9\n\nVersion history:\n\nv1.2.9 | 2026-07-22T07:12:07.610Z | user\n\n新增分享录音与知识库录音查询，完善配对安装、凭证续期和本机连接修复。\n\nv1.2.4 | 2026-07-13T08:48:55.401Z | user\n\n同步 GitHub 完整技能源码；固定使用 AideNote 3.2.0 macOS/Windows 安装脚本及校验值；完善一键配对和设备身份重置。\n\nv1.2.3 | 2026-07-12T06:35:01.248Z | user\n\nUse immutable versioned bridge artifacts so existing and new installations remain verifiable.\n\nv1.2.2 | 2026-07-12T05:58:17.578Z | user\n\nAdd account device enrollment support and reset device identity only during explicit repair or reauthorization.\n\nv1.2.1 | 2026-07-12T03:31:17.606Z | user\n\nKeep one-time App pairing SAFE under Hermes security audit by using explicit environment allowlists.\n\nv1.2.0 | 2026-07-12T03:26:55.782Z | user\n\nAdd one-time App pairing and automatic verified bridge installation without manual API Key copy.\n\nv1.1.0 | 2026-07-12T00:57:06.051Z | user\n\n新增经 SHA-256 验证的一键本机连接套件安装，自动配置 Hermes API、tunnel、MCP、bridge 与登录自启动，并完善安装状态校验。\n\nv1.0.0 | 2026-07-12T00:10:34.452Z | user\n\n首个 Hermes 原生版本：支持录音、详情、待办、知识库与本机 bridge 状态查询；增加本地安全凭证配置和真实 API 调用脚本。\n\nArchive index:\n\nArchive v1.2.9: 15 files, 41129 bytes\n\nFiles: agents/openai.yaml (312b), README.md (2489b), references/api-contract.md (2517b), scripts/aidenote.py (22458b), scripts/bridge.py (21319b), scripts/configure.py (4287b), skill-card.md (2485b), SKILL.md (9841b), skills/aidenote-hermes/agents/openai.yaml (312b), skills/aidenote-hermes/references/api-contract.md (2517b), skills/aidenote-hermes/scripts/aidenote.py (22458b), skills/aidenote-hermes/scripts/bridge.py (21319b), skills/aidenote-hermes/scripts/configure.py (4287b), skills/aidenote-hermes/SKILL.md (9841b), _meta.json (134b)\n\nFile v1.2.9:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.9\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| List recordings shared with me | `shared-recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| List recordings in a knowledge base | `knowledge-recordings` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Recordings shared with me\n\nFor requests such as \"分享给我的录音\" or \"别人共享了哪些音频\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py shared-recordings --page 1 --page-size 10\n```\n\nDo not use the personal `recordings` command for shared-with-me requests.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\nFor recordings stored anywhere inside a knowledge base, including nested folders, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-recordings --knowledge-base-id ID\n```\n\nUse this command instead of manually filtering `knowledge-files` output.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `upToDate` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the suite is installed but `ports.hermes.reachable` is `false`, repair the supervised Hermes Gateway before reporting a relay failure:\n\n```bash\nhermes gateway status\nhermes gateway start\n```\n\nIf the service definition is missing or stale, and the user already authorized repair, run:\n\n```bash\nhermes gateway install --force --start-now --start-on-login\n```\n\nThen rerun `bridge.py status` and require port `8642` to be reachable. Do not expose `API_SERVER_KEY`. If Hermes reports `No inference provider configured`, the bridge is healthy but the model provider is not; direct the user to complete `hermes model` locally.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- `upToDate` is `false`: run the authorized install again to upgrade the local connection suite before diagnosing relay or token failures.\n- Hermes port `8642` unavailable: run `hermes gateway status`, start or reinstall the supervised Gateway after authorization, then rerun `bridge.py status`.\n- `No inference provider configured`: tell the user to run `hermes model` locally; do not treat this as a tunnel or account failure.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.9:skills/aidenote-hermes/SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.9\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| List recordings shared with me | `shared-recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| List recordings in a knowledge base | `knowledge-recordings` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Recordings shared with me\n\nFor requests such as \"分享给我的录音\" or \"别人共享了哪些音频\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py shared-recordings --page 1 --page-size 10\n```\n\nDo not use the personal `recordings` command for shared-with-me requests.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\nFor recordings stored anywhere inside a knowledge base, including nested folders, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-recordings --knowledge-base-id ID\n```\n\nUse this command instead of manually filtering `knowledge-files` output.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `upToDate` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the suite is installed but `ports.hermes.reachable` is `false`, repair the supervised Hermes Gateway before reporting a relay failure:\n\n```bash\nhermes gateway status\nhermes gateway start\n```\n\nIf the service definition is missing or stale, and the user already authorized repair, run:\n\n```bash\nhermes gateway install --force --start-now --start-on-login\n```\n\nThen rerun `bridge.py status` and require port `8642` to be reachable. Do not expose `API_SERVER_KEY`. If Hermes reports `No inference provider configured`, the bridge is healthy but the model provider is not; direct the user to complete `hermes model` locally.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- `upToDate` is `false`: run the authorized install again to upgrade the local connection suite before diagnosing relay or token failures.\n- Hermes port `8642` unavailable: run `hermes gateway status`, start or reinstall the supervised Gateway after authorization, then rerun `bridge.py status`.\n- `No inference provider configured`: tell the user to run `hermes model` locally; do not treat this as a tunnel or account failure.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.9:README.md\n\n# AideNote for Hermes\n\nAideNote 录音笔记与本机智能体连接技能。安装后，Hermes 可以查询用户真实的录音、转写、AI 摘要、会议待办和知识库，并可通过已验证的安装程序连接 AideNote 手机 App。\n\n## 安装\n\n推荐通过 ClawHub 安装，Hermes 会下载完整技能目录并执行安全扫描：\n\n```bash\nhermes skills install clawhub/aidenote-hermes\n```\n\n也可以直接告诉 Hermes：\n\n```text\n请安装 ClawHub 上的 aidenote-hermes 技能，并帮我连接 AideNote 手机 App。\n```\n\n本仓库同步保存最新开源源码，`skills/aidenote-hermes/` 是完整的 Hermes Skill 目录。\n\n## 首次连接\n\n安装技能后，对 Hermes 说：\n\n```text\n帮我安装并连接 AideNote。\n```\n\nHermes 会调用技能内的安全安装流程。如果本机尚未授权，会显示一个 8 位配对码：\n\n1. 打开 AideNote App。\n2. 添加或编辑 Hermes 助手。\n3. 输入电脑上显示的配对码。\n4. 点击“确认连接”。\n\n确认后，电脑会自动安装并启动 AideNote tunnel、MCP server 和 Hermes bridge。用户不需要在对话中发送 API Key。\n\n## 使用示例\n\n- “查看最近的录音笔记”\n- “查看分享给我的录音”\n- “总结昨天的产品会议”\n- “今天有哪些待办？”\n- “搜索提到 RainCentral 的会议”\n- “查看我的知识库”\n- “查看这个知识库里保存的录音”\n- “检查 AideNote 手机连接状态”\n\n技能要求 Hermes 在回答录音、会议、摘要和待办问题前先调用 AideNote 脚本，禁止根据聊天记忆猜测数据或在调用失败时声称没有记录。\n\n## 支持平台\n\n- macOS Intel / Apple Silicon\n- Windows x64 / ARM64\n\nHermes Skill 版本：`1.2.9`。本机连接套件版本：`3.2.6`。\n\n## 安全设计\n\n- 安装脚本和二进制文件使用固定版本地址。\n- 下载内容在执行前进行 SHA-256 校验。\n- 只向安装进程传递必要环境变量。\n- 配对凭据绑定当前 AideNote 账号和设备。\n- 不在聊天内容中展示 API Key、访问令牌或配置文件。\n\n## 项目文件\n\n- `SKILL.md`：Hermes 行为和工具选择规则。\n- `scripts/aidenote.py`：录音、摘要、待办和知识库查询。\n- `scripts/bridge.py`：配对、安装和连接状态检查。\n- `scripts/configure.py`：无法使用 App 配对时的本机恢复工具。\n- `references/api-contract.md`：接口与返回值维护说明。\n\n官网：[https://www.aidenote.cn](https://www.aidenote.cn)\n\nFile v1.2.9:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.9\",\n  \"publishedAt\": 1784704327610\n}\n\nFile v1.2.9:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `shared-recordings` | `/api/audiofileMstr/audiofileseleUserAllList` with `screeningType=2` | Recordings shared with the current account |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n| `knowledge-recordings` | recursive `/api/userfolderMstr/FolderList` | Audio recordings in a knowledge base and its nested folders |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.9:skills/aidenote-hermes/references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `shared-recordings` | `/api/audiofileMstr/audiofileseleUserAllList` with `screeningType=2` | Recordings shared with the current account |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n| `knowledge-recordings` | recursive `/api/userfolderMstr/FolderList` | Audio recordings in a knowledge base and its nested folders |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.9:skill-card.md\n\n## Description:\n\nInstalls and operates the AideNote local connection suite for Hermes so an agent can retrieve AideNote recordings, transcripts, summaries, action items, knowledge bases, account status, and mobile bridge health.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[ajingmiao](https://clawhub.ai/user/ajingmiao)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nHermes users use this skill to connect AideNote and ask an agent to retrieve and summarize their real recordings, transcripts, meeting action items, account status, knowledge bases, and mobile bridge health from AideNote.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill accesses private recordings, transcripts, tasks, and knowledge bases.\n\nMitigation: Install only when the user trusts AideNote and is comfortable granting this access.\n\nRisk: Credential setup can expose a long-lived API key through the local Hermes credential file.\n\nMitigation: Prefer the app pairing flow, treat local credentials as sensitive, and rotate or remove them when no longer needed.\n\nRisk: The local bridge installs persistent services that keep AideNote connected to the machine.\n\nMitigation: Use the install flow only with explicit user consent and remove or disable the services when persistent access is no longer appropriate.\n\nRisk: Using HTTP or an unfamiliar API base can weaken the connection security posture.\n\nMitigation: Use HTTPS and the expected AideNote API base unless the publisher provides verified replacement guidance.\n\n## Reference(s):\n\n- [AideNote API contract](references/api-contract.md)\n- [AideNote homepage](https://www.aidenote.cn)\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown responses with inline shell commands and summarized JSON command results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Commands return JSON; the agent should summarize results and avoid exposing credentials or configuration files.]\n\n## Skill Version(s):\n\n1.2.9 (source: evidence release and Hermes metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.2.9:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nFile v1.2.9:skills/aidenote-hermes/agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.2.4: 8 files, 18929 bytes\n\nFiles: agents/openai.yaml (312b), references/api-contract.md (2243b), scripts/aidenote.py (17903b), scripts/bridge.py (20833b), scripts/configure.py (4287b), skill-card.md (2588b), SKILL.md (8081b), _meta.json (134b)\n\nFile v1.2.4:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.4\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.4:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.4\",\n  \"publishedAt\": 1783932535401\n}\n\nFile v1.2.4:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.4:skill-card.md\n\n## Description: <br>\nInstall and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nHermes users use this skill to connect AideNote to a local Hermes environment, retrieve account-backed recordings, transcripts, summaries, action items, and knowledge-base data, and inspect or install the AideNote mobile bridge when explicitly authorized. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Installing the local connection suite creates a persistent bridge/tunnel to Hermes and enables startup services. <br>\nMitigation: Install only after explicit user authorization, review bridge status after installation, and avoid installing on shared or lightly trusted machines. <br>\nRisk: The skill stores long-lived AideNote and Hermes credential material locally. <br>\nMitigation: Use the pairing flow or local terminal configuration instead of chat, keep credential files owner-only, and never print tokens or configuration files. <br>\nRisk: An unverified installer or substituted download could compromise the local bridge installation. <br>\nMitigation: Use only the bundled installer flow, preserve HTTPS downloads and pinned SHA-256 checks, and stop on checksum or verification failures. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote WorkBuddy Skill Guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with shell commands; bundled commands emit JSON.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Summarizes command output for users and avoids exposing environment variables, authorization headers, access tokens, or local credential files.] <br>\n\n## Skill Version(s): <br>\n1.2.4 (source: server release metadata and Hermes frontmatter) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.2.4:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.2.3: 8 files, 18788 bytes\n\nFiles: agents/openai.yaml (312b), references/api-contract.md (2243b), scripts/aidenote.py (17903b), scripts/bridge.py (20833b), scripts/configure.py (4287b), skill-card.md (2358b), SKILL.md (8081b), _meta.json (134b)\n\nFile v1.2.3:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.3\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.3:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.3\",\n  \"publishedAt\": 1783838101248\n}\n\nFile v1.2.3:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.3:skill-card.md\n\n## Description: <br>\nInstall and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and Hermes users use this skill to connect AideNote to a local Hermes environment, install or inspect the local bridge after explicit consent, and retrieve real recordings, transcripts, summaries, action items, knowledge bases, account status, and mobile bridge health. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Approved setup can install local startup services and store an AideNote credential on disk. <br>\nMitigation: Install only after explicit user consent, avoid shared machines, and keep the credential file private with owner-only permissions. <br>\nRisk: The skill can retrieve private recordings, transcripts, summaries, action items, knowledge bases, and account information. <br>\nMitigation: Use explicit AideNote wording for private data requests and answer only from successful command output. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote mobile WorkBuddy skill guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with inline shell commands and summarized JSON results] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Uses command output from the bundled scripts; raw JSON is summarized unless explicitly requested.] <br>\n\n## Skill Version(s): <br>\n1.2.3 (source: server release metadata and Hermes metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.2.3:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.2.2: 8 files, 18892 bytes\n\nFiles: agents/openai.yaml (312b), references/api-contract.md (2243b), scripts/aidenote.py (17903b), scripts/bridge.py (20788b), scripts/configure.py (4287b), skill-card.md (2629b), SKILL.md (8081b), _meta.json (134b)\n\nFile v1.2.2:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.2\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.2:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.2\",\n  \"publishedAt\": 1783835897578\n}\n\nFile v1.2.2:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.2:skill-card.md\n\n## Description: <br>\nInstall and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nHermes users use this skill to pair AideNote with a local Hermes environment, retrieve real AideNote recordings, transcripts, summaries, action items, knowledge bases, account status, and inspect or install the mobile bridge when explicitly authorized. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can read sensitive AideNote account data, including recordings, transcripts, summaries, todos, knowledge bases, and account status. <br>\nMitigation: Install only for users who intend to connect AideNote with Hermes, and answer data questions only from successful command output. <br>\nRisk: The local bridge flow can store credentials on disk and install persistent local services. <br>\nMitigation: Run bridge installation only after explicit user authorization, keep credential files owner-only, and avoid printing secrets or configuration files. <br>\nRisk: Bridge installation executes an external installer. <br>\nMitigation: Use the bundled install path that verifies the pinned SHA-256 digest, and stop if checksum or installer verification fails. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote mobile WorkBuddy skill guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance] <br>\n**Output Format:** [Markdown summaries with inline shell commands and JSON command results.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Commands may access local AideNote credentials and remote AideNote APIs; bridge installation requires explicit user confirmation.] <br>\n\n## Skill Version(s): <br>\n1.2.2 (source: server release evidence and artifact metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.2.2:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.2.1: 8 files, 19041 bytes\n\nFiles: agents/openai.yaml (312b), references/api-contract.md (2243b), scripts/aidenote.py (17903b), scripts/bridge.py (20746b), scripts/configure.py (4287b), skill-card.md (3017b), SKILL.md (8081b), _meta.json (134b)\n\nFile v1.2.1:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.1\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.1:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.1\",\n  \"publishedAt\": 1783827077606\n}\n\nFile v1.2.1:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.1:skill-card.md\n\n## Description: <br>\nInstall and operate the AideNote local connection suite for Hermes, then query AideNote recording notes, transcripts, summaries, extracted todos and action items, knowledge bases, account status, and mobile bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nHermes users use this skill to pair AideNote with a local assistant environment and retrieve account-backed recording transcripts, summaries, action items, knowledge-base files, and connection health. It can also guide an explicitly authorized installation or repair of the local AideNote connection suite. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can broadly query private AideNote account data, including recordings, transcripts, summaries, todos, knowledge bases, and account information. <br>\nMitigation: Use it only for AideNote-specific requests, require successful command output before making claims about account data, and avoid exposing raw payloads or credentials unless the user explicitly requests safe JSON output. <br>\nRisk: The installation flow can create persistent local startup services and store an AideNote API key on disk. <br>\nMitigation: Run installation only after explicit user consent, review the installer source or vendor trust first, keep credential files owner-only, and plan how to revoke the API key or disable services when no longer needed. <br>\nRisk: The security review marked the release suspicious because it combines private account access with a downloaded local installer. <br>\nMitigation: Install only when the user intentionally wants Hermes or OpenClaw connected to AideNote, preserve checksum verification, and stop if installer verification fails. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote mobile connection guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Human-facing summaries and guidance derived from JSON command output, with shell commands when setup or inspection is needed] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Commands may access private AideNote account data and local connection status; raw JSON is summarized unless explicitly requested.] <br>\n\n## Skill Version(s): <br>\n1.2.1 (source: server release metadata and Hermes metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.2.1:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.2.0: 8 files, 18768 bytes\n\nFiles: agents/openai.yaml (312b), references/api-contract.md (2243b), scripts/aidenote.py (17903b), scripts/bridge.py (20746b), scripts/configure.py (4287b), skill-card.md (2313b), SKILL.md (8081b), _meta.json (134b)\n\nFile v1.2.0:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.0\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; never ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf the install command returns `pairing_required`, present the pairing code and App steps. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `pairing_required`: show the 8-character code and direct the user to AideNote > Add Assistant > Hermes.\n- `pairing_network_error`: report that the pairing service could not be reached and keep the existing installation unchanged.\n- `pairing_not_found`: the code expired; rerun the authorized install command to create a new code.\n- `missing_credentials`: start the pairing flow through `bridge.py install --confirm`; use `configure.py` only as manual recovery.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.2.0:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.0\",\n  \"publishedAt\": 1783826815782\n}\n\nFile v1.2.0:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.2.0:skill-card.md\n\n## Description: <br>\nAideNote for Hermes pairs AideNote with a local Hermes environment and lets the agent retrieve recording notes, transcripts, summaries, todos, knowledge bases, account status, and bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nHermes users and agents use this skill to pair AideNote, install or check the local bridge with explicit consent, and answer questions from real AideNote recordings, transcripts, summaries, todos, and knowledge bases. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can install a persistent local bridge and store AideNote credentials and Hermes bridge tokens on the computer. <br>\nMitigation: Install only after explicit user consent, verify the pairing code in the AideNote app, and keep local credential files restricted to the current user. <br>\nRisk: The bridge flow downloads and runs local installer code for the connection suite. <br>\nMitigation: Use only the bundled bridge installation flow, keep pinned SHA-256 verification intact, and stop if installer verification fails. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote mobile WorkBuddy skill guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with shell commands and summarized JSON results] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Commands return JSON that should be summarized for users; installation requires explicit user consent and local credential handling.] <br>\n\n## Skill Version(s): <br>\n1.2.0 (source: release evidence and Hermes metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.2.0:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Pair AideNote with Hermes and query real recording data.\"\n  default_prompt: \"Use $aidenote-hermes to pair and install my AideNote mobile connection with a one-time App approval, then retrieve real recordings or action items when requested.\"\n\nArchive v1.1.0: 8 files, 16510 bytes\n\nFiles: agents/openai.yaml (283b), references/api-contract.md (2064b), scripts/aidenote.py (17903b), scripts/bridge.py (11945b), scripts/configure.py (4287b), skill-card.md (2667b), SKILL.md (7145b), _meta.json (134b)\n\nFile v1.1.0:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.1.0\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing, direct the user to run the bundled interactive configuration script locally.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time local configuration\n\nWhen a command returns `missing_credentials`, tell the user to run this directly in a local terminal:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/configure.py\n```\n\nThe script prompts for the API Key without echoing it and stores it in the active Hermes profile with owner-only permissions. Do not execute this prompt through a messaging session and do not ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Install/configure the local connection suite | `bridge.py install --confirm` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nThe local connection suite enables the AideNote mobile app to reach this computer's Hermes API through the AideNote relay. It installs the AideNote tunnel, the AideNote MCP server, the WorkBuddy bridge, login/startup services, and Hermes API settings. Existing Hermes and OpenClaw tokens are preserved.\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nWhen the user explicitly says \"安装 AideNote 连接\", \"配置手机连接\", \"修复 AideNote bridge\", or equivalent, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nThe command downloads the official installer over HTTPS, verifies its pinned SHA-256 digest, and passes only the required local credential and a restricted environment. The official installer verifies every downloaded binary, configures Hermes API port `8642`, synchronizes the Hermes API token into the tunnel config, and enables login/startup services. Do not substitute another download URL, bypass checksum verification, or construct a shell pipeline.\n\nAfter installation, inspect the returned `status`. Success requires all of the following:\n\n- `installed` is `true`.\n- `hermesTokenConfigured` is `true`.\n- `hermesStartupConfigured` is `true`.\n- `ports.hermes.reachable` is `true`.\n\nIf credentials are missing, ask the user to run `configure.py` locally, then retry the same install command. If installation is not explicitly authorized, show the status and ask whether the user wants the verified connection suite installed.\n\n## Error handling\n\n- `missing_credentials`: tell the user to run the bundled `configure.py` locally.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- `confirmation_required`: ask the user for explicit installation consent; do not add `--confirm` preemptively.\n- `checksum_mismatch`: stop and report that installer verification failed; never bypass the check.\n- `installer_failed` or `verification_failed`: report the safe error, run `bridge.py status`, and point the user to the official guide if manual recovery is needed.\n- Unsupported platform: automatic bridge installation currently supports macOS and Windows.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.1.0\",\n  \"publishedAt\": 1783817826051\n}\n\nFile v1.1.0:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe local `scripts/configure.py` stores the API Key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions. Authentication exchanges that key at `/api/UserapikeyMstr/GetToken/{apiKey}`. The resulting bearer token remains in process memory and is never printed.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output.\n\nFile v1.1.0:skill-card.md\n\n## Description: <br>\nInstalls and operates the AideNote local connection suite for Hermes, then retrieves real AideNote recordings, transcripts, summaries, action items, knowledge bases, account status, and mobile bridge health. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nHermes and OpenClaw users who rely on AideNote use this skill to configure a local AideNote connection and retrieve their own recordings, transcripts, summaries, action items, knowledge bases, account status, and bridge health. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Broad trigger language could cause an agent to query private AideNote data for generic productivity or meeting questions. <br>\nMitigation: Use the skill only when the user clearly intends to access AideNote data, and summarize retrieved data without exposing raw payloads unless explicitly requested. <br>\nRisk: The bridge installer creates persistent local services and startup entries. <br>\nMitigation: Run installation only after explicit user consent, verify the reported bridge status, and keep the Hermes credential directory protected. <br>\nRisk: The skill depends on local API credentials for access to recordings, transcripts, todos, and knowledge bases. <br>\nMitigation: Configure credentials locally, avoid sharing API keys in chat, and maintain owner-only permissions on credential files. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote mobile bridge guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n- [ClawHub skill page](https://clawhub.ai/ajingmiao/skills/aidenote-hermes) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown summaries with inline shell commands; bundled commands return JSON for agent processing.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Uses account-scoped AideNote data and requires local credential configuration before private recordings, transcripts, todos, or knowledge bases can be retrieved.] <br>\n\n## Skill Version(s): <br>\n1.1.0 (source: server release evidence and Hermes metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.1.0:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Install the Hermes bridge and query real AideNote data.\"\n  default_prompt: \"Use $aidenote-hermes to install or verify my AideNote mobile connection, then retrieve real recordings or action items when requested.\"\n\nArchive v1.0.0: 8 files, 12652 bytes\n\nFiles: agents/openai.yaml (253b), references/api-contract.md (1415b), scripts/aidenote.py (17903b), scripts/bridge.py (3104b), scripts/configure.py (4287b), skill-card.md (2190b), SKILL.md (5411b), _meta.json (134b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: aidenote-hermes\ndescription: \"Query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and local mobile bridge health from Hermes. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.0.0\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing, direct the user to run the bundled interactive configuration script locally.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time local configuration\n\nWhen a command returns `missing_credentials`, tell the user to run this directly in a local terminal:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/configure.py\n```\n\nThe script prompts for the API Key without echoing it and stores it in the active Hermes profile with owner-only permissions. Do not execute this prompt through a messaging session and do not ask the user to send the key in chat.\n\n## Choose the command\n\n| User intent | Command |\n|---|---|\n| Check connection or account | `health` or `user-info` |\n| List/search recent recordings | `recordings` |\n| Read transcript or AI summary | `recording-detail` |\n| Ask about todos, tasks, action items, or follow-ups | `todos` |\n| List knowledge bases | `knowledge-bases` |\n| List files in a knowledge base | `knowledge-files` |\n| Check mobile bridge state | `bridge.py status` |\n| Check whether the local connection suite is installed | `bridge.py status` |\n\n## Common workflows\n\n### Recent recordings\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10\n```\n\nAdd `--keyword \"text\"` when the user gives a search term. Present titles, dates, durations, and processing status. Preserve the returned recording ID for follow-up detail requests.\n\n### Transcript or summary\n\nIf the user did not provide a recording ID, list recent recordings first and select the matching record. Then run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\"\n```\n\nAnswer only from the returned detail. Distinguish transcript content from the AI summary and extracted action items.\n\n### Todos and action items\n\nFor requests such as \"今天有哪些待办\", \"最近有什么任务\", or \"会议里有哪些行动项\", run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50\n```\n\nCompleted items are excluded by default. Add `--include-done` only when the user asks for completed/history items. Group results by source recording when that improves readability.\n\n### Knowledge bases\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-bases\n```\n\nUse the returned knowledge-base ID for:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py knowledge-files --knowledge-base-id ID\n```\n\nAdd `--folder-id ID` or `--keyword \"text\"` only when needed.\n\n## Mobile bridge\n\nCheck status without changing the system:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py status\n```\n\nThe community Hub Skill intentionally does not create startup services or download and execute installers. When installation is missing, direct the user to the official AideNote local connection-suite installer from the AideNote API Access page, then run `status` again. A healthy Hermes mobile path requires the tunnel files to be installed and local Hermes API port `8642` to be reachable.\n\n## Error handling\n\n- `missing_credentials`: tell the user to run the bundled `configure.py` locally.\n- `insecure_credentials`: tell the user to restrict the credential file to owner-only access and rerun configuration.\n- `authentication_failed`: ask the user to regenerate or reconfigure the AideNote API Key locally.\n- `network_error`: report that AideNote could not be reached; do not claim the account has no data.\n- `api_error`: report the safe error message and operation; never expose credentials.\n- Missing bridge installation: direct the user to the official local connection-suite installer; do not improvise a remote download-and-execute command.\n\nFor endpoint and output details needed during maintenance, read [references/api-contract.md](references/api-contract.md).\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1783815034452\n}\n\nFile v1.0.0:references/api-contract.md\n\n# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n\nThe local `scripts/configure.py` stores the API Key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions. Authentication exchanges that key at `/api/UserapikeyMstr/GetToken/{apiKey}`. The resulting bearer token remains in process memory and is never printed.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\nFile v1.0.0:skill-card.md\n\n## Description: <br>\nQuery real AideNote recording notes, transcripts, summaries, extracted todos and action items, knowledge bases, account status, and local mobile bridge health from Hermes. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ajingmiao](https://clawhub.ai/user/ajingmiao) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill in Hermes to retrieve and summarize their real AideNote recordings, transcripts, summaries, todos, knowledge bases, account status, and local mobile bridge status. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Broad activation rules may query private recordings, transcripts, todos, or knowledge bases when a user asks a generic task or meeting question. <br>\nMitigation: Invoke the skill with explicit AideNote wording and review responses for unintended private account data before sharing. <br>\nRisk: The skill requires local AideNote credentials that can access real account data. <br>\nMitigation: Keep the API key local, use the bundled configuration flow, and verify the credentials file is restricted to the current user. <br>\n\n\n## Reference(s): <br>\n- [AideNote API contract](references/api-contract.md) <br>\n- [AideNote local connection suite guide](https://www.aidenote.cn/mobile/workbuddy-skill-guide.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown summaries with inline shell commands and JSON-derived account data] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Raw JSON is surfaced only when explicitly requested; failed commands must not be interpreted as empty account data.] <br>\n\n## Skill Version(s): <br>\n1.0.0 (source: server release evidence and Hermes metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.0:agents/openai.yaml\n\ninterface:\n  display_name: \"AideNote for Hermes\"\n  short_description: \"Query AideNote recordings, todos, and bridge status.\"\n  default_prompt: \"Use $aidenote-hermes to retrieve my latest AideNote recordings or action items and summarize the real data.\"","readmeExcerpt":"Skill: AideNote for Hermes Owner: ajingmiao Summary: Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todo... Tags: latest:1.2.9 Version history: v1.2.9 | 2026-07-22T07:12:07.610Z | user 新增分享录音与知识库录音查询，完善配对安装、凭证续期和本机连接修复。 v1.2.4 | 2026-07-13T08:48:55.401Z | user 同步 GitHub 完整技能源码；固定使用 AideNote 3.2.0 macOS/Windows 安装","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]"},{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm"},{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recordings --page 1 --page-size 10"},{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/aidenote.py recording-detail --file-id \"RECORDING_ID\""},{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/aidenote.py shared-recordings --page 1 --page-size 10"},{"language":"bash","snippet":"python3 ${HERMES_SKILL_DIR}/scripts/aidenote.py todos --recording-page-size 20 --page-size 50"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.9\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; n"},{"path":"skills/aidenote-hermes/SKILL.md","content":"---\nname: aidenote-hermes\ndescription: \"Install and operate the verified AideNote local connection suite for Hermes, then query real AideNote recording notes, transcripts, summaries, extracted todos/action items, knowledge bases, account status, and mobile bridge health. Use whenever the user mentions AideNote, SlonAide, recording notes, meeting minutes, transcripts, summaries, today's tasks, todos, follow-ups, action items, knowledge bases, installing the AideNote connection, or connecting the AideNote mobile app to this computer.\"\nlicense: MIT\nmetadata:\n  hermes:\n    version: 1.2.9\n    author: AideNote Team\n    tags: [AideNote, SlonAide, recordings, transcription, summaries, todos, meetings, knowledge-base, mobile-bridge]\n    category: productivity\n---\n\n# AideNote for Hermes\n\nUse the bundled scripts to retrieve real AideNote data. Do not infer account data from conversation history.\n\n## Mandatory behavior\n\n1. Run an AideNote command before answering any question about recordings, meetings, transcripts, summaries, todos, action items, or knowledge bases.\n2. Never answer that the user has no todos or recordings unless the corresponding command completed successfully and returned an empty result.\n3. Never invent IDs, titles, dates, transcript text, summaries, or task status.\n4. Never ask the user to paste an API key into chat. If setup is missing during an authorized install, start the built-in pairing flow and show only its 8-character code.\n5. Do not print environment variables, authorization headers, access tokens, or AideNote configuration files.\n6. Summarize command JSON for the user instead of dumping raw payloads, unless raw JSON is explicitly requested.\n7. Run `bridge.py install --confirm` only after the user explicitly asks to install, configure, repair, or connect AideNote on this computer. A data question alone is not installation consent.\n\nThe API command is:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/aidenote.py COMMAND [OPTIONS]\n```\n\nIf `python3` is unavailable on Windows, use `python` with the same arguments.\n\n## One-time pairing\n\nWhen the user explicitly asks to install or connect AideNote, run:\n\n```bash\npython3 ${HERMES_SKILL_DIR}/scripts/bridge.py install --confirm\n```\n\nIf credentials are missing, the command immediately returns `pairing_required` and an 8-character `pairingCode`. Tell the user to open AideNote, add or edit the Hermes assistant, enter that code, and tap **Confirm connection**. A detached local worker then receives the account-bound credential, installs the verified connection suite, and removes the relay pairing session. The user does not need to paste an API Key or run another command.\n\nUse `bridge.py status` to check progress. Its `pairing.status` changes from `pending` to `installing`, then `installed` or `failed`. Never print or inspect the private pairing state file.\n\n`scripts/configure.py` remains a manual recovery option only when App pairing is unavailable. It must be run directly in a local terminal; n"},{"path":"README.md","content":"# AideNote for Hermes\n\nAideNote 录音笔记与本机智能体连接技能。安装后，Hermes 可以查询用户真实的录音、转写、AI 摘要、会议待办和知识库，并可通过已验证的安装程序连接 AideNote 手机 App。\n\n## 安装\n\n推荐通过 ClawHub 安装，Hermes 会下载完整技能目录并执行安全扫描：\n\n```bash\nhermes skills install clawhub/aidenote-hermes\n```\n\n也可以直接告诉 Hermes：\n\n```text\n请安装 ClawHub 上的 aidenote-hermes 技能，并帮我连接 AideNote 手机 App。\n```\n\n本仓库同步保存最新开源源码，`skills/aidenote-hermes/` 是完整的 Hermes Skill 目录。\n\n## 首次连接\n\n安装技能后，对 Hermes 说：\n\n```text\n帮我安装并连接 AideNote。\n```\n\nHermes 会调用技能内的安全安装流程。如果本机尚未授权，会显示一个 8 位配对码：\n\n1. 打开 AideNote App。\n2. 添加或编辑 Hermes 助手。\n3. 输入电脑上显示的配对码。\n4. 点击“确认连接”。\n\n确认后，电脑会自动安装并启动 AideNote tunnel、MCP server 和 Hermes bridge。用户不需要在对话中发送 API Key。\n\n## 使用示例\n\n- “查看最近的录音笔记”\n- “查看分享给我的录音”\n- “总结昨天的产品会议”\n- “今天有哪些待办？”\n- “搜索提到 RainCentral 的会议”\n- “查看我的知识库”\n- “查看这个知识库里保存的录音”\n- “检查 AideNote 手机连接状态”\n\n技能要求 Hermes 在回答录音、会议、摘要和待办问题前先调用 AideNote 脚本，禁止根据聊天记忆猜测数据或在调用失败时声称没有记录。\n\n## 支持平台\n\n- macOS Intel / Apple Silicon\n- Windows x64 / ARM64\n\nHermes Skill 版本：`1.2.9`。本机连接套件版本：`3.2.6`。\n\n## 安全设计\n\n- 安装脚本和二进制文件使用固定版本地址。\n- 下载内容在执行前进行 SHA-256 校验。\n- 只向安装进程传递必要环境变量。\n- 配对凭据绑定当前 AideNote 账号和设备。\n- 不在聊天内容中展示 API Key、访问令牌或配置文件。\n\n## 项目文件\n\n- `SKILL.md`：Hermes 行为和工具选择规则。\n- `scripts/aidenote.py`：录音、摘要、待办和知识库查询。\n- `scripts/bridge.py`：配对、安装和连接状态检查。\n- `scripts/configure.py`：无法使用 App 配对时的本机恢复工具。\n- `references/api-contract.md`：接口与返回值维护说明。\n\n官网：[https://www.aidenote.cn](https://www.aidenote.cn)"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn70bnjtc1xtcspfvgj998q24x83k7jv\",\n  \"slug\": \"aidenote-hermes\",\n  \"version\": \"1.2.9\",\n  \"publishedAt\": 1784704327610\n}"},{"path":"references/api-contract.md","content":"# AideNote API contract\n\nThe bundled `scripts/aidenote.py` is the only supported API entry point for this Skill.\n\n| Command | AideNote endpoint | Output focus |\n|---|---|---|\n| `health` | token exchange, then recording list | Authentication and data access |\n| `user-info` | `/api/audiofileMstr/getUserInfo` | Current account information |\n| `recordings` | `/api/audiofileMstr/audiofileseleUserAllList` | Recording IDs, titles, dates, durations, processing state |\n| `shared-recordings` | `/api/audiofileMstr/audiofileseleUserAllList` with `screeningType=2` | Recordings shared with the current account |\n| `recording-detail` | `/api/audiofileMstr/audiofileToText` | Transcript, AI summary, and recording detail |\n| `todos` | recording list plus `/api/audiofileTodo/listByFile` | Extracted action items with source recording |\n| `knowledge-bases` | `/api/userfolderMstr/AllList` | Available knowledge bases |\n| `knowledge-files` | `/api/userfolderMstr/FolderList` | Files and folders in one knowledge base |\n| `knowledge-recordings` | recursive `/api/userfolderMstr/FolderList` | Audio recordings in a knowledge base and its nested folders |\n\nThe preferred first-run flow uses the relay's short-lived `/agent-pair/start`, `/status`, `/approve`, and `/complete` endpoints. The AideNote App approves the 8-character code only after confirming that its signed-in account owns the dedicated API Key. The local worker stores that key in `aidenote-credentials.json` under the active Hermes profile with owner-only permissions, then destroys the relay pairing session. `scripts/configure.py` remains the manual recovery path.\n\nAll commands emit JSON. Successful output has `\"ok\": true`; failures have `\"ok\": false`, a stable `error` code, and a safe `message`. A nonzero process exit means the requested data was not retrieved and must not be interpreted as an empty result.\n\n## Local connection suite\n\n`scripts/bridge.py status` is read-only. `scripts/bridge.py install --confirm` is the only supported automatic installation entry point and requires explicit user intent. It accepts no alternate installer URL and verifies a pinned SHA-256 digest before execution. The verified installer then validates the SHA-256 digest of each tunnel, MCP, and WorkBuddy bridge binary before installing it.\n\nThe installer writes the local Hermes API key to Hermes' owner-only `.env` and writes the same key as `hermesToken` in `~/.aidenote/openclaw-tunnel.json`. Secret values are never included in command arguments or command output."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1674,"uniquenessScore":36,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T14:22:44.589Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T17:36:56.672Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}