v0.4.36 August 2026

Start projects your AI agents already understand.

One command writes the AGENTS.md instructions, .specify/ workflows, MCP wiring, and engineering docs your agents read first, in each one's native format.

$bunx @outputease/toolkit init
outputease init  ·  ~/projects
● live preview~12s end to end
bannerpromptsscaffolddone
What it scaffolds

The context your AI agents need, written once.

One neutral source, generated into every agent's native config. Tuned to your stack, ready for any agent.

.agents/
Neutral source of truth. Edit once; every agent regenerates from it.
instructions/
AGENTS.md core + per-agent addenda
skills/
portable Markdown, translated per agent
mcp/
server definitions, one shape per agent
fidelity-report
what each agent can and can't run
AGENTS.md + bridges
The standard your agents read, plus a native bridge for the ones that need one.
AGENTS.md
read natively by most agents
CLAUDE.md
Claude Code bridge
GEMINI.md
Gemini CLI bridge
.cursor/rules/
Cursor rules
.specify/
Spec-driven workflows from GitHub's Spec-Kit
github/spec-kit
templates/
constitution, plan, tasks, spec
workflows/
specify, plan, implement
extensions/
OutputEase integrations
memory/
long-term plan memory
docs/
Engineering handbook seeded with your stack
architecture.md
system overview
conventions.md
lint, naming, style
testing.md
what gets a test, what doesn't
runbook.md
on-call procedures
and more
auth, api, cicd, perf, …
my-app/
├─ .agents/neutral source · edit here
│ ├─ instructions/
│ ├─ skills/
│ └─ mcp/
├─ AGENTS.mdread by most agents
├─ CLAUDE.mdgenerated bridge
├─ .cursor/rules/generated rules
├─ .specify/github/spec-kit · workflows
│ ├─ templates/
│ └─ workflows/
├─ docs/engineering handbook
├─ src/
├─ .outputeasedrives `outputease update`
├─ .mcp.json
├─ biome.json
└─ package.json

Pick Claude alone and the scaffold skips .agents/ entirely: it writes CLAUDE.md and .mcp.json at the root, plus .claude/, with no neutral source left to regenerate from.

Why it matters

Your agents inherit your conventions on day one.

Skip a week of telling your agent where the linter lives, what the test runner is, or how migrations work. Write it once, ship it with every project.

Claude CodeOpenAI Codex CLIGemini CLIOpenCodeCursorGitHub CopilotWindsurf / Devin
The build loop

Scaffolding is day one. This is every day after.

The same commands ship with every project. Capture an idea, open a session, spec the work, build in tight cycles, and ship behind a review gate. Then do it again.

  1. Ideate
    /capture/develop-idea

    Capture a raw idea in TODO.md, then develop it into something you can build now or promote to a spec.

  2. Open
    /quickstart

    Loads your priorities, branch, and the feature in flight, so every session starts oriented.

  3. Spec
    /speckit-specify/speckit-implement

    Turn an idea into a spec, a plan, and tracked tasks before any code gets written.

  4. Buildrepeats
    /dev-check/commit

    Validate the build, lint, and tests, then commit. /checkpoint saves work in progress the same way. Repeat until the feature lands.

  5. Ship
    /session-end/security-review

    Close the session with a push and handoff notes, then open a PR behind a security review.

The next session opens with /quickstart again.

Spec-kit is an external prerequisite (Python + uv). The loop assumes one developer per branch.

What it runs on

Proven tools, wired together.

The loop runs on proven open source, plus the session glue OutputEase ships. Here is how the pieces fit, and where each one comes from.

Added by OutputEaseour in-house workflow

  • Session skillsopen and close every session

    Ours. /quickstart opens oriented, /checkpoint and /dev-check keep the build honest, and /session-end pushes with handoff notes.

    OutputEaseno prereqs

Integratedproven open source

  • spec-kitthe planning track

    Runs when a feature spans sessions: spec, clarify, plan, tasks, then implement. Turns intent into tracked work before any code.

    github/spec-kitneeds Python + uv
  • superpowersthe workflow backbone

    Underneath every session: brainstorm an idea into a design, write the plan, build test-first, debug by root cause, and verify before done.

    obra/superpowers
  • cavemanthe token saver

    Optional caveman-speak mode: same technical content, with caveman claiming about 65% fewer output tokens. Pick it at init, toggle with /caveman.

    JuliusBrussee/cavemanoptional at init
Presets

