Layered Skill Architecture — Reference
SkillFiles & storageExample skill, reference implementation of the **internal** layered architecture pattern (Tools / Services / Utils) for complex skills with shared business logic. Use as a template when a skill outgrows a single scripts/execute.py file. Not intended for production use, see docs/guide/skills.md for the architectural guide.
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the Layered Skill Architecture skill
What this skill tells your AI
The instructions your AI receives, as published by dcc-mcp/dcc-mcp-core in examples/skills/example-layered-skill/SKILL.md and read by ahel’s review.
This skill demonstrates the internal layered organisation recommended for
complex skills (see docs/guide/skills.md
section "Complex Skill Architecture").
It is intentionally simple — three asset-management tools that share a small service object — so the structure, not the business logic, is the focus.
Layout
example-layered-skill/
├── SKILL.md ← this file (frontmatter + prose)
├── tools.yaml ← MCP tool declarations (sibling, per #356)
├── scripts/
│ ├── __init__.py
│ ├── create_asset.py ← thin tool adapters (parse params, return envelope)
│ ├── publish_asset.py
│ ├── validate_asset.py
│ ├── services/ ← business logic (orchestration, error handling)
│ │ ├── __init__.py
│ │ └── asset_service.py
│ └── utils/ ← pure helpers (no I/O, no DCC calls, fully unit-testable)
│ ├── __init__.py
│ └── path_utils.py
└── prompts/
└── system.md ← optional system prompt sidecar
Layer responsibilities
| Layer | Responsibility | Size guidance |
|---|---|---|
| tool scripts | Parse JSON params from stdin, validate, delegate, return envelope. | < 30 lines |
| services/ | Orchestrate DCC commands. Easily unit-testable in isolation. | Grows with feature |
| utils/ | Pure functions — path normalisation, primitive helpers. No side effects. | Grows with feature |
Tools exposed
| Tool | Description |
|---|---|
example_layered_skill__create_asset | Create a new asset record |
example_layered_skill__publish_asset | Publish an existing asset |
example_layered_skill__validate_asset | Validate an asset against project rules (read-only) |
Why a sibling tools.yaml
Per #356, tool
declarations live in a sibling YAML referenced from
metadata.dcc-mcp.tools so that SKILL.md frontmatter stays
agentskills.io 1.0 compliant.
Signals
- GitHub stars
- 48
- Forks
- 4
- Last commit
- Oct 2026
ahel review
K6info
bundled executables the agent is told to run
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
example-layered-skill- Source
- github.com/dcc-mcp/dcc-mcp-core
github.com/dcc-mcp/dcc-mcp-core
Related picks
Skill · wshobson
The pick for Pythonpython-pro
Skill · jeffallan
The pick for Pythonpptx
Skill · anthropics
More in Files & storagedocx
Skill · anthropics
More in Files & storageresearch
Skill · mattpocock
More in Files & storageto-tickets
Skill · mattpocock
More in Files & storage