ワンクリックで
skill-building
Design and create agent skill packages — instruction-based and MCP-based skills, manifest format
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Design and create agent skill packages — instruction-based and MCP-based skills, manifest format
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Feishu/Lark platform interaction via MCP - documents, tasks, calendar, Bitable, messaging
Use the Claude Code CLI for complex refactors, multi-file changes, and sustained codebase exploration
Use the OpenAI Codex CLI for quick fixes, targeted edits, and non-interactive automation
Use external coding tools (Claude Code, Codex, Cursor) via invoke_coding_tool and coding_tool_apply to implement, debug, and refactor code
Use the Cursor CLI agent mode for IDE-integrated coding with project rules and repo-aware edits
Learn from experience — capture insights, organize knowledge, share reusable practices as skills, and refine your role over time
| name | skill-building |
| description | Design and create agent skill packages — instruction-based and MCP-based skills, manifest format |
This skill teaches you how to create Markus skill packages — directory-based artifacts that teach agents new capabilities. A skill can work in two ways (or both):
SKILL.md file with instructions injected into the agent's context, guiding it to use existing tools in new ways.Most skills are instruction-based. Use MCP-based skills when the capability requires new tools that don't exist yet (e.g., connecting to an external API, browser automation, hardware control).
CRITICAL: Skill artifacts MUST be saved under this exact path — the Builder page, install system, and deliverable detection all depend on it:
~/.markus/builder-artifacts/skills/{skill-name}/
├── skill.json # Manifest (auto-created from your JSON output)
├── SKILL.md # Instruction document (you write via file_write)
├── README.md # Human-readable documentation (optional)
└── ... # Any other files: scripts, MCP servers, configs, templates, etc.
Do NOT write artifacts to ~/.markus/shared/, your working directory, or any other location. Only ~/.markus/builder-artifacts/skills/ is recognized by the system.
A skill directory can contain any files needed for the skill to work — not just SKILL.md and README.md. For example:
server.mjs) that provide new tools to the agentWhen the user installs the artifact, the entire directory (all files) is deployed to ~/.markus/skills/{skill-name}/. SKILL.md is loaded and injected into the agent's context when the skill is activated. If the manifest declares mcpServers, those servers are started and their tools registered to the agent. skill.json contains metadata used by the skill registry. README.md provides documentation for humans browsing or sharing the skill.
Output the skill in two steps — manifest first, then content files. Never put file content inline in the JSON.
file_write for each content file.file_write to write the manifest JSON file directly (e.g., file_write("~/.markus/builder-artifacts/skills/{name}/skill.json", ...)) → then use file_write for each content file. When submitting deliverables, set the reference to the artifact directory path.file_write.In chat mode: Output the skill configuration as a JSON code block. The system auto-saves it.
In task/A2A mode: Write the manifest JSON file directly via file_write.
This JSON contains ONLY metadata — no file content.
Instruction-based skill (most common):
{
"type": "skill",
"name": "skill-name-kebab-case",
"displayName": "Skill Name",
"version": "1.0.0",
"description": "When and why an agent should use this skill",
"author": "Your Name",
"category": "custom",
"tags": ["tag1", "tag2"],
"skill": {
"skillFile": "SKILL.md"
}
}
MCP-based skill (provides new tools via a bundled server script):
{
"type": "skill",
"name": "my-api-connector",
"displayName": "My API Connector",
"version": "1.0.0",
"description": "Connect to My API for data retrieval and actions",
"author": "Your Name",
"category": "custom",
"tags": ["api", "connector"],
"skill": {
"skillFile": "SKILL.md",
"requiredPermissions": ["network"],
"mcpServers": {
"my-api": {
"command": "node",
"args": ["${SKILL_DIR}/server.mjs"]
}
}
}
}
Notes on MCP servers:
${SKILL_DIR} is resolved at load time to the skill's actual directory path — use it to reference bundled scripts.command can be any executable (node, python3, npx, etc.).my-api__tool_name). Mention these prefixed names in SKILL.md."command": "npx", "args": ["-y", "some-mcp-server@latest"].The system automatically saves this JSON and creates the directory. After that, you proceed to write files.
After the JSON is saved, write each file individually using file_write. The base path is ~/.markus/builder-artifacts/skills/{skill-name}/ (use the name from your JSON).
Write files in this order:
SKILL.md (REQUIRED) — The instruction document with YAML frontmatter and comprehensive Markdown body:
name and description (must match manifest)MCP server script (if MCP-based) — e.g., server.mjs implementing the MCP protocol over stdio. Must handle initialize, tools/list, and tools/call JSON-RPC methods.
README.md (optional) — Human-readable documentation for browsing or sharing.
Any other files — Helper scripts, templates, config files, data files, etc.
Example file_write calls:
file_write("~/.markus/builder-artifacts/skills/git-changelog/SKILL.md", "---\nname: git-changelog\ndescription: Generate changelogs from git history\n---\n\n# Git Changelog\n\n## Overview\n...\n\n## Instructions\n...\n\n## Examples\n...")
file_write("~/.markus/builder-artifacts/skills/git-changelog/README.md", "# Git Changelog\n\nA skill that helps agents generate changelogs from git history...\n")
type: Always "skill"name: MUST be English kebab-case (e.g., git-changelog, web-scraper). Must match SKILL.md frontmatter name. This is the directory name and identifier.displayName: Human-readable skill name, can be in any languageversion: Semver (default "1.0.0")description: When and why an agent should use this skill (can be in any language)category: Typically "custom" for user-created skillstags: Array of descriptive tagsskill section (REQUIRED)skillFile: Always "SKILL.md" — the entry point instruction documentrequiredPermissions: (optional) Array of permissions: "shell", "file", "network", "browser"mcpServers: (optional) Map of MCP server name → config. Each config has command, args?, env?. Use ${SKILL_DIR} in args/env to reference the skill directory.alwaysOn: (optional, boolean) If true, the skill's instructions are automatically injected into every agent's context at startup. Only use this for foundational skills that all agents must always follow (e.g., self-evolution). Default is false — non-alwaysOn built-in skills are listed as "available" in the agent's identity section and can be activated on-demand via discover_tools.CRITICAL: Creating an artifact is NOT the same as installing/deploying it. Creating writes files to
builder-artifacts/; installing makes the skill available to agents in the live org. NEVER auto-install. Only install when the user explicitly asks. This applies to ALL modes (chat, task, A2A).
Once all files are written, tell the user:
package_install). Do NOT install unless asked.shell_execute, file_read, file_write, file_edit, grep_search, glob_find, list_directory, web_fetch, web_search, gui — or MCP tool names if the skill provides its own toolsmy-api__search) in SKILL.md so the agent knows how to use themfile_write — announce what you're writingnpx to reference published packagesfile_write for files.~/.markus/shared/ or your working directory. Always use ~/.markus/builder-artifacts/skills/{name}/.name field MUST be English kebab-case (e.g., git-changelog, not 网页抓取器). This is the directory name and package identifier.name field and SKILL.md frontmatter name must match exactly.author must be a plain string (your name, e.g. "John") — NOT an object. tags must be an array of strings. version must be semver string. description must be a string. The system validates the manifest on write and will reject malformed files.