[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KK0AMHSEB8GRW8MAF9T0T0":3,"skill-same:01M6KK0AMHSEB8GRW8MAF9T0T0":53},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":33,"commitSha":34,"skillDirectory":35,"forksCount":13,"repositoryHtmlUrl":36,"repositoryHomepageUrl":6,"ownerHtmlUrl":37,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":38,"install":39,"resources":52},"01M6KK0AMHSEB8GRW8MAF9T0T0","opencoreagents-rag-dynamic",null,"Use @opencoreagents\u002Frag (catalog, ingest, file tools, skills) and related core hooks (registerRagCatalog on AgentRuntime).","OpenCoreAgents\u002Fruntime","OpenCoreAgents","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F275358703?v=4","01M6KJZFFABQK04V4JZXPME4P2","01M6KJZFK8CBDNJ2YT2QZGM0TA",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fpackages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-rag-dynamic\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27],"rag","opencoreagents rag dynamic","core","file","Tools","catalog","use","hooks","ingest","file tools","2026-11-10 10:12:30",false,"---\nname: opencoreagents-rag-dynamic\ndescription: Use @opencoreagents\u002Frag (catalog, ingest, file tools, skills) and related core hooks (registerRagCatalog on AgentRuntime).\n---\n\n# OpenCore Agents — RAG (`@opencoreagents\u002Frag`)\n\n> **Bundled docs:** **`docs\u002F`** next to this file (`docs\u002Freference\u002Fcore\u002F...`); **`packages\u002Frag\u002FREADME.md`** lives under the sibling **`packages\u002F`** folder. API: `skillDocsDirectory(\"opencoreagents-rag-dynamic\")`.\n\nUse when the user needs **file ingestion**, **vector search**, **per-project catalogs**, or **skills** `rag` \u002F `rag-reader`.\n\n`@opencoreagents\u002Frag` ships from the public runtime repo [OpenCoreAgents\u002Fruntime](https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime).\n\n## Registration\n\n1. Call **`registerRagToolsAndSkills()`** from `@opencoreagents\u002Frag` once at startup (after `AgentRuntime` exists if you use runtime-bound catalog APIs).\n2. Prefer **`registerRagCatalog(runtime, projectId, entries)`** (or equivalent) so **`system_list_rag_sources`** \u002F **`system_ingest_rag_source`** work with **ids**.\n\n## Fragments from `examples\u002Frag`\n\nCatalog entries are **`RagSourceDefinition`**: stable **`id`**, **`description`** (what the list tool shows), and **`source`** (path relative to **`fileReadRoot`** or an allowed URL — see bundled `docs\u002Freference\u002Fcore\u002F18-rag-pipeline.md`).\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag\u002Fsrc\u002FfileSources.ts\nimport type { RagSourceDefinition } from \"@opencoreagents\u002Frag\";\n\nexport const DEMO_RAG_SOURCES: RagSourceDefinition[] = [\n  {\n    id: \"demo-handbook\",\n    description:\n      \"Intro markdown for this example: RAG, catalog ingest, system_vector_search, and production adapters.\",\n    source: \"sample.md\",\n  },\n];\n```\n\nWire **`embeddingAdapter`**, **`vectorAdapter`**, **`fileReadRoot`**, register tools, then catalog, then an agent with **`skills: [\"rag\"]`**:\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag\u002Fsrc\u002Fmain.ts\nimport {\n  Agent,\n  AgentRuntime,\n  Session,\n  InMemoryMemoryAdapter,\n} from \"@opencoreagents\u002Fcore\";\nimport { registerRagCatalog, registerRagToolsAndSkills } from \"@opencoreagents\u002Frag\";\n\nconst runtime = new AgentRuntime({\n  llmAdapter: \u002F* your LLM *\u002F,\n  memoryAdapter: new InMemoryMemoryAdapter(),\n  embeddingAdapter: createDemoEmbeddingAdapter(),\n  vectorAdapter: createDemoVectorAdapter(),\n  fileReadRoot: DEMO_FILE_READ_ROOT,\n  maxIterations: 15,\n});\n\nawait registerRagToolsAndSkills();\nregisterRagCatalog(runtime, \"demo-project\", DEMO_RAG_SOURCES);\n\nawait Agent.define({\n  id: \"rag-demo-agent\",\n  projectId: \"demo-project\",\n  systemPrompt:\n    \"You are a retrieval assistant. Use system_list_rag_sources \u002F system_ingest_rag_source \u002F system_vector_search as needed.\",\n  tools: [],\n  skills: [\"rag\"],\n  llm: { provider: \"openai\", model: \"gpt-4o-mini\" },\n  security: { roles: [\"agent\", \"admin\", \"operator\"] },\n});\n\nconst agent = await Agent.load(\n  \"rag-demo-agent\",\n  runtime,\n  { session: new Session({ id: \"demo-session-rag\", projectId: \"demo-project\" }) },\n);\nawait agent.run(\"Use the knowledge base to summarize the demo document.\");\n```\n\nThe repo’s **`examples\u002Frag\u002Fsrc\u002FdemoAdapters.ts`** implements **`EmbeddingAdapter`** + **`VectorAdapter`** with a tiny in-memory vector store (hashing + cosine) for local demos only — swap for OpenAI\u002FUpstash\u002Fetc. in production.\n\n## Fragments from `examples\u002Frag-contact-support`\n\nSame RAG registration pattern, plus **`InMemoryRunStore`**, **`Session.sessionContext`** (e.g. **`customerEmail`**). The real example defines **`Tool.define({ id: \"contact_support\", … })`** and **`Skill.define({ id: \"contact-support-skill\", tools: [\"contact_support\"], … })`** before **`registerRagCatalog`**.\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002Fmain.ts (middle section)\nconst runStore = new InMemoryRunStore();\n\nconst runtime = new AgentRuntime({\n  llmAdapter: createScriptedSupportLlm({ \u002F* … *\u002F }),\n  memoryAdapter: new InMemoryMemoryAdapter(),\n  runStore,\n  embeddingAdapter: createDemoEmbeddingAdapter(),\n  vectorAdapter: createDemoVectorAdapter(),\n  fileReadRoot: DEMO_FILE_READ_ROOT,\n  maxIterations: 20,\n});\n\nawait registerRagToolsAndSkills();\nregisterRagCatalog(runtime, PROJECT_ID, SUPPORT_RAG_SOURCES);\n\nawait Agent.define({\n  id: \"support-copilot\",\n  projectId: PROJECT_ID,\n  systemPrompt: [\n    \"You are a support copilot.\",\n    \"Use RAG tools: system_list_rag_sources, system_ingest_rag_source, system_vector_search as needed.\",\n    \"contact_support requires subject, body, and category; customer email comes from session context and\u002For the tool input.\",\n  ].join(\" \"),\n  tools: [],\n  skills: [\"rag\", \"contact-support-skill\"],\n  llm: { provider: \"openai\", model: \"gpt-4o-mini\" },\n  security: { roles: [\"agent\", \"admin\", \"operator\"] },\n});\n\nconst session = new Session({\n  id: \"session-support-1\",\n  projectId: PROJECT_ID,\n  sessionContext: cliEmail ? { customerEmail: cliEmail } : {},\n});\n```\n\n**`wait` \u002F `resume`** (when the scripted flow pauses for email):\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002Fmain.ts\nlet run = await agent.run(refundMessage);\n\nif (run.status === \"waiting\") {\n  const resumeText = await readUserResumeMessageAsEmail(\u002F* … *\u002F);\n  run = await agent.resume(run.runId, { type: \"text\", content: resumeText });\n}\n```\n\nSupport handbook catalog shape (same idea as `examples\u002Frag`, different files):\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002FfileSources.ts\nexport const SUPPORT_RAG_SOURCES: RagSourceDefinition[] = [\n  {\n    id: \"support-handbook\",\n    description:\n      \"Internal support handbook: refunds, international orders, escalation, and contact reference.\",\n    source: \"support-handbook.md\",\n  },\n];\n```\n\n## Docs & full examples\n\n- Pipeline & patterns: `docs\u002Freference\u002Fcore\u002F18-rag-pipeline.md`\n- Definitions \u002F sandboxing: `docs\u002Freference\u002Fcore\u002F06-definition-syntax.md`\n- Package README: `packages\u002Frag\u002FREADME.md`\n- Runnable sources (monorepo clone only): `examples\u002Frag\u002F`, `examples\u002Frag-contact-support\u002F`\n\n## Tools (high level)\n\n- **Catalog \u002F ingest:** `system_list_rag_sources`, `system_ingest_rag_source`\n- **Search \u002F files:** `system_vector_search`, `system_file_read`, `system_file_ingest`, `system_file_list` (see package exports and tests for exact contracts)\n\n## Gotchas\n\n- **Demo adapters** vs **production** vector backends—call out when an example uses in-memory or permissive settings.\n- **`fileReadRoot`** \u002F session overrides for sandboxing—see `docs\u002Freference\u002Fcore\u002F06-definition-syntax.md` and `packages\u002Frag\u002FREADME.md`.\n\nFor the full monorepo and every `docs\u002Freference\u002Fcore\u002F` topic, enable the **`opencoreagents-workspace`** skill alongside this one.\n","# OpenCore Agents — RAG (`@opencoreagents\u002Frag`)\n\n> **Bundled docs:** **`docs\u002F`** next to this file (`docs\u002Freference\u002Fcore\u002F...`); **`packages\u002Frag\u002FREADME.md`** lives under the sibling **`packages\u002F`** folder. API: `skillDocsDirectory(\"opencoreagents-rag-dynamic\")`.\n\nUse when the user needs **file ingestion**, **vector search**, **per-project catalogs**, or **skills** `rag` \u002F `rag-reader`.\n\n`@opencoreagents\u002Frag` ships from the public runtime repo [OpenCoreAgents\u002Fruntime](https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime).\n\n## Registration\n\n1. Call **`registerRagToolsAndSkills()`** from `@opencoreagents\u002Frag` once at startup (after `AgentRuntime` exists if you use runtime-bound catalog APIs).\n2. Prefer **`registerRagCatalog(runtime, projectId, entries)`** (or equivalent) so **`system_list_rag_sources`** \u002F **`system_ingest_rag_source`** work with **ids**.\n\n## Fragments from `examples\u002Frag`\n\nCatalog entries are **`RagSourceDefinition`**: stable **`id`**, **`description`** (what the list tool shows), and **`source`** (path relative to **`fileReadRoot`** or an allowed URL — see bundled `docs\u002Freference\u002Fcore\u002F18-rag-pipeline.md`).\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag\u002Fsrc\u002FfileSources.ts\nimport type { RagSourceDefinition } from \"@opencoreagents\u002Frag\";\n\nexport const DEMO_RAG_SOURCES: RagSourceDefinition[] = [\n  {\n    id: \"demo-handbook\",\n    description:\n      \"Intro markdown for this example: RAG, catalog ingest, system_vector_search, and production adapters.\",\n    source: \"sample.md\",\n  },\n];\n```\n\nWire **`embeddingAdapter`**, **`vectorAdapter`**, **`fileReadRoot`**, register tools, then catalog, then an agent with **`skills: [\"rag\"]`**:\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag\u002Fsrc\u002Fmain.ts\nimport {\n  Agent,\n  AgentRuntime,\n  Session,\n  InMemoryMemoryAdapter,\n} from \"@opencoreagents\u002Fcore\";\nimport { registerRagCatalog, registerRagToolsAndSkills } from \"@opencoreagents\u002Frag\";\n\nconst runtime = new AgentRuntime({\n  llmAdapter: \u002F* your LLM *\u002F,\n  memoryAdapter: new InMemoryMemoryAdapter(),\n  embeddingAdapter: createDemoEmbeddingAdapter(),\n  vectorAdapter: createDemoVectorAdapter(),\n  fileReadRoot: DEMO_FILE_READ_ROOT,\n  maxIterations: 15,\n});\n\nawait registerRagToolsAndSkills();\nregisterRagCatalog(runtime, \"demo-project\", DEMO_RAG_SOURCES);\n\nawait Agent.define({\n  id: \"rag-demo-agent\",\n  projectId: \"demo-project\",\n  systemPrompt:\n    \"You are a retrieval assistant. Use system_list_rag_sources \u002F system_ingest_rag_source \u002F system_vector_search as needed.\",\n  tools: [],\n  skills: [\"rag\"],\n  llm: { provider: \"openai\", model: \"gpt-4o-mini\" },\n  security: { roles: [\"agent\", \"admin\", \"operator\"] },\n});\n\nconst agent = await Agent.load(\n  \"rag-demo-agent\",\n  runtime,\n  { session: new Session({ id: \"demo-session-rag\", projectId: \"demo-project\" }) },\n);\nawait agent.run(\"Use the knowledge base to summarize the demo document.\");\n```\n\nThe repo’s **`examples\u002Frag\u002Fsrc\u002FdemoAdapters.ts`** implements **`EmbeddingAdapter`** + **`VectorAdapter`** with a tiny in-memory vector store (hashing + cosine) for local demos only — swap for OpenAI\u002FUpstash\u002Fetc. in production.\n\n## Fragments from `examples\u002Frag-contact-support`\n\nSame RAG registration pattern, plus **`InMemoryRunStore`**, **`Session.sessionContext`** (e.g. **`customerEmail`**). The real example defines **`Tool.define({ id: \"contact_support\", … })`** and **`Skill.define({ id: \"contact-support-skill\", tools: [\"contact_support\"], … })`** before **`registerRagCatalog`**.\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002Fmain.ts (middle section)\nconst runStore = new InMemoryRunStore();\n\nconst runtime = new AgentRuntime({\n  llmAdapter: createScriptedSupportLlm({ \u002F* … *\u002F }),\n  memoryAdapter: new InMemoryMemoryAdapter(),\n  runStore,\n  embeddingAdapter: createDemoEmbeddingAdapter(),\n  vectorAdapter: createDemoVectorAdapter(),\n  fileReadRoot: DEMO_FILE_READ_ROOT,\n  maxIterations: 20,\n});\n\nawait registerRagToolsAndSkills();\nregisterRagCatalog(runtime, PROJECT_ID, SUPPORT_RAG_SOURCES);\n\nawait Agent.define({\n  id: \"support-copilot\",\n  projectId: PROJECT_ID,\n  systemPrompt: [\n    \"You are a support copilot.\",\n    \"Use RAG tools: system_list_rag_sources, system_ingest_rag_source, system_vector_search as needed.\",\n    \"contact_support requires subject, body, and category; customer email comes from session context and\u002For the tool input.\",\n  ].join(\" \"),\n  tools: [],\n  skills: [\"rag\", \"contact-support-skill\"],\n  llm: { provider: \"openai\", model: \"gpt-4o-mini\" },\n  security: { roles: [\"agent\", \"admin\", \"operator\"] },\n});\n\nconst session = new Session({\n  id: \"session-support-1\",\n  projectId: PROJECT_ID,\n  sessionContext: cliEmail ? { customerEmail: cliEmail } : {},\n});\n```\n\n**`wait` \u002F `resume`** (when the scripted flow pauses for email):\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002Fmain.ts\nlet run = await agent.run(refundMessage);\n\nif (run.status === \"waiting\") {\n  const resumeText = await readUserResumeMessageAsEmail(\u002F* … *\u002F);\n  run = await agent.resume(run.runId, { type: \"text\", content: resumeText });\n}\n```\n\nSupport handbook catalog shape (same idea as `examples\u002Frag`, different files):\n\n```typescript\n\u002F\u002F Adapted from examples\u002Frag-contact-support\u002Fsrc\u002FfileSources.ts\nexport const SUPPORT_RAG_SOURCES: RagSourceDefinition[] = [\n  {\n    id: \"support-handbook\",\n    description:\n      \"Internal support handbook: refunds, international orders, escalation, and contact reference.\",\n    source: \"support-handbook.md\",\n  },\n];\n```\n\n## Docs & full examples\n\n- Pipeline & patterns: `docs\u002Freference\u002Fcore\u002F18-rag-pipeline.md`\n- Definitions \u002F sandboxing: `docs\u002Freference\u002Fcore\u002F06-definition-syntax.md`\n- Package README: `packages\u002Frag\u002FREADME.md`\n- Runnable sources (monorepo clone only): `examples\u002Frag\u002F`, `examples\u002Frag-contact-support\u002F`\n\n## Tools (high level)\n\n- **Catalog \u002F ingest:** `system_list_rag_sources`, `system_ingest_rag_source`\n- **Search \u002F files:** `system_vector_search`, `system_file_read`, `system_file_ingest`, `system_file_list` (see package exports and tests for exact contracts)\n\n## Gotchas\n\n- **Demo adapters** vs **production** vector backends—call out when an example uses in-memory or permissive settings.\n- **`fileReadRoot`** \u002F session overrides for sandboxing—see `docs\u002Freference\u002Fcore\u002F06-definition-syntax.md` and `packages\u002Frag\u002FREADME.md`.\n\nFor the full monorepo and every `docs\u002Freference\u002Fcore\u002F` topic, enable the **`opencoreagents-workspace`** skill alongside this one.\n",{"name":5,"description":7},"main","38d40ddfa0208f5631bbd22c9bddf2dc4020af79","packages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-rag-dynamic","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents","2026-08-23 13:58:50",{"source":8,"skillName":5,"commands":40,"prompt":50,"zipAvailable":51},[41,44,47],{"tool":42,"command":43},"npx","npx skills add OpenCoreAgents\u002Fruntime --skill opencoreagents-rag-dynamic",{"tool":45,"command":46},"bunx","bunx skills add OpenCoreAgents\u002Fruntime --skill opencoreagents-rag-dynamic",{"tool":48,"command":49},"pnpm","pnpm dlx skills add OpenCoreAgents\u002Fruntime --skill opencoreagents-rag-dynamic","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fpackages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-rag-dynamic\u002FSKILL.md",true,[],[54,70,90,112,128],{"skillNo":55,"name":56,"nameZh":6,"description":57,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":58,"categories":59,"keywords":60,"publishedAt":28},"01M6KK0NK1GBY9SBA5PRVYR568","opencoreagents-workspace","Navigate the OpenCore Agents monorepo (@opencoreagents\u002F*), pnpm workspaces, Turbo, docs layout, and where to change code safely.","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fpackages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-workspace\u002FSKILL.md",[],[61,62,48,63,64,65,66,67,68,69],"opencoreagents workspace","workspace","turbo","docs","change","code","monorepo","layout","workspaces",{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":28},"01M6KK0F0VEWBJAWB229JHZTAQ","opencoreagents-rest-workers","Express REST for agents\u002Fruns (@opencoreagents\u002Frest-api), BullMQ async dispatch (adapters-bullmq), Redis-backed dynamic definitions and workers (dynamic-runtime-rest).","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fpackages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-rest-workers\u002FSKILL.md",[],[77,78,79,80,81,82,83,84,85,86,87,88,89],"REST","workers","opencoreagents rest workers","redis","rest-api","api","dispatch","async","bullmq","express","runtime","Adapters","for",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":101,"publishedAt":28},"01M6KK04RQ1M89NPDZH74JKPSV","opencoreagents-engine","Implement or debug @opencoreagents\u002Fcore — AgentRuntime, Agent.load, RunBuilder, Tool.define, Skill.define, Session, RunStore, wait\u002Fresume, adapters.","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fpackages\u002Fcode-skills\u002Fskills\u002Fopencoreagents-engine\u002FSKILL.md",[96],{"categoryNo":97,"categoryName":98,"taxonomyType":99,"taxonomyTypeDesc":100},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[102,103,104,105,106,107,20,108,109,110,111,88],"opencoreagents engine","engine","resume","load","implement","debug","tool","session","define","wait",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":28},"01M6KJZYNTJ2ANZDCWSM1Q2A5T","openclaw_demo","Demonstrates the OpenClaw skill loader — uses the exec tool with Node (same runtime as pnpm start).","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fexamples\u002Fload-openclaw-skills\u002Fskills\u002Fopenclaw_demo\u002FSKILL.md",[],[119,120,121,122,123,108,124,87,48,125,126,127],"openclaw demo","demo","openclaw","exec","start","node","as","with","openclaw skill",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":134,"publishedAt":28},"01M6KJZTHYS5H1DKR5TRSDYAYY","gated_missing_bin","This skill should be skipped at load time (missing binary gate).","https:\u002F\u002Fgithub.com\u002FOpenCoreAgents\u002Fruntime\u002Fblob\u002Fmain\u002Fexamples\u002Fload-openclaw-skills\u002Fskills\u002Fgated_missing_bin\u002FSKILL.md",[],[135,136,137,138,139,140,141,105,142,120],"gated","missing","gated missing","gated missing bin","gate","time","binary","at"]