For the complete documentation index, see llms.txt. This page is also available as Markdown.

Skill

Skills are lazy prose procedures for classes of analytical reasoning — how the agent thinks through an analysis, not what exists in the data.

A lazy prose procedure for a class of analytical reasoning — root-cause analysis, churn investigation, pipeline review. Skills capture how the agent thinks, not what exists in the data.

What it is

A skill is the runbook you'd hand a junior analyst for a recurring kind of analysis. It is verb-shaped — "how to investigate churn" — not noun-shaped. That distinction is the rule that keeps skills/ from becoming a garbage drawer:

  • A fact about an entity goes on the entity.

  • A way of reasoning across an analysis goes in a skill.

Two further rules follow:

  • Skills don't define new schema. If a skill needs a value the schema doesn't have, add a feature or metric — don't compute it inside the skill. Skills use features and metrics; they don't define them.

  • Skills don't compose with other skills. A skill is an encapsulated procedure. It may inject content from entities, glossary terms, or supporting files via @, but skills don't merge or extend one another.

Where it lives

A folder per skill inside a domain, with optional supporting files alongside the primary file:

.lynk/domains/<domain>/skills/<name>/
├── SKILL.md
└── examples/
    └── enterprise-churn-2024-q3.md

Loaded lazily. The agent indexes skills by their frontmatter description and loads a skill's body only when it's relevant to the question. Skills that don't apply stay unloaded — the brain is large, the agent's working memory is focused.

Format

SKILL.md follows the shared frontmatter contractname (matching the folder), description, optional enabled — over a prose body.

The description is load-bearing: it's what the agent reads at index time to decide relevance. Write it so the agent can tell, from one line, whether a question calls for this skill.

The body is whatever helps the agent reason — procedures, decision trees, references to specific entities and metrics. Use the @ operator to inject the exact definitions the procedure leans on, so the prose stays focused while the specifics are pulled in at load time.

Examples

Frontmatter and a short procedure.

A churn investigation skill (in the core domain) that injects definitions. The @ paths stay within core, the skill's own domain.

Validation

  • SKILL.md declares name and description; name matches the folder.

  • A skill that references an undefined feature or metric fails — skills use schema, they don't define it.

Last updated