Matt Pocock skills
Inside Matt Pocock skills: invocation boundaries and shared references
Read the collection as a graph of human entry points, reusable disciplines and project conventions rather than a hidden orchestration engine.
What you will learn
- The control boundary is part of the design
- Keep reusable knowledge in one owning place
- Not every reference is a hard prerequisite
Before you start
- Basic repository, issue-tracker and test concepts
- An understanding that instructions and permission are different
Choose an adoption model and trace its files, authority boundaries and verification evidence.
Key takeaways
- Invocation flags express intended reach, not universal permission enforcement.
- Consulting domain vocabulary and modifying domain decisions are different operations.
- Tracker configuration can be a hard prerequisite while glossary context is optional.
The control boundary is part of the design
The repository distinguishes human entry points from automatically discoverable disciplines. For its user-invoked skills, SKILL.md carries disable-model-invocation and the accompanying OpenAI metadata carries allow_implicit_invocation: false. The project’s convention is to keep the two declarations aligned. This expresses the intended integration contract; it is not an independent security sandbox.
A human-facing router such as ask-matt describes which entry point fits a situation. It does not turn that description into authority to launch another human-only workflow. When examining a real host, verify which metadata it honors and how it exposes invocation; the repository’s design note is not a guarantee about every host version.
Keep reusable knowledge in one owning place
The invocation guide assigns reusable disciplines to model-invoked skills and directs dependent skills to reach them explicitly. Supporting documents remain with the skill that owns them. This reduces parallel copies of a testing or domain-modeling rule that would otherwise drift after edits. A dependency should be visible in the instructions, not guessed from a folder name.
Project context occupies a different layer. Reading an existing glossary is passive vocabulary lookup; actively challenging terms and writing decisions is domain-modeling work. Mixing those operations makes a read-only exploration unexpectedly mutate project knowledge. The distinction gives a reviewer a concrete question: did this task merely consult context, or was it authorized to change it?
Not every reference is a hard prerequisite
The setup ADR distinguishes workflows that require a tracker or label mapping from disciplines that can still operate without a glossary. A ticket cannot be published correctly if its destination is unknown. A behavior-focused test can still be useful without a domain document, though names and assumptions may be less precise. This is a dependency distinction, not a reason to invent missing configuration.
Represent the collection with three layers: deliberate entry points, reusable discipline, and repository-specific conventions. There is no need to invent a queue server or execution daemon to explain it. When adapting a skill, trace both its invocation dependencies and its expected project files so a small text edit does not silently change the workflow’s authority or prerequisites.
Implementation steps
- 1
Identify the human-invoked entry point for the task.
- 2
Trace the reusable skills it explicitly references.
- 3
List the project files and external destinations it expects.
- 4
Verify the host’s behavior before relying on an invocation boundary.
Copy-ready example
{
"entryPoint": "human-invoked workflow",
"reusableLayer": ["testing discipline", "domain modeling"],
"projectContext": ["issue tracker", "label mapping", "domain documents"],
"metadataIsSecuritySandbox": false
}Frequently asked questions
Does a slash-command mention automatically execute a skill?
Not by itself. The repository distinguishes descriptive router text from operative invocation instructions, and actual execution depends on the host.
Must every discipline refuse to work without setup?
No. The source separates hard configuration dependencies from context that improves output but can be absent.
Sources
- .agents/invocation.mdSource checked 2026-09-08
- .agents/adr/0001-explicit-setup-pointer-only-for-hard-dependencies.mdSource checked 2026-09-08
- skills/productivity/writing-for-agents/SKILL-MECHANICS.mdSource checked 2026-09-08