Claude Code Agent Development
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
Creates or updates Margin Eval agent definitions for new CLI coding agents.
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Margin-Lab/evals agent-definition-creator --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/agent-definition-creator .claude/skills/agent-definition-creator && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .claude/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creatorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Margin-Lab/evals agent-definition-creator --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/agent-definition-creator .agents/skills/agent-definition-creator && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .agents/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Margin-Lab/evals agent-definition-creator --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/agent-definition-creator .cursor/skills/agent-definition-creator && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .cursor/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Margin-Lab/evals.git --path .agents/skills/agent-definition-creator--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Margin-Lab/evals agent-definition-creator --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/agent-definition-creator .gemini/skills/agent-definition-creator && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .gemini/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Margin-Lab/evals agent-definition-creatorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/agent-definition-creator .github/skills/agent-definition-creator && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .github/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Margin-Lab/evals --skill agent-definition-creator -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Margin-Lab/evals agent-definition-creator --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Margin-Lab/evals.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/agent-definition-creator .opencode/skills/agent-definition-creator && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "agent-definition-creator" agent skill from https://github.com/Margin-Lab/evals/tree/main/.agents/skills/agent-definition-creator into .opencode/skills/agent-definition-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "agent-definition-creator", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
agent-definition-creatorCreates or updates Margin Eval agent definitions for new CLI coding agents.
Agent Definition Creator is an agent skill from Margin-Lab/evals. Creates or updates Margin Eval agent definitions for new CLI coding agents. Use this skill when Codex needs to add support for a new agent, scaffold a directory under configs/agent-definitions/, define schemas and hooks, add example agent configs, or review an existing definition for missing auth, unified-mode, install, snapshot, or trajectory behavior.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows. The repository describes itself as: Fast, robust, configurable agent evals. The licence is AGPL-3.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit b57dfe9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Agent Definition Creator loads about 2.4k tokens when it runs. Until then it costs about 96 tokens; SKILL.md has 1,084 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Margin-Lab/evals at commit b57dfe9, republished under its AGPL-3.0 licence (© Margin-Lab). 1,084 words, ~2,392 tokens.
.claude/skills/agent-definition-creator/SKILL.md (or your agent's skills folder).Create Margin agent definitions by collecting the missing runtime facts first, selecting the nearest existing definition pattern second, and only then writing definition.toml, schema.json, hooks, and example configs.
Do not start writing files until these questions are answered from docs, --help output, installed CLI behavior, or user input:
latest, exact version, semver range, or non-npm installconfig.inputmodel, reasoning_level, and mcp.servers[] can be translated cleanlyAGENTS.md, CLAUDE.md, or some other filenameIf any item is unknown, investigate it before writing hooks. Most definition failures come from guessing auth, launch flags, or trajectory sources.
Every definition lives under:
configs/agent-definitions/<agent>/
├── definition.toml
├── schema.json
└── hooks/
├── install-check.*
├── install-run.*
├── run-prepare.*
├── translate-unified.* # optional
├── validate-config.* # optional
├── snapshot-prepare.* # optional
└── trajectory-collect.* # optionalRequired pieces:
definition.toml: declare auth, schema, hook paths, toolchains, and optional featuresschema.json: validate the direct-mode [input] shapehooks/install-check.*: report whether the agent is already installedhooks/install-run.*: install the agent and return install metadatahooks/run-prepare.*: write any runtime config files and return the launch exec specOptional pieces:
hooks/translate-unified.*: map shared unified config into direct inputhooks/validate-config.*: enforce semantic rules that JSON Schema cannot expresshooks/snapshot-prepare.*: enable POST /v1/run/snapshothooks/trajectory-collect.*: convert the agent's native logs or session data into ATIFCommon optional manifest sections:
[toolchains.node]: declare managed Node/npm for JS hooks or npm-installed CLIs[auth.local_credentials]: support local OAuth or credential file discovery[auth.provider_selection] and [[auth.providers]]: support provider-qualified auth selection[skills]: tell agent-server where to materialize packaged skills inside run home[agents_md]: tell agent-server which instruction filename to write into the project root[config.unified]: advertise unified-mode translation and allowed valuesRead these repo files before creating or updating a definition:
docs/cli/add-support-for-a-new-agent/01-overview.mdagent-server/docs/design.mdagent-server/docs/unified-config.mdagent-server/docs/agent-config/*.mdagent-server/docs/plugins/commands-*.mdconfigs/agent-definitions/*/definition.tomlconfigs/example-agent-configs/*/config.tomlDo not start from a blank definition if a repo-owned definition already matches the agent's shape.
Run:
margin init agent-definition --definition ./configs/agent-definitions/<agent>
margin init agent-config --agent-config ./configs/example-agent-configs/<agent>-default --definition ./configs/agent-definitions/<agent>If unified mode will be supported, also plan to add configs/example-agent-configs/<agent>-unified.
Design schema.json around the exact fields the hooks need, not around the shared unified format.
Prefer:
settings_json, config_jsonc, or config_toml only when the agent truly consumes a raw config fileprovider field when auth or model resolution depends on provider selectionKeep the direct input minimal. Every field should be used by install, run, snapshot, or validation hooks.
definition.tomlDeclare:
kind, name, descriptionRules:
[toolchains.node] whenever hooks are JS or install uses npm[snapshot] if the agent can actually support snapshot collection[config.unified] if translation is real, not aspirational[auth.provider_selection] when required env depends on providerAll hooks:
AGENT_CONTEXT_JSONImplement them in this order:
install-check
Return installed status and any version details after probing the binary.install-run
Install the requested version, probe again, and return structured install metadata.run-prepare
Write config files into run home, set env vars, and return {path,args,env,dir}.validate-config if needed
Reject semantic mismatches such as provider/model disagreement.translate-unified if supported
Translate shared unified input into direct config.input.snapshot-prepare if supported
Return the command used for snapshot capture.trajectory-collect if supported
Convert native logs or session files into valid ATIF.Create at least one direct config under configs/example-agent-configs/<agent>-default/.
Add a unified example only if:
modelreasoning_levelRun a dry-run first:
margin run \
--suite ./suites/swe-minimal-test-suite \
--agent-config ./configs/example-agent-configs/<agent>-default \
--eval ./configs/example-eval-configs/default.toml \
--dry-runThen run a real smoke test if credentials are available and inspect the produced artifacts.
reasoning_level means the same thing across agents. Some translators map it directly, some render it into config, and some must ignore it.skills.home_rel_dir and agents_md.filename must match what the agent actually reads.definition.toml matches the actual auth and capability modelschema.json matches direct-mode inputdefinition.toml exist and are executable[trajectory] is declared[snapshot] is declared© Margin-Lab, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/agent-definition-creator of Margin-Lab/evals.
Open the folder on GitHubat commit b57dfe9
Agent Definition Creator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Agent Definition Creator this skillMargin-Lab/evals | 161 | — | ~2.4k | Automated safety check: Pass | AGPL-3.0 | |
| Claude Code Agent Developmentanthropics/claude-plugins-official | 38k | 8 repos | ~2.8k | Automated safety check: Pass | Apache-2.0 | |
| Copilot Session Failure Analysisdotnet/maui | 23k | — | ~3.4k | Automated safety check: Pass | MIT | |
| Mem0 CLI Memory Commandsmem0ai/mem0 | 67k | — | ~2k | Automated safety check: Notes | Apache-2.0 | |
| Install and Run Cogneetopoteretes/cognee | 32k | 1 repos | ~1k | Automated safety check: Notes | Apache-2.0 | |
| Create Agentvectorize-io/hindsight | 47k | — | ~1.1k | Automated safety check: Pass | MIT |
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
dotnet/maui
Mines local Copilot CLI session logs for dotnet/maui to rank costly or failing runs, tag recurring failure modes, propose repo edits and emit guard evals.
mem0ai/mem0
Adds, searches, lists, updates and deletes memories on the Mem0 platform from the terminal with the mem0 command, including a JSON mode built for agents.
topoteretes/cognee
Installs the cognee AI memory library in a Python environment, sets the LLM key and gets a first remember and recall script running with the Python SDK.
vectorize-io/hindsight
Create a new Hindsight-powered subagent with long-term memory.
google-antigravity/antigravity-sdk-python
Design, implement, and debug autonomous AI agents and multi-agent systems using the Google Antigravity (AGY) SDK.
Margin-Lab/evals
Converts test suites from external eval frameworks into the Margin Eval suite format.
Margin-Lab/evals
Creates new Margin Eval test suites from scratch. An agent skill from Margin-Lab/evals.
Categories
Creates or updates Margin Eval agent definitions for new CLI coding agents. Agent Definition Creator is an agent skill from Margin-Lab/evals. Creates or updates Margin Eval agent definitions for new CLI coding agents.
Agent Definition Creator fits situations like: Codex needs to add support for a new agent; scaffold a directory under configs/agent-definitions/; define schemas and hooks; add example agent configs.
Run `npx skills add Margin-Lab/evals --skill agent-definition-creator -a claude-code`. Or copy the skill folder (.agents/skills/agent-definition-creator in Margin-Lab/evals) into .claude/skills/agent-definition-creator in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Margin-Lab/evals --skill agent-definition-creator -a codex`. Or copy the skill folder (.agents/skills/agent-definition-creator in Margin-Lab/evals) into .agents/skills/agent-definition-creator in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Margin-Lab/evals --skill agent-definition-creator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agent-definition-creator, .gemini/skills/agent-definition-creator, .github/skills/agent-definition-creator and .opencode/skills/agent-definition-creator in your project.
SKILL.md names no scripts, command-line tools or credentials: Agent Definition Creator is instructions for the agent only. Our summary lists: Node.js.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Agent Definition Creator is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Agent Definition Creator: Claude Code Agent Development (anthropics/claude-plugins-official, 38k stars), Copilot Session Failure Analysis (dotnet/maui, 23k stars), Mem0 CLI Memory Commands (mem0ai/mem0, 67k stars) and Install and Run Cognee (topoteretes/cognee, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Margin-Lab (a GitHub organization) maintains it in Margin-Lab/evals, which has 161 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on July 31, 2026.
Source: Margin-Lab/evals on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.