Skip to content llms.txt

Pi — Skills

File format
Markdown
Discovery path
.pi/skills
Global install path
~/.pi/agent/skills
Syllago install method
Symlink, Direct copy
Symlink support
Yes
Native frontmatter fields
name, description, license, compatibility, metadata

Features

How each feature converts to syllago's canonical format. See format conversion for what these statuses mean.

Fields

Native frontmatter or config fields this provider exposes. The first column is the provider's own field name; the canonical key column links to syllago's cross-provider equivalent.

Provider fieldConversionCanonical keySummary
compatibility Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → compatibilityyaml frontmatter key: compatibility (optional, max 500 chars)
description Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → descriptionyaml frontmatter key: description (required, max 1024 chars)
disable-model-invocation Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → disable_model_invocationyaml frontmatter key: disable-model-invocation (optional bool); confirmed in SkillFrontmatter TypeScript interface as disable-model-invocation?: boolean
license Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → licenseyaml frontmatter key: license (optional)
metadata Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → metadata_mapyaml frontmatter key: metadata (optional, arbitrary key-value mapping)
name Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → display_nameyaml frontmatter key: name (required, max 64 chars, lowercase a-z/0-9/hyphens, must match parent directory name)
allowed-tools Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → Space-delimited list of tools pre-approved for the skill so they bypass the user confirmation prompt (experimental).
pi.skills Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → Skills declared via pi.skills in package.json or in skills/ subdirectories of npm packages enable monorepo-wide discovery.
skills Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → Pi's settings skills array accepts paths to other providers' skill directories so foreign skills load without conversion.

Other features

Behaviors, conventions, and capabilities that aren't tied to a single named field — things like path-based activation, discovery rules, and lifecycle behavior.

FeatureConversionSummary
canonical_filename Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → SKILL.md (required, fixed filename for directory-form skills)
custom_filename Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → Any .md filename at root of ~/.pi/agent/skills/ or .pi/skills/ (shorthand single-file form)
global_scope Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → ~/.pi/agent/skills/<name>/SKILL.md or ~/.agents/skills/<name>/SKILL.md
project_scope Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → .pi/skills/<name>/SKILL.md or .agents/skills/<name>/SKILL.md
Description-based auto-invocation Embedded Conversion type: Embedded No canonical equivalent — appended as prose in a conversion notes block so nothing is silently lost. Learn more → Names and descriptions are injected as XML in the system prompt, and the agent loads matching SKILL.md bodies on demand.
Supporting files in skill directory Embedded Conversion type: Embedded No canonical equivalent — appended as prose in a conversion notes block so nothing is silently lost. Learn more → Skill directories may include scripts/, references/, and assets/ subdirectories that SKILL.md references via relative paths.
CLI flags for runtime skill management Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → --skill <path> loads additional skills at runtime (additive, repeatable); --no-skills disables all default discovery locations.
Ignore-file respect during skill scanning Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → Skill scanner honors .gitignore, .ignore, and .fdignore patterns per subdirectory via the ignore npm package.

Sources

Source
https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/docs/skills.md
https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/core/skills.ts