{"_id":"@dicorporations/ai-manager","name":"@dicorporations/ai-manager","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@dicorporations/ai-manager","version":"0.1.0","description":"npx-distributed installer for AI development workflows — safely scaffolds CLAUDE.md, agents, skills, hooks, MCP configs, and framework routing into existing projects.","type":"module","bin":{"ai-manager":"bin/cli.js","ai-mgr":"bin/cli.js"},"engines":{"node":">=18"},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit","lint":"prettier --check \"src/**/*.ts\" \"test/**/*.ts\"","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","test":"vitest run","test:watch":"vitest","dogfood":"npm run build && bash scripts/dogfood.sh","start":"node bin/cli.js","prepublishOnly":"npm run build && npm test"},"keywords":["ai","claude","claude-code","agents","skills","scaffold","installer","cli","npx","gsd","superpowers"],"author":{"name":"dicorp"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/dicorp/ai-manager.git"},"bugs":{"url":"https://github.com/dicorp/ai-manager/issues"},"homepage":"https://github.com/dicorp/ai-manager#readme","publishConfig":{"access":"public"},"dependencies":{"@clack/prompts":"^0.7.0","commander":"^12.1.0","picocolors":"^1.1.0","zod":"^3.23.8"},"devDependencies":{"@types/node":"^20.14.0","prettier":"^3.3.0","tsup":"^8.3.0","typescript":"^5.6.0","vitest":"^2.1.0"},"_id":"@dicorporations/ai-manager@0.1.0","_nodeVersion":"24.12.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-Q3kvpLvWo2gQQyBJaA2YuIyulFmTUXgeJ3LJID14LufK25LBN+zjnqhSzqwvIpuzkWRcKwWkj5KGaaBoHdGRJw==","shasum":"93d9f8c38887455a5b32dcca56cecb9508ab3542","tarball":"https://registry.npmjs.org/@dicorporations/ai-manager/-/ai-manager-0.1.0.tgz","fileCount":46,"unpackedSize":196423,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBzmv+AYAUvJIVIvXrTcJoaU7Ni7PsFhfegIMI6+HICYAiEAlDpgf5hr3xcu9WQbNnFgqRXLxgTj+Caj+7higztqOrQ="}]},"_npmUser":{"name":"paigeshindi","email":"manager@dicorporations.com"},"directories":{},"maintainers":[{"name":"paigeshindi","email":"manager@dicorporations.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-manager_0.1.0_1782457920781_0.6371517658162498"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-26T07:12:00.629Z","0.1.0":"2026-06-26T07:12:00.948Z","modified":"2026-06-26T07:12:01.187Z"},"maintainers":[{"name":"paigeshindi","email":"manager@dicorporations.com"}],"description":"npx-distributed installer for AI development workflows — safely scaffolds CLAUDE.md, agents, skills, hooks, MCP configs, and framework routing into existing projects.","homepage":"https://github.com/dicorp/ai-manager#readme","keywords":["ai","claude","claude-code","agents","skills","scaffold","installer","cli","npx","gsd","superpowers"],"repository":{"type":"git","url":"git+https://github.com/dicorp/ai-manager.git"},"author":{"name":"dicorp"},"bugs":{"url":"https://github.com/dicorp/ai-manager/issues"},"license":"MIT","readme":"# @dicorporations/ai-manager\n\nInstall and configure AI development workflows into your existing project —\nsafely, incrementally, and reversibly.\n\n```bash\nnpx @dicorporations/ai-manager init\n```\n\n## Philosophy\n\nThe user should never need to know or name a framework. You describe what you want\nin natural language; the installed **router** classifies the request and applies the\n**minimum workflow necessary**:\n\n- Trivial/clear tasks stay simple — no ceremony.\n- Medium tasks get a quick plan, then execution.\n- Large or ambiguous work escalates only as far as it needs to:\n  **GStack → GSD → Superpowers → Ralph Loop**.\n\nSpecialist agents (App Architect, Frontend/UI, Backend/API, AI Feature, Paywall/CRO,\nUX Writer, ASO, QA/Reviewer) and skills (UX writing, ASO, paid ads, CRO) are pulled\nin automatically when they improve the outcome. Everything is plain Markdown your AI\ntools already read — `CLAUDE.md`, `AGENTS.md`, `agents/`, `skills/`.\n\n**The installer's prime directive: never damage an existing project.** It merges,\nit doesn't overwrite; it backs up before it writes; and every run is idempotent.\n\n## Quick start\n\n```bash\n# 1. Preview exactly what will change — writes nothing\nnpx @dicorporations/ai-manager init --dry-run\n\n# 2. Install the app preset (backs up any file it touches)\nnpx @dicorporations/ai-manager init\n\n# 3. Confirm what's installed\nnpx @dicorporations/ai-manager status\n```\n\nThat's it. Open `CLAUDE.md`, then describe what you want to build in plain language —\nthe router takes it from there. To undo everything: `npx @dicorporations/ai-manager uninstall`.\n\n## Commands\n\n| Command | Description |\n|---|---|\n| `init` | First-time setup: detect project, resolve a preset, plan, apply |\n| `add <plugins...>` | Incrementally install plugins (e.g. `add ai-feature aso`) |\n| `remove <plugins...>` | Remove specific plugins (preserves your edits) |\n| `update [plugins...]` | Refresh the active preset's plugins (managed sections only) |\n| `uninstall` | Remove everything; restore managed docs |\n| `list` | Show available presets and plugins, and what's installed |\n| `status` | Show active preset, installed/missing plugins, versions, drift |\n| `doctor` | Validate the setup and offer fixes |\n\nGlobal flags: `--dry-run`, `--yes`, `--force`, `--no-backup`, `--preset <name>`,\n`--cwd <path>`, `--json`, `--verbose`.\n\n## Presets\n\nA **preset** is a curated bundle of plugins. Pick with `--preset <name>` (default: `app`).\n\n| Preset | For | Plugins |\n|---|---|---|\n| `minimal` | Just the router | CLAUDE.md only |\n| `core` | Engineering workflows | router, core, gstack, gsd, superpowers, ralph-loop |\n| `app` ⭐ | Building a production app | core workflows + app-architect, frontend-ui, backend-api, ai-feature, paywall-cro, ux-writer, aso, qa-reviewer |\n| `marketing` | Marketing-only work | router, core, ux-writer, aso, paywall-cro |\n| `design` | Design-only work | router, core, frontend-ui, ux-writer, qa-reviewer |\n| `full` | Everything | all plugins + hooks |\n\nDependencies resolve automatically — any plugin pulls in `router` + `core`, so every\npreset gives you a working `CLAUDE.md` (and `AGENTS.md`, except `minimal`).\n\n## Bundled plugins\n\nLocal, bundled with the package — no remote downloads. Each is a `plugins/<name>/`\nfolder with a `plugin.json` (files, managed sections, hooks, deps).\n\n| Plugin | Installs |\n|---|---|\n| `router` | `CLAUDE.md` workflow router (managed section) |\n| `core` | `AGENTS.md` agent/skill index (managed section) |\n| `gstack` · `gsd` · `superpowers` · `ralph-loop` | workflow agents |\n| `app-architect` | `agents/app-architect.md` — system design |\n| `frontend-ui` | `agents/frontend-ui.md` — mobile-first UI/UX, a11y, all states |\n| `backend-api` | `agents/backend-api.md` — endpoints, validation, auth |\n| `ai-feature` | `agents/ai-feature.md` — prompts, structured output, evals, cost |\n| `paywall-cro` | `agents/paywall-cro.md` + `skills/cro.md` |\n| `ux-writer` | `agents/ux-writer.md` + `skills/ux-writing.md` + `skills/paid-ads.md` |\n| `aso` | `agents/aso.md` + `skills/aso.md` |\n| `qa-reviewer` | `agents/qa-reviewer.md` |\n| `hooks` | `hooks/` automation scaffold |\n\n## Safety model\n\n- **Manifest** tracks every file each plugin owns + its content hash.\n- **Classification** — never blind-overwrite (NEW / UNCHANGED / USER-MODIFIED / FOREIGN).\n- **Managed blocks** merge into `CLAUDE.md` / `AGENTS.md` without touching your content.\n- **Backups** before every modification; **`--dry-run`** previews the full plan.\n\nSee [ARCHITECTURE.md](./ARCHITECTURE.md) for the full design.\n\n## Examples by project type\n\n```bash\n# App project (default) — architecture, UI, API, AI, paywall, copy, ASO, QA\nnpx @dicorporations/ai-manager init                       # same as --preset app\n\n# Marketing-only project — copy, ads, ASO, paywall/conversion\nnpx @dicorporations/ai-manager init --preset marketing\n\n# Design-only project — mobile-first UI/UX, accessibility, review\nnpx @dicorporations/ai-manager init --preset design\n\n# Minimal — just the CLAUDE.md router, nothing else\nnpx @dicorporations/ai-manager init --preset minimal\n\n# Engineering workflows only, no specialist agents\nnpx @dicorporations/ai-manager init --preset core\n\n# Start minimal, add capabilities later (incremental)\nnpx @dicorporations/ai-manager add ai-feature paywall-cro\nnpx @dicorporations/ai-manager remove paywall-cro\n\n# Switch an existing install to another preset\nnpx @dicorporations/ai-manager init --preset full --force\n```\n\n## Using the `app` preset\n\n```bash\nnpx @dicorporations/ai-manager init --preset app\n```\n\nThen just talk to your AI tool in natural language — the router picks the right\nagents automatically:\n\n| You say | Routes to |\n|---|---|\n| \"Build the AI workout generator feature.\" | App Architect → GSD → AI Feature + Backend/API + Frontend/UI → QA/Reviewer |\n| \"Improve this paywall screen.\" | Paywall/CRO → UX Writer → Superpowers |\n| \"Rewrite the onboarding copy.\" | UX Writer (clarity-first + copy frameworks) |\n| \"Fix this bug and add tests.\" | Superpowers → QA/Reviewer |\n| \"Create App Store metadata for Korea and US.\" | ASO agent → UX Writer (localized per market) |\n| \"Make this button match iOS conventions.\" | Frontend/UI → Superpowers |\n\nYou never name a framework or agent — the installed `CLAUDE.md` router does it.\n\n## Full lifecycle\n\n```bash\n# Install (app preset, the default) into the current project\nnpx @dicorporations/ai-manager init\n\n# Preview every change before writing anything\nnpx @dicorporations/ai-manager init --dry-run\n\n# Install, backing up any file before it's modified\nnpx @dicorporations/ai-manager init --backup\n\n# Inspect: components, versions, update availability, drift\nnpx @dicorporations/ai-manager status\n\n# Refresh generated files to the latest templates (preserves your edits)\nnpx @dicorporations/ai-manager update\n\n# Remove managed sections + generated files (your content is preserved)\nnpx @dicorporations/ai-manager uninstall\n```\n\nEvery mutating command supports `--dry-run` (preview, write nothing) and writes a\nbackup by default (`--no-backup` to skip). `uninstall` asks for confirmation when\nrun interactively; pass `--yes` in scripts/CI.\n\n### What `init` creates (full preset)\n\n```\nCLAUDE.md              # workflow router  — managed section\nAGENTS.md              # agent/skill index — managed section\nagents/gstack.md         # clarify ambiguous work\nagents/gsd.md            # decompose & track multi-file work\nagents/superpowers.md    # plan → implement → test → review\nagents/ralph-loop.md     # autonomous loop until done\nagents/app-architect.md  # system design for features\nagents/frontend-ui.md    # mobile-first UI/UX, a11y, all states\nagents/backend-api.md    # endpoints, validation, auth, migrations\nagents/ai-feature.md     # LLM features — structured output, evals, cost\nagents/paywall-cro.md    # paywall & conversion optimization\nagents/ux-writer.md      # onboarding, CTAs, empty/error states\nagents/aso.md            # App Store / Play metadata\nagents/qa-reviewer.md    # verify before \"done\"\nskills/ux-writing.md     # UX writing, AIDA, PAS, StoryBrand, Hormozi, awareness\nskills/paid-ads.md       # Meta / Google ad copy\nskills/aso.md            # App Store / Play optimization\nskills/cro.md            # pricing psychology, trial, objections, trust\nhooks/hooks.md           # automation hooks scaffold (full preset)\n.ai-framework.json     # project metadata (preset, plugins, generated files, dates)\n.ai-manager/           # config.json + manifest.json (+ backups/)\n```\n\nThe exact set depends on the preset — the listing above is `full`.\n\n### Project metadata — `.ai-framework.json`\n\n`init`/`update` write a human-readable metadata file at the project root:\n\n```json\n{\n  \"installerVersion\": \"0.1.0\",\n  \"templateVersion\": \"0.1.0\",\n  \"installedAt\": \"2026-06-26T…\",\n  \"updatedAt\": \"2026-06-26T…\",\n  \"preset\": \"app\",\n  \"packageManager\": \"npm\",\n  \"projectType\": [\"node\", \"typescript\"],\n  \"plugins\": { \"router\": \"0.1.0\", \"core\": \"0.1.0\", \"gsd\": \"0.1.0\" },\n  \"generatedFiles\": [\"CLAUDE.md\", \"AGENTS.md\", \"agents/…\"]\n}\n```\n\n`status` reads it to show what's installed, the installer vs. installed version\n(flagging when an update is available), agent/skill/hook counts, managed-section\npresence, MCP detection, and per-file drift. `uninstall` removes it.\n\n## How existing files are protected\n\n| Situation | What happens |\n| --- | --- |\n| `CLAUDE.md` / `AGENTS.md` already exist | **Merged**, never replaced — your content stays, our section is wrapped in markers |\n| Re-running `init` / `update` | **Idempotent** — the managed section is updated in place, never duplicated |\n| You edited inside the managed section | Refreshed on `update` (it's ours); pass nothing to keep, it's backed up first |\n| You have your own `agents/*.md` with the same name | **Skipped** (reported), never overwritten unless `--force` |\n| Any modification | The original is copied to `.ai-manager/backups/<timestamp>/` first |\n| Content outside the markers | **Never touched** |\n\nThe managed section lives between:\n\n```\n<!-- AI-FRAMEWORK:START -->\n...generated...\n<!-- AI-FRAMEWORK:END -->\n```\n\n`uninstall` removes only what's between the markers (restoring your original doc)\nand the files it owns — your own content and files are preserved.\n\n## Troubleshooting\n\n| Symptom | Cause / Fix |\n| --- | --- |\n| `This doesn't look like a project root` | No `package.json` / `.git` found. Run from your project root, or pass `--force` to install anyway. |\n| `ai-manager is already installed` | Expected on re-run. Use `status` / `update`, or switch preset with `init --preset <name> --force`. |\n| `Corrupted manifest` / `Corrupted config` | `.ai-manager/manifest.json` or `config.json` is invalid JSON. Restore it from `.ai-manager/backups/`, or delete the `.ai-manager/` directory and re-run `init`. |\n| `failed <file> — EACCES: permission denied` | A target file is read-only. The run continues and reports it; fix the permission (`chmod +w <file>`) and re-run `update`. |\n| `status` shows **drift** on a file | You (or a tool) edited a generated file. Keep your edits, or run `update` to restore the bundled version (it's backed up first). |\n| `status` shows a plugin as **missing** | A partial install or manual deletion. Run `update` to restore the active preset's files. |\n| Your `CLAUDE.md` looks doubled | It isn't — the managed section lives between `AI-FRAMEWORK` markers and is replaced in place. There is always exactly one marker pair. |\n| Want to start over | `uninstall` (restores your docs), then `init`. Nothing of yours is lost. |\n\nWhen in doubt, run `ai-manager doctor` — it reports missing/drifted files and tells you\nwhat to do next. Everything mutating supports `--dry-run` to preview first.\n\n## Development\n\n```bash\nnpm install\nnpm run build       # bundle to dist/ via tsup\nnpm run typecheck   # tsc --noEmit\nnpm run lint        # prettier --check\nnpm test            # vitest (merge + preset + install lifecycle + robustness)\nnpm run dogfood     # build + run the dogfood matrix on sample projects\nnpm pack            # produce the publishable tarball\n```\n\nDogfooding against real React/Next/Expo-shaped projects is documented in\n[docs/DOGFOOD.md](./docs/DOGFOOD.md) (49/49 assertions, bugs found + fixed,\npublish confidence).\n\n## Project status\n\nPublish-ready installer with a preset + bundled-plugin architecture. Live: project +\ngit detection, preset/plugin dependency resolution, plan preview with summary,\nmanaged-block merge, backups, metadata tracking, safety checks, and full `init` /\n`add` / `remove` / `update` / `status` / `uninstall`. Not yet: remote plugin\nregistry/downloads, MCP deep-merge, and 3-way conflict resolution — see\n[ARCHITECTURE.md](./ARCHITECTURE.md).\n","readmeFilename":"README.md","_rev":"1-b19c008dd1c39df52e237b93ba8e4eb1"}