{
  "name": "@jmfederico/pi-web",
  "version": "1.202607.0",
  "description": "Web UI for persistent Pi Coding Agent sessions in real workspaces.",
  "license": "MIT",
  "author": "Federico Jaramillo Martinez",
  "type": "module",
  "bin": {
    "pi-web": "dist/cli.js",
    "pi-web-server": "dist/server/index.js",
    "pi-web-sessiond": "dist/server/sessiond.js"
  },
  "files": [
    "dist",
    "!dist/**/*.testSupport.*",
    "install.sh",
    "README.md",
    "LICENSE",
    "extensions",
    "docs/plugins.md",
    "docs/config.md",
    "docs/assets",
    "plugin-api.d.ts",
    "plugin-api/unstable.d.ts"
  ],
  "scripts": {
    "dev": "bash -c 'trap \"kill 0\" EXIT; npm run dev:sessiond & npm run dev:web & npm run dev:client & wait'",
    "dev:sessiond": "tsx watch src/server/sessiond.ts",
    "dev:web": "bash -c 'set -e; npm run build:plugins; trap \"kill 0\" EXIT; npm run dev:plugins & tsx watch src/server/index.ts & wait'",
    "dev:server": "npm run dev:web",
    "dev:client": "vite --host 0.0.0.0",
    "dev:plugins": "node scripts/build-plugins.mjs --watch",
    "build": "npm run clean && tsc -p tsconfig.build.json && npm run build:plugin-api && npm run build:plugins && vite build",
    "build:plugin-api": "tsc -p tsconfig.plugin-api.json",
    "build:plugins": "tsc -p tsconfig.plugins.json && node scripts/build-plugins.mjs",
    "capture:screenshots": "node scripts/capture-screenshots.mjs",
    "typecheck": "tsc --noEmit",
    "typecheck:cached": "tsc --noEmit --incremental --tsBuildInfoFile node_modules/.cache/pi-web/typecheck.tsbuildinfo",
    "knip": "knip",
    "lint": "eslint \"src/**/*.ts\" \"extensions/**/*.ts\" \"pi-web-plugins/**/*.ts\" vite.config.ts vitest.config.ts",
    "test": "vitest run --config vitest.config.ts",
    "verify": "npm run typecheck && npm run lint && npm run knip && npm test",
    "verify:staged": "node scripts/verify-staged.mjs",
    "start": "tsx src/server/index.ts",
    "start:sessiond": "tsx src/server/sessiond.ts",
    "clean": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"",
    "prepack": "npm run build",
    "pack:dry": "npm pack --dry-run",
    "prepublishOnly": "npm run verify",
    "publish:npm": "npm publish --access public",
    "prepare": "node scripts/install-git-hooks.mjs",
    "changeset": "changeset",
    "release:version": "changeset version",
    "changelog:status": "changeset status"
  },
  "dependencies": {
    "@codemirror/commands": "^6.10.4",
    "@codemirror/lang-css": "^6.3.1",
    "@codemirror/lang-go": "^6.0.1",
    "@codemirror/lang-html": "^6.4.11",
    "@codemirror/lang-javascript": "^6.2.5",
    "@codemirror/lang-json": "^6.0.2",
    "@codemirror/lang-markdown": "^6.5.0",
    "@codemirror/lang-python": "^6.2.1",
    "@codemirror/lang-rust": "^6.0.2",
    "@codemirror/language": "^6.12.4",
    "@codemirror/legacy-modes": "^6.5.3",
    "@codemirror/state": "^6.7.1",
    "@codemirror/view": "^6.43.6",
    "@fastify/compress": "^9.0.0",
    "@fastify/static": "^9.3.0",
    "@fastify/websocket": "^11.3.0",
    "@xterm/addon-fit": "^0.11.0",
    "@xterm/xterm": "^6.0.0",
    "diff": "^9.0.0",
    "fastify": "^5.10.0",
    "lit": "^3.3.3",
    "marked": "^18.0.6",
    "node-pty": "^1.1.0",
    "typebox": "1.3.6",
    "ws": "^8.21.0"
  },
  "devDependencies": {
    "@changesets/cli": "^2.31.0",
    "@earendil-works/pi-agent-core": "^0.80.6",
    "@earendil-works/pi-ai": "^0.80.6",
    "@earendil-works/pi-coding-agent": "^0.80.6",
    "@eslint/js": "^10.0.1",
    "@types/node": "^24.13.3",
    "@types/ws": "^8.18.1",
    "eslint": "^10.6.0",
    "globals": "^17.7.0",
    "knip": "^6.25.0",
    "tsx": "^4.23.0",
    "typescript": "^6.0.3",
    "typescript-eslint": "^8.63.0",
    "vite": "^8.1.4",
    "vitest": "^4.1.10"
  },
  "publishConfig": {
    "access": "public"
  },
  "engines": {
    "node": ">=22"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/jmfederico/pi-web.git"
  },
  "bugs": {
    "url": "https://github.com/jmfederico/pi-web/issues"
  },
  "homepage": "https://pi-web.dev/",
  "packageManager": "npm@11.11.0",
  "peerDependencies": {
    "@earendil-works/pi-agent-core": ">=0.80.0 <1",
    "@earendil-works/pi-ai": ">=0.80.0 <1",
    "@earendil-works/pi-coding-agent": ">=0.80.0 <1"
  },
  "keywords": [
    "pi-package",
    "pi",
    "pi-web",
    "pi-web-ui",
    "pi-webui",
    "pi-coding-agent",
    "pi-coding-agent-web-ui",
    "coding-agent",
    "ai-coding-agent",
    "agentic-development",
    "developer-tools",
    "web-ui",
    "webui",
    "browser-ui",
    "remote-development",
    "persistent-sessions"
  ],
  "pi": {
    "extensions": [
      "./extensions"
    ],
    "image": "https://raw.githubusercontent.com/jmfederico/pi-web/main/docs/assets/pi-web-banner.png"
  }
}
