[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MW6W35PDJC7XGGZFETGZR7":3,"skill-same:01M6MW6W35PDJC7XGGZFETGZR7":83},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":53,"repositoryHtmlUrl":54,"repositoryHomepageUrl":6,"ownerHtmlUrl":55,"ownerBlogUrl":56,"ownerDescription":57,"updatedAt":58,"install":59,"resources":72},"01M6MW6W35PDJC7XGGZFETGZR7","build-mcpb",null,"This skill should be used when the user wants to \"package an MCP server\", \"bundle an MCP\", \"make an MCPB\", \"ship a local MCP server\", \"distribute a local MCP\", discusses \".mcpb files\", mentions bundling a Node or Python runtime with their MCP server, or needs an MCP server that interacts with the local filesystem, desktop apps, or OS and must be installable without the user having Node\u002FPython set up.","Clarit-AI\u002FPlexium","Clarit-AI","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F272321547?v=4","01M6MW4NR08BDTM2D9NGWHHD5H","Clarit AI Inc. ","01M6MW4NVR41KB688VHN29VBKE",5,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmcp-server-dev\u002Fbuild-mcpb\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"mcpb","build mcpb","build","up","with","desktop apps","apps","distribute","runtime","local","files","MCP","node","filesystem","SET","server","package","desktop","mcp server","python","2026-11-10 10:12:30",false,"---\nname: build-mcpb\ndescription: This skill should be used when the user wants to \"package an MCP server\", \"bundle an MCP\", \"make an MCPB\", \"ship a local MCP server\", \"distribute a local MCP\", discusses \".mcpb files\", mentions bundling a Node or Python runtime with their MCP server, or needs an MCP server that interacts with the local filesystem, desktop apps, or OS and must be installable without the user having Node\u002FPython set up.\nversion: 0.1.0\n---\n\n# Build an MCPB (Bundled Local MCP Server)\n\nMCPB is a local MCP server **packaged with its runtime**. The user installs one file; it runs without needing Node, Python, or any toolchain on their machine. It's the sanctioned way to distribute local MCP servers.\n\n**Use MCPB when the server must run on the user's machine** — reading local files, driving a desktop app, talking to localhost services, OS-level APIs. If your server only hits cloud APIs, you almost certainly want a remote HTTP server instead (see `build-mcp-server`). Don't pay the MCPB packaging tax for something that could be a URL.\n\n---\n\n## What an MCPB bundle contains\n\n```\nmy-server.mcpb              (zip archive)\n├── manifest.json           ← identity, entry point, config schema, compatibility\n├── server\u002F                 ← your MCP server code\n│   ├── index.js\n│   └── node_modules\u002F       ← bundled dependencies (or vendored)\n└── icon.png\n```\n\nThe host reads `manifest.json`, launches `server.mcp_config.command` as a **stdio** MCP server, and pipes messages. From your code's perspective it's identical to a local stdio server — the only difference is packaging.\n\n---\n\n## Manifest\n\n```json\n{\n  \"$schema\": \"https:\u002F\u002Fraw.githubusercontent.com\u002Fanthropics\u002Fmcpb\u002Fmain\u002Fschemas\u002Fmcpb-manifest-v0.4.schema.json\",\n  \"manifest_version\": \"0.4\",\n  \"name\": \"local-files\",\n  \"version\": \"0.1.0\",\n  \"description\": \"Read, search, and watch files on the local filesystem.\",\n  \"author\": { \"name\": \"Your Name\" },\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"server\u002Findex.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\"${__dirname}\u002Fserver\u002Findex.js\"],\n      \"env\": {\n        \"ROOT_DIR\": \"${user_config.rootDir}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"rootDir\": {\n      \"type\": \"directory\",\n      \"title\": \"Root directory\",\n      \"description\": \"Directory to expose. Defaults to ~\u002FDocuments.\",\n      \"default\": \"${HOME}\u002FDocuments\",\n      \"required\": true\n    }\n  },\n  \"compatibility\": {\n    \"claude_desktop\": \">=1.0.0\",\n    \"platforms\": [\"darwin\", \"win32\", \"linux\"]\n  }\n}\n```\n\n**`server.type`** — `node`, `python`, or `binary`. Informational; the actual launch comes from `mcp_config`.\n\n**`server.mcp_config`** — the literal command\u002Fargs\u002Fenv to spawn. Use `${__dirname}` for bundle-relative paths and `${user_config.\u003Ckey>}` to substitute install-time config. **There's no auto-prefix** — the env var names your server reads are exactly what you put in `env`.\n\n**`user_config`** — install-time settings surfaced in the host's UI. `type: \"directory\"` renders a native folder picker. `sensitive: true` stores in OS keychain. See `references\u002Fmanifest-schema.md` for all fields.\n\n---\n\n## Server code: same as local stdio\n\nThe server itself is a standard stdio MCP server. Nothing MCPB-specific in the tool logic.\n\n```typescript\nimport { McpServer } from \"@modelcontextprotocol\u002Fsdk\u002Fserver\u002Fmcp.js\";\nimport { StdioServerTransport } from \"@modelcontextprotocol\u002Fsdk\u002Fserver\u002Fstdio.js\";\nimport { z } from \"zod\";\nimport { readFile, readdir } from \"node:fs\u002Fpromises\";\nimport { join } from \"node:path\";\nimport { homedir } from \"node:os\";\n\n\u002F\u002F ROOT_DIR comes from what you put in manifest's server.mcp_config.env — no auto-prefix\nconst ROOT = (process.env.ROOT_DIR ?? join(homedir(), \"Documents\"));\n\nconst server = new McpServer({ name: \"local-files\", version: \"0.1.0\" });\n\nserver.registerTool(\n  \"list_files\",\n  {\n    description: \"List files in a directory under the configured root.\",\n    inputSchema: { path: z.string().default(\".\") },\n    annotations: { readOnlyHint: true },\n  },\n  async ({ path }) => {\n    const entries = await readdir(join(ROOT, path), { withFileTypes: true });\n    const list = entries.map(e => ({ name: e.name, dir: e.isDirectory() }));\n    return { content: [{ type: \"text\", text: JSON.stringify(list, null, 2) }] };\n  },\n);\n\nserver.registerTool(\n  \"read_file\",\n  {\n    description: \"Read a file's contents. Path is relative to the configured root.\",\n    inputSchema: { path: z.string() },\n    annotations: { readOnlyHint: true },\n  },\n  async ({ path }) => {\n    const text = await readFile(join(ROOT, path), \"utf8\");\n    return { content: [{ type: \"text\", text }] };\n  },\n);\n\nconst transport = new StdioServerTransport();\nawait server.connect(transport);\n```\n\n**Sandboxing is entirely your job.** There is no manifest-level sandbox — the process runs with full user privileges. Validate paths, refuse to escape `ROOT`, allowlist spawns. See `references\u002Flocal-security.md`.\n\nBefore hardcoding `ROOT` from a config env var, check if the host supports `roots\u002Flist` — the spec-native way to get user-approved directories. See `references\u002Flocal-security.md` for the pattern.\n\n---\n\n## Build pipeline\n\n### Node\n\n```bash\nnpm install\nnpx esbuild src\u002Findex.ts --bundle --platform=node --outfile=server\u002Findex.js\n# or: copy node_modules wholesale if native deps resist bundling\nnpx @anthropic-ai\u002Fmcpb pack\n```\n\n`mcpb pack` zips the directory and validates `manifest.json` against the schema.\n\n### Python\n\n```bash\npip install -t server\u002Fvendor -r requirements.txt\nnpx @anthropic-ai\u002Fmcpb pack\n```\n\nVendor dependencies into a subdirectory and prepend it to `sys.path` in your entry script. Native extensions (numpy, etc.) must be built for each target platform — avoid native deps if you can.\n\n---\n\n## MCPB has no sandbox — security is on you\n\nUnlike mobile app stores, MCPB does NOT enforce permissions. The manifest has no `permissions` block — the server runs with full user privileges. `references\u002Flocal-security.md` is mandatory reading, not optional. Every path must be validated, every spawn must be allowlisted, because nothing stops you at the platform level.\n\nIf you came here expecting filesystem\u002Fnetwork scoping from the manifest: it doesn't exist. Build it yourself in tool handlers.\n\nIf your server's only job is hitting a cloud API, stop — that's a remote server wearing an MCPB costume. The user gains nothing from running it locally, and you're taking on local-security burden for no reason.\n\n---\n\n## MCPB + UI widgets\n\nMCPB servers can serve UI resources exactly like remote MCP apps — the widget mechanism is transport-agnostic. A local file picker that browses the actual disk, a dialog that controls a native app, etc.\n\nWidget authoring is covered in the **`build-mcp-app`** skill; it works the same here. The only difference is where the server runs.\n\n---\n\n## Testing\n\n```bash\n# Interactive manifest creation (first time)\nnpx @anthropic-ai\u002Fmcpb init\n\n# Run the server directly over stdio, poke it with the inspector\nnpx @modelcontextprotocol\u002Finspector node server\u002Findex.js\n\n# Validate manifest against schema, then pack\nnpx @anthropic-ai\u002Fmcpb validate\nnpx @anthropic-ai\u002Fmcpb pack\n\n# Sign for distribution\nnpx @anthropic-ai\u002Fmcpb sign dist\u002Flocal-files.mcpb\n\n# Install: drag the .mcpb file onto Claude Desktop\n```\n\nTest on a machine **without** your dev toolchain before shipping. \"Works on my machine\" failures in MCPB almost always trace to a dependency that wasn't actually bundled.\n\n---\n\n## Reference files\n\n- `references\u002Fmanifest-schema.md` — full `manifest.json` field reference\n- `references\u002Flocal-security.md` — path traversal, sandboxing, least privilege\n","# Build an MCPB (Bundled Local MCP Server)\n\nMCPB is a local MCP server **packaged with its runtime**. The user installs one file; it runs without needing Node, Python, or any toolchain on their machine. It's the sanctioned way to distribute local MCP servers.\n\n**Use MCPB when the server must run on the user's machine** — reading local files, driving a desktop app, talking to localhost services, OS-level APIs. If your server only hits cloud APIs, you almost certainly want a remote HTTP server instead (see `build-mcp-server`). Don't pay the MCPB packaging tax for something that could be a URL.\n\n---\n\n## What an MCPB bundle contains\n\n```\nmy-server.mcpb              (zip archive)\n├── manifest.json           ← identity, entry point, config schema, compatibility\n├── server\u002F                 ← your MCP server code\n│   ├── index.js\n│   └── node_modules\u002F       ← bundled dependencies (or vendored)\n└── icon.png\n```\n\nThe host reads `manifest.json`, launches `server.mcp_config.command` as a **stdio** MCP server, and pipes messages. From your code's perspective it's identical to a local stdio server — the only difference is packaging.\n\n---\n\n## Manifest\n\n```json\n{\n  \"$schema\": \"https:\u002F\u002Fraw.githubusercontent.com\u002Fanthropics\u002Fmcpb\u002Fmain\u002Fschemas\u002Fmcpb-manifest-v0.4.schema.json\",\n  \"manifest_version\": \"0.4\",\n  \"name\": \"local-files\",\n  \"version\": \"0.1.0\",\n  \"description\": \"Read, search, and watch files on the local filesystem.\",\n  \"author\": { \"name\": \"Your Name\" },\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"server\u002Findex.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\"${__dirname}\u002Fserver\u002Findex.js\"],\n      \"env\": {\n        \"ROOT_DIR\": \"${user_config.rootDir}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"rootDir\": {\n      \"type\": \"directory\",\n      \"title\": \"Root directory\",\n      \"description\": \"Directory to expose. Defaults to ~\u002FDocuments.\",\n      \"default\": \"${HOME}\u002FDocuments\",\n      \"required\": true\n    }\n  },\n  \"compatibility\": {\n    \"claude_desktop\": \">=1.0.0\",\n    \"platforms\": [\"darwin\", \"win32\", \"linux\"]\n  }\n}\n```\n\n**`server.type`** — `node`, `python`, or `binary`. Informational; the actual launch comes from `mcp_config`.\n\n**`server.mcp_config`** — the literal command\u002Fargs\u002Fenv to spawn. Use `${__dirname}` for bundle-relative paths and `${user_config.\u003Ckey>}` to substitute install-time config. **There's no auto-prefix** — the env var names your server reads are exactly what you put in `env`.\n\n**`user_config`** — install-time settings surfaced in the host's UI. `type: \"directory\"` renders a native folder picker. `sensitive: true` stores in OS keychain. See `references\u002Fmanifest-schema.md` for all fields.\n\n---\n\n## Server code: same as local stdio\n\nThe server itself is a standard stdio MCP server. Nothing MCPB-specific in the tool logic.\n\n```typescript\nimport { McpServer } from \"@modelcontextprotocol\u002Fsdk\u002Fserver\u002Fmcp.js\";\nimport { StdioServerTransport } from \"@modelcontextprotocol\u002Fsdk\u002Fserver\u002Fstdio.js\";\nimport { z } from \"zod\";\nimport { readFile, readdir } from \"node:fs\u002Fpromises\";\nimport { join } from \"node:path\";\nimport { homedir } from \"node:os\";\n\n\u002F\u002F ROOT_DIR comes from what you put in manifest's server.mcp_config.env — no auto-prefix\nconst ROOT = (process.env.ROOT_DIR ?? join(homedir(), \"Documents\"));\n\nconst server = new McpServer({ name: \"local-files\", version: \"0.1.0\" });\n\nserver.registerTool(\n  \"list_files\",\n  {\n    description: \"List files in a directory under the configured root.\",\n    inputSchema: { path: z.string().default(\".\") },\n    annotations: { readOnlyHint: true },\n  },\n  async ({ path }) => {\n    const entries = await readdir(join(ROOT, path), { withFileTypes: true });\n    const list = entries.map(e => ({ name: e.name, dir: e.isDirectory() }));\n    return { content: [{ type: \"text\", text: JSON.stringify(list, null, 2) }] };\n  },\n);\n\nserver.registerTool(\n  \"read_file\",\n  {\n    description: \"Read a file's contents. Path is relative to the configured root.\",\n    inputSchema: { path: z.string() },\n    annotations: { readOnlyHint: true },\n  },\n  async ({ path }) => {\n    const text = await readFile(join(ROOT, path), \"utf8\");\n    return { content: [{ type: \"text\", text }] };\n  },\n);\n\nconst transport = new StdioServerTransport();\nawait server.connect(transport);\n```\n\n**Sandboxing is entirely your job.** There is no manifest-level sandbox — the process runs with full user privileges. Validate paths, refuse to escape `ROOT`, allowlist spawns. See `references\u002Flocal-security.md`.\n\nBefore hardcoding `ROOT` from a config env var, check if the host supports `roots\u002Flist` — the spec-native way to get user-approved directories. See `references\u002Flocal-security.md` for the pattern.\n\n---\n\n## Build pipeline\n\n### Node\n\n```bash\nnpm install\nnpx esbuild src\u002Findex.ts --bundle --platform=node --outfile=server\u002Findex.js\n# or: copy node_modules wholesale if native deps resist bundling\nnpx @anthropic-ai\u002Fmcpb pack\n```\n\n`mcpb pack` zips the directory and validates `manifest.json` against the schema.\n\n### Python\n\n```bash\npip install -t server\u002Fvendor -r requirements.txt\nnpx @anthropic-ai\u002Fmcpb pack\n```\n\nVendor dependencies into a subdirectory and prepend it to `sys.path` in your entry script. Native extensions (numpy, etc.) must be built for each target platform — avoid native deps if you can.\n\n---\n\n## MCPB has no sandbox — security is on you\n\nUnlike mobile app stores, MCPB does NOT enforce permissions. The manifest has no `permissions` block — the server runs with full user privileges. `references\u002Flocal-security.md` is mandatory reading, not optional. Every path must be validated, every spawn must be allowlisted, because nothing stops you at the platform level.\n\nIf you came here expecting filesystem\u002Fnetwork scoping from the manifest: it doesn't exist. Build it yourself in tool handlers.\n\nIf your server's only job is hitting a cloud API, stop — that's a remote server wearing an MCPB costume. The user gains nothing from running it locally, and you're taking on local-security burden for no reason.\n\n---\n\n## MCPB + UI widgets\n\nMCPB servers can serve UI resources exactly like remote MCP apps — the widget mechanism is transport-agnostic. A local file picker that browses the actual disk, a dialog that controls a native app, etc.\n\nWidget authoring is covered in the **`build-mcp-app`** skill; it works the same here. The only difference is where the server runs.\n\n---\n\n## Testing\n\n```bash\n# Interactive manifest creation (first time)\nnpx @anthropic-ai\u002Fmcpb init\n\n# Run the server directly over stdio, poke it with the inspector\nnpx @modelcontextprotocol\u002Finspector node server\u002Findex.js\n\n# Validate manifest against schema, then pack\nnpx @anthropic-ai\u002Fmcpb validate\nnpx @anthropic-ai\u002Fmcpb pack\n\n# Sign for distribution\nnpx @anthropic-ai\u002Fmcpb sign dist\u002Flocal-files.mcpb\n\n# Install: drag the .mcpb file onto Claude Desktop\n```\n\nTest on a machine **without** your dev toolchain before shipping. \"Works on my machine\" failures in MCPB almost always trace to a dependency that wasn't actually bundled.\n\n---\n\n## Reference files\n\n- `references\u002Fmanifest-schema.md` — full `manifest.json` field reference\n- `references\u002Flocal-security.md` — path traversal, sandboxing, least privilege\n",{"name":5,"version":49,"description":7},"0.1.0","main","f6a2ee3740e95ae29a69a1fc347c9dcb9c53ea68",".claude\u002Fskills\u002Fmcp-server-dev\u002Fbuild-mcpb",0,"https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium","https:\u002F\u002Fgithub.com\u002FClarit-AI","Clarit.ai","Effectively treats: context loss, memory drift, and cognitive overhead in AI systems.\r\nAsk your agent if persistent memory is right for you... or them.","2026-11-02 11:31:08",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add Clarit-AI\u002FPlexium --skill build-mcpb",{"tool":65,"command":66},"bunx","bunx skills add Clarit-AI\u002FPlexium --skill build-mcpb",{"tool":68,"command":69},"pnpm","pnpm dlx skills add Clarit-AI\u002FPlexium --skill build-mcpb","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmcp-server-dev\u002Fbuild-mcpb\u002FSKILL.md",true,[73,79],{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"references\u002Flocal-security.md","REFERENCE","参考文档",5384,"https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmcp-server-dev\u002Fbuild-mcpb\u002Freferences\u002Flocal-security.md",{"path":80,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":81,"sourceHtmlUrl":82},"references\u002Fmanifest-schema.md",5359,"https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmcp-server-dev\u002Fbuild-mcpb\u002Freferences\u002Fmanifest-schema.md",[84,104,126,131,137,154],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":44},"01M6MW91DQB5R5F3K2DN3ZWS58","plexium-user","Operate within a Plexium-powered repository — read wiki before work, update wiki after changes, follow ownership rules, use retrieval","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Fskills\u002Fplexium-user\u002Fskill.md",[],[91,92,93,94,95,96,97,98,99,100,101,102,103],"user","plexium user","wiki","changes","operate","ownership","retrieval","use","read","work","Rules","repository","update",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":113,"publishedAt":44},"01M6MW8WD43P56N0FV8NXB9R1K","plexium-dev","Develop and contribute to the Plexium codebase — package structure, build commands, test patterns, architecture layers","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Fskills\u002Fplexium-dev\u002Fskill.md",[110],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[114,115,26,116,117,40,118,119,120,121,122,123,124,125],"plexium dev","dev","develop","contribute","architecture","test","patterns","codebase","layers","test patterns","commands","structure",{"skillNo":127,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":44},"01M6MW8RCVRQ3A5JD3VARXV49A","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Finternal\u002Fskills\u002Fcontent\u002Fplexium-user\u002Fskill.md",[],[92,91,99,94,95,96,97,98,103,101,93,102,100],{"skillNo":132,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":136,"publishedAt":44},"01M6MW8NB4BCAPNY25437VYP7Q","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Finternal\u002Fskills\u002Fcontent\u002Fplexium-dev\u002Fskill.md",[135],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},[114,115,125,121,122,123,124,120,26,116,117,40,118,119],{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":144,"publishedAt":44},"01M6MW8HR4CD6J2HQKG8JTGEFD","setup-plexium","Use when the user wants to initialize Plexium, set up the current repository for Codex, verify readiness, or connect Plexium's MCP server in Codex.","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Fdistribution\u002Fcodex-plugin\u002Fskills\u002Fsetup-plexium\u002FSKILL.md",[143],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[145,146,39,147,27,98,91,148,149,38,102,150,151,42,152,35,153],"setup","setup plexium","verify readiness","initialize","verify","readiness","connect","codex","for",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":160,"publishedAt":44},"01M6MW8DNPWN7K0T56SXYBFEA8","query-plexium-wiki","Use when the user wants to search or retrieve information from the Plexium wiki in the current repository.","https:\u002F\u002Fgithub.com\u002FClarit-AI\u002FPlexium\u002Fblob\u002Fmain\u002Fdistribution\u002Fcodex-plugin\u002Fskills\u002Fquery-plexium-wiki\u002FSKILL.md",[],[161,162,93,163,98,91,102,164],"query plexium wiki","query","information","search"]