{
  "name": "@pixelbyte-software/pixcode",
  "version": "1.54.10",
  "description": "Self-hosted AI coding agent control room for Claude Code, Cursor CLI, OpenAI Codex, Gemini CLI, Qwen Code, and OpenCode with chat, files, shell, Git, orchestration, API keys, Telegram, MCP, plugins, themes, and desktop/server deployment.",
  "type": "module",
  "main": "dist-server/server/index.js",
  "bin": {
    "pixcode": "dist-server/server/cli.js"
  },
  "files": [
    "server/",
    "!server/database/auth.json",
    "shared/",
    "dist/",
    "dist-server/",
    "scripts/",
    "README.md",
    "CONTRIBUTING.md",
    "CODE_OF_CONDUCT.md",
    "SECURITY.md"
  ],
  "homepage": "https://github.com/alicomert/pixcode",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/alicomert/pixcode.git"
  },
  "bugs": {
    "url": "https://github.com/alicomert/pixcode/issues"
  },
  "publishConfig": {
    "access": "public"
  },
  "scripts": {
    "dev": "npm run server:dev",
    "server": "node dist-server/server/cli.js start",
    "server:dev": "node server/cli.js daemon install --mode system --port 3001 --frontend-port 5173",
    "server:dev-watch": "node server/cli.js daemon restart --mode system --port 3001 --frontend-port 5173",
    "client": "vite",
    "build": "npm run build:client && npm run build:server",
    "build:client": "vite build",
    "prebuild:server": "node -e \"require('node:fs').rmSync('dist-server', { recursive: true, force: true })\"",
    "build:server": "tsc -p server/tsconfig.json && tsc-alias -p server/tsconfig.json",
    "preview": "vite preview",
    "typecheck": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p server/tsconfig.json",
    "lint": "eslint src/ server/",
    "lint:fix": "eslint src/ server/ --fix",
    "smoke:chat-session-state": "node scripts/smoke/chat-session-state.mjs",
    "smoke:resource-bounds": "node scripts/smoke/backend-resource-bounds.mjs",
    "smoke:mobile-ux": "node scripts/smoke/mobile-ux.mjs",
    "smoke:orchestration-api": "node scripts/smoke/orchestration-api.mjs",
    "smoke:orchestration-live": "node scripts/smoke/orchestration-live-run.mjs",
    "smoke:provider-rest": "node scripts/smoke/provider-rest-api.mjs",
    "smoke:static-root": "node scripts/smoke/static-root-routing.mjs",
    "smoke:telegram-control": "node scripts/smoke/telegram-control.mjs",
    "smoke:update-ux": "node scripts/smoke/update-ux.mjs",
    "smoke:v138-diagnostics": "node scripts/smoke/v138-diagnostics.mjs",
    "smoke:v138-desktop": "node scripts/smoke/v138-desktop-release-hardening.mjs",
    "smoke:v138-completion": "node scripts/smoke/v138-completion.mjs",
    "smoke:v138-issues": "node scripts/smoke/v138-issue-planner.mjs",
    "issues:v1.38": "node scripts/github/create-v1.38-issues.mjs --apply",
    "start": "npm run build && npm run server",
    "release": "./release.sh",
    "prepublishOnly": "npm run build",
    "postinstall": "node scripts/fix-node-pty.js",
    "prepare": "husky",
    "update:platform": "./update-platform.sh"
  },
  "keywords": [
    "pixcode",
    "ai coding agent",
    "ai coding assistant",
    "self-hosted ai ide",
    "self-hosted developer tool",
    "coding agent ui",
    "coding agent dashboard",
    "multi-agent orchestration",
    "agent orchestration",
    "openai compatible api",
    "claude code",
    "claude-code",
    "claude-code-ui",
    "claude code ui",
    "anthropic",
    "codex",
    "codex-ui",
    "openai codex",
    "openai-codex",
    "openai",
    "cursor",
    "cursor-cli",
    "cursor cli ui",
    "gemini",
    "gemini-cli",
    "gemini cli ui",
    "qwen",
    "qwen-code",
    "qwen code ui",
    "opencode",
    "opencode-cli",
    "opencode ui",
    "google",
    "mcp",
    "mcp manager",
    "telegram bot",
    "api automation",
    "git ui",
    "terminal ui",
    "web-ui",
    "desktop app",
    "mobile IDE",
    "yapay zeka kodlama"
  ],
  "author": "Pixcode Contributors",
  "license": "AGPL-3.0-or-later",
  "dependencies": {
    "@anthropic-ai/claude-agent-sdk": "^0.2.116",
    "@iarna/toml": "^2.2.5",
    "@octokit/rest": "^22.0.0",
    "@openai/codex-sdk": "^0.101.0",
    "bcryptjs": "^3.0.3",
    "better-sqlite3": "^12.6.2",
    "chokidar": "^4.0.3",
    "cors": "^2.8.5",
    "cross-spawn": "^7.0.3",
    "express": "^4.18.2",
    "gray-matter": "^4.0.3",
    "jsonwebtoken": "^9.0.2",
    "mime-types": "^3.0.1",
    "monaco-editor": "^0.55.1",
    "multer": "^2.0.1",
    "node-fetch": "^2.7.0",
    "node-pty": "^1.2.0-beta.12",
    "tar": "^7.5.13",
    "web-push": "^3.6.7",
    "ws": "^8.14.2"
  },
  "devDependencies": {
    "@codemirror/lang-css": "^6.3.1",
    "@codemirror/lang-html": "^6.4.9",
    "@codemirror/lang-javascript": "^6.2.4",
    "@codemirror/lang-json": "^6.0.1",
    "@codemirror/lang-markdown": "^6.3.3",
    "@codemirror/lang-python": "^6.2.1",
    "@codemirror/merge": "^6.11.1",
    "@codemirror/theme-one-dark": "^6.1.2",
    "@commitlint/cli": "^20.5.0",
    "@commitlint/config-conventional": "^20.5.0",
    "@eslint/js": "^9.39.3",
    "@heroicons/react": "^2.2.0",
    "@monaco-editor/react": "^4.7.0",
    "@release-it/conventional-changelog": "^10.0.5",
    "@replit/codemirror-minimap": "^0.5.2",
    "@tailwindcss/typography": "^0.5.16",
    "@types/better-sqlite3": "^7.6.13",
    "@types/cross-spawn": "^6.0.6",
    "@types/express": "^5.0.6",
    "@types/node": "^22.19.7",
    "@types/qrcode": "^1.5.6",
    "@types/react": "^18.2.43",
    "@types/react-dom": "^18.2.17",
    "@uiw/react-codemirror": "^4.23.13",
    "@vitejs/plugin-react": "^4.6.0",
    "@xterm/addon-clipboard": "^0.1.0",
    "@xterm/addon-fit": "^0.10.0",
    "@xterm/addon-web-links": "^0.11.0",
    "@xterm/addon-webgl": "^0.18.0",
    "@xterm/xterm": "^5.5.0",
    "auto-changelog": "^2.5.0",
    "autoprefixer": "^10.4.16",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "concurrently": "^8.2.2",
    "eslint": "^9.39.3",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-boundaries": "^6.0.2",
    "eslint-plugin-import-x": "^4.16.1",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^7.0.1",
    "eslint-plugin-react-refresh": "^0.5.2",
    "eslint-plugin-tailwindcss": "^3.18.2",
    "eslint-plugin-unused-imports": "^4.4.1",
    "fuse.js": "^7.0.0",
    "globals": "^17.4.0",
    "gsap": "^3.12.5",
    "husky": "^9.1.7",
    "i18next": "^25.7.4",
    "i18next-browser-languagedetector": "^8.2.0",
    "jszip": "^3.10.1",
    "katex": "^0.16.25",
    "lint-staged": "^16.3.2",
    "lucide-react": "^0.515.0",
    "node-gyp": "^12.0.0",
    "postcss": "^8.4.32",
    "qrcode": "^1.5.4",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-dropzone": "^14.2.3",
    "react-error-boundary": "^4.1.2",
    "react-i18next": "^16.5.3",
    "react-markdown": "^10.1.0",
    "react-router-dom": "^6.8.1",
    "react-syntax-highlighter": "^16.1.1",
    "rehype-katex": "^7.0.1",
    "rehype-raw": "^7.0.0",
    "release-it": "^19.0.5",
    "remark-gfm": "^4.0.0",
    "remark-math": "^6.0.0",
    "sharp": "^0.34.2",
    "tailwind-merge": "^3.3.1",
    "tailwindcss": "^3.4.0",
    "tsc-alias": "^1.8.16",
    "tsx": "^4.21.0",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.56.1",
    "vite": "^7.0.4"
  },
  "lint-staged": {
    "src/**/*.{ts,tsx,js,jsx}": "eslint",
    "server/**/*.{js,ts}": "eslint"
  },
  "overrides": {
    "undici": ">=6.23.1"
  }
}
