{
  "name": "aiwg",
  "version": "2026.5.10",
  "description": "Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platforms. Optional utilities for persistent artifact memory, background orchestration, autonomous loops, and artifact indexing.",
  "type": "module",
  "bin": {
    "aiwg": "bin/aiwg.mjs"
  },
  "man": "./man/aiwg.1",
  "main": "src/cli/index.mjs",
  "engines": {
    "node": ">=20.0.0"
  },
  "scripts": {
    "docs:collect": "node tools/manifest/collect-component-docs.mjs",
    "docs:collect:dry": "node tools/manifest/collect-component-docs.mjs --dry-run",
    "validate-metadata": "aiwg validate-metadata",
    "package-plugins": "node tools/plugin/package-plugins.mjs --all",
    "package-plugins:clean": "node tools/plugin/package-plugins.mjs --all --clean",
    "build": "npm run build:cli && npm --prefix apps/web ci && npm --prefix apps/web run build",
    "build:cli": "npm run check:versions && tsc && npm run build:copy-mjs",
    "build:copy-mjs": "node -e \"const{cpSync,mkdirSync,statSync,readdirSync}=require('fs');const{join,dirname}=require('path');function walk(d){for(const f of readdirSync(d,{withFileTypes:true})){const p=join(d,f.name);if(f.isDirectory())walk(p);else if(f.name.endsWith('.mjs')||f.name.endsWith('.json')){const o=p.replace(/^src\\//,'dist/src/');mkdirSync(dirname(o),{recursive:true});cpSync(p,o);}}}walk('src');console.log('Copied .mjs and .json files to dist/');\"",
    "build:web": "npm --prefix apps/web ci && npm --prefix apps/web run build",
    "test": "vitest run --config config/vitest.config.js",
    "test:integration": "vitest run --config config/vitest.config.js test/integration/cli-startup.test.ts test/integration/cli-perf.test.ts",
    "test:perf": "vitest run --config config/vitest.config.js test/integration/cli-perf.test.ts",
    "test:ci": "vitest run --config config/vitest.config.js && vitest run --config config/vitest.uat.config.js",
    "test:coverage": "vitest --config config/vitest.config.js --coverage",
    "test:ui": "vitest --config config/vitest.config.js --ui",
    "test:watch": "vitest --config config/vitest.config.js",
    "test:node": "node --test tools/ralph-external/*.test.mjs test/unit/ralph/*.test.mjs",
    "typecheck": "tsc --noEmit",
    "clean": "rm -rf dist coverage",
    "check:install-size": "node tools/cli/check-install-size.mjs --verbose",
    "check:dep-budget": "node tools/cli/check-dep-budget.mjs --verbose",
    "check:budgets": "npm run check:install-size && npm run check:dep-budget",
    "check:versions": "node tools/workspace/check-marketplace-version.mjs",
    "uat": "vitest run --config config/vitest.uat.config.js",
    "uat:watch": "vitest --config config/vitest.uat.config.js",
    "uat:live": "vitest run --config config/vitest.uat-live.config.js",
    "uat:claude": "vitest run --config config/vitest.uat-live.config.js --reporter=verbose ralph-live-claude",
    "uat:codex": "vitest run --config config/vitest.uat-live.config.js --reporter=verbose ralph-live-codex",
    "uat:opencode": "vitest run --config config/vitest.uat-live.config.js --reporter=verbose ralph-live-opencode",
    "uat:factory": "vitest run --config config/vitest.uat-live.config.js --reporter=verbose ralph-live-factory",
    "uat:daemon": "vitest run --config config/vitest.uat-daemon.config.js",
    "uat:daemon:claude": "vitest run --config config/vitest.uat-daemon.config.js --reporter=verbose daemon-live-claude",
    "lint:schemas": "node tools/scripts/lint-schemas.mjs",
    "lint:dep-sources": "node tools/lint/dep-source.mjs",
    "lint:affected-packages": "node tools/lint/affected-packages.mjs",
    "lint:tarball": "node tools/lint/tarball-audit.mjs",
    "lint:audit-signatures": "node tools/lint/audit-signatures.mjs",
    "test:conformance": "vitest run --config config/vitest.conformance.config.js test/conformance/executor-v1/",
    "test:contract": "vitest run --config config/vitest.contract.config.js test/contract/",
    "test:integration:serve": "vitest run --config config/vitest.integration.config.js",
    "uat:serve-live": "vitest run --config config/vitest.uat-serve-live.config.js",
    "test:integration:serve:flake-gate": "node tools/scripts/integration-flake-gate.mjs"
  },
  "files": [
    "bin/",
    "dist/",
    "tools/",
    "agentic/",
    "templates/",
    "plugins/",
    "man/",
    "apps/web/dist",
    "CLAUDE.md"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/jmagly/aiwg.git"
  },
  "keywords": [
    "aiwg",
    "ai-agents",
    "multi-agent",
    "agentic-ai",
    "agent-framework",
    "cognitive-architecture",
    "claude-code",
    "claude-code-plugin",
    "claude-skills",
    "claude-desktop",
    "cursor-ide",
    "github-copilot",
    "copilot",
    "warp-terminal",
    "factory-ai",
    "opencode",
    "codex",
    "windsurf",
    "mcp-server",
    "model-context-protocol",
    "mcp",
    "sdlc",
    "sdlc-framework",
    "software-development-lifecycle",
    "ai-writing",
    "voice-profiles",
    "content-quality",
    "workflow-automation",
    "ci-cd",
    "devops",
    "digital-forensics",
    "incident-response",
    "dfir",
    "media-curator",
    "media-archive",
    "metadata-management",
    "research-workflow",
    "citation-management",
    "fair-data",
    "agent-loop",
    "iterative-execution",
    "crash-recovery",
    "long-running-agents",
    "autonomous-agents",
    "agent-orchestration",
    "infinite-loop",
    "external-ralph",
    "crash-resilient",
    "daemon-agent",
    "background-agent",
    "self-healing",
    "auto-recovery",
    "rlm",
    "recursive-language-model",
    "context-decomposition",
    "sub-agent-delegation",
    "parallel-agents",
    "fan-out",
    "traceability",
    "provenance",
    "w3c-prov",
    "ensemble-validation",
    "quality-gates",
    "human-in-the-loop",
    "stage-gate",
    "phase-transitions",
    "tdd",
    "mutation-testing",
    "test-automation",
    "flaky-test-detection",
    "regression-testing",
    "code-review",
    "security-audit",
    "threat-modeling",
    "yaml-metalanguage",
    "declarative-workflows",
    "schema-validation",
    "json-schema",
    "multi-platform",
    "developer-tools",
    "cli",
    "npm",
    "typescript",
    "ai-coding-assistant",
    "code-generation",
    "ai-code-review",
    "llm-orchestration",
    "prompt-engineering",
    "context-engineering",
    "agent-memory",
    "persistent-memory",
    "session-persistence",
    "artifact-management",
    "project-scaffolding",
    "extension-system",
    "plugin-system",
    "sigma-rules",
    "mitre-attack",
    "evidence-collection",
    "timeline-analysis",
    "ioc-extraction",
    "marketing-automation",
    "campaign-management",
    "seo-optimization",
    "content-strategy",
    "brand-compliance",
    "media-metadata",
    "discography-analysis",
    "audio-tagging",
    "plex",
    "jellyfin",
    "academic-research",
    "literature-review",
    "bibliography",
    "grade-methodology",
    "reproducibility",
    "deterministic-execution",
    "calver",
    "anti-laziness",
    "token-security",
    "llm-failure-mitigation",
    "agentic-workflow",
    "task-automation",
    "cron-agents",
    "scheduled-agents",
    "remote-agents",
    "openclaw",
    "clawhub",
    "behaviors",
    "reactive-automation",
    "event-driven-agents",
    "behavior-hooks",
    "file-watch-agents",
    "autonomous-daemon",
    "daemon-mode"
  ],
  "author": "jmagly",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/jmagly/aiwg/issues"
  },
  "homepage": "https://aiwg.io",
  "funding": {
    "type": "github",
    "url": "https://github.com/sponsors/jmagly"
  },
  "community": {
    "discord": "https://discord.gg/BuAusFMxdA",
    "telegram": "https://t.me/+oJg9w2lE6A5lOGFh"
  },
  "publishConfig": {
    "access": "public"
  },
  "pnpm": {
    "onlyBuiltDependencies": [],
    "shamefully-hoist": false,
    "strict-peer-dependencies": false,
    "auto-install-peers": true
  },
  "dependencies": {
    "@modelcontextprotocol/sdk": "^1.24.0",
    "chalk": "^4.1.2",
    "chokidar": "^3.6.0",
    "commander": "^12.1.0",
    "glob": "^13.0.1",
    "graceful-fs": "^4.2.11",
    "js-yaml": "^4.1.0",
    "listr2": "^8.2.5",
    "ora": "^5.4.1",
    "yaml": "^2.8.1",
    "zod": "^3.25.0"
  },
  "optionalDependencies": {
    "@hono/node-server": "^1.19.14",
    "hnswlib-node": "^3.0.0",
    "hono": "^4.12.18",
    "node-pty": "^1.0.0",
    "ws": "^8.20.0"
  },
  "peerDependencies": {
    "@xenova/transformers": "^2.17.2",
    "better-sqlite3": "^12.8.0"
  },
  "peerDependenciesMeta": {
    "@xenova/transformers": {
      "optional": true
    },
    "better-sqlite3": {
      "optional": true
    }
  },
  "devDependencies": {
    "@types/js-yaml": "^4.0.9",
    "@types/node": "^22.8.0",
    "@types/semver": "^7.7.1",
    "@vitest/coverage-v8": "^2.1.0",
    "@vitest/ui": "^2.1.0",
    "@xterm/headless": "^6.0.0",
    "cli-table3": "^0.6.5",
    "graphology": "^0.26.0",
    "graphology-operators": "^1.6.0",
    "graphology-shortest-path": "^2.1.0",
    "graphology-traversal": "^0.3.0",
    "graphology-types": "^0.24.0",
    "simple-statistics": "^7.8.8",
    "tsx": "^4.21.0",
    "typescript": "^5.9.3",
    "vitest": "^2.1.0"
  }
}
