Skip to main content

Class: SkillRegistry

Defined in: packages/agentos/src/skills/SkillRegistry.ts:54

Skill Registry for managing loaded skills at runtime.

Constructors

Constructor

new SkillRegistry(config?): SkillRegistry

Defined in: packages/agentos/src/skills/SkillRegistry.ts:59

Parameters

config?

SkillsConfig

Returns

SkillRegistry

Accessors

size

Get Signature

get size(): number

Defined in: packages/agentos/src/skills/SkillRegistry.ts:142

Get the count of registered skills.

Returns

number

Methods

buildCommandSpecs()

buildCommandSpecs(options?): SkillCommandSpec[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:346

Build command specifications for all skills.

Parameters

options?
eligibility?

SkillEligibilityContext

platform?

string

reservedNames?

Set<string>

Returns

SkillCommandSpec[]


buildPrompt()

buildPrompt(entries): string

Defined in: packages/agentos/src/skills/SkillRegistry.ts:321

Format skills into a prompt for LLM context.

Parameters

entries

SkillEntry[]

Returns

string


buildSnapshot()

buildSnapshot(options?): SkillSnapshot

Defined in: packages/agentos/src/skills/SkillRegistry.ts:261

Build a skill snapshot for agent context.

Parameters

options?
eligibility?

SkillEligibilityContext

filter?

string[]

platform?

string

runtimeConfig?

Record<string, unknown>

Optional config object used to evaluate requires.config paths.

strict?

boolean

If true, apply OpenClaw-style eligibility gating (OS/bins/anyBins/env/config). This is useful for "only show runnable skills" behavior.

Returns

SkillSnapshot


checkAllRequirements()

checkAllRequirements(hasBin): Map<string, { met: boolean; missing: string[]; }>

Defined in: packages/agentos/src/skills/SkillRegistry.ts:387

Check requirements for all registered skills.

Parameters

hasBin

(bin) => boolean

Returns

Map<string, { met: boolean; missing: string[]; }>


clear()

clear(): void

Defined in: packages/agentos/src/skills/SkillRegistry.ts:116

Clear all registered skills.

Returns

void


filterByEligibility()

filterByEligibility(context): SkillEntry[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:236

Get skills filtered by eligibility context.

Parameters

context

SkillEligibilityContext

Returns

SkillEntry[]


filterByPlatform()

filterByPlatform(platform): SkillEntry[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:229

Get skills filtered by platform.

Parameters

platform

string

Returns

SkillEntry[]


getByName()

getByName(name): SkillEntry | undefined

Defined in: packages/agentos/src/skills/SkillRegistry.ts:128

Get a skill by name.

Parameters

name

string

Returns

SkillEntry | undefined


getModelInvocableSkills()

getModelInvocableSkills(): SkillEntry[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:250

Get skills that can be invoked by the model.

Returns

SkillEntry[]


getSkillsWithMissingRequirements()

getSkillsWithMissingRequirements(hasBin): object[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:400

Get skills with unmet requirements.

Parameters

hasBin

(bin) => boolean

Returns

object[]


getUserInvocableSkills()

getUserInvocableSkills(): SkillEntry[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:243

Get skills that can be invoked by users.

Returns

SkillEntry[]


has()

has(name): boolean

Defined in: packages/agentos/src/skills/SkillRegistry.ts:149

Check if a skill is registered.

Parameters

name

string

Returns

boolean


listAll()

listAll(): SkillEntry[]

Defined in: packages/agentos/src/skills/SkillRegistry.ts:135

List all registered skills.

Returns

SkillEntry[]


loadFromDir()

loadFromDir(dir, options?): Promise<number>

Defined in: packages/agentos/src/skills/SkillRegistry.ts:173

Load skills from a single directory, optionally tagging the source.

Parameters

dir

string

options?
source?

string

Returns

Promise<number>


loadFromDirs()

loadFromDirs(dirs): Promise<number>

Defined in: packages/agentos/src/skills/SkillRegistry.ts:160

Load skills from one or more directories.

Parameters

dirs

string[]

Returns

Promise<number>


register()

register(entry): boolean

Defined in: packages/agentos/src/skills/SkillRegistry.ts:72

Register a skill entry.

Parameters

entry

SkillEntry

Returns

boolean

Whether the skill was registered (false if already exists)


reload()

reload(options): Promise<number>

Defined in: packages/agentos/src/skills/SkillRegistry.ts:190

Reload all skills from configured directories.

Parameters

options

SkillRegistryOptions

Returns

Promise<number>


unregister()

unregister(name): boolean

Defined in: packages/agentos/src/skills/SkillRegistry.ts:105

Unregister a skill by name.

Parameters

name

string

Returns

boolean