{
  "name": "chatcrystal",
  "version": "0.4.11",
  "private": false,
  "license": "Apache-2.0",
  "repository": {
    "type": "git",
    "url": "https://github.com/ZengLiangYi/ChatCrystal"
  },
  "description": "Turn your AI conversations into searchable knowledge — supports Claude Code, Cursor, Codex CLI, Trae, GitHub Copilot",
  "keywords": [
    "claude",
    "claude-code",
    "ai",
    "conversation",
    "knowledge",
    "knowledge-base",
    "mcp",
    "semantic-search",
    "notes",
    "codex",
    "cursor",
    "electron",
    "local-first"
  ],
  "type": "module",
  "bin": {
    "crystal": "dist/server/src/cli/index.js"
  },
  "files": [
    "dist/server/",
    "dist/shared/",
    "README.md"
  ],
  "scripts": {
    "dev": "tsx watch src/index.ts",
    "build": "tsc && node scripts/copy-seed-data.mjs",
    "start": "node dist/server/src/index.js",
    "test": "tsx --test src/**/*.test.ts",
    "eval:experience": "tsx scripts/evaluate-experience-gate.ts"
  },
  "dependencies": {
    "@ai-sdk/anthropic": "^3.0.71",
    "@ai-sdk/azure": "^3.0.54",
    "@ai-sdk/google": "^3.0.64",
    "@ai-sdk/openai": "^3.0.53",
    "@fastify/cors": "^11.0.0",
    "@fastify/static": "^9.1.3",
    "@modelcontextprotocol/sdk": "^1.29.0",
    "ai": "^6.0.168",
    "chokidar": "^4.0.3",
    "commander": "^14.0.3",
    "dotenv": "^16.5.0",
    "fastify": "^5.8.5",
    "ink": "^7.0.1",
    "p-queue": "^8.1.0",
    "react": "^19.2.4",
    "sql.js": "^1.12.0",
    "vectra": "^0.12.3",
    "zod": "^3.25.76"
  },
  "devDependencies": {
    "@types/node": "^22.19.17",
    "@types/sql.js": "^1.4.11",
    "tsx": "^4.19.4",
    "typescript": "^5.8.3"
  }
}
