Skip to content

Changelog

All notable changes to @mongez/agent-kit are documented here. The format follows Keep a Changelog and this project follows Semantic Versioning.

[1.2.0] 2026-06-06 Added (3) · Changed (1) · Docs (3)

Added

  • agent-kit init now seeds agentKit.targets in package.json. The skill-sync default has always been ["claude"], but it was implicit — you had to read the docs to learn both the default and the exact agentKit syntax for changing it. init now writes "agentKit": { "targets": ["claude"] } on disk, so the default is visible and a one-line edit away from adding "cursor"/"codex"/etc.
  • New --target flag on init. agent-kit init --target claude,cursor seeds that exact list instead of the default. Accepts the same vocabulary as sync (claude, copilot, cursor, codex, opencode, amp, goose, kiro, antigravity) and validates the names up front — an unknown target errors before anything is written, since (unlike a sync flag typo) the value is persisted.
  • init auto-wires "postinstall": "agent-kit sync" — but only when it’s safe. Two gates prevent a broken install step: (1) @mongez/agent-kit must already be a declared dependency/devDependency (so the bare agent-kit binary actually resolves — the npx @mongez/agent-kit@latest init bootstrap installs nothing, so it would otherwise wire a postinstall that fails on the next install), and (2) no postinstall may already exist (an existing build step is never clobbered or appended to). When either gate blocks, init prints a hint instead of writing.

Changed

  • init is non-clobbering for agentKit.targets. An existing agentKit.targets is left untouched unless you pass --target (mirrors how init already refuses to overwrite an existing AGENTS.md). Other agentKit fields (pick, omit, monorepo), any sibling scripts, and the manifest’s existing indentation + trailing newline are all preserved, and the file is only rewritten when the content actually changes. Note targets gates only the skills export, so the seeded value first takes effect on the next agent-kit sync.

Docs

  • New Troubleshooting page / skill. Symptom → cause → fix for the common failure modes: agent-kit: command not found, unscoped npx agent-kit fetching the wrong package, sync looks successful but the agent shows zero skills, agentKit.pick matched no installed packages, two-package slug collision, sync errors when AGENTS.md is missing, a published package’s skills/ invisible to consumers, --target validation errors, watch ignoring node_modules, and --override clobbering hand-authored folders.
  • Agent integrations table + three new agent sections. A one-table at-a-glance reference covers every supported --target, the derived file (if any), the skills folder, and the reload step. Added per-agent walkthroughs for OpenCode (.opencode/skill/ — singular skill), Amp (.agents/skills/ — plural agents), and Goose (.goose/skills/). The singular/plural-path lookalikes — .agent/ (Antigravity) vs .agents/ (Amp) vs .opencode/skill/ (OpenCode) — are now explicitly called out so they’re hard to mis-type.
  • Sixty-second walkthrough now states the local install step. The overview’s bootstrap previously jumped from the no-install npx @mongez/agent-kit@latest init straight into postinstall: agent-kit sync without an explicit “install agent-kit as a dev dep” line, which left a contradiction with the same page’s own scoped-npx warning. The install step is now spelled out, and the postinstall block notes that init may have already wired it.
[1.1.1] 2026-06-04 Added (1) · Changed (1)

Added

  • ## Skills section in the scaffolded AGENTS.md. agent-kit init now writes an agent-neutral instruction telling the AI agent to check available skills before searching the codebase or reverse-engineering a package’s API from its source — closing the gap where agents ignored installed skills. Worded for any agent (Claude Code, Cursor, Codex, Copilot, Gemini, …), not just one.

Changed

  • Docs lead with the no-install bootstrap. npx @mongez/agent-kit@latest init (scoped, always-latest, zero install) is now the documented entry point, with the init vs sync delivery model spelled out: init is a one-time scaffold (always-latest npx is ideal); sync runs on every install + in CI and belongs as a pinned dev dependency (never always-latest, which could silently change generated output). Clarifies that the scoped name is required with npxnpx agent-kit (unscoped) resolves a different package.
[1.1.0] 2026-06-04 Added (6) · Fixed (2) · Removed (1)

