-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathpnpm-workspace.yaml
More file actions
218 lines (204 loc) · 8.29 KB
/
Copy pathpnpm-workspace.yaml
File metadata and controls
218 lines (204 loc) · 8.29 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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
packages:
- "apps/*"
- "packages/*/*"
# pnpm 11 reads these settings from pnpm-workspace.yaml instead of .npmrc.
# A hoisted layout flattens third-party dependencies so React Native / Expo's Metro
# can resolve transitive dependencies such as nativewind → react-native-css-interop.
nodeLinker: hoisted
autoInstallPeers: true
strictPeerDependencies: false
# Turbo runs each package's script via `pnpm run`, which otherwise triggers a per-package deps check.
# With hoisted layout, dependency-less packages (schema/ipc) have no local node_modules, so that check
# falsely reports "node_modules missing". Turbo already orders/builds deps, so disable the per-run check.
verifyDepsBeforeRun: false
# pnpm blocks dependency install scripts by default, so explicitly allow native packages
# that need compilation or downloads.
allowBuilds:
"@biomejs/biome": true
# Native SQLite bindings backing the daemon's session store.
better-sqlite3: true
electron: true
esbuild: true
"@parcel/watcher": true
core-js: true
sharp: true
# Native CPU profiler backing @sentry/profiling-node in the daemon. Without its build script the
# prebuilt binary isn't fetched and profiling fails at runtime.
"@sentry/node-cpu-profiler": true
# Transitive deps of the agent SDKs (pi / codex). Build scripts not needed for typecheck/build or
# our default runtime path, so skip them explicitly to keep installs deterministic.
"@google/genai": false
protobufjs: false
unrs-resolver: false
electron-winstaller: false
# sentry-cli binary backing @sentry/react-native (mobile) — fetched to upload source maps at build time.
"@sentry/cli": true
# Downloads the checksum-pinned GhosttyKit.xcframework backing the mobile terminal view;
# without it pod install fails on a missing vendored framework.
expo-libghostty: true
# Transitive dep of @effect/platform-node (CODE-244). Our runtime path (NodeRuntime.runMain)
# never touches msgpackr, and msgpackr falls back to pure JS without the native extension.
msgpackr-extract: false
# Shared dependency versions live in the catalog. Application packages reference them
# with "catalog:" to keep versions consistent across the workspace.
# apps/mobile pins its own React directly (React Native requires an exact match); the catalog
# react below serves only the web/desktop renderers.
catalog:
# Language / types
# typescript-eslint needs the TypeScript ≤6 compiler API, so the `typescript` package resolves to
# the 6.0 API re-export (ships a `tsc6` binary). Native TypeScript 7 provides the `tsc` binary used
# for typecheck/build via the root `@typescript/native` devDependency (npm:typescript@7).
typescript: "npm:@typescript/typescript6@^6.0.2"
"@types/node": ^26.1.1
# Data contracts
zod: ^4.4.3
# React for web / desktop renderers. Canary pin (Next-production channel) for the stable-track
# `ViewTransition` component (CODE-457); drop back to latest once 19.3 reaches stable. The
# export is untyped by @types/react — see the local module augmentation in workbench.
react: 19.3.0-canary-96fcba90-20260728
react-dom: 19.3.0-canary-96fcba90-20260728
react-router: ^8.3.0
"@types/react": ^19.2.17
"@types/react-dom": ^19.2.3
# Client data layer
swr: ^2.4.2
use-intl: ^4.13.3
zustand: ^5.0.14
lucide-react: ^1.25.0
# Web build
vite: ^8.1.5
"@vitejs/plugin-react": ^6.0.4
"@rolldown/plugin-babel": ^0.2.3
babel-plugin-react-compiler: ^1.0.0
# Styling for web / desktop renderers
tailwindcss: ^4.3.3
"@tailwindcss/postcss": ^4.3.2
"@tailwindcss/vite": ^4.3.3
# Desktop / Electron
electron: ^43.2.0
electron-builder: ^26.15.3
# Server / communication
ws: ^8.21.1
"@types/ws": ^8.18.1
socket.io: ^4.8.3
socket.io-client: ^4.8.3
# Build / runtime tools
tsx: ^4.23.0
tsup: ^8.5.1
# Testing
vitest: ^4.1.10
unplugin-icons: ^23.0.1
"@svgr/core": ^8.1.0
"@svgr/plugin-jsx": ^8.1.0
"@proj-airi/lobe-icons": ^1.0.19
"@iconify-json/material-icon-theme": ^1.2.69
"@iconify-json/simple-icons": ^1.2.92
minimumReleaseAgeExclude:
# React canary snapshots publish daily; the renderers pin one exact snapshot (CODE-457).
- react@19.3.0-canary-96fcba90-20260728
- react-dom@19.3.0-canary-96fcba90-20260728
# Effect v4 betas ship every 1-2 days; the daemon pins an exact beta (CODE-244).
- effect@4.0.0-beta.98
- "@effect/platform-node@4.0.0-beta.98"
# First-party mobile terminal view, released same-day as the integration.
- expo-libghostty@0.8.1
# codex platform artifacts are versions of @openai/codex keyed <ver>-<platform>-<arch>.
- "@openai/codex@0.144.1-darwin-arm64 || 0.144.1-darwin-x64 || 0.144.1-linux-arm64 || 0.144.1-linux-x64 || 0.144.1-win32-arm64 || 0.144.1-win32-x64 || 0.144.1"
- "@earendil-works/pi-agent-core@0.80.6"
- "@earendil-works/pi-ai@0.80.6"
- "@earendil-works/pi-coding-agent@0.80.6"
# Expo SDK 57 point releases land in lockstep with the SDK's expectations;
# these pins were published hours before adoption (CODE-195).
- "expo-apple-authentication@57.0.1"
- "expo-crypto@57.0.1"
- "@earendil-works/pi-tui@0.80.6"
- react-router@7.18.0
- "@shikijs/core@4.3.0"
- "@shikijs/engine-javascript@4.3.0"
- "@shikijs/engine-oniguruma@4.3.0"
- "@shikijs/langs@4.3.0"
- "@shikijs/primitive@4.3.0"
- "@shikijs/themes@4.3.0"
- "@shikijs/types@4.3.0"
- shiki@4.3.0
- "@expo/metro-runtime@56.0.16"
- "@expo/ui@56.0.19"
- expo-constants@56.0.19
- expo-router@56.2.12
- foxts
- uniwind@1.10.0
- "@expo/cli@56.1.17"
- "@expo/config-plugins@56.0.10"
- "@expo/config-types@56.0.7"
- "@expo/config@56.0.10"
- "@expo/fingerprint@0.19.5"
- "@expo/log-box@56.0.14"
- "@expo/metro-config@56.0.15"
- "@expo/prebuild-config@56.0.17"
- "@expo/router-server@56.0.15"
- babel-preset-expo@56.0.16
- expo-asset@56.0.18
- expo-modules-autolinking@56.0.17
- expo-modules-core@56.0.18
- expo@56.0.13
- uuid@11.1.1
- esbuild@0.28.1
- ws@8.21.0
- undici@8.5.0
- linkify-it@5.0.1
- tayori@0.3.8
- "@arcboxlabs/deviceid-darwin-arm64@0.1.0"
- "@arcboxlabs/deviceid@0.1.0"
- "@linkcode/tunnel@0.1.0"
- "@typescript/typescript-aix-ppc64@7.0.2"
- "@typescript/typescript-darwin-arm64@7.0.2"
- "@typescript/typescript-darwin-x64@7.0.2"
- "@typescript/typescript-freebsd-arm64@7.0.2"
- "@typescript/typescript-freebsd-x64@7.0.2"
- "@typescript/typescript-linux-arm64@7.0.2"
- "@typescript/typescript-linux-arm@7.0.2"
- "@typescript/typescript-linux-loong64@7.0.2"
- "@typescript/typescript-linux-mips64el@7.0.2"
- "@typescript/typescript-linux-ppc64@7.0.2"
- "@typescript/typescript-linux-riscv64@7.0.2"
- "@typescript/typescript-linux-s390x@7.0.2"
- "@typescript/typescript-linux-x64@7.0.2"
- "@typescript/typescript-netbsd-arm64@7.0.2"
- "@typescript/typescript-netbsd-x64@7.0.2"
- "@typescript/typescript-openbsd-arm64@7.0.2"
- "@typescript/typescript-openbsd-x64@7.0.2"
- "@typescript/typescript-sunos-x64@7.0.2"
- "@typescript/typescript-win32-arm64@7.0.2"
- "@typescript/typescript-win32-x64@7.0.2"
- typescript@7.0.2
- "@eslint-sukka/*"
- "eslint-*-sukka"
- "eslint-plugin-vibe-proof"
- "@next/eslint-plugin-next@16.2.11"
# Upstream fixes for our terminal font reports, adopted same-day: restty#24/#25 + text-shaper#3
# (CODE-223), then VS16/format 14 via our text-shaper#5 plus the CJK ic_width fix (CODE-241).
- restty@0.2.3 || 0.2.5
- text-shaper@0.1.26 || 0.1.27
- scheduler@0.28.0-canary-96fcba90-20260728
overrides:
# GHSA-67mh-4wv8-2f99: advisory metadata claims 0.24.3, but esbuild 0.24.x
# ends at 0.24.2 on npm — the fix actually shipped in 0.25.0.
esbuild@<=0.24.2: ^0.25.0
# Dedup: @streamdown/code pins shiki ^3 while @pierre/diffs resolves shiki 4, so the
# renderer bundles two complete language+theme chunk graphs (~9 MB / 300 files, CODE-215).
# The plugin only uses createHighlighter/bundledLanguages/createJavaScriptRegexEngine —
# all unchanged in shiki 4.
shiki@<4.0.0: ^4.3.0
"@hono/node-server@<2.0.5": ^2.0.5
"@xmldom/xmldom@<0.8.13": ^0.8.13
brace-expansion@<1.1.16: ^1.1.16
brace-expansion@>=2.0.0 <2.1.2: ^2.1.2
brace-expansion@>=5.0.0 <5.0.8: ^5.0.8
esbuild@>=0.27.3 <0.28.1: ^0.28.1
fast-uri@>=3.0.0 <3.1.4: ^3.1.4
linkify-it@<=5.0.1: ^5.0.2
protobufjs@>=7.5.0 <7.6.5: ^7.6.5
shell-quote@<=1.8.4: ^1.9.0
undici@>=8.0.0 <8.5.0: ^8.5.0
uuid@<11.1.1: ^11.1.1
ws@>=8.0.0 <8.21.0: ^8.21.0