my harness for niri
1{
2 "name": "niri",
3 "version": "1.0.0",
4 "description": "",
5 "private": true,
6 "type": "module",
7 "workspaces": [
8 "packages/*",
9 "apps/*"
10 ],
11 "scripts": {
12 "start": "dotenv -- tsx src/index.ts",
13 "start:local": "NIRI_ENV=local dotenv -- tsx src/index.ts",
14 "dev": "dotenv -- tsx watch src/index.ts",
15 "dev:local": "NIRI_ENV=local dotenv -- tsx watch src/index.ts",
16 "test": "node --import tsx --test src/**/*.test.ts",
17 "chat": "dotenv -- tsx scripts/chat.ts",
18 "chat:local": "NIRI_ENV=local dotenv -- tsx scripts/chat.ts",
19 "dev:web": "npm run dev --workspace @niri/web",
20 "build:web": "npm run build --workspace @niri/web",
21 "preview:web": "npm run preview --workspace @niri/web"
22 },
23 "keywords": [],
24 "author": "",
25 "license": "ISC",
26 "dependencies": {
27 "@fastify/static": "^9.1.3",
28 "@niri/chat-client": "*",
29 "@openrouter/sdk": "^0.12.21",
30 "better-sqlite3": "^12.8.0",
31 "discord.js": "^14.25.1",
32 "fastify": "^5.8.4",
33 "node-pty": "^1.1.0",
34 "openai": "^6.33.0",
35 "sqlite-vec": "^0.1.9"
36 },
37 "devDependencies": {
38 "@types/better-sqlite3": "^7.6.13",
39 "@types/node": "^25.5.0",
40 "dotenv-cli": "^11.0.0",
41 "tsx": "^4.21.0",
42 "typescript": "^6.0.2"
43 }
44}