What is Facets?
Facets is a package manager and toolkit for facets — modular bundles of skills, agents, commands, and tools that extend AI coding assistants. Think of facets like plugins: each one adds new capabilities to your assistant, and Facets manages discovering, installing, and updating them.Packages
Facets is distributed as two packages:| Package | npm | Description |
|---|---|---|
| Facets CLI | @ex-machina/facets | Core library and CLI for managing facets |
| MCP Server | @ex-machina/facets-mcp | MCP server that exposes facet operations to AI assistants |
How it works
- Add a remote facet by URL — Facets fetches and caches the manifest and all its resources
- Install the facet — resources (skills, agents, commands, tools) are materialized into your project’s
.opencode/directory - Use the facet — your AI assistant picks up the new capabilities automatically
facets.yaml file and locks versions in a facets.lock file, similar to how package.json and lock files work in the Node.js ecosystem.