{
  "name": "@opensearch-project/agent-health",
  "version": "0.5.2",
  "type": "module",
  "description": "Agent Evaluation and Observability Framework",
  "license": "Apache-2.0",
  "repository": {
    "type": "git",
    "url": "https://github.com/opensearch-project/agent-health.git"
  },
  "homepage": "https://github.com/opensearch-project/agent-health#readme",
  "bugs": {
    "url": "https://github.com/opensearch-project/agent-health/issues"
  },
  "keywords": [
    "opensearch",
    "observability",
    "agent",
    "evaluation",
    "rca",
    "root-cause-analysis",
    "llm",
    "traces"
  ],
  "engines": {
    "node": ">=20.0.0"
  },
  "bin": {
    "agent-health": "./bin/cli.js"
  },
  "main": "./lib/dist/lib/index.js",
  "types": "./lib/dist/lib/index.d.ts",
  "exports": {
    ".": {
      "types": "./lib/dist/lib/index.d.ts",
      "import": "./lib/dist/lib/index.js",
      "require": "./lib/dist/lib/index.js",
      "default": "./lib/dist/lib/index.js"
    }
  },
  "files": [
    "bin/",
    "cli/dist/",
    "server/dist/",
    "lib/dist/",
    "dist/",
    "deployment/cloudformation/",
    "docs/",
    "examples/",
    "tsconfig.lib.json",
    "observio-sample-agent/pi-package/"
  ],
  "scripts": {
    "dev": "vite",
    "dev:server": "npm run build:server && node server/dist/index.js",
    "build": "tsc && vite build",
    "build:server": "esbuild server/index.ts server/app.ts --bundle --platform=node --format=esm --outdir=server/dist --packages=external",
    "server": "npm run build && npm run build:server && node server/dist/index.js",
    "preview": "vite preview",
    "eval": "ts-node src/eval_framework/cli.ts",
    "eval:text-to-ppl": "ts-node src/eval_framework/cli.ts run --benchmark benchmarks/text_to_ppl/test_cases.json",
    "migrate:labels": "ts-node scripts/migrate-to-labels.ts",
    "migrate:labels:dry-run": "ts-node scripts/migrate-to-labels.ts --dry-run --verbose",
    "migrate:labels:cleanup": "ts-node scripts/migrate-to-labels.ts --cleanup",
    "test": "jest",
    "test:unit": "jest --testPathPatterns='__tests__|.test.ts' --testPathIgnorePatterns='tests/integration|tests/e2e'",
    "test:integration": "jest --testPathPatterns='tests/integration'",
    "test:integration:experimentRunner": "jest --testPathPatterns=experimentRunner",
    "test:integration:tracePoller": "jest --testPathPatterns=tracePoller",
    "test:e2e": "playwright test",
    "test:e2e:ui": "playwright test --ui",
    "test:e2e:report": "playwright show-report",
    "test:all": "npm run test:unit && npm run test:integration && npm run test:e2e",
    "build:cli": "esbuild cli/index.ts --bundle --platform=node --format=esm --outdir=cli/dist --packages=external --external:inquirer",
    "build:lib": "rm -rf lib/dist && tsc -p tsconfig.lib.json && tsc-alias -p tsconfig.lib.json --resolve-full-paths",
    "build:lib:legacy": "esbuild lib/index.ts lib/config/index.ts --bundle --platform=node --format=esm --outdir=lib/dist --packages=external",
    "build:all": "npm run build && npm run build:server && npm run build:cli && npm run build:lib",
    "start:observio": "cd observio-sample-agent && npm install --legacy-peer-deps --silent && npm run start:ag-ui",
    "dev:all": "npm run dev:server",
    "demo": "npm run build:all && node cli/dist/index.js",
    "prepublishOnly": "npm run build:all"
  },
  "dependencies": {
    "@ag-ui/core": "^0.0.41",
    "@assistant-ui/react": "^0.14.0",
    "@aws-sdk/client-bedrock": "^3.1000.0",
    "@aws-sdk/client-bedrock-agent": "^3.1038.0",
    "@aws-sdk/client-bedrock-agent-runtime": "^3.1038.0",
    "@aws-sdk/client-bedrock-runtime": "^3.1000.0",
    "@aws-sdk/credential-providers": "^3.1000.0",
    "@opensearch-project/opensearch": "^3.5.1",
    "@opentelemetry/api": "^1.9.1",
    "@opentelemetry/exporter-trace-otlp-http": "^0.217.0",
    "@opentelemetry/exporter-trace-otlp-proto": "^0.216.0",
    "@opentelemetry/resources": "^2.6.1",
    "@opentelemetry/sdk-trace-node": "^2.6.1",
    "@opentelemetry/semantic-conventions": "^1.38.0",
    "@radix-ui/react-alert-dialog": "^1.1.15",
    "@radix-ui/react-checkbox": "^1.3.3",
    "@radix-ui/react-collapsible": "^1.1.12",
    "@radix-ui/react-dialog": "^1.1.15",
    "@radix-ui/react-dropdown-menu": "^2.1.16",
    "@radix-ui/react-label": "^2.1.8",
    "@radix-ui/react-progress": "^1.1.8",
    "@radix-ui/react-scroll-area": "^1.2.10",
    "@radix-ui/react-select": "^2.2.6",
    "@radix-ui/react-separator": "^1.1.8",
    "@radix-ui/react-slot": "^1.2.4",
    "@radix-ui/react-switch": "^1.2.6",
    "@radix-ui/react-tabs": "^1.1.13",
    "@radix-ui/react-tooltip": "^1.2.8",
    "@xyflow/react": "^12.0.0",
    "chai": "^5.3.3",
    "chalk": "^5.3.0",
    "class-variance-authority": "^0.7.1",
    "cli-table3": "^0.6.5",
    "clsx": "^2.1.1",
    "commander": "^12.1.0",
    "cors": "^2.8.5",
    "dagre": "^0.8.5",
    "dotenv": "^17.2.3",
    "echarts": "^6.0.0",
    "execa": "^9.5.2",
    "express": "^5.1.0",
    "fast-glob": "^3.3.3",
    "inquirer": "^12.4.2",
    "js-yaml": "^4.1.1",
    "lucide-react": "^0.554.0",
    "open": "^10.1.0",
    "ora": "^8.1.1",
    "react": "^19.2.0",
    "react-dom": "^19.2.0",
    "react-is": "^19.2.4",
    "react-markdown": "^10.1.0",
    "react-resizable-panels": "^3.0.6",
    "react-router-dom": "^7.17.0",
    "recharts": "^3.4.1",
    "remark-gfm": "^4.0.1",
    "tailwind-merge": "^3.4.0",
    "tailwindcss-animate": "^1.0.7",
    "typebox": "^1.1.38",
    "typescript": "^5.3.3",
    "uuid": "^14.0.0",
    "yaml": "^2.8.2",
    "zod": "^3.24.0"
  },
  "optionalDependencies": {
    "@earendil-works/pi-coding-agent": "^0.80.2",
    "puppeteer": "^24.37.4"
  },
  "devDependencies": {
    "@playwright/test": "^1.57.0",
    "@tailwindcss/typography": "^0.5.19",
    "@testing-library/dom": "^10.4.1",
    "@testing-library/react": "^16.3.2",
    "@types/chai": "^5.2.3",
    "@types/cors": "^2.8.19",
    "@types/dagre": "^0.7.52",
    "@types/express": "^4.17.21",
    "@types/jest": "^30.0.0",
    "@types/js-yaml": "^4.0.9",
    "@types/node": "^24.10.1",
    "@types/react": "^19.2.0",
    "@types/react-dom": "^19.2.0",
    "@types/supertest": "^6.0.3",
    "@types/uuid": "^11.0.0",
    "@vitejs/plugin-react": "^4.2.1",
    "autoprefixer": "^10.4.16",
    "chai4": "npm:chai@^4.5.0",
    "esbuild": "^0.27.2",
    "fast-check": "^4.7.0",
    "husky": "^9.1.7",
    "jest": "^30.2.0",
    "jest-environment-jsdom": "^30.2.0",
    "nyc": "^18.0.0",
    "postcss": "^8.5.12",
    "shadcn": "^3.5.1",
    "supertest": "^7.2.2",
    "tailwindcss": "^3.4.0",
    "ts-jest": "^29.4.6",
    "ts-node": "^10.9.2",
    "tsc-alias": "^1.8.16",
    "tsx": "^4.19.0",
    "vite": "^7.3.1",
    "vite-plugin-istanbul": "^8.0.0"
  },
  "overrides": {
    "minimatch": "^10.2.4",
    "test-exclude": "8.0.0",
    "fast-xml-parser": ">=5.7.2",
    "fast-xml-builder": ">=1.2.0",
    "basic-ftp": ">=5.3.1",
    "lodash": ">=4.18.0",
    "path-to-regexp": ">=8.4.0",
    "picomatch": ">=4.0.4",
    "uuid": "$uuid",
    "protobufjs": ">=8.5.1",
    "undici": ">=8.5.0",
    "@google/genai": {
      "protobufjs": ">=7.6.3"
    },
    "@anthropic-ai/claude-agent-sdk": {
      "zod": "$zod"
    },
    "hono": ">=4.12.25",
    "fast-uri": ">=3.1.2",
    "ip-address": ">=10.1.1",
    "ws": ">=8.21.0",
    "@babel/runtime": ">=7.26.10",
    "qs": ">=6.15.2"
  }
}
