{"id":"3edfd20e-b41d-414c-8f7a-3b62d3066381","entityType":"agent","slug":"clawhub-steipete-brave-search","name":"Brave Search","canonicalUrl":"https://www.xpersona.co/agent/clawhub-steipete-brave-search","canonicalPath":"/agent/clawhub-steipete-brave-search","generatedAt":"2026-10-09T00:24:44.060Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-05-31T06:21:23.676Z","emptyReason":null},"description":"Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Skill: Brave Search Owner: steipete Summary: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Tags: latest:1.0.1 Version history: v1.0.1 | 2026-01-05T22:25:53.714Z v1.0.0 | 2026-01-04T16:48:24.976Z Archive index: Archive v1.0.1: 7 files, 12059 bytes Files: content.js (2582b), package-lock.json (20515b), package.json (","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 58.2K downloads reported by the source. Last updated 5/31/2026.","installCommand":"clawhub skill install s179zksw999xz8ms4cy7pb2fr183m5jq:brave-search","sourceUrl":"https://clawhub.ai/steipete/brave-search","homepage":"https://clawhub.ai/steipete/brave-search","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/steipete/brave-search","kind":"source"}],"safetyScore":84,"overallRank":62,"popularityScore":95,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Skill: Bra"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-05-31T06:21:23.676Z","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-05-31T06:21:23.676Z","emptyReason":null},"stars":null,"forks":null,"downloads":58207,"packageName":null,"latestVersion":"1.0.1","tractionLabel":"58.2K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-05-31T06:21:23.676Z","emptyReason":null},"lastUpdatedAt":"2026-05-31T06:21:23.676Z","lastCrawledAt":"2026-05-31T06:21:23.676Z","lastIndexedAt":null,"nextCrawlAt":"2026-06-01T06:21:23.676Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.1","createdAt":"2026-01-05T22:25:53.714Z","changelog":"","fileCount":7,"zipByteSize":12059},{"version":"1.0.0","createdAt":"2026-01-04T16:48:24.976Z","changelog":"","fileCount":4,"zipByteSize":2631}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s179zksw999xz8ms4cy7pb2fr183m5jq:brave-search","setupComplexity":"low","setupSteps":["Node.js workspace detected. Install dependencies securely: run `npm ci --ignore-scripts` to prevent post-install lifecycle triggers from running arbitrary code, then selectively audit the dependency tree.","Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"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-steipete-brave-search/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/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-09T00:24:44.060Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-steipete-brave-search/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":"high","updatedAt":"2026-05-31T06:21:23.676Z","emptyReason":null},"readme":"Skill: Brave Search\n\nOwner: steipete\n\nSummary: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required.\n\nTags: latest:1.0.1\n\nVersion history:\n\nv1.0.1 | 2026-01-05T22:25:53.714Z\n\nv1.0.0 | 2026-01-04T16:48:24.976Z\n\nArchive index:\n\nArchive v1.0.1: 7 files, 12059 bytes\n\nFiles: content.js (2582b), package-lock.json (20515b), package.json (332b), search.js (5329b), skill-card.md (2070b), SKILL.md (1273b), _meta.json (131b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: brave-search\ndescription: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required.\n---\n\n# Brave Search\n\nHeadless web search and content extraction using Brave Search. No browser required.\n\n## Setup\n\nRun once before first use:\n\n```bash\ncd ~/Projects/agent-scripts/skills/brave-search\nnpm ci\n```\n\nNeeds env: `BRAVE_API_KEY`.\n\n## Search\n\n```bash\n./search.js \"query\"                    # Basic search (5 results)\n./search.js \"query\" -n 10              # More results\n./search.js \"query\" --content          # Include page content as markdown\n./search.js \"query\" -n 3 --content     # Combined\n```\n\n## Extract Page Content\n\n```bash\n./content.js https://example.com/article\n```\n\nFetches a URL and extracts readable content as markdown.\n\n## Output Format\n\n```\n--- Result 1 ---\nTitle: Page Title\nLink: https://example.com/page\nSnippet: Description from search results\nContent: (if --content flag used)\n  Markdown content extracted from the page...\n\n--- Result 2 ---\n...\n```\n\n## When to Use\n\n- Searching for documentation or API references\n- Looking up facts or current information\n- Fetching content from specific URLs\n- Any task requiring web search without interactive browsing\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn70pywhg0fyz996kpa8xj89s57yhv26\",\n  \"slug\": \"brave-search\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1767651953714\n}\n\nFile v1.0.1:skill-card.md\n\n## Description: <br>\nWeb search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[steipete](https://clawhub.ai/user/steipete) <br>\n\n### License/Terms of Use: <br>\nMIT <br>\n\n\n## Use Case: <br>\nDevelopers and agents use this skill to run headless web searches, retrieve search snippets, and extract readable webpage content as Markdown without interactive browsing. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Search queries are sent to Brave and requested page URLs are sent to target websites. <br>\nMitigation: Avoid searching for secrets, proprietary internal terms, or other sensitive data. <br>\nRisk: Extracted webpage content may be inaccurate, hostile, or otherwise untrusted. <br>\nMitigation: Treat extracted content as reference material and verify it before using it for decisions or commands. <br>\nRisk: The documentation asks for a Brave API key, but the implementation does not use that key in this version. <br>\nMitigation: Do not provide a Brave API key unless the implementation is corrected to use it. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/steipete/brave-search) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown] <br>\n**Output Format:** [Plain text search results with titles, links, snippets, and optional extracted page content in Markdown.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Search extraction can include fetched webpage content truncated to 5,000 characters per result.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release 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.1:package-lock.json\n\n{\n\t\"name\": \"brave-search\",\n\t\"version\": \"1.0.0\",\n\t\"lockfileVersion\": 3,\n\t\"requires\": true,\n\t\"packages\": {\n\t\t\"\": {\n\t\t\t\"name\": \"brave-search\",\n\t\t\t\"version\": \"1.0.0\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@mozilla/readability\": \"^0.6.0\",\n\t\t\t\t\"jsdom\": \"^27.0.1\",\n\t\t\t\t\"turndown\": \"^7.2.2\",\n\t\t\t\t\"turndown-plugin-gfm\": \"^1.0.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/css-color\": {\n\t\t\t\"version\": \"4.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-4.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-9xiBAtLn4aNsa4mDnpovJvBn72tNEIACyvlqaNJ+ADemR+yeMJWnBudOi2qGDviJa7SwcDOU/TRh5dnET7qk0w==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@csstools/css-calc\": \"^2.1.4\",\n\t\t\t\t\"@csstools/css-color-parser\": \"^3.1.0\",\n\t\t\t\t\"@csstools/css-parser-algorithms\": \"^3.0.5\",\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\",\n\t\t\t\t\"lru-cache\": \"^11.2.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/dom-selector\": {\n\t\t\t\"version\": \"6.7.5\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.5.tgz\",\n\t\t\t\"integrity\": \"sha512-Eks6dY8zau4m4wNRQjRVaKQRTalNcPcBvU1ZQ35w5kKRk1gUeNCkVLsRiATurjASTp3TKM4H10wsI50nx3NZdw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@asamuzakjp/nwsapi\": \"^2.3.9\",\n\t\t\t\t\"bidi-js\": \"^1.0.3\",\n\t\t\t\t\"css-tree\": \"^3.1.0\",\n\t\t\t\t\"is-potential-custom-element-name\": \"^1.0.1\",\n\t\t\t\t\"lru-cache\": \"^11.2.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/nwsapi\": {\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/nwsapi/-/nwsapi-2.3.9.tgz\",\n\t\t\t\"integrity\": \"sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/@csstools/color-helpers\": {\n\t\t\t\"version\": \"5.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT-0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-calc\": {\n\t\t\t\"version\": \"2.1.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz\",\n\t\t\t\"integrity\": \"sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"@csstools/css-parser-algorithms\": \"^3.0.5\",\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-color-parser\": {\n\t\t\t\"version\": \"3.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@csstools/color-helpers\": \"^5.1.0\",\n\t\t\t\t\"@csstools/css-calc\": \"^2.1.4\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"@csstools/css-parser-algorithms\": \"^3.0.5\",\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-parser-algorithms\": {\n\t\t\t\"version\": \"3.0.5\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz\",\n\t\t\t\"integrity\": \"sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-syntax-patches-for-csstree\": {\n\t\t\t\"version\": \"1.0.20\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.20.tgz\",\n\t\t\t\"integrity\": \"sha512-8BHsjXfSciZxjmHQOuVdW2b8WLUPts9a+mfL13/PzEviufUEW2xnvQuOlKs9dRBHgRqJ53SF/DUoK9+MZk72oQ==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT-0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-tokenizer\": {\n\t\t\t\"version\": \"3.0.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz\",\n\t\t\t\"integrity\": \"sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@mixmark-io/domino\": {\n\t\t\t\"version\": \"2.2.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@mixmark-io/domino/-/domino-2.2.0.tgz\",\n\t\t\t\"integrity\": \"sha512-Y28PR25bHXUg88kCV7nivXrP2Nj2RueZ3/l/jdx6J9f8J4nsEGcgX0Qe6lt7Pa+J79+kPiJU3LguR6O/6zrLOw==\",\n\t\t\t\"license\": \"BSD-2-Clause\"\n\t\t},\n\t\t\"node_modules/@mozilla/readability\": {\n\t\t\t\"version\": \"0.6.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@mozilla/readability/-/readability-0.6.0.tgz\",\n\t\t\t\"integrity\": \"sha512-juG5VWh4qAivzTAeMzvY9xs9HY5rAcr2E4I7tiSSCokRFi7XIZCAu92ZkSTsIj1OPceCifL3cpfteP3pDT9/QQ==\",\n\t\t\t\"license\": \"Apache-2.0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=14.0.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/agent-base\": {\n\t\t\t\"version\": \"7.1.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz\",\n\t\t\t\"integrity\": \"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">= 14\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/bidi-js\": {\n\t\t\t\"version\": \"1.0.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz\",\n\t\t\t\"integrity\": \"sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"require-from-string\": \"^2.0.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/css-tree\": {\n\t\t\t\"version\": \"3.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"mdn-data\": \"2.12.2\",\n\t\t\t\t\"source-map-js\": \"^1.0.1\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \"^10 || ^12.20.0 || ^14.13.0 || >=15.0.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/cssstyle\": {\n\t\t\t\"version\": \"5.3.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.3.tgz\",\n\t\t\t\"integrity\": \"sha512-OytmFH+13/QXONJcC75QNdMtKpceNk3u8ThBjyyYjkEcy/ekBwR1mMAuNvi3gdBPW3N5TlCzQ0WZw8H0lN/bDw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@asamuzakjp/css-color\": \"^4.0.3\",\n\t\t\t\t\"@csstools/css-syntax-patches-for-csstree\": \"^1.0.14\",\n\t\t\t\t\"css-tree\": \"^3.1.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/data-urls\": {\n\t\t\t\"version\": \"6.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/data-urls/-/data-urls-6.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-BnBS08aLUM+DKamupXs3w2tJJoqU+AkaE/+6vQxi/G/DPmIZFJJp9Dkb1kM03AZx8ADehDUZgsNxju3mPXZYIA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"whatwg-mimetype\": \"^4.0.0\",\n\t\t\t\t\"whatwg-url\": \"^15.0.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/debug\": {\n\t\t\t\"version\": \"4.4.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz\",\n\t\t\t\"integrity\": \"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"ms\": \"^2.1.3\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=6.0\"\n\t\t\t},\n\t\t\t\"peerDependenciesMeta\": {\n\t\t\t\t\"supports-color\": {\n\t\t\t\t\t\"optional\": true\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"node_modules/decimal.js\": {\n\t\t\t\"version\": \"10.6.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz\",\n\t\t\t\"integrity\": \"sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/entities\": {\n\t\t\t\"version\": \"6.0.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/entities/-/entities-6.0.1.tgz\",\n\t\t\t\"integrity\": \"sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==\",\n\t\t\t\"license\": \"BSD-2-Clause\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=0.12\"\n\t\t\t},\n\t\t\t\"funding\": {\n\t\t\t\t\"url\": \"https://github.com/fb55/entities?sponsor=1\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/html-encoding-sniffer\": {\n\t\t\t\"version\": \"4.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"whatwg-encoding\": \"^3.1.1\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/http-proxy-agent\": {\n\t\t\t\"version\": \"7.0.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz\",\n\t\t\t\"integrity\": \"sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"agent-base\": \"^7.1.0\",\n\t\t\t\t\"debug\": \"^4.3.4\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">= 14\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/https-proxy-agent\": {\n\t\t\t\"version\": \"7.0.6\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz\",\n\t\t\t\"integrity\": \"sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"agent-base\": \"^7.1.2\",\n\t\t\t\t\"debug\": \"4\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">= 14\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/iconv-lite\": {\n\t\t\t\"version\": \"0.6.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz\",\n\t\t\t\"integrity\": \"sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"safer-buffer\": \">= 2.1.2 < 3.0.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=0.10.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/is-potential-custom-element-name\": {\n\t\t\t\"version\": \"1.0.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz\",\n\t\t\t\"integrity\": \"sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/jsdom\": {\n\t\t\t\"version\": \"27.0.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/jsdom/-/jsdom-27.0.1.tgz\",\n\t\t\t\"integrity\": \"sha512-SNSQteBL1IlV2zqhwwolaG9CwhIhTvVHWg3kTss/cLE7H/X4644mtPQqYvCfsSrGQWt9hSZcgOXX8bOZaMN+kA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@asamuzakjp/dom-selector\": \"^6.7.2\",\n\t\t\t\t\"cssstyle\": \"^5.3.1\",\n\t\t\t\t\"data-urls\": \"^6.0.0\",\n\t\t\t\t\"decimal.js\": \"^10.6.0\",\n\t\t\t\t\"html-encoding-sniffer\": \"^4.0.0\",\n\t\t\t\t\"http-proxy-agent\": \"^7.0.2\",\n\t\t\t\t\"https-proxy-agent\": \"^7.0.6\",\n\t\t\t\t\"is-potential-custom-element-name\": \"^1.0.1\",\n\t\t\t\t\"parse5\": \"^8.0.0\",\n\t\t\t\t\"rrweb-cssom\": \"^0.8.0\",\n\t\t\t\t\"saxes\": \"^6.0.0\",\n\t\t\t\t\"symbol-tree\": \"^3.2.4\",\n\t\t\t\t\"tough-cookie\": \"^6.0.0\",\n\t\t\t\t\"w3c-xmlserializer\": \"^5.0.0\",\n\t\t\t\t\"webidl-conversions\": \"^8.0.0\",\n\t\t\t\t\"whatwg-encoding\": \"^3.1.1\",\n\t\t\t\t\"whatwg-mimetype\": \"^4.0.0\",\n\t\t\t\t\"whatwg-url\": \"^15.1.0\",\n\t\t\t\t\"ws\": \"^8.18.3\",\n\t\t\t\t\"xml-name-validator\": \"^5.0.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"canvas\": \"^3.0.0\"\n\t\t\t},\n\t\t\t\"peerDependenciesMeta\": {\n\t\t\t\t\"canvas\": {\n\t\t\t\t\t\"optional\": true\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"node_modules/lru-cache\": {\n\t\t\t\"version\": \"11.2.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.4.tgz\",\n\t\t\t\"integrity\": \"sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==\",\n\t\t\t\"license\": \"BlueOak-1.0.0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \"20 || >=22\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/mdn-data\": {\n\t\t\t\"version\": \"2.12.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz\",\n\t\t\t\"integrity\": \"sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==\",\n\t\t\t\"license\": \"CC0-1.0\"\n\t\t},\n\t\t\"node_modules/ms\": {\n\t\t\t\"version\": \"2.1.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz\",\n\t\t\t\"integrity\": \"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/parse5\": {\n\t\t\t\"version\": \"8.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-9m4m5GSgXjL4AjumKzq1Fgfp3Z8rsvjRNbnkVwfu2ImRqE5D0LnY2QfDen18FSY9C573YU5XxSapdHZTZ2WolA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"entities\": \"^6.0.0\"\n\t\t\t},\n\t\t\t\"funding\": {\n\t\t\t\t\"url\": \"https://github.com/inikulin/parse5?sponsor=1\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/punycode\": {\n\t\t\t\"version\": \"2.3.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz\",\n\t\t\t\"integrity\": \"sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=6\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/require-from-string\": {\n\t\t\t\"version\": \"2.0.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz\",\n\t\t\t\"integrity\": \"sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=0.10.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/rrweb-cssom\": {\n\t\t\t\"version\": \"0.8.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz\",\n\t\t\t\"integrity\": \"sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/safer-buffer\": {\n\t\t\t\"version\": \"2.1.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz\",\n\t\t\t\"integrity\": \"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/saxes\": {\n\t\t\t\"version\": \"6.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==\",\n\t\t\t\"license\": \"ISC\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"xmlchars\": \"^2.2.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=v12.22.7\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/source-map-js\": {\n\t\t\t\"version\": \"1.2.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz\",\n\t\t\t\"integrity\": \"sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==\",\n\t\t\t\"license\": \"BSD-3-Clause\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=0.10.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/symbol-tree\": {\n\t\t\t\"version\": \"3.2.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz\",\n\t\t\t\"integrity\": \"sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/tldts\": {\n\t\t\t\"version\": \"7.0.19\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/tldts/-/tldts-7.0.19.tgz\",\n\t\t\t\"integrity\": \"sha512-8PWx8tvC4jDB39BQw1m4x8y5MH1BcQ5xHeL2n7UVFulMPH/3Q0uiamahFJ3lXA0zO2SUyRXuVVbWSDmstlt9YA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"tldts-core\": \"^7.0.19\"\n\t\t\t},\n\t\t\t\"bin\": {\n\t\t\t\t\"tldts\": \"bin/cli.js\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/tldts-core\": {\n\t\t\t\"version\": \"7.0.19\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/tldts-core/-/tldts-core-7.0.19.tgz\",\n\t\t\t\"integrity\": \"sha512-lJX2dEWx0SGH4O6p+7FPwYmJ/bu1JbcGJ8RLaG9b7liIgZ85itUVEPbMtWRVrde/0fnDPEPHW10ZsKW3kVsE9A==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/tough-cookie\": {\n\t\t\t\"version\": \"6.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/tough-cookie/-/tough-cookie-6.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==\",\n\t\t\t\"license\": \"BSD-3-Clause\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"tldts\": \"^7.0.5\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=16\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/tr46\": {\n\t\t\t\"version\": \"6.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/tr46/-/tr46-6.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-bLVMLPtstlZ4iMQHpFHTR7GAGj2jxi8Dg0s2h2MafAE4uSWF98FC/3MomU51iQAMf8/qDUbKWf5GxuvvVcXEhw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"punycode\": \"^2.3.1\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/turndown\": {\n\t\t\t\"version\": \"7.2.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/turndown/-/turndown-7.2.2.tgz\",\n\t\t\t\"integrity\": \"sha512-1F7db8BiExOKxjSMU2b7if62D/XOyQyZbPKq/nUwopfgnHlqXHqQ0lvfUTeUIr1lZJzOPFn43dODyMSIfvWRKQ==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@mixmark-io/domino\": \"^2.2.0\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/turndown-plugin-gfm\": {\n\t\t\t\"version\": \"1.0.2\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/turndown-plugin-gfm/-/turndown-plugin-gfm-1.0.2.tgz\",\n\t\t\t\"integrity\": \"sha512-vwz9tfvF7XN/jE0dGoBei3FXWuvll78ohzCZQuOb+ZjWrs3a0XhQVomJEb2Qh4VHTPNRO4GPZh0V7VRbiWwkRg==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/w3c-xmlserializer\": {\n\t\t\t\"version\": \"5.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"xml-name-validator\": \"^5.0.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/webidl-conversions\": {\n\t\t\t\"version\": \"8.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-8.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-n4W4YFyz5JzOfQeA8oN7dUYpR+MBP3PIUsn2jLjWXwK5ASUzt0Jc/A5sAUZoCYFJRGF0FBKJ+1JjN43rNdsQzA==\",\n\t\t\t\"license\": \"BSD-2-Clause\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/whatwg-encoding\": {\n\t\t\t\"version\": \"3.1.1\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz\",\n\t\t\t\"integrity\": \"sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"iconv-lite\": \"0.6.3\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/whatwg-mimetype\": {\n\t\t\t\"version\": \"4.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/whatwg-url\": {\n\t\t\t\"version\": \"15.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/whatwg-url/-/whatwg-url-15.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-2ytDk0kiEj/yu90JOAp44PVPUkO9+jVhyf+SybKlRHSDlvOOZhdPIrr7xTH64l4WixO2cP+wQIcgujkGBPPz6g==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"tr46\": \"^6.0.0\",\n\t\t\t\t\"webidl-conversions\": \"^8.0.0\"\n\t\t\t},\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=20\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/ws\": {\n\t\t\t\"version\": \"8.18.3\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/ws/-/ws-8.18.3.tgz\",\n\t\t\t\"integrity\": \"sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=10.0.0\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"bufferutil\": \"^4.0.1\",\n\t\t\t\t\"utf-8-validate\": \">=5.0.2\"\n\t\t\t},\n\t\t\t\"peerDependenciesMeta\": {\n\t\t\t\t\"bufferutil\": {\n\t\t\t\t\t\"optional\": true\n\t\t\t\t},\n\t\t\t\t\"utf-8-validate\": {\n\t\t\t\t\t\"optional\": true\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"node_modules/xml-name-validator\": {\n\t\t\t\"version\": \"5.0.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz\",\n\t\t\t\"integrity\": \"sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==\",\n\t\t\t\"license\": \"Apache-2.0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/xmlchars\": {\n\t\t\t\"version\": \"2.2.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz\",\n\t\t\t\"integrity\": \"sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==\",\n\t\t\t\"license\": \"MIT\"\n\t\t}\n\t}\n}\n\nFile v1.0.1:package.json\n\n{\n\t\"name\": \"brave-search\",\n\t\"version\": \"1.0.0\",\n\t\"type\": \"module\",\n\t\"description\": \"Headless web search via Brave Search - no browser required\",\n\t\"author\": \"Mario Zechner\",\n\t\"license\": \"MIT\",\n\t\"dependencies\": {\n\t\t\"@mozilla/readability\": \"^0.6.0\",\n\t\t\"jsdom\": \"^27.0.1\",\n\t\t\"turndown\": \"^7.2.2\",\n\t\t\"turndown-plugin-gfm\": \"^1.0.2\"\n\t}\n}\n\nArchive v1.0.0: 4 files, 2631 bytes\n\nFiles: scripts/content.mjs (1474b), scripts/search.mjs (2119b), SKILL.md (914b), _meta.json (131b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: brave-search\ndescription: Web search and content extraction via Brave Search API.\nhomepage: https://brave.com/search/api\nmetadata: {\"clawdbot\":{\"emoji\":\"🦁\",\"requires\":{\"bins\":[\"node\"],\"env\":[\"BRAVE_API_KEY\"]},\"primaryEnv\":\"BRAVE_API_KEY\"}}\n---\n\n# Brave Search\n\nHeadless web search (and lightweight content extraction) using Brave Search API. No browser required.\n\n## Search\n\n```bash\nnode {baseDir}/scripts/search.mjs \"query\"\nnode {baseDir}/scripts/search.mjs \"query\" -n 10\nnode {baseDir}/scripts/search.mjs \"query\" --content\nnode {baseDir}/scripts/search.mjs \"query\" -n 3 --content\n```\n\n## Extract a page\n\n```bash\nnode {baseDir}/scripts/content.mjs \"https://example.com/article\"\n```\n\nNotes:\n- Needs `BRAVE_API_KEY`.\n- Content extraction is best-effort (good for articles; not for app-like sites).\n- If a site is blocked or too JS-heavy, prefer the `summarize` skill (it can use a Firecrawl fallback).\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn70pywhg0fyz996kpa8xj89s57yhv26\",\n  \"slug\": \"brave-search\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1767545304976\n}","readmeExcerpt":"Skill: Brave Search Owner: steipete Summary: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Tags: latest:1.0.1 Version history: v1.0.1 | 2026-01-05T22:25:53.714Z v1.0.0 | 2026-01-04T16:48:24.976Z Archive index: Archive v1.0.1: 7 files, 12059 bytes Files: content.js (2582b), package-lock.json (20515b), package.json (","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"cd ~/Projects/agent-scripts/skills/brave-search\nnpm ci"},{"language":"bash","snippet":"./search.js \"query\"                    # Basic search (5 results)\n./search.js \"query\" -n 10              # More results\n./search.js \"query\" --content          # Include page content as markdown\n./search.js \"query\" -n 3 --content     # Combined"},{"language":"bash","snippet":"./content.js https://example.com/article"},{"language":"text","snippet":"--- Result 1 ---\nTitle: Page Title\nLink: https://example.com/page\nSnippet: Description from search results\nContent: (if --content flag used)\n  Markdown content extracted from the page...\n\n--- Result 2 ---\n..."},{"language":"bash","snippet":"node {baseDir}/scripts/search.mjs \"query\"\nnode {baseDir}/scripts/search.mjs \"query\" -n 10\nnode {baseDir}/scripts/search.mjs \"query\" --content\nnode {baseDir}/scripts/search.mjs \"query\" -n 3 --content"},{"language":"bash","snippet":"node {baseDir}/scripts/content.mjs \"https://example.com/article\""}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: brave-search\ndescription: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required.\n---\n\n# Brave Search\n\nHeadless web search and content extraction using Brave Search. No browser required.\n\n## Setup\n\nRun once before first use:\n\n```bash\ncd ~/Projects/agent-scripts/skills/brave-search\nnpm ci\n```\n\nNeeds env: `BRAVE_API_KEY`.\n\n## Search\n\n```bash\n./search.js \"query\"                    # Basic search (5 results)\n./search.js \"query\" -n 10              # More results\n./search.js \"query\" --content          # Include page content as markdown\n./search.js \"query\" -n 3 --content     # Combined\n```\n\n## Extract Page Content\n\n```bash\n./content.js https://example.com/article\n```\n\nFetches a URL and extracts readable content as markdown.\n\n## Output Format\n\n```\n--- Result 1 ---\nTitle: Page Title\nLink: https://example.com/page\nSnippet: Description from search results\nContent: (if --content flag used)\n  Markdown content extracted from the page...\n\n--- Result 2 ---\n...\n```\n\n## When to Use\n\n- Searching for documentation or API references\n- Looking up facts or current information\n- Fetching content from specific URLs\n- Any task requiring web search without interactive browsing"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn70pywhg0fyz996kpa8xj89s57yhv26\",\n  \"slug\": \"brave-search\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1767651953714\n}"},{"path":"skill-card.md","content":"## Description: <br>\nWeb search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[steipete](https://clawhub.ai/user/steipete) <br>\n\n### License/Terms of Use: <br>\nMIT <br>\n\n\n## Use Case: <br>\nDevelopers and agents use this skill to run headless web searches, retrieve search snippets, and extract readable webpage content as Markdown without interactive browsing. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Search queries are sent to Brave and requested page URLs are sent to target websites. <br>\nMitigation: Avoid searching for secrets, proprietary internal terms, or other sensitive data. <br>\nRisk: Extracted webpage content may be inaccurate, hostile, or otherwise untrusted. <br>\nMitigation: Treat extracted content as reference material and verify it before using it for decisions or commands. <br>\nRisk: The documentation asks for a Brave API key, but the implementation does not use that key in this version. <br>\nMitigation: Do not provide a Brave API key unless the implementation is corrected to use it. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/steipete/brave-search) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown] <br>\n**Output Format:** [Plain text search results with titles, links, snippets, and optional extracted page content in Markdown.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Search extraction can include fetched webpage content truncated to 5,000 characters per result.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release 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>"},{"path":"package-lock.json","content":"{\n\t\"name\": \"brave-search\",\n\t\"version\": \"1.0.0\",\n\t\"lockfileVersion\": 3,\n\t\"requires\": true,\n\t\"packages\": {\n\t\t\"\": {\n\t\t\t\"name\": \"brave-search\",\n\t\t\t\"version\": \"1.0.0\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@mozilla/readability\": \"^0.6.0\",\n\t\t\t\t\"jsdom\": \"^27.0.1\",\n\t\t\t\t\"turndown\": \"^7.2.2\",\n\t\t\t\t\"turndown-plugin-gfm\": \"^1.0.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/css-color\": {\n\t\t\t\"version\": \"4.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-4.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-9xiBAtLn4aNsa4mDnpovJvBn72tNEIACyvlqaNJ+ADemR+yeMJWnBudOi2qGDviJa7SwcDOU/TRh5dnET7qk0w==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@csstools/css-calc\": \"^2.1.4\",\n\t\t\t\t\"@csstools/css-color-parser\": \"^3.1.0\",\n\t\t\t\t\"@csstools/css-parser-algorithms\": \"^3.0.5\",\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\",\n\t\t\t\t\"lru-cache\": \"^11.2.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/dom-selector\": {\n\t\t\t\"version\": \"6.7.5\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.5.tgz\",\n\t\t\t\"integrity\": \"sha512-Eks6dY8zau4m4wNRQjRVaKQRTalNcPcBvU1ZQ35w5kKRk1gUeNCkVLsRiATurjASTp3TKM4H10wsI50nx3NZdw==\",\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"dependencies\": {\n\t\t\t\t\"@asamuzakjp/nwsapi\": \"^2.3.9\",\n\t\t\t\t\"bidi-js\": \"^1.0.3\",\n\t\t\t\t\"css-tree\": \"^3.1.0\",\n\t\t\t\t\"is-potential-custom-element-name\": \"^1.0.1\",\n\t\t\t\t\"lru-cache\": \"^11.2.2\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@asamuzakjp/nwsapi\": {\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@asamuzakjp/nwsapi/-/nwsapi-2.3.9.tgz\",\n\t\t\t\"integrity\": \"sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==\",\n\t\t\t\"license\": \"MIT\"\n\t\t},\n\t\t\"node_modules/@csstools/color-helpers\": {\n\t\t\t\"version\": \"5.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz\",\n\t\t\t\"integrity\": \"sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT-0\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-calc\": {\n\t\t\t\"version\": \"2.1.4\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz\",\n\t\t\t\"integrity\": \"sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==\",\n\t\t\t\"funding\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"github\",\n\t\t\t\t\t\"url\": \"https://github.com/sponsors/csstools\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"opencollective\",\n\t\t\t\t\t\"url\": \"https://opencollective.com/csstools\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"license\": \"MIT\",\n\t\t\t\"engines\": {\n\t\t\t\t\"node\": \">=18\"\n\t\t\t},\n\t\t\t\"peerDependencies\": {\n\t\t\t\t\"@csstools/css-parser-algorithms\": \"^3.0.5\",\n\t\t\t\t\"@csstools/css-tokenizer\": \"^3.0.4\"\n\t\t\t}\n\t\t},\n\t\t\"node_modules/@csstools/css-color-parser\": {\n\t\t\t\"version\": \"3.1.0\",\n\t\t\t\"resolved\": \"https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tg"},{"path":"package.json","content":"{\n\t\"name\": \"brave-search\",\n\t\"version\": \"1.0.0\",\n\t\"type\": \"module\",\n\t\"description\": \"Headless web search via Brave Search - no browser required\",\n\t\"author\": \"Mario Zechner\",\n\t\"license\": \"MIT\",\n\t\"dependencies\": {\n\t\t\"@mozilla/readability\": \"^0.6.0\",\n\t\t\"jsdom\": \"^27.0.1\",\n\t\t\"turndown\": \"^7.2.2\",\n\t\t\"turndown-plugin-gfm\": \"^1.0.2\"\n\t}\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Skill: Brave Search Owner: steipete Summary: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required. Tags: latest:1.0.1 Version history: v1.0.1 | 2026-01-05T22:25:53.714Z v1.0.0 | 2026-01-04T16:48:24.976Z Archive index: Archive v1.0.1: 7 files, 12059 bytes Files: content.js (2582b), package-lock.json (20515b), package.json (","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1071,"uniquenessScore":48,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-05-31T06:21:23.676Z","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-05-31T06:21:23.676Z","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-09T00:24:44.060Z","emptyReason":null},"items":[{"id":"959108e7-5f7c-45ac-bea0-9ab67f017226","entityType":"agent","canonicalPath":"/agent/langchain-x1pay-langchain","slug":"langchain-x1pay-langchain","name":"@x1pay/langchain","description":"LangChain/LangGraph tools for AI agent x402 payments on X1","url":"https://www.npmjs.com/package/@x1pay/langchain","homepage":null,"source":"GITHUB_OPENCLEW","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":70,"overallRank":65,"updatedAt":"2026-06-01T00:29:07.099Z","createdAt":"2026-05-23T06:52:58.553Z","downloads":null},{"id":"4f8f8f95-34f7-49a9-b516-391d1c355d6c","entityType":"agent","canonicalPath":"/agent/langchain-langchain-langgraph-swarm","slug":"langchain-langchain-langgraph-swarm","name":"@langchain/langgraph-swarm","description":"An implementation of a multi-agent swarm using LangGraph","url":"git+ssh://git@github.com/langchain-ai/langgraphjs.git","homepage":"https://github.com/langchain-ai/langgraphjs#readme","source":"GITHUB_OPENCLEW","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":70,"overallRank":65,"updatedAt":"2026-06-01T00:29:03.792Z","createdAt":"2026-05-23T06:52:55.396Z","downloads":null},{"id":"e36fd59b-38d7-4e73-aa20-c1431a8f7434","entityType":"agent","canonicalPath":"/agent/langchain-langchain-langgraph-supervisor","slug":"langchain-langchain-langgraph-supervisor","name":"@langchain/langgraph-supervisor","description":"LangGraph Multi-Agent Supervisor","url":"git+ssh://git@github.com/langchain-ai/langgraphjs.git","homepage":"https://github.com/langchain-ai/langgraphjs#readme","source":"GITHUB_OPENCLEW","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":70,"overallRank":65,"updatedAt":"2026-06-01T00:29:03.756Z","createdAt":"2026-05-23T06:52:55.353Z","downloads":null},{"id":"d1d0f93e-b722-4791-9bbf-2532470054c2","entityType":"agent","canonicalPath":"/agent/langchain-oceanbus-langchain","slug":"langchain-oceanbus-langchain","name":"oceanbus-langchain","description":"LangChain tools for OceanBus — give your LangChain and CrewAI agents a global identity, encrypted messaging, and Yellow Pages service discovery with a single import.","url":"git+https://github.com/oceanbus/oceanbus.git","homepage":"https://github.com/oceanbus/oceanbus#readme","source":"GITHUB_OPENCLEW","protocols":["OPENCLAW"],"capabilities":["oceanbus","langchain","langchain-tools","agent-to-agent","ai-agent","communication","messaging","e2ee","structured-tool","yellow-pages","service-discovery","reputation","crewai"],"safetyScore":70,"overallRank":65,"updatedAt":"2026-06-01T00:29:02.595Z","createdAt":"2026-05-23T06:52:54.240Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}