Any preset, one flag.

Skip the wizard with --preset. Runtime, linter, test runner, and agent context tuned for what you're building. Adding to an existing monorepo instead? --scope workspace-app and --scope workspace-package scaffold into it.

Web App

Next.js and Tailwind, with the backend and runtime you pick at init.

--preset web-app
Backend and runtime

Bun runtime with Drizzle, no hosted backend wired in.

$outputease init my-web-app --preset web-app
Stack
Next.js 16React 19Tailwind CSSshadcn/uiBunDrizzle
What gets scaffolded
app
public
Dev-stacks dataset · 235 tools

Every tool the toolkit knows, queryable.

235 vetted tools across 5 sections, typed and validated. The CLI resolves dependencies, writes configs, and seeds your docs from it. Import it yourself for the same.

Section
Platform
Priority
235 of 235 toolsdata/dev-stacks.json
@anthropic-ai/claude-code-sdk
AI Agent SDK · Developer Tools
@astrojs/mdx
Content Authoring · Application & Data
@astrojs/react
Framework Integration · Application & Data
@astrojs/rss
Content Distribution · Application & Data
@astrojs/sitemap
SEO · Developer Tools
@axe-core/playwright
Accessibility CI Testing · Developer Tools
@capacitor-community/sqlite
Local Database · Application & Data
@capacitor/appreq
App Lifecycle · Application & Data
@capacitor/browser
In-App Browser · Application & Data
@capacitor/camera
Camera · Application & Data
@capacitor/clipboard
Clipboard · Application & Data
@capacitor/devicereq
Device Info · Application & Data
import { loadDevStacks } from "@outputease/toolkit/dev-stacks"same dataset, programmatic access
the maintenance commands

Nothing here updates on its own. Run the command that matches what changed.

outputease upgrade

Updates the toolkit itself.

runsbun add -g @outputease/toolkit@latest
When a new release ships.
outputease update

Refreshes your project's config.

refreshes.agents/, .specify/, generated configs
In each scaffolded project.
outputease speckit

Installs, refreshes, or verifies spec-kit.

modesinit | refresh | verify
When the spec workflow drifts or upgrades.
outputease agents

Generates, checks, applies, or migrates agent configs.

modesgenerate | check | apply | migrate
After you edit .agents/.

Refresh your tooling without breaking your code.

Atomic refresh of .agents/, .specify/, and the generated agent configs. Your edits stay put. Conflicts get an interactive prompt.

  • 1
    Reads .outputease marker
    knows what was scaffolded, what version, when
  • 2
    Fetches @latest from npm registry
    two-step: metadata then tarball
  • 3
    Diffs with your project
    byte-level compare, ignores generated noise
  • 4
    Asks before overwriting
    overwrite / skip / view-diff / apply-all / skip-all
  • 5
    Atomic commit
    all-or-nothing, rolls back on signal
outputease updateconflict
Comparing toolkit v0.2.0 → v0.2.1
.agents/skills/gen-test/SKILL.mdupdated, no local changes
.specify/templates/plan.mdupdated, no local changes
?AGENTS.mdlocally modified · pick action
.outputeasebumped to 0.2.1
Conflict on AGENTS.md
You edited this file. Toolkit also updated it. What now?
src/lib/stacks.ts
import {
loadDevStacks,
validateDevStacks,
getDevStacksPath,
} from "@outputease/toolkit";
 
const stacks = loadDevStacks();
 
const webStacks = stacks.filter(
(s) => s.platforms.webApp && s.priority !== "optional"
);
 
const result = validateDevStacks(getDevStacksPath());
if (result.hasErrors) {
console.error(result.crossFieldIssues);
}
Programmatic API

Use the same data the CLI uses.

Validating a dev-stack mapping? Generating docs from the dataset? Import the loaders, or the same @outputease/toolkit/factsexport that bakes this page's own numbers. Fully typed, MIT.

loadDevStacks()the full development-stack registry
loadAgentStacks()AI-agent tooling per platform
loadAgentTargets()the agent targets the CLI can scaffold for
validateDevStacks()schema + cross-field checks, returns a result (no throw)
validateAgentStacks()parity tests included
validateAgentTargets()schema + cross-field checks for agent-targets.json
Open source · MIT

Open source, end to end.

MIT-licensed. Zero telemetry. Read the source, file an issue, send a PR.

MIT
license
v0.4.3
current
zero
telemetry
Bun · npm · curl
support