forked from slopus/happy-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
125 lines (125 loc) · 3.67 KB
/
package.json
File metadata and controls
125 lines (125 loc) · 3.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
{
"name": "happy-coder",
"version": "0.11.2",
"description": "Mobile and Web client for Claude Code and Codex",
"author": "Kirill Dubovitskiy",
"license": "MIT",
"type": "module",
"homepage": "https://github.com/slopus/happy-cli",
"bugs": "https://github.com/slopus/happy-cli/issues",
"repository": "slopus/happy-cli",
"bin": {
"happy": "./bin/happy.mjs",
"happy-mcp": "./bin/happy-mcp.mjs"
},
"main": "./dist/index.cjs",
"module": "./dist/index.mjs",
"types": "./dist/index.d.cts",
"exports": {
".": {
"require": {
"types": "./dist/index.d.cts",
"default": "./dist/index.cjs"
},
"import": {
"types": "./dist/index.d.mts",
"default": "./dist/index.mjs"
}
},
"./lib": {
"require": {
"types": "./dist/lib.d.cts",
"default": "./dist/lib.cjs"
},
"import": {
"types": "./dist/lib.d.mts",
"default": "./dist/lib.mjs"
}
},
"./codex/happyMcpStdioBridge": {
"require": {
"types": "./dist/codex/happyMcpStdioBridge.d.cts",
"default": "./dist/codex/happyMcpStdioBridge.cjs"
},
"import": {
"types": "./dist/codex/happyMcpStdioBridge.d.mts",
"default": "./dist/codex/happyMcpStdioBridge.mjs"
}
}
},
"files": [
"dist",
"bin",
"scripts",
"tools",
"package.json"
],
"scripts": {
"why do we need to build before running tests / dev?": "We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started happy",
"typecheck": "tsc --noEmit",
"build": "shx rm -rf dist && npx tsc --noEmit && pkgroll",
"test": "yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run",
"start": "yarn build && ./bin/happy.mjs",
"dev": "tsx src/index.ts",
"dev:local-server": "yarn build && tsx --env-file .env.dev-local-server src/index.ts",
"dev:integration-test-env": "yarn build && tsx --env-file .env.integration-test src/index.ts",
"prepublishOnly": "yarn build && yarn test",
"release": "release-it",
"postinstall": "node scripts/unpack-tools.cjs"
},
"dependencies": {
"@anthropic-ai/claude-code": "2.0.24",
"@anthropic-ai/sdk": "0.65.0",
"@modelcontextprotocol/sdk": "^1.15.1",
"@stablelib/base64": "^2.0.1",
"@stablelib/hex": "^2.0.1",
"@types/cross-spawn": "^6.0.6",
"@types/http-proxy": "^1.17.16",
"@types/ps-list": "^6.2.1",
"@types/qrcode-terminal": "^0.12.2",
"@types/react": "^19.1.9",
"@types/tmp": "^0.2.6",
"axios": "^1.10.0",
"chalk": "^5.4.1",
"cross-spawn": "^7.0.6",
"expo-server-sdk": "^3.15.0",
"fastify": "^5.5.0",
"fastify-type-provider-zod": "4.0.2",
"http-proxy": "^1.18.1",
"http-proxy-middleware": "^3.0.5",
"ink": "^6.1.0",
"open": "^10.2.0",
"ps-list": "^8.1.1",
"qrcode-terminal": "^0.12.0",
"react": "^19.1.1",
"socket.io-client": "^4.8.1",
"tar": "^7.4.3",
"tmp": "^0.2.5",
"tweetnacl": "^1.0.3",
"zod": "^3.23.8"
},
"devDependencies": {
"@eslint/compat": "^1",
"@types/node": ">=20",
"cross-env": "^10.0.0",
"dotenv": "^16.6.1",
"eslint": "^9",
"eslint-config-prettier": "^10",
"pkgroll": "^2.14.2",
"release-it": "^19.0.4",
"shx": "^0.3.3",
"ts-node": "^10",
"tsx": "^4.20.3",
"typescript": "^5",
"vitest": "^3.2.4"
},
"resolutions": {
"whatwg-url": "14.2.0",
"parse-path": "7.0.3",
"@types/parse-path": "7.0.3"
},
"publishConfig": {
"registry": "https://registry.npmjs.org"
},
"packageManager": "yarn@1.22.22"
}