Guide for structuring Netresearch skill repositories. Use when creating new skills, standardizing existing skill repos, setting up composer distribution, or creating release workflows. Extends Anthropic's skill-creator with Netresearch-specific repository layout, multi-channel distribution (marketplace, releases, composer), and PHP ecosystem integration. By Netresearch.
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
LICENSEREADME.mdcomposer.jsonreferences/composer-setup.mdreferences/installation-methods.mdreferences/marketplace-integration.mdscripts/validate-skill.shtemplates/README.md.templatetemplates/composer.json.templatetemplates/release.yml.templateStandards for Netresearch skill repository layout, distribution, and packaging.
Use when:
{skill-name}/
├── SKILL.md # AI instructions (required)
├── README.md # Human documentation (required)
├── LICENSE # MIT license (required)
├── composer.json # PHP distribution (if applicable)
├── references/ # Extended documentation
├── scripts/ # Automation scripts
├── assets/ # Templates, configs
│ └── templates/
└── .github/
└── workflows/
└── release.yml # Release packaging workflow
| File | Audience | Purpose |
|---|---|---|
| SKILL.md | AI Agent | Instructions for Claude Code |
| README.md | Humans | Installation, usage, contributing |
| composer.json | PHP devs | Composer package distribution |
| LICENSE | Legal | MIT license |
Follow Anthropic's skill-creator specification:
---
name: skill-name # lowercase, hyphens, max 64 chars
description: "When to use this skill and what it does. By Netresearch."
---
Rules:
^[a-z0-9-]{1,64}$Use templates/README.md.template with these sections:
/plugin marketplace add netresearch/claude-code-marketplace
Download from GitHub Releases page and extract to ~/.claude/skills/{skill-name}/
composer require netresearch/agent-{skill-name}
Requires: netresearch/composer-agent-skill-plugin
Include for ALL skills EXCEPT those explicitly targeting non-PHP ecosystems (e.g., go-development-skill).
{
"name": "netresearch/agent-{skill-name}",
"description": "{skill description}",
"type": "ai-agent-skill",
"license": "MIT",
"authors": [
{
"name": "Netresearch DTT GmbH",
"email": "plugins@netresearch.de",
"homepage": "https://www.netresearch.de/",
"role": "Manufacturer"
}
],
"require": {
"netresearch/composer-agent-skill-plugin": "*"
},
"extra": {
"ai-agent-skill": "SKILL.md"
}
}
For packages with multiple skills:
{
"extra": {
"ai-agent-skill": [
"skills/skill-one/SKILL.md",
"skills/skill-two/SKILL.md"
]
}
}
SKILL.mdLICENSEreferences/scripts/assets/templates/README.md (human-facing, not needed in skill package).github/.gitignorecomposer.json.editorconfigphpunit.xml, phpstan.neonclaudedocs/Use .github/workflows/release.yml template to:
Run scripts/validate-skill.sh or manually check:
| Check | Required |
|---|---|
| SKILL.md exists | Always |
| SKILL.md has valid frontmatter | Always |
| SKILL.md under 500 lines | Always |
| README.md exists | Always |
| README.md follows template | Always |
| LICENSE file exists | Always |
| composer.json exists | Unless non-PHP skill |
| composer.json has correct type | If exists |
| Netresearch footer in README | Always |
| No composer.lock | Always |
scripts/validate-skill.shreferences/installation-methods.md - Detailed installation guidesreferences/composer-setup.md - Composer integration detailsreferences/marketplace-integration.md - Marketplace sync processtemplates/README.md.template - README templatetemplates/composer.json.template - Composer templatetemplates/release.yml.template - Release workflow template