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.
Use Layered Skill Architecture — Reference in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Layered Skill Architecture — Reference and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Layered Skill Architecture
Details
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.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
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
- 51
- 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