Skip to content

Releases: nonlinear-xyz/factory-kit

v0.4.0 — Factory Kit now works natively across Claude and Codex

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 17 Jul 14:56
f389176

Outcome: v0.4.0 — Factory Kit now works natively across Claude and Codex from one portable skill tree.

Why: Factory Kit’s knowledge and workflows were coupled to Claude-specific file layouts and commands. This release makes the Open Agent Skills tree the source of truth, then layers thin host adapters on top, so the same kit can be installed, updated, and diagnosed consistently in Claude, Codex, or both.

Changes

82 files changed, +3507 / −2571

Cross-platform foundations:

  • Reorganized all 41 skills into the portable skills/<name>/SKILL.md format, including eight command workflows and twelve specialist workflows.
  • Added native Claude and Codex plugin manifests and marketplace catalogs over the same canonical skill tree.
  • Added the official Linear HTTP MCP configuration for native plugin installs.

Installation and compatibility:

  • Expanded the npm installer with explicit claude, codex, all, and host-detected auto targets while preserving the original no-argument Claude bootstrap.
  • Added managed, reversible global guidance that preserves user-owned instructions.
  • Added factory-kit doctor diagnostics for canonical links, native plugins, stale installs, and duplicate-skill risks.
  • Kept existing Claude slash commands and specialist agents as thin compatibility adapters.

Reliability:

  • Added installer and portability coverage for version alignment, Open Agent Skills structure, safe migration, idempotency, guidance updates, and mixed-install warnings.
  • Updated docs-sync checks and rewrote the README around cross-platform installation and architecture.

Also included:

  • Added the factory-animation skill for attention budgets, figure/ground, reduced motion, and Astro/Remotion patterns.

Surface: Skills reorganized into canonical directories; command and specialist workflows promoted to portable skills · Agents and commands converted to thin Claude adapters · Bin expanded with universal install, guidance, and doctor flows · Plugin and marketplace manifests added for Claude and Codex

Ref: PR #9 — Creating functionality for Codex & Claude

v0.3.0 — verifiability and scoring standards

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 04 Jun 21:51

Outcome: v0.3.0 — Created first pass at verifiability and scoring standards. This creates a banded conformance score, a verification subagent, and a delta view. This is wired up during each PR through a GitHub Action.

Why: The kit could lint conventions but couldn't measure how well a project conformed, or tell a contributor which evals must run for a given change. This adds the four-tier verification spectrum, a severity-aware conformance score, and a PR-boundary gate.

26 files changed, +1099 / −47

feat:

  • Adding verifiability and scoring standards to the kit
  • add factory-verification subagent and conformance gate configuration options

ci:

  • dogfood the conformance gate on factory-kit itself

Surface: Skills ~factory-ci.md ~factory-llm-workflows.md ~factory-pitfalls.md +factory-verification.md · Agents +verification-engineer.md · Bin ~factory-kit-check.js ~factory-kit.js

v0.2.0 — factory-kit-check: a CLI that lints projects

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 30 May 18:12

Outcome: v0.2.0 — Creating factory-kit-check: a CLI that lints projects against the factory's standards

Why: Factory-kit pulls in commands, agents, and skills to your Claude Code session. These are helpful when invoked, but they must be called by the agent. They're not doing a recursive check of your codebases to catch drift. The first step in that is being able to point the factory-kit standards to itemize drift across codebases. This is the purpose of a CLI. This runs a static analysis on whichever codebase it is pointed towards. This is a low cost way to catch drift in the quality of code output.

This update also patches a bug in the /release tool. Every /release now aligns package.json, VERSION, and npm with the same version update.

Catch-up: npm last shipped v0.1.2; this release also folds in v0.1.3, v0.1.4, and v0.1.5 — tagged but never published. Per-version breakdown below.

41 files changed, +4642 / −40

feat:

  • factory-kit-check: static-analysis engine (check/) + factory-kit-check CLI, with rules for admin-client module scope, hardcoded email allowlists, in-memory rate limiters, mixed tRPC/server-actions, public-procedure mutations, and update/delete without WHERE — REFINE wording

