mirror of
https://github.com/getpaseo/paseo.git
synced 2026-07-29 12:01:31 +00:00
Server: drop the synchronous branch-name generator dep, use the worktree slug as the initial branch, and move first-agent branch auto-naming to an async post-creation step backed by a structured LLM call. Guards against renaming when the placeholder branch has already been changed. App: make workspace and worktree archive optimistic, rolling back the local hide if the daemon call fails, and suppress incoming workspace upserts while an archive is pending.
113 lines
4.9 KiB
JSON
113 lines
4.9 KiB
JSON
{
|
|
"name": "@getpaseo/server",
|
|
"version": "0.1.66",
|
|
"description": "Paseo backend server",
|
|
"files": [
|
|
"dist/server",
|
|
"dist/src",
|
|
"dist/scripts",
|
|
"src/server/speech/providers/local/sherpa/assets",
|
|
"README.md",
|
|
".env.example"
|
|
],
|
|
"type": "module",
|
|
"types": "./dist/server/server/exports.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/server/server/exports.d.ts",
|
|
"source": "./src/server/exports.ts",
|
|
"default": "./dist/server/server/exports.js"
|
|
},
|
|
"./utils/tool-call-parsers": {
|
|
"types": "./dist/server/utils/tool-call-parsers.d.ts",
|
|
"source": "./src/utils/tool-call-parsers.ts",
|
|
"default": "./dist/server/utils/tool-call-parsers.js"
|
|
}
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"scripts": {
|
|
"dev": "cross-env PASEO_NODE_ENV=development node --import tsx scripts/dev-runner.ts",
|
|
"dev:tsx": "cross-env PASEO_NODE_ENV=development tsx watch --ignore '**/*.timestamp-*' src/server/index.ts",
|
|
"build": "node -e \"require('node:fs').rmSync('dist',{ recursive: true, force: true })\" && npm run build:lib && npm run build:scripts",
|
|
"build:lib": "tsc -p tsconfig.server.json --incremental false && node -e \"const fs=require('node:fs'); fs.mkdirSync('dist/server/server/speech/providers/local/sherpa/assets',{recursive:true}); fs.copyFileSync('src/server/speech/providers/local/sherpa/assets/silero_vad.onnx','dist/server/server/speech/providers/local/sherpa/assets/silero_vad.onnx'); fs.cpSync('src/terminal/shell-integration','dist/server/terminal/shell-integration',{recursive:true}); fs.cpSync('src/terminal/shell-integration','dist/src/terminal/shell-integration',{recursive:true}); fs.copyFileSync('src/terminal/terminal-ts-loader.mjs','dist/server/terminal/terminal-ts-loader.mjs');\"",
|
|
"build:scripts": "tsc -p tsconfig.scripts.json --incremental false && node -e \"const fs=require('node:fs'); fs.mkdirSync('dist/scripts',{recursive:true}); fs.copyFileSync('scripts/mcp-stdio-socket-bridge-cli.mjs','dist/scripts/mcp-stdio-socket-bridge-cli.mjs');\"",
|
|
"prepack": "npm run build",
|
|
"start": "node dist/server/server/index.js",
|
|
"typecheck": "tsgo -p tsconfig.server.typecheck.json --noEmit",
|
|
"generate:config-schema": "tsx scripts/generate-config-schema.ts",
|
|
"speech:models": "tsx scripts/list-speech-models.ts",
|
|
"speech:download": "tsx scripts/download-speech-models.ts",
|
|
"speech:tts:matrix": "tsx scripts/generate-sherpa-tts-matrix.ts",
|
|
"speech:transcribe:local": "tsx scripts/transcribe-local-wav.ts",
|
|
"test": "npm run test:unit && npm run test:integration",
|
|
"test:unit": "vitest run --exclude \"**/*.e2e.test.ts\"",
|
|
"test:integration": "vitest run --maxWorkers=1 --minWorkers=1 src/server/daemon-e2e/models.e2e.test.ts src/server/daemon-e2e/live-preferences.e2e.test.ts src/server/agent/model-catalog.e2e.test.ts",
|
|
"test:integration:all": "npm run test:e2e",
|
|
"test:integration:real": "vitest run real.e2e.test.ts",
|
|
"test:integration:local": "vitest run local.e2e.test.ts",
|
|
"test:watch": "vitest",
|
|
"test:ui": "vitest --ui",
|
|
"test:e2e": "vitest run e2e.test.ts --maxWorkers=1 --minWorkers=1 --exclude \"**/*.real.e2e.test.ts\" --exclude \"**/*.local.e2e.test.ts\"",
|
|
"test:e2e:all": "vitest run e2e.test.ts --maxWorkers=1 --minWorkers=1",
|
|
"test:e2e:real": "npm run test:integration:real",
|
|
"test:e2e:local": "npm run test:integration:local",
|
|
"test:e2e:ui": "vitest --ui e2e.test.ts"
|
|
},
|
|
"dependencies": {
|
|
"@agentclientprotocol/sdk": "^0.17.1",
|
|
"@anthropic-ai/claude-agent-sdk": "^0.2.11",
|
|
"@getpaseo/highlight": "0.1.66",
|
|
"@getpaseo/relay": "0.1.66",
|
|
"@isaacs/ttlcache": "^2.1.4",
|
|
"@mariozechner/pi-agent-core": "^0.70.2",
|
|
"@mariozechner/pi-ai": "^0.70.2",
|
|
"@mariozechner/pi-coding-agent": "^0.70.2",
|
|
"@modelcontextprotocol/sdk": "^1.20.1",
|
|
"@opencode-ai/sdk": "1.2.6",
|
|
"@sctg/sentencepiece-js": "^1.1.0",
|
|
"@xterm/headless": "^6.0.0",
|
|
"ai": "5.0.78",
|
|
"ajv": "^8.17.1",
|
|
"bcryptjs": "^3.0.3",
|
|
"dotenv": "^17.2.3",
|
|
"express": "^4.18.2",
|
|
"fast-deep-equal": "^3.1.3",
|
|
"mnemonic-id": "^3.2.7",
|
|
"node-pty": "1.2.0-beta.11",
|
|
"onnxruntime-node": "^1.23.0",
|
|
"openai": "^4.20.0",
|
|
"p-limit": "^7.3.0",
|
|
"p-memoize": "^8.0.0",
|
|
"pino": "^10.2.0",
|
|
"pino-pretty": "^13.1.3",
|
|
"qrcode": "^1.5.4",
|
|
"rotating-file-stream": "^3.2.9",
|
|
"sherpa-onnx": "1.12.28",
|
|
"sherpa-onnx-node": "1.12.28",
|
|
"strip-ansi": "^7.1.2",
|
|
"uuid": "^9.0.1",
|
|
"which": "^5.0.0",
|
|
"ws": "^8.14.2",
|
|
"zod": "^3.23.8",
|
|
"zod-to-json-schema": "^3.25.1"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "^1.56.1",
|
|
"@types/express": "^4.17.20",
|
|
"@types/node": "^20.9.0",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@types/uuid": "^9.0.7",
|
|
"@types/ws": "^8.5.8",
|
|
"@vitest/ui": "^3.2.4",
|
|
"cross-env": "^10.1.0",
|
|
"tsx": "^4.6.0",
|
|
"typescript": "^5.2.2",
|
|
"vitest": "^3.2.4"
|
|
},
|
|
"overrides": {
|
|
"lightningcss": "1.30.1"
|
|
}
|
|
}
|