Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions docs/arch/02-core-concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -430,6 +430,35 @@ ToolHive can automatically configure clients to use MCP servers:

**Related concepts:** Workload, Group

### Skill

A **skill** is an Agent Skill -- a markdown-based instruction set (SKILL.md) that extends an AI coding assistant's capabilities. Skills are not MCP servers; they provide knowledge and conventions rather than callable tools.

**Key characteristics:**
- Defined by a `SKILL.md` file with YAML frontmatter
- Distributed as OCI artifacts (tar.gz layers)
- Can also be installed directly from git repositories
- Scoped to user (global) or project (local)
- Support multi-client installation (Claude Code, Cursor, etc.)

**Lifecycle:**
1. **Discover** - Browse skills from registry catalog
2. **Build** - Package local SKILL.md into OCI artifact
3. **Publish** - Push OCI artifact to remote registry
4. **Install** - Pull from registry/git and extract to client skill directory
5. **Uninstall** - Remove files and metadata

**Implementation:**
- Service: `pkg/skills/skillsvc/skillsvc.go`
- Types: `pkg/skills/types.go`
- Storage: `pkg/storage/sqlite/skill_store.go`
- CLI: `cmd/thv/app/skill*.go`
- API: `pkg/api/v1/skills.go`

**For architecture details**, see [Skills System](12-skills-system.md).

**Related concepts:** Registry, Group, Client

## Verbs (Actions)

### Deploy
Expand Down Expand Up @@ -769,6 +798,7 @@ Registry
| **Session** | State tracking for MCP connections |
| **Runtime** | Abstraction over container systems |
| **Client** | Application that uses MCP servers |
| **Skill** | Agent Skill (SKILL.md) extending AI assistant capabilities |
| **Deploy** | Create and start a workload |
| **Proxy** (verb) | Forward traffic with middleware |
| **Attach** | Connect to container stdin/stdout |
Expand Down
1 change: 1 addition & 0 deletions docs/arch/06-registry-system.md
Original file line number Diff line number Diff line change
Expand Up @@ -987,6 +987,7 @@ kubectl get configmap company-registry-storage -o jsonpath='{.data.registry\.jso
- [Deployment Modes](01-deployment-modes.md) - Registry usage per mode
- [Groups](07-groups.md) - Groups in registry
- [Operator Architecture](09-operator-architecture.md) - MCPRegistry CRD
- [Skills System](12-skills-system.md) - Skills discovery and distribution via registry

### External Documentation
- [ToolHive User Documentation](https://docs.stacklok.com/toolhive/) - User-facing guides
Expand Down
1 change: 1 addition & 0 deletions docs/arch/07-groups.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,3 +140,4 @@ Groups may serve as the foundation for additional features:
- [Registry System](06-registry-system.md) - Groups in registry
- [Workloads Lifecycle](08-workloads-lifecycle.md) - Group operations
- [Virtual MCP Server Architecture](10-virtual-mcp-architecture.md) - Group-based aggregation
- [Skills System](12-skills-system.md) - Skills organized in groups
Loading
Loading