codex-devtools 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -0
- package/dist-electron/main/chunks/CodexServiceContext-CRkTP14W.cjs +2027 -0
- package/dist-electron/main/index.cjs +250 -0
- package/dist-electron/main/standalone.cjs +231 -0
- package/dist-electron/preload/index.cjs +37 -0
- package/out/renderer/assets/index-CR8-JZrV.js +11905 -0
- package/out/renderer/assets/index-r_pK0Xle.css +1916 -0
- package/out/renderer/index.html +22 -0
- package/package.json +121 -0
package/README.md
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# codex-devtools
|
|
2
|
+
|
|
3
|
+
Desktop app for inspecting Codex session data.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Node.js 20+ (Node 24 works)
|
|
8
|
+
- `pnpm` 10 (via Corepack recommended)
|
|
9
|
+
|
|
10
|
+
## Build and run
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
cd /Users/ivan/git/codex-devtools
|
|
14
|
+
corepack enable
|
|
15
|
+
pnpm install
|
|
16
|
+
pnpm approve-builds
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
In `pnpm approve-builds`, approve:
|
|
20
|
+
|
|
21
|
+
- `electron`
|
|
22
|
+
- `esbuild`
|
|
23
|
+
|
|
24
|
+
Then start the desktop app in development mode:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
pnpm dev
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Production build
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
pnpm build
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Build artifacts are generated in:
|
|
37
|
+
|
|
38
|
+
- `dist-electron`
|
|
39
|
+
- `out/renderer`
|
|
40
|
+
|
|
41
|
+
Create desktop installers/packages locally:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
pnpm dist
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Platform-specific package commands:
|
|
48
|
+
|
|
49
|
+
- `pnpm dist:mac` (macOS: `.dmg`, `.zip`)
|
|
50
|
+
- `pnpm dist:win` (Windows: NSIS installer)
|
|
51
|
+
- `pnpm dist:linux` (Linux: AppImage, `.deb`, `.rpm`)
|
|
52
|
+
|
|
53
|
+
## Standalone mode
|
|
54
|
+
|
|
55
|
+
Run as an HTTP server (without launching Electron):
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
pnpm standalone
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Default URL:
|
|
62
|
+
|
|
63
|
+
- `http://localhost:3456`
|
|
64
|
+
|
|
65
|
+
## Environment variables
|
|
66
|
+
|
|
67
|
+
- `CODEX_SESSIONS_PATH`: path to Codex sessions directory (default: `~/.codex/sessions`)
|
|
68
|
+
- `HOST`: standalone server host (default: `0.0.0.0`)
|
|
69
|
+
- `PORT`: standalone server port (default: `3456`)
|
|
70
|
+
|
|
71
|
+
## Scripts
|
|
72
|
+
|
|
73
|
+
- `pnpm dev`: start Electron app in dev mode
|
|
74
|
+
- `pnpm build`: build renderer + Electron main/preload
|
|
75
|
+
- `pnpm dist`: build macOS + Windows + Linux packages
|
|
76
|
+
- `pnpm dist:mac`: build macOS packages
|
|
77
|
+
- `pnpm dist:win`: build Windows installer
|
|
78
|
+
- `pnpm dist:linux`: build Linux packages
|
|
79
|
+
- `pnpm standalone`: build and run standalone HTTP server
|
|
80
|
+
- `pnpm test`: run tests with Vitest
|
|
81
|
+
- `pnpm lint`: run ESLint
|
|
82
|
+
- `pnpm typecheck`: run TypeScript type checks
|
|
83
|
+
|
|
84
|
+
## CI/CD
|
|
85
|
+
|
|
86
|
+
- `.github/workflows/ci.yml`: typecheck/lint/build/test on `main` and PRs.
|
|
87
|
+
- `.github/workflows/release.yml`: cross-platform packaging on semver tags (`v*`) and manual dispatch.
|
|
88
|
+
- `.github/workflows/npm-publish.yml`: npm publish on semver tags (`v*`) and manual dispatch.
|
|
89
|
+
|
|
90
|
+
Required GitHub repository secret for npm publishing:
|
|
91
|
+
|
|
92
|
+
- `NPM_TOKEN`: npm automation token (or granular token with publish + 2FA bypass).
|
|
93
|
+
|
|
94
|
+
## Versioning (SemVer)
|
|
95
|
+
|
|
96
|
+
Releases use semantic version tags:
|
|
97
|
+
|
|
98
|
+
- `vMAJOR.MINOR.PATCH` (example: `v0.1.1`)
|
|
99
|
+
- optional pre-release/build metadata (`v1.2.3-beta.1`, `v1.2.3+build.4`)
|
|
100
|
+
|
|
101
|
+
Tag and publish flow:
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
npm version patch
|
|
105
|
+
git push origin main --follow-tags
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
`release.yml` and `npm-publish.yml` validate tag format and fail if the tag is not valid SemVer.
|
|
109
|
+
|
|
110
|
+
## Troubleshooting
|
|
111
|
+
|
|
112
|
+
If `pnpm dev` fails with `Electron failed to install correctly` or `Electron uninstall`:
|
|
113
|
+
|
|
114
|
+
1. Run `pnpm approve-builds`
|
|
115
|
+
2. Approve `electron` and `esbuild`
|
|
116
|
+
3. Run `pnpm install` again
|
|
117
|
+
4. Retry `pnpm dev`
|