SkillSource

interface SkillSource

Core interface for accessing skill components.

Implementations are expected to be safe for concurrent use by multiple coroutines.

All methods return a Result whose failure case is a SkillSourceException with a detailed error message intended to be surfaced to the LLM. Implementations should only wrap SkillSourceException in Result.failure.

Inheritors

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
abstract suspend fun listFrontmatters(): Result<List<Frontmatter>>

Returns the frontmatter for all available skills.

Link copied to clipboard
abstract suspend fun listResources(skillName: String, resourceDirectoryPath: String): Result<List<String>>

Returns a list of resource paths within a specific directory for a given skill.

Link copied to clipboard
abstract suspend fun loadFrontmatter(skillName: String): Result<Frontmatter>

Loads the frontmatter for a single skill by name.

Link copied to clipboard
abstract suspend fun loadInstructions(skillName: String): Result<String>

Loads the instruction body for a single skill by name.

Link copied to clipboard
abstract suspend fun loadResource(skillName: String, resourcePath: String): Result<ByteArray>

Loads a specific resource file for a given skill.