other:

  • Adding factory-kit CLI (PR #5)
  • Updating the release command to synthesize all previous versions
  • Updating factory-frontend with notes about DOM vs React Tree
  • README + package.json updates for the nonlinear github org / version sync
  • update to CLAUDE.md

Surface: Bin +factory-kit-check.js · Commands ~release.md · Skills ~factory-frontend.md · (+ new check/ engine + tsup/vitest/tsconfig)

12 files changed, +935 / −2

feat:

  • add factory-db-migration skill + db-migration-engineer agent

fix:

  • updating .gitignore to not track .claude/

other:

  • Adding a /prompt skill
  • Creating simple measurement script and gh issues (/kit-audit)

Surface: Skills +factory-db-migration.md +factory-prompting.md ~factory-pitfalls.md · Agents +db-migration-engineer.md · Commands +kit-audit.md +prompt.md · Bin +kit-audit.sh

9 files changed, +342 / −7

feat:

  • add factory-design skill and docs-sync CI

Surface: Skills +factory-design.md ~factory-frontend.md ~factory-pitfalls.md · Agents ~frontend-engineer.md

12 files changed, +223 / −12

feat:

  • add package.json and factory-kit CLI for installation

Surface: Bin +factory-kit.js · Skills ~factory-api.md ~factory-auth.md ~factory-forms.md ~factory-frontend.md ~factory-observability.md · Commands ~entry.md ~standup.md

v0.1.5 - adding factory-db-migration skill & agent

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 27 May 17:32

Outcome: v0.1.5 — factory-db-migration skill + db-migration-engineer agent

Why: Codifies lessons from running first production DB migration. The skill is structured to have a pre-flight / seed / verify / rollback functionality. All of which should be able to run locally before ever touching production. The skill is structured for continuous update — new failure modes append as new sections.

Changes:

feat:

  • factory-db-migration skill — 12 Principle/Why/Recipe/Failure-mode sections: data-as-ground-truth, three-stage write contract (preflight/mutate/verify/rollback), idempotency by natural key, bidirectional update semantics, validate-at-parse, layered backup independence (Layer C), human-gated execution, defense in depth, local→staging→prod testing protocol, migration PR shape
  • db-migration-engineer agent — sister to db-schema-architect; owns the runbook, not the schema. Outputs runbook + gating criteria, not raw SQL. Refuses to auto-run any DB command
  • factory-pitfalls — 11 new failure-mode entries under "Database migrations (destructive prod writes)"
  • /prompt slash command — rewrite rough one-liners into structured XML-tagged form using the factory-prompting.md vocabulary
  • /kit-audit slash command + measurement script — quantify the kit's token footprint, identify trim candidates

fix:

  • .gitignore — stop tracking .claude/ (was leaking per-machine state)

Source provenance: synthesized from Kairos KAI-138 historical-orders seed cycle and KAI-126 backup doctrine work. The skill is project-agnostic but every principle has a concrete Kairos failure mode it was hardened against.

v0.1.4 — factory-design skill and docs-sync CI

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 21 May 22:24

Outcome: v0.1.4 — factory-design skill and docs-sync CI

Why: Codify the semantic-token design discipline as its own skill so every UI build draws from the same vocabulary; prevent README roster drift from recurring by checking skill / agent / command listings against disk on every PR.

Changes:

feat:

  • 6fa7084 feat: add factory-design skill and docs-sync CI

Highlights (refine as you like):

  • New skill factory-design — token vocabulary (name intent, not palette position), CSS variables bridged into Tailwind, dark/light as a single variable swap, single vs two-layer token systems, what gets a token vs stays a utility, primitives as token consumers, the 3-uses promote-to-primitive rule, vocabulary-sprawl failure mode, and a migration playbook from daisyUI / Bootstrap / Material.
  • New CI check docs-sync — runs on PRs touching skills/, agents/, commands/, or README.md; fails when disk and README roster disagree in either direction. Surfaces drift inline via GitHub error annotations.
  • factory-frontend semantic-colors section now delegates to factory-design for the deeper discipline; CRUD-specific tone guidance stays local.
  • frontend-engineer agent reading list adds factory-design; no-hex-literal and no-dark:-variant rules added to the conventions checklist.
  • factory-pitfalls gains a Design system block — eight entries (palette-position token names, hex in components, sprinkled dark: variants, spacing-token sprawl, primitive-layer leakage, "lift it later" components, token-sprawl, half-replaced theme libraries).
  • README skill table now lists factory-voice, factory-design, factory-testing, factory-ci (previously missing); slash-commands list adds /release; local-clone example pin bumped to v0.1.3.

v0.1.3 — CLI install command and cleaning up language

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 21 May 21:16

Outcome: v0.1.3 — This update enables a npx command for easy installation of factory-kit via CLI. It also takes a pass at updating some agents through the factory-voice style guidelines.

Why: In open-sourcing this kit, I want to make it easy for anyone to quickly install. Right now, there is a simple git checkout and ./install-sh command, but a more common paradigm is npx commands from terminal. Thus, we have enabled `npx nonlinear-labs/factory-kit'. From a write-up perspective, skills are now structured Principle → Why → Recipe → Failure mode.

Changes:

feat:

  • npx-installable CLI with symlink installer (bin/factory-kit.js); published as @nonlinear-labs/factory-kit (2c13db6)
  • factory-ci and factory-testing skills — CI conventions and testing guidelines (6b3837d)

refactor:

  • Skills inverted to principle-first structure with co-located recipes (66fb471)

docs / voice pass:

  • Hedging removed across factory-api, factory-auth, factory-frontend, factory-forms, factory-observability ("for free" eliminated; "clever" → "auto-discovery"; passive softeners rewritten as active calls)
  • /entry — section header renamed from "Constraints baked in" to "Encoded constraints" (changes how Claude phrases plan summaries)
  • /standup — removed "Be opinionated" from the output spec (the rule is already named in the Style section)

other:

  • Release strategy — 4th gate added (9902a65)
  • LICENSE update (c2ff7a8)

Refs: —

v0.1.2 — principle-first skills + factory-ci/testing

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 21 May 21:16
7819909

Outcome: v0.1.2 — Re-organized each skill to be "principle-first". Enable a factory-ci + factory-testing skills and added maturity to how we do releases.

Why: Skills landed inverted to Principle → Why → Recipe → Failure mode — a reader on a different stack can take the principle and skip the recipe. New factory-ci and factory-testing skills written in the new shape. The /release skill grew its fourth gate (publish GitHub Release).

Changes:

feat:

  • factory-ci and factory-testing skills — CI conventions and testing guidelines (6b3837d, PR #2)

refactor:

  • Skills inverted to principle-first with co-located recipes (66fb471, PR #1)

chore:

  • /release — 4th gate added: publish GitHub Release after push (9902a65)
  • LICENSE update (c2ff7a8)

Note: VERSION file at this tag's commit reads 0.1.1 — the bump was missed at release time. Tagged retroactively to preserve the release history. Subsequent releases bundle the VERSION bump into the release commit.

Refs: —

v0.1.1 — Establishing human-readable issues

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 18 May 22:16

Outcome: v0.1.1 — Setting the prose for all tickets and releases (especially in Linear) to be human readable. Claude Code is accustomed to writing release notes and issues like a system, not like an individual.

Why: v0.1.0 shipped without a single voice spec, so Linear writes and command output drifted toward generic assistant tone. This release makes the primary voice that of a senior software architect. This makes linear ticket updates human readable and easier to reference over time.

Changes:

fix:

  • update CLAUDE.md and commands/entry.md to use factory-voice.md shape for closing comments and issue summaries (f0cc7c4)
  • update command descriptions to follow factory-voice.md style guidelines (bundled in f0cc7c4)
  • bump VERSION to 0.1.1 and add release: as a first-class Conventional Commits type (645813a)

feat:

  • add Factory voice guide for Claude Code's communication style (bundled in f0cc7c4)
  • support release: type in commitlint config and document it in factory-commits.md (bundled in 645813a)
  • add Gate 4 to /release: publish a GitHub Release for every tag using the tag annotation as notes; auto-skips when origin isn't GitHub or gh isn't installed

other:

  • Update README.md (e1f9852, f547a69, 0520ee0) — three non-conventional README touch-ups; rewrite if you want them characterized differently

v0.1.0 — Prototype

Choose a tag to compare

@nonlinearnishu nonlinearnishu released this 18 May 21:33

This is the first tagged release (Phase 0) of a personal "software factory". The goal is to wire skills, specialist subagents, and slash commands that I repeatedly use into Claude Code.

What's in v0.1.0

13 skills (All auto-loaded into~/.claude/skills/) — These are conventions that I synthesized across multiple production builds.

10 specialist subagents (~/.claude/agents/) — These are teams of agents that I pulled upon throughout my work. They often helped me learn a subject or understand architectural tradeoffs.

5 slash commands (~/.claude/commands/) — This is primarily a Linear ticket workflow. I use Linear extensively to manage context and this helps me pull and log context during the build. They come with some commit conventions (commitlint.config.cjs) for AI-generated code commits.

install.sh — This wires up the skills, agents, and slash-commands into ~/.claude/. This is idempotent and prints the kit version + commit at the top.

Install

git clone https://github.com/nonlinearnishu/factory-kit ~/Documents/nonlinear/factory-kit
cd ~/Documents/nonlinear/factory-kit
git checkout v0.1.0   # pin a release; omit to track HEAD
./install.sh

What's next

  • Using these skills & commands in new projects and constantly iterating on what best serves my workflow.
  • Discussions are open for design questions
  • Twitter/X threads per minor tag at @nishu_lahoti

Provenance

These patterns were extracted from six prior builds. This kit is the synthesized output — how we build, separated from what we're building.