@nyuchi/mzizi-skills. Give an agent the
skills so it has the doctrine to hand instead of guessing.
Twelve skills in four categories, from the bundle’s index.json
at version 0.20.0 (the latest on npm on 12 November 2026):
mzizi-language and mzizi-roots are new in 0.8.0, digital-hygiene in 0.9.0,
progress-report in 0.10.0, mzizi-architecture in 0.14.0, mukoko-design (restored) in
0.15.0, and ship-release, registry-propagation and pr-gates in 0.18.0. 0.19.0 adds no skill: it corrects facts in the release skills and in two language and component skills. 0.20.0 adds none either: it quotes every skill’s frontmatter description, removes the curl-from-unpkg rows from the three release skills, and points them at the mzizi-dev plugin. The React (TSX) build of the components is the deprioritised
secondary in every skill that mentions it.
The spacing floor
Themzizi-design skill teaches the spacing floor (14px inset,
7px gaps, 1.5 body line height), the tests that hold it and mzizi check. That change is
in the bundle from 0.17.0, and 0.20.0 (the latest on npm on 12 November 2026) carries it.
Categories
From0.10.0 every index.json entry has a category, from the list in the bundle’s
index.schema.json:
Load the
dev skills before any dev work: mzizi_get_skills with category: "dev" on
the MCP server, or @nyuchi/mzizi-skills from npm. Every Mzizi repository’s
AGENTS.md asks for this. Skill folders stay at skills/<name>/, so install paths do not change.
Renamed and removed skills
The owner’s decision of 30 September 2026 was fewer skills that are effective rather than many that are not. Where each0.7.0 skill went, from the bundle’s README:
mzizi-design was called bundu-design before 0.6.0.
Getting the skills
Four ways, serving the same bundle once each has caught up; each says which version it serves. On 12 November 2026 npm, the MCP server, the API (/v1/skills/summary) and the plugins
all served 0.20.0, each with all twelve skills (seven in the mzizi plugin, five in
mzizi-dev). They can
disagree after a release, because the API and the plugin move only when the registry’s
dependency is bumped (see how each copy stays current).
Connect a client says which of these each AI client can use.
From npm
npx skills add @nyuchi/mzizi-skills does not work: the skills CLI reads that argument as a
GitHub repository and fails to clone it. experimental_sync is its route for skills shipped
in node_modules. Codex, Cursor, VS Code, Gemini CLI, Antigravity, Zed, OpenCode and Devin
Desktop all read .agents/skills/, so the skills load there natively (Cline and Kiro read
.cline/skills/ and .kiro/skills/ instead). Every skill’s frontmatter is only name and
description, the portable core of the Agent Skills specification, from the release after
0.17.0; see the limits per client.
From the MCP server
mzizi_get_skills on the MCP server lists the skills, or returns one in
full. From mzizi-mcp 0.13.0, category returns every skill in one category in full. It is
free, with no sign-in and nothing to install, so any MCP client can fetch the skills this way
instead of installing the npm package: Claude.ai, ChatGPT and the Claude and OpenAI APIs,
which cannot install a package, included. Each skill’s source names where it is authored,
mzizi-dev/agent-tools/mzizi-skills/skills/<name>, from mzizi-mcp 0.11.1.
From the API
GET https://api.mzizi.dev/v1/skills lists them, and
GET /v1/skills/<name> returns one. GET /v1/skills/summary is the cheap way to check which
version a surface is serving: its meta carries version and count.
As a Claude Code plugin
There are two plugins, both from themzizi marketplace in
mzizi-dev/mzizi-registry. The public mzizi
plugin carries seven Markdown skills (mzizi-language, mzizi-roots, mzizi-design,
mukoko-design, mzizi-backend, mzizi-architecture and discoverability) and connects the
Mzizi MCP server. It has no scripts and no hooks, which is what the Claude plugin directory
accepts without a verified organisation. The mzizi-dev plugin carries the five dev skills
(digital-hygiene, progress-report, ship-release, registry-propagation and pr-gates),
the shell scripts three of them ship, and the Mzizi house-rules hooks. On 12 November 2026 the
manifests were at 1.10.0 (mzizi) and 0.1.0 (mzizi-dev), both naming the skills of 0.20.0:
mzizi-dev only to work on Mzizi’s own
repositories. They live in the plugin/ and plugin-dev/ directories of
mzizi-dev/mzizi-registry,
which hold byte-for-byte copies of the bundle’s skills/ (the public copy leaves out one
favicon the directory cannot read), and the mzizi manifest points the MCP connection at
https://mcp.mzizi.dev/mcp.
Codex and ChatGPT do not have the plugin yet. mzizi-registry #520 adds OpenAI’s portable
manifest (plugin.json and mcp.json) beside the Claude one in plugin/, and a repo
marketplace at .agents/plugins/marketplace.json. Until that reaches the registry’s main,
codex plugin marketplace add mzizi-dev/mzizi-registry finds no plugin: connect the server with
codex mcp add and link the skills into .agents/skills/ instead. See
Connect a client.
The plugin and the
mzizi-tools marketplace that used to live in the private tooling
repository are retired. If you installed them, remove them with
/plugin uninstall mzizi@mzizi-tools and /plugin marketplace remove mzizi-tools, then
install the public plugin above.How each copy stays current
The API and the plugin can lag the newest npm release: a release reaches them only when the
registry’s dependency is bumped and, for the API, the gateway is re-pinned. Check the
versions rather than assuming they agree.
Git is the source of truth
Skills are authored asskills/<name>/SKILL.md, with YAML frontmatter carrying name and
description, and listed in an index.json. That bundle is the only home for skill content.
There is no database copy and no sync step. The registry and the MCP server each inline
the bundle at build time, so bumping the bundle version is a commit, and the commit is what
changes what agents read. An older model projected skills into a database table with a sync
script; that is gone.
Changing a skill
The bundle is built in the private tooling repository, so outside contributors cannot open a pull request against it directly. Report a problem with a skill through the registry’s issue tracker,mzizi-dev/mzizi-registry.
For maintainers, the rules the bundle’s own gate enforces:
- Edit
skills/<name>/SKILL.md. Adding a skill also needs anindex.jsonentry, because consumers read the index and an unlisted skill is invisible. - Bump the version in both
package.jsonandindex.json; they move together. Any change to skill text needs a bump, so npm andmzizi_get_skillsstay on the same version. - The offline validator checks the version, the index, the frontmatter and the
exportsmap before publish, and needs no credentials. - A merge without a version bump publishes nothing.
- Then bump the bundle version the registry depends on, and regenerate its skills and the plugin’s copy, so the API and the plugin serve it. The MCP server builds its copy from the same repository as the bundle, so it picks the change up on its next deploy.