Set up AI agent instructions, skills, subagents and commands in a repo
Install one agent-agnostic setup (instructions, skills, subagents, commands) with a single CLI call.
At a glance
- Who: Teams onboarding a coding agent (Cursor, Claude, Codex) on a shared repo.
- What: Install one agent-agnostic setup (instructions, skills, subagents, commands) with a single CLI call.
- Use when: When every developer and agent should share the same instructions and review workflow.
- Avoid when: When you only need one provider's config — write that provider's file by hand instead.
- See also: Check that skills, subagents, commands and provider copies are valid
Install
pnpm add @zedtech/zedkit-aiLatest: 1.2.0 (via changesets).
Example
import { installKit } from "@zedtech/zedkit-ai";
const result = installKit({
dest: ".",
preset: "core",
providers: ["claude", "cursor"],
});
if (!result.ok) throw result.error;
for (const action of result.value) console.log(action.kind, action.path);Wraps: (none)
What gets installed
One shared source plus a thin layer per provider. With
preset: "core", providers: ["claude", "cursor"], installKit creates
(run it to see the reported action count):
.agents/ # shared source: skills/, agents/, commands/, tokenomics.md
.claude/ # skills/commands link into .agents; agents generated by sync
.cursor/ # rules/project.mdc + skills link; agents generated by syncPresets: starter (default), setup (starter plus domain, review lenses,
retro, and product/UI/copy subagents), core (planning and implement),
full (every skill). init also writes AGENTS.md/CLAUDE.md templates.
Supported providers: claude, cursor, codex, muse. init never
overwrites existing files. zedkit-ai sync writes each tool's agent files from
.agents/agents and .agents/tokenomics.md; validate reports drift, and
zedkit-ai sync --check prints out of date, run: npx @zedtech/zedkit-ai sync.
Agents
Subagents installed from kit.json (23). Read-only unless noted.
| Agent | Role |
|---|---|
| codebase lookup: files, symbols, usages | |
| file-level implementation plan, never code | |
| quality gate: runs gates + definition of done | |
| applies review findings, smallest diff first (writes) | |
| one frozen work unit, exclusive files (writes) | |
| read-only punchlist for improver | |
| package / feature / hexagonal boundary audit | |
| additive or versioned event and command contracts | |
| cheap loop, first failure, no code edits | |
| auth, tenancy, secrets, user data, input parsing | |
| pre-mortem, one angle per brief | |
| UI review: kit reuse, tokens, states, lazy-client bar | |
| i18n-first microcopy review (writes nothing) | |
| pages, metadata, sitemap, redirects | |
| WCAG basics for components, forms, pages | |
| need, size, license, maintenance, duplicates | |
| README/AGENTS.md/catalog prose, compiling examples (writes docs) | |
| reuse scout: adopt/wrap/build with sources | |
| adversarial tests, behavior-named (writes tests) | |
| semver by version line, changesets, migration notes, maturity | |
| route/view/data layer boundaries | |
| multi-step coordination: frame, dispatch, aggregate, verify | |
| one-page delivery brief with links |
Orchestrator
The orchestrator agent owns tasks that need several steps or lenses (plan,
review, implementation, audit, research, or a mix). It reads repo context and
the installed agent roster, decomposes work, dispatches self-contained briefs
(see parallel-work), aggregates evidence, and runs verifier before closing.
It never edits files. Limits by default: six subagents per wave, twelve total,
depth one, one retry per failed unit; no destructive git or deploy actions
without explicit approval. Invoke it via the orchestrate skill or /orchestrate.
Commands
Bundled slash commands (each runs its skill on the command arguments):
.
Each file starts with frontmatter (name, one-line description,
model: inherit, disallowedTools for read-only agents) at
packages/ai/kit/agents/<name>.md. Full trigger table:
docs/agents-catalog.md.
Review lenses
review pins the diff once, then routes paths to lenses
(packages/ai/kit/skills/review/lenses.md). Always mandatory:
.
Triggered by what changed:
.
Every verdict needs evidence (file:line, command, screenshot).
Personas
persona-review picks 2–4 personas per change from the repo's
.agents/personas.md (template: 8 rows — Stressed user, Lazy end client,
Integrating developer, Coding agent, Maintainer / operator, New
contributor, Security reviewer, Business owner) and requires evidence for
every Pass/Rough/Fail. Customize names and bars per project.
Customize
- Add or remove an agent or skill: edit the
.mdfile plus thekit.jsonlists, re-runinit, thenvalidateto catch drift. - Repo rules live in
AGENTS.md(the ladder section is appended, never overwritten). - Upgrade from 1.1.x: re-run
npx @zedtech/zedkit-ai setup(adopt on, presetsetup). Colliding files stay yours; the kit copy lands as*.kit.mdorzk-<name>. Then/setup-aifor discovery artifacts. Opt-in/setup-aireads the code before it asks: read-only subagents (1–5 on a small repo, up to 20 on a big one;zedkit-ai scansizes them) report the rules already in place, and the interview covers only the gaps. It writes domain rules, nestedAGENTS.mdfiles and.agents/tokenomics.md, thenzedkit-ai sync.zedkit-ai validate --setupchecks that the plan covers every git-changed path, that.agents/setup-log/gates/*.logstart withCMD:and end withEXIT:<code>, and D4: a real model onbuild.standardanddecide.sensitivein.agents/tokenomics.md, pointed at fromAGENTS.md. Theverifieragent plus the definition of done is the CI-side quality gate.
Set up zedkit AI
Give your coding agent one prompt to set up zedkit AI in your project.
Check that skills, subagents, commands and provider copies are valid
Validate installed skills, subagents and commands, report drift between providers without asking to overwrite user files, and flag kit skills a provider layer…