{
"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"
}
}