{
  "name": "omp-monorepo",
  "private": true,
  "type": "module",
  "packageManager": "bun@1.3.14",
  "workspaces": {
    "packages": [
      "packages/*",
      "python/robomp/web"
    ],
    "catalog": {
      "@agentclientprotocol/sdk": "0.22.1",
      "@anthropic-ai/sdk": "^0.99.0",
      "@babel/generator": "^7.29.7",
      "@babel/parser": "^7.29.7",
      "@babel/traverse": "^7.29.7",
      "@babel/types": "^7.29.7",
      "@biomejs/biome": "^2.4.16",
      "@bufbuild/protobuf": "^2.12.0",
      "@bufbuild/protoc-gen-es": "^2.12.0",
      "@huggingface/transformers": "^4.2.0",
      "@mozilla/readability": "^0.6.0",
      "@napi-rs/cli": "3.7.0",
      "@oh-my-pi/hashline": "15.7.4",
      "@oh-my-pi/omp-stats": "15.7.4",
      "@oh-my-pi/pi-agent-core": "15.7.4",
      "@oh-my-pi/pi-ai": "15.7.4",
      "@oh-my-pi/pi-coding-agent": "15.7.4",
      "@oh-my-pi/pi-mnemopi": "15.7.4",
      "@oh-my-pi/pi-natives": "15.7.4",
      "@oh-my-pi/pi-tui": "15.7.4",
      "@oh-my-pi/pi-utils": "15.7.4",
      "@opentelemetry/api": "^1.9.1",
      "@opentelemetry/context-async-hooks": "^2.7.1",
      "@opentelemetry/sdk-trace-base": "^2.7.1",
      "@puppeteer/browsers": "^3.0.4",
      "@tailwindcss/node": "^4.3.0",
      "@tailwindcss/vite": "^4.3.0",
      "@types/babel__generator": "^7.27.0",
      "@types/babel__traverse": "^7.28.0",
      "@types/bun": "^1.3.14",
      "@types/react": "^19.2.15",
      "@types/react-dom": "^19.2.3",
      "@types/turndown": "5.0.6",
      "@typescript/native-preview": "7.0.0-dev.20260527.1",
      "@xterm/headless": "^6.0.0",
      "beautiful-mermaid": "^1.1.3",
      "chalk": "^5.6.2",
      "chart.js": "^4.5.1",
      "date-fns": "^4.3.0",
      "diff": "^9.0.0",
      "fflate": "0.8.3",
      "fastembed": "2.1.0",
      "handlebars": "^4.7.9",
      "linkedom": "^0.18.12",
      "lint-staged": "^17.0.5",
      "lru-cache": "11.5.1",
      "lucide-react": "^1.16.0",
      "marked": "^18.0.4",
      "markit-ai": "0.5.3",
      "onnxruntime-node": "1.24.3",
      "openai": "^6.39.0",
      "partial-json": "^0.1.7",
      "postcss": "^8.5.15",
      "prettier": "^3.8.3",
      "puppeteer-core": "^25.1.0",
      "react": "19.2.6",
      "react-chartjs-2": "^5.3.1",
      "react-dom": "19.2.6",
      "regexp-tree": "^0.1.27",
      "solid-js": "^1.9.13",
      "tailwindcss": "^4.3.0",
      "turndown": "7.2.4",
      "turndown-plugin-gfm": "1.0.2",
      "typescript": "^6.0.3",
      "vite": "^8.0.14",
      "vite-plugin-solid": "^2.11.12",
      "winston": "^3.19.0",
      "winston-daily-rotate-file": "^5.0.0",
      "zod": "4.4.3"
    }
  },
  "overrides": {},
  "scripts": {
    "install:dev": "bun install && bun --cwd=packages/coding-agent link && bun --cwd=packages/ai link",
    "dev": "bun --cwd=packages/coding-agent src/cli.ts",
    "stats": "bun --cwd=packages/coding-agent src/cli.ts stats",
    "build": "bun run --workspaces --if-present build",
    "build:native": "bun --cwd=packages/natives run build",
    "test": "bun run --parallel test:ts test:rs",
    "test:ts": "GITHUB_ACTIONS=0 bun run --workspaces --if-present test -- --only-failures",
    "test:rs": "bun scripts/run-rs-task.ts test:rs",
    "check": "bun run --parallel check:ts check:rs",
    "check:ts": "bun run check:tools && bun run --workspaces --if-present check",
    "check:tools": "biome check . --no-errors-on-unmatched",
    "check:rs": "bun scripts/run-rs-task.ts check:rs",
    "lint": "bun run --parallel lint:ts lint:rs",
    "lint:ts": "bun run --parallel lint:tools && bun run --workspaces --if-present lint",
    "lint:tools": "biome lint . --no-errors-on-unmatched",
    "lint:rs": "bun scripts/run-rs-task.ts lint:rs",
    "fmt": "bun run --parallel fmt:ts fmt:rs",
    "fmt:ts": "bun run fmt:tools && bun run --workspaces --if-present fmt",
    "fmt:tools": "biome format --write . --no-errors-on-unmatched",
    "fmt:rs": "bun scripts/run-rs-task.ts fmt:rs",
    "fix": "bun run --parallel fix:ts fix:rs",
    "fix:all": "bun run --parallel fix:ts:all fix:rs",
    "fix:ts": "bun run fix:tools && bun run --workspaces --if-present fix",
    "fix:ts:all": "bun run fix:tools:all && bun run --workspaces --if-present fix",
    "fix:tools": "biome check --write --unsafe --changed --no-errors-on-unmatched .",
    "fix:tools:all": "biome check --write --unsafe --no-errors-on-unmatched .",
    "fix:rs": "bun scripts/run-rs-task.ts fix:rs",
    "ci:check:full": "bun run check:ts",
    "ci:build:native": "bun scripts/ci-build-native.ts",
    "ci:test:full": "bun run test",
    "ci:test:smoke": "bun packages/coding-agent/src/cli.ts --version && bun packages/coding-agent/src/cli.ts --help && bun packages/coding-agent/src/cli.ts stats --help && bun packages/coding-agent/src/cli.ts --smoke-test",
    "ci:test:install-methods": "bash scripts/install-tests/run-ci.sh",
    "ci:release:build-binaries": "bun scripts/ci-release-build-binaries.ts",
    "ci:release:publish": "bun scripts/ci-release-publish.ts",
    "ci:release:publish-native-leaf": "bun scripts/ci-release-publish.ts --native-leaf",
    "bench:gen-fixtures": "bun --cwd=packages/typescript-edit-benchmark run src/generate.ts --typescript-dir /tmp/typescript-source --count-per-type 8",
    "bench:edit": "bun --cwd=packages/typescript-edit-benchmark run start",
    "stats:sync": "python3 scripts/session-stats/sync.py",
    "stats:tools": "python3 scripts/session-stats/analyze.py tools",
    "stats:edits": "python3 scripts/session-stats/analyze.py edits",
    "stats:followups": "python3 scripts/session-stats/analyze.py followups",
    "test:py": "python3 -m pytest -x python/omp-rpc/tests python/robomp/tests",
    "robomp:install": "pip install -e 'python/robomp[dev]'",
    "robomp:serve": "python3 -m robomp serve",
    "robomp:test:integration": "ROBOMP_INTEGRATION=1 python3 -m pytest -x python/robomp/tests/test_worker_smoke.py",
    "pi:image": "docker build -t \"${PI_IMAGE:-oh-my-pi/pi:dev}\" .",
    "pi:run": "docker run --rm -it \"${PI_IMAGE:-oh-my-pi/pi:dev}\"",
    "robomp:build": "bun run pi:image && docker compose --project-directory python/robomp build",
    "robomp:rebuild": "bun run pi:image && docker compose --project-directory python/robomp build --no-cache",
    "robomp:up": "docker compose --project-directory python/robomp up -d",
    "robomp:down": "docker compose --project-directory python/robomp down",
    "robomp:restart": "docker compose --project-directory python/robomp restart robomp",
    "robomp:logs": "docker compose --project-directory python/robomp logs -f robomp",
    "robomp:dev": "bun run robomp:build && bun run robomp:up && bun run robomp:logs",
    "robomp:reset": "docker compose --project-directory python/robomp down -v && (docker image rm \"${PI_IMAGE:-oh-my-pi/pi:dev}\" || true)",
    "robomp:web:dev": "bun --cwd=python/robomp/web run dev",
    "robomp:web:build": "bun --cwd=python/robomp/web run build",
    "lint:py": "ruff check python && ruff format --check python",
    "fix:py": "ruff check --fix python && ruff format python",
    "prepublishOnly": "bun run check",
    "prepare": "bun --cwd=packages/coding-agent run generate-docs-index",
    "publish": "bun run prepublishOnly && npm publish -ws --access public",
    "publish:dry": "bun run prepublishOnly && npm publish -ws --access public --dry-run",
    "release": "bun scripts/release.ts",
    "generate-models": "bun --cwd=packages/ai run generate-models",
    "generate-docs-index": "bun --cwd=packages/coding-agent run generate-docs-index",
    "generate-template": "bun --cwd=packages/coding-agent run generate-template",
    "check-spoofed-versions": "bun scripts/check-spoofed-versions.ts"
  },
  "devDependencies": {
    "@biomejs/biome": "catalog:",
    "prettier": "catalog:",
    "@types/bun": "catalog:",
    "@typescript/native-preview": "catalog:",
    "typescript": "catalog:",
    "lint-staged": "catalog:"
  },
  "lint-staged": {
    "*.{js,ts,jsx,tsx,json,jsonc,css}": "biome check --write --no-errors-on-unmatched"
  }
}