Added

  • Monorepo skill aggregation via --projects and agentKit.monorepo.projects — run agent-kit sync once at a repo root to pull skills from sibling projects (backend, frontend, …) into the single root skills dir agents read.
  • Each project is scanned as its own project: its node_modules/ deps (filtered by that project’s own pick/omit) plus its authored skills/.
  • Authored skills are prefixed with the project directory name (backend/skills/code-standardsbackend-code-standards) so same-named skills across projects don’t collide.
  • Shared dependencies dedupe to one copy (union of kept skills); the root’s omit applies as a global veto.
  • Project patterns accept literal dirs and one-level globs (apps/*).
  • New --projects flag on sync and watch; new exports resolveMonorepoProjects / scanProject / scanProjects (+ ResolvedProject / ProjectScanResult types); syncSkills gains a projects option and result field.

Fixed

  • agent-kit watch re-syncs on skill edits again — chokidar v4+ dropped glob support, so the old skills/**/SKILL.md watch patterns matched nothing (only AGENTS.md fired). Watch now watches the real skill-source directories.
  • agent-kit --version reports the real version (was hardcoded to 0.1.0; now read from package.json at runtime).

Removed

  • Stale SyncResult type — it never matched any function’s return shape and was unused. Dropped from the exports.
[1.0.23] 2026-05-29 Fixed (1)

Fixed

  • Correct repository ownership in links. agent-kit lives at hassanzohdy/agent-kit, not warlockjs/agent-kit. Fixed the stale repo URLs in llms.txt and, more importantly, in the starter AGENTS.md that agent-kit init scaffolds (it was baking the wrong link into every consumer’s file). Replaced the internal warlockjs/warlock design-spec link with the public docs site.
[1.0.22] 2026-05-29 Changed (1)

Changed

  • Docs now foreground organizing your own project’s skills. The README, bundled skills (overview, authoring-skills), and llms/llms-full files now lead with the everyday case: keep a single nested skills/ folder at your project root (skills/backend/auth/SKILL.md) and agent-kit sync flattens it into the top-level .claude/skills/ layout Claude Code requires. Shipping skills from an npm package is now framed as the same mechanism applied to node_modules/. No code/API changes.
[1.0.21] 2026-05-29 Fixed (1)

Fixed

  • Linux skill discovery crash when a scan path’s root holds a package.json filereadTextFile now treats ENOTDIR and EISDIR as “no file here” (returning null), the same as ENOENT. Previously, probing a manifest path whose parent is a file (e.g. package.json/package.json, which happens when a scan path points at a project root) threw ENOTDIR on Linux but ENOENT on Windows — so discovery crashed on Linux only. Both platforms now behave identically.
[1.0.20] 2026-05-29 Fixed (1) · Added (1)

Fixed

  • Cross-platform skill discovery orderscanForSkillPackages and the nested-skill walk now sort their readdir results, so the set and order of discovered skills is identical on Linux (ext4) and Windows (NTFS). Previously the order tracked raw directory order, which differs per filesystem and made order-sensitive output non-deterministic in CI.

Added

  • CI test workflow.github/workflows/test.yml runs the suite on Node 20/22 (ubuntu) plus Node 20 (windows) for path/CRLF coverage. Node 18 is excluded because a transitive test dependency (chokidar@5) requires Node >=20.19; the CLI itself still runs on Node 18+ at runtime.
[1.0.19] 2026-05-29 Docs overhaul Added (2) · Changed (2) · Removed (1)

Added

  • agent-integrations skill — per-IDE setup walkthroughs for Claude Code, Cursor, Codex, Kiro, Gemini CLI, GitHub Copilot, Aider, and Antigravity. Each covers the exact --target flag, the files agent-kit creates, and the reload quirk; honest about Gemini/Aider being derive-only (no skills directory convention).
  • README “Set up with your agent” section — a compact per-agent table (target / derived file / skills folder / reload) plus multi-agent guidance.

Changed

  • Recipes refreshed — dropped duplicates that overlapped the overview and CLI pages; kept the genuinely cross-cutting patterns (monorepo wiring, pick/omit filtering, CI drift guardrail, programmatic API, watch mode).
  • Overview rewritten — narrative intro, highlight cards, quick peek, and a developer-vs-package-author split in “Where to go next”.

Removed

  • when_to_use guidance — dropped the when_to_use frontmatter convention from the authoring guide and all skill files. description now carries both discovery and activation; the authoring guide explains how to write it for both roles.

No code/API changes — deriveAll, syncSkills, the CLI, and the exports map are unchanged. Documentation and bundled-skill content only.

[1.0.x] Earlier releases

Version history prior to this changelog is available via the git tags and GitHub releases on hassanzohdy/agent-kit.