Skip to main content

AgentSkillIO

@a16njs/models


@a16njs/models / AgentSkillIO

Interface: AgentSkillIO

Defined in: types.ts:129

Full AgentSkills.io standard skill. Supports multiple resource files in the skill directory.

NOTE: Hooks are NOT part of AgentSkills.io and are not supported. Skills with hooks should be skipped during discovery with a warning.

Use this type for skills that include:

  • Resource files (checklists, configs, scripts)
  • Multiple files in a skill directory

Extends

Properties

id

id: string

Defined in: types.ts:31

Unique identifier for this item

Inherited from

AgentCustomization.id


version

version: string

Defined in: types.ts:35

IR version (required, e.g., 'v1beta1')

Inherited from

AgentCustomization.version


sourcePath?

optional sourcePath?: string

Defined in: types.ts:37

Original file path where this was discovered (optional, omitted in IR format)

Inherited from

AgentCustomization.sourcePath


relativeDir?

optional relativeDir?: string

Defined in: types.ts:39

Relative directory path for preserving directory structure (optional)

Inherited from

AgentCustomization.relativeDir


content

content: string

Defined in: types.ts:41

The actual prompt/rule content

Inherited from

AgentCustomization.content


metadata

metadata: Record<string, unknown>

Defined in: types.ts:48

Tool-specific extras that don't fit the standard model (transient, not serialized in IR).

This is not the AgentSkills.io metadata frontmatter field — that one is author-authored and must persist. See AgentSkillSpecFields.specMetadata.

Inherited from

AgentCustomization.metadata


license?

optional license?: string

Defined in: types.ts:61

License name or a reference to a bundled license file. Provenance only.

Inherited from

AgentSkillSpecFields.license


compatibility?

optional compatibility?: string

Defined in: types.ts:63

Environment requirements, e.g. Requires Python 3.14+ and uv. Documentation only.

Inherited from

AgentSkillSpecFields.compatibility


specMetadata?

optional specMetadata?: Record<string, string>

Defined in: types.ts:71

The AgentSkills.io spec's metadata field: author-authored client properties, persisted to disk under the key metadata.

Distinct from AgentCustomization.metadata, which is transient and is never serialized.

Inherited from

AgentSkillSpecFields.specMetadata


allowedTools?

optional allowedTools?: string

Defined in: types.ts:80

Space-separated list of pre-approved tools, preserved as the authored string (e.g. Bash(git:*) Bash(jq:*) Read) rather than split, because re-joining a parsed list invites normalization bugs.

Experimental in the spec, but the only one of these fields with enforcement semantics: dropping it makes the emitted skill more permissive than authored.

Inherited from

AgentSkillSpecFields.allowedTools


type

type: AgentSkillIO

Defined in: types.ts:130

The type of customization

Overrides

AgentCustomization.type


name

name: string

Defined in: types.ts:133

Skill name (from frontmatter or directory name)


description

description: string

Defined in: types.ts:136

Description for activation matching (required)


resources?

optional resources?: string[]

Defined in: types.ts:139

Optional: Resource file paths relative to skill directory


disableModelInvocation?

optional disableModelInvocation?: boolean

Defined in: types.ts:142

Optional: If true, only invoked via /name


files

files: Record<string, string>

Defined in: types.ts:148

Map of additional files in the skill directory. Key: relative path, Value: file content