Skip to content

Documentation / @agentick/core / SkillRegistry

Class: SkillRegistry

Defined in: core/src/skill/registry.ts:41

In-memory registry of skills available to an app. Owned by the app (app.skills); sessions consult it to resolve string-name references and to expose the implicit skill tool listing.

Constructors

Constructor

new SkillRegistry(): SkillRegistry

Returns

SkillRegistry

Accessors

size

Get Signature

get size(): number

Defined in: core/src/skill/registry.ts:86

Number of registered skills.

Returns

number

Methods

clear()

clear(): void

Defined in: core/src/skill/registry.ts:101

Remove all registrations.

Returns

void


get()

get(name): SkillDef<unknown> | undefined

Defined in: core/src/skill/registry.ts:71

Look up a skill by name.

Parameters

name

string

Returns

SkillDef<unknown> | undefined


has()

has(name): boolean

Defined in: core/src/skill/registry.ts:76

True if a skill is registered under this name.

Parameters

name

string

Returns

boolean


list()

list(): SkillDef<unknown>[]

Defined in: core/src/skill/registry.ts:81

All registered skills, in registration order.

Returns

SkillDef<unknown>[]


loadDir()

loadDir(dirPath): Promise<SkillDef<unknown>[]>

Defined in: core/src/skill/registry.ts:148

Load all skills from a directory. Each subdirectory is treated as a folder-based skill (its SKILL.md is loaded with strict spec validation). Bare .md files at the top level are ignored.

Parameters

dirPath

string

Returns

Promise<SkillDef<unknown>[]>

Example

typescript
await app.skills.loadDir("./skills");
// Loads ./skills/triage/SKILL.md, ./skills/plan/SKILL.md, etc.

register()

register(skill): void

Defined in: core/src/skill/registry.ts:49

Register a skill. Throws on name collision; use replace() if you mean to overwrite.

Parameters

skill

SkillDef

Returns

void


replace()

replace(skill): boolean

Defined in: core/src/skill/registry.ts:63

Register or overwrite a skill by name. Returns true if a previous registration was replaced.

Parameters

skill

SkillDef

Returns

boolean


search(query?): SkillDef<unknown>[]

Defined in: core/src/skill/registry.ts:111

Search the registry. Filters apply with AND semantics (a skill must match every provided filter to be included).

Parameters

query?

SkillSearchQuery = {}

Returns

SkillDef<unknown>[]


subscribe()

subscribe(listener): () => void

Defined in: core/src/skill/registry.ts:130

Subscribe to registry changes. Fires after every register/replace/ unregister/clear with the current full skill list. Returns an unsubscribe function.

Parameters

listener

(skills) => void

Returns

(): void

Returns

void


unregister()

unregister(name): boolean

Defined in: core/src/skill/registry.ts:94

Remove a registered skill by name. Returns true if a registration was removed.

Parameters

name

string

Returns

boolean

Released under the ISC License.