{ "name": "roomote", "version": "1.20.2", "license": "FCL-1.0-ALv2", "packageManager": "pnpm@10.29.3", "engines": { "node": "^22.23.4 || ^24.22.1", "pnpm": "10.x" }, "scripts": { "prepare": "[ -d .git ] && husky || true", "format": "oxfmt \"**/*.{js,jsx,ts,tsx,json,css}\"", "format:check": "oxfmt --check \"**/*.{js,jsx,ts,tsx,json,css}\"", "lint": "pnpm format:check && pnpm exec oxlint --deny-warnings && pnpm exec turbo lint --log-order grouped --output-logs new-only", "lint:fast": "pnpm exec oxlint --deny-warnings && pnpm exec turbo lint --log-order grouped --output-logs new-only", "lint:staged": "lint-staged", "lint:pre-push": "node scripts/pre-push-checks.mjs", "judgement:presets": "pnpm --filter @roomote/cloud-agents judgement:presets", "judgement": "dotenvx run --quiet -f .env.local -- pnpm --silent --filter @roomote/cloud-agents judgement", "check-types": "turbo check-types --log-order grouped --output-logs new-only", "check-types:fast": "turbo check-types:fast --log-order grouped --output-logs new-only", "test": "pnpm --silent --filter @roomote/db db:push:test && turbo test --concurrency=1 --log-order grouped --output-logs new-only", "test:ci": "turbo test --concurrency=1 --log-order grouped --output-logs new-only", "knip": "knip", "check": "pnpm lint && pnpm check-types && pnpm test && pnpm knip", "build": "turbo build --log-order grouped --output-logs new-only", "clean": "turbo clean --log-order grouped --output-logs new-only && rimraf logs .docker/data/worker .turbo worker-*.tar.gz*", "brain:up": "dotenvx run --quiet -f .env.local -- docker compose --profile brain up gbrain -d --wait", "infra:up": "docker compose up postgres redis minio caddy-dev -d --wait && docker compose exec -T postgres /docker-entrypoint-initdb.d/create-databases.sh && docker compose up minio-init && pnpm --silent --filter @roomote/db db:migrate && pnpm --silent --filter @roomote/db db:push:test --force", "infra:down": "docker compose down postgres redis minio minio-init caddy-dev", "db:up": "docker compose up postgres redis minio -d --wait && docker compose exec -T postgres /docker-entrypoint-initdb.d/create-databases.sh && docker compose up minio-init && pnpm --silent --filter @roomote/db db:migrate && pnpm --silent --filter @roomote/db db:push:test --force", "db:down": "docker compose down postgres redis minio minio-init", "db:generate": "pnpm --silent --filter @roomote/db db:generate", "db:migrate": "pnpm --silent --filter @roomote/db db:migrate", "db:reset": "pnpm db:down && docker volume rm -f roomote_pg_data roomote_redis_data roomote_minio_data && pnpm db:up", "db:seed": "pnpm --silent --filter @roomote/db db:seed", "db:seed:demo": "pnpm --silent --filter @roomote/db db:seed:demo", "deployment:validate": "node --test deploy/ci/deployment-scripts.test.mjs deploy/ci/worker-tls-runtime.test.mjs && node deploy/ci/validate-deployment-artifacts.mjs", "deployment:smoke": "bash deploy/ci/deployment-smoke.sh", "dev": "pnpm --silent --filter @roomote/dev dev", "doctor": "pnpm --filter @roomote/dev run doctor", "storybook": "pnpm --filter @roomote/web storybook", "changeset": "changeset", "version": "node scripts/release/apply-version.mjs", "test:release-scripts": "node --test scripts/release/__tests__/*.test.mjs scripts/modal/__tests__/*.test.mjs" }, "devDependencies": { "@changesets/cli": "^2.31.0", "@dotenvx/dotenvx": "^1.52.0", "@roo-code/judgement": "0.4.1", "@roomote/config-typescript": "workspace:^", "@types/node": "^24.10.13", "@typescript/native-preview": "7.0.0-dev.20260614.1", "eslint": "^9.39.2", "husky": "^9.1.7", "knip": "^5.85.0", "lint-staged": "^16.2.7", "oxfmt": "^0.58.0", "oxlint": "^1.73.0", "rimraf": "^6.1.2", "smol-toml": "1.9.0", "tsx": "4.20.4", "turbo": "^2.9.14", "typescript": "^5.9.3", "yaml": "^2.9.0" }, "lint-staged": { "*.{js,jsx,ts,tsx,json,css}": [ "oxfmt --no-error-on-unmatched-pattern" ], "*.{yml,yaml}": [] }, "pnpm": { "peerDependencyRules": { "allowAny": [ "@smithy/node-http-handler", "google-auth-library" ], "allowedVersions": { "better-auth>better-sqlite3": "11.10.0", "better-call>zod": "^4.3.6" } }, "packageExtensions": { "streamdown@2.1.0": { "dependencies": { "shiki": "^3.19.0" } } }, "overrides": { "@eslint/eslintrc>ajv": "6.14.0", "@opentelemetry/core": "2.8.0", "@smithy/types": "4.15.1", "axios": "1.20.0", "@grpc/grpc-js": "1.14.5", "@vercel/routing-utils>ajv": "6.14.0", "@vercel/routing-utils>path-to-regexp": "6.3.0", "unicorn-magic": "0.2.0", "dompurify": "3.4.17", "esbuild": "^0.28.1", "linkify-it": "5.0.2", "engine.io>ws": "8.21.0", "eslint>ajv": "6.14.0", "form-data": "4.0.6", "vite": ">=7.3.7 <8", "next>postcss": "^8.5.14", "tmp": ">=0.2.6", "glob": "14.0.3", "minimatch@>=7.0.0 <11.0.1": "11.0.3", "follow-redirects": "1.16.2", "ioredis": "5.10.1", "better-auth>zod": "^4.5.0", "@better-auth/core>zod": "^4.5.0", "js-cookie": "3.0.7", "js-yaml": "4.3.2", "gray-matter>js-yaml": "3.15.2", "read-yaml-file@1>js-yaml": "3.15.2", "nise>path-to-regexp": "8.4.0", "protobufjs": "7.6.5", "qs": "6.16.1", "router>path-to-regexp": "8.4.0", "socket.io>socket.io-adapter": "2.5.8", "socket.io-adapter>ws": "8.21.0", "tar": "7.5.21", "zod": "4.6.7", "@streamdown/mermaid>mermaid": "11.16.1", "nanoid@<4": "5.1.16", "dagre-d3-es>lodash-es": "4.18.1", "jws": ">=4.0.1", "jayson>uuid": "11.1.1", "preact": ">=10.26.10", "smol-toml": "1.9.0", "undici": "^7.30.1", "@azure/msal-node": "7.1.0", "diff": ">=5.2.2", "flatted": "^3.4.2", "@protobufjs/utf8": "1.1.1", "tsx": "4.20.4", "webpack": "5.104.1", "yaml-language-server>yaml": "2.8.3", "@opentelemetry/propagator-jaeger": "2.9.0", "@hono/node-server": "2.1.3", "@humanfs/node": "0.16.8", "@xmldom/xmldom": "0.8.15", "body-parser": "2.4.0", "browserslist": "4.28.7", "brace-expansion@<1.1.21": "1.1.21", "brace-expansion@>=2.0.0 <2.1.7": "2.1.7", "brace-expansion@>=3.0.0 <5.0.12": "5.0.12", "fast-uri": "3.1.9", "ip-address": "10.7.4", "immutable": "5.1.8", "moment": "2.31.0", "postcss": "8.5.23", "sharp": "0.35.5", "hono": "4.13.11", "vitest": "4.1.12", "@ai-sdk/provider-utils@4": "4.0.33", "toml": "5.0.1", "@modelcontextprotocol/sdk": "1.32.0", "@opentelemetry/instrumentation-knex": "0.65.0", "@opentelemetry/instrumentation-mongoose": "0.67.0", "@opentelemetry/instrumentation-mysql": "0.67.0", "@opentelemetry/instrumentation-mysql2": "0.67.0", "@opentelemetry/instrumentation-pg": "0.73.0", "@opentelemetry/instrumentation-tedious": "0.40.0", "fast-copy": "4.1.0", "katex": "0.18.2", "proxy-addr": "2.0.8", "shell-quote": "1.11.0", "source-map-js": "1.2.2", "tinypool": "2.1.2" } } }