Skip to content

PromptScript API


Interface: SkillDefinition

Defined in: core/src/types/ast.ts:387

Typed representation of a skill in the

Skills

block.

Currently skills are stored as Record in ObjectContent. This interface provides typed access for skill-specific properties.

Properties

agent?

optional agent?: string

Defined in: core/src/types/ast.ts:405

Agent to use


allowedTools?

optional allowedTools?: string[]

Defined in: core/src/types/ast.ts:399

Allowed tools


composedFrom?

optional composedFrom?: ComposedPhase[]

Defined in: core/src/types/ast.ts:417

Metadata about composed phases (set by resolver, not by user)


content?

optional content?: string | TextContent

Defined in: core/src/types/ast.ts:391

Skill content/instructions


context?

optional context?: string

Defined in: core/src/types/ast.ts:403

Context mode


description

description: string

Defined in: core/src/types/ast.ts:389

Skill description (required)


disableModelInvocation?

optional disableModelInvocation?: boolean

Defined in: core/src/types/ast.ts:401

Disable model invocation


examples?

optional examples?: Record\<string, ExampleDefinition>

Defined in: core/src/types/ast.ts:413

Structured examples for few-shot prompting


inputs?

optional inputs?: Record\<string, SkillContractField>

Defined in: core/src/types/ast.ts:409

Runtime inputs the skill expects


outputs?

optional outputs?: Record\<string, SkillContractField>

Defined in: core/src/types/ast.ts:411

Outputs the skill produces


params?

optional params?: ParamDefinition[]

Defined in: core/src/types/ast.ts:393

Template parameters for parameterization


references?

optional references?: string[]

Defined in: core/src/types/ast.ts:415

Reference files attached to skill context (paths resolved by resolver)


requires?

optional requires?: string[]

Defined in: core/src/types/ast.ts:407

Skills that must exist for this skill to work


trigger?

optional trigger?: string

Defined in: core/src/types/ast.ts:395

Trigger phrases


userInvocable?

optional userInvocable?: boolean

Defined in: core/src/types/ast.ts:397

Whether user can invoke directly