Skip to main content

ManualPrompt

@a16njs/models


@a16njs/models / ManualPrompt

Interface: ManualPrompt

Defined in: types.ts:185

A manually-invoked prompt (slash command or skill with disable-model-invocation). Examples: Cursor commands in .cursor/commands/, skills with disable-model-invocation: true

These prompts are only activated when explicitly invoked by the user.

Both target plugins emit this type as a SKILL.md, which is why it carries AgentSkillSpecFields. Those fields are always undefined for prompts originating from .cursor/commands/*.md, which have no frontmatter.

Optional ManualPrompt.description holds authored prose from skill frontmatter when present. Command-origin prompts leave it unset; emitters synthesize Invoke with /<promptName> only in that case.

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: ManualPrompt

Defined in: types.ts:186

The type of customization

Overrides

AgentCustomization.type


promptName

promptName: string

Defined in: types.ts:188

Prompt name for invocation (e.g., "review" for /review)


description?

optional description?: string

Defined in: types.ts:193

Authored description from skill frontmatter, when present. Absent for prompts discovered from .cursor/commands/*.md.