Skip to content

PromptScript API


Interface: SkillDefinition

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

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

Agent to use


allowedTools?

optional allowedTools?: string[]

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

Allowed tools


composedFrom?

optional composedFrom?: ComposedPhase[]

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

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


content?

optional content?: string | TextContent

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

Skill content/instructions


context?

optional context?: string

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

Context mode


description

description: string

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

Skill description (required)


disableModelInvocation?

optional disableModelInvocation?: boolean

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

Disable model invocation


examples?

optional examples?: Record\<string, ExampleDefinition>

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

Structured examples for few-shot prompting


inputs?

optional inputs?: Record\<string, SkillContractField>

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

Runtime inputs the skill expects


outputs?

optional outputs?: Record\<string, SkillContractField>

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

Outputs the skill produces


params?

optional params?: ParamDefinition[]

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

Template parameters for parameterization


references?

optional references?: string[]

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

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


requires?

optional requires?: string[]

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

Skills that must exist for this skill to work


trigger?

optional trigger?: string

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

Trigger phrases


userInvocable?

optional userInvocable?: boolean

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

Whether user can invoke directly