skill-kit CLI

skill-kit builds agent skills as typed TypeScript state machines with schema-checked answers and a build into a SKILL.md directory

  • 70 ★ on the repository
  • Last commit
  • MIT
CLIOfficial

Minimal access

Why this level

  • The tool builds code and executables for skills, and a built skill runs commands through the `scripts/run` wrapper
All reasons and checks

contentful/skill-kit

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/skill-kit

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • The tool builds code and executables for skills, and a built skill runs commands through the `scripts/run` wrapper

This is third-party code. Review the repository files before installing.

What it does

skill-kit is a TypeScript toolkit from Contentful for people who write agent skills. A plain Markdown skill is read by an agent all at once. That works poorly for multi-step processes with branching and validation, and large reference docs are better loaded in parts. skill-kit gives two skill types. Workflow skills describe steps: each has a prompt, an ArkType response schema and explicit transitions. Reference skills load topics on demand. A definition looks like a chain of `skill()`, `.step()`, `.build()`. The agent sees one step at a time and returns a structured answer, and the CLI decides where to go next. Composite skills merge several related skills with shared references into one dispatcher. A skill can be tested with no agent: `runSkill` and `mockModel` from `@contentful/skill-kit/test` supply canned model answers. `npx skill-kit build src/skill.ts -o skill` builds a directory to the agentskills.io specification: a generated `SKILL.md`, `package.json`, a `scripts/run` wrapper and either a single Node.js bundle (`--mode node`) or standalone Bun executables per platform. The finished skill installs through `skills add`, `agents-kit install` or `git clone`. The agent uses it with `scripts/run topics` and `scripts/run topic <name>`.

Who it is for. Developers who ship skills for their products and teams and want to give them steps, validation and tests in place of one long Markdown file.

Good fit when

  • A product setup wizard must go step by step with branching and each answer checked against a schema
  • A hundred-page API reference should be read by the agent topic by topic with `scripts/run topic <name>`
  • Several related skills share references and have to be merged into one dispatcher
  • A skill needs to be tested with no agent using canned model answers
  • The result should land in an agentskills.io directory and ship through `skills add`

Not a fit when

  • The skill is a few paragraphs: a plain `SKILL.md` is enough
  • You just want to use a ready skill: skill-kit is for its author only
  • You do not write TypeScript: skill definitions go through the `@contentful/skill-kit` package
  • You need a ready Contentful skill: see the `examples/contentful-help` example for that

Example request

Describe a repo-doctor skill with skill-kit: a diagnose step, a remediate branch on failures and a report step, then build it into a folder

Limitations

  • The toolkit targets skill authors: a user of a finished skill does not need it: the agent works with the built directory.
  • The default build produces standalone Bun executables of 50 to 100 MB per platform, and a light Node.js bundle (100 to 500 KB) comes with the `--mode node` flag.
  • Response schemas use ArkType and definitions are written in TypeScript, so knowing both is required.
  • The package installs with `pnpm add @contentful/skill-kit` and the testing helpers live in a separate entry point, `@contentful/skill-kit/test`.

How to disable. Remove the package from a project with `pnpm remove @contentful/skill-kit`. Skills already built remain standalone folders and are removed from the agent skills directory by hand.

FAQ

How do I add skill-kit to a project?

Run `pnpm add @contentful/skill-kit`, define a skill with the `skill()`, `.step()`, `.build()` chain and build it with `npx skill-kit build src/skill.ts -o skill`.

How is a workflow skill different from a reference skill?

A workflow skill leads the agent step by step with a checked answer and transitions. A reference skill gives topics the agent loads one at a time with `topic <name>`, with no state or history.

How do I test a skill without an agent?

With `runSkill` and `mockModel` from `@contentful/skill-kit/test`: you set model answers per step and check the result.

What does the build produce?

A directory following the agentskills.io specification: a generated `SKILL.md`, `package.json`, `scripts/run` and a Node.js bundle or standalone Bun executables.

Which agents suit the built skills?

Any agent that reads `SKILL.md` and runs commands through Bash. Install goes through `skills add`, `agents-kit install` or `git clone`.

Discussion

No questions or reviews yet.

CLI tools

skills-npm links agent skills shipped in your dependencies in node_modules and listed in the skills field of package.json

CLIExtended access582Repository stars

Skill and agent manager with a lock file: installs one set into Claude Code, Codex, Cursor and others and keeps your edits.

CLIExtended access181Repository stars

Builder Skills

Skills for agents

A set of small skills from Builder.io for agent work habits: visual plans and diff recaps, docs-first checks, cross-agent review and clean status updates

SkillExtended access4.7KRepository stars

A set of skills from real work: npm supply-chain audit, CLI building, Obsidian plugin release and an AGENTS.md hierarchy

SkillExtended access115Repository stars

A vetted skill registry with a CLI that installs into twenty-plus agents and an MCP server for on-demand skill lookup

SkillExtended access7.2KRepository stars

README in short

The README explains why a typed workflow beats Markdown and shows an example at once. A quickstart, testing without an agent, the build, skill types (workflow, reference, composite), examples and an API reference follow.

README badge

Report a problem