remcodex 0.1.0-beta.1 → 0.1.0-beta.3
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 +100 -25
- package/dist/server/src/app.js +3 -1
- package/dist/server/src/cli.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -138,35 +138,122 @@ Before running this project, you should have:
|
|
|
138
138
|
- Codex CLI installed and already working locally
|
|
139
139
|
- A machine where this app can access your local Codex data and working directories
|
|
140
140
|
|
|
141
|
+
On Linux, the first install may need a native build toolchain for `better-sqlite3` and `node-pty`:
|
|
142
|
+
|
|
143
|
+
- `python3`
|
|
144
|
+
- `make`
|
|
145
|
+
- `g++`
|
|
146
|
+
|
|
141
147
|
This project is currently developed primarily around a local macOS workflow.
|
|
142
148
|
|
|
143
149
|
## Quick Start
|
|
144
150
|
|
|
145
|
-
For the current
|
|
151
|
+
For the current beta, the fastest way to try RemCodex is:
|
|
146
152
|
|
|
147
153
|
```bash
|
|
148
|
-
|
|
149
|
-
npm run build
|
|
150
|
-
npm link
|
|
151
|
-
remcodex start
|
|
154
|
+
npx remcodex
|
|
152
155
|
```
|
|
153
156
|
|
|
154
|
-
|
|
157
|
+
You can also install it globally:
|
|
155
158
|
|
|
156
|
-
```
|
|
157
|
-
|
|
159
|
+
```bash
|
|
160
|
+
npm install -g remcodex
|
|
161
|
+
remcodex
|
|
158
162
|
```
|
|
159
163
|
|
|
164
|
+
RemCodex starts a local server and opens the browser for you.
|
|
165
|
+
|
|
160
166
|
If you want to make it reachable from your phone, expose the local machine on your LAN and open the same URL with your host IP.
|
|
161
167
|
|
|
168
|
+
### Linux Install Note
|
|
169
|
+
|
|
170
|
+
If `npx remcodex` appears to hang during the first install, it is usually still installing or compiling native dependencies.
|
|
171
|
+
|
|
172
|
+
Make sure the machine has:
|
|
173
|
+
|
|
174
|
+
- `python3`
|
|
175
|
+
- `make`
|
|
176
|
+
- `g++`
|
|
177
|
+
|
|
178
|
+
Common setup examples:
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
# Debian / Ubuntu
|
|
182
|
+
apt-get install -y python3 make g++
|
|
183
|
+
|
|
184
|
+
# RHEL / CentOS / Rocky / Alibaba Cloud Linux
|
|
185
|
+
yum install -y python3 make gcc-c++
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## Install FAQ
|
|
189
|
+
|
|
190
|
+
### Why does `npx remcodex` seem to hang on Linux?
|
|
191
|
+
|
|
192
|
+
The package includes native dependencies such as `better-sqlite3` and `node-pty`.
|
|
193
|
+
|
|
194
|
+
On some Linux machines, the first install may need to download or compile native binaries before RemCodex itself starts. That can look like a long spinner before you see any RemCodex output.
|
|
195
|
+
|
|
196
|
+
### What usually fixes Linux install failures?
|
|
197
|
+
|
|
198
|
+
Install the native build tools first:
|
|
199
|
+
|
|
200
|
+
- `python3`
|
|
201
|
+
- `make`
|
|
202
|
+
- `g++`
|
|
203
|
+
|
|
204
|
+
If you see `node-gyp`, `g++`, or build-related errors, the machine is usually missing part of that toolchain.
|
|
205
|
+
|
|
206
|
+
### How can I get clearer logs than `npx remcodex`?
|
|
207
|
+
|
|
208
|
+
If the first `npx` run is unclear, install it globally instead:
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
npm install -g remcodex
|
|
212
|
+
remcodex doctor
|
|
213
|
+
remcodex start
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
That usually makes native install errors much easier to read.
|
|
217
|
+
|
|
218
|
+
### What if I am starting RemCodex on a headless server?
|
|
219
|
+
|
|
220
|
+
Use:
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
npx remcodex --no-open
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
or:
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
remcodex start --no-open
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
RemCodex will still print the local and LAN URLs even when it does not try to open a browser.
|
|
233
|
+
|
|
234
|
+
### Do I need Codex CLI installed first?
|
|
235
|
+
|
|
236
|
+
Yes.
|
|
237
|
+
|
|
238
|
+
RemCodex is a control surface for your local Codex runtime. If `codex` is not already installed and working in `PATH`, run:
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
remcodex doctor
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
and fix the reported Codex CLI issue first.
|
|
245
|
+
|
|
162
246
|
## Local CLI
|
|
163
247
|
|
|
164
|
-
RemCodex
|
|
248
|
+
RemCodex also works well from source if you want to develop locally or inspect the runtime setup.
|
|
165
249
|
|
|
166
|
-
|
|
250
|
+
Local development path:
|
|
167
251
|
|
|
168
252
|
```bash
|
|
169
|
-
|
|
253
|
+
npm install
|
|
254
|
+
npm run build
|
|
255
|
+
npm link
|
|
256
|
+
remcodex start
|
|
170
257
|
```
|
|
171
258
|
|
|
172
259
|
Useful commands:
|
|
@@ -184,12 +271,6 @@ node dist/server/src/cli.js start --db ~/.remcodex/remcodex-alt.db --no-open
|
|
|
184
271
|
node dist/server/src/cli.js doctor --db ~/.remcodex/remcodex-alt.db
|
|
185
272
|
```
|
|
186
273
|
|
|
187
|
-
Planned install target after the npm package is published:
|
|
188
|
-
|
|
189
|
-
```bash
|
|
190
|
-
npx remcodex
|
|
191
|
-
```
|
|
192
|
-
|
|
193
274
|
## Development
|
|
194
275
|
|
|
195
276
|
```bash
|
|
@@ -306,7 +387,7 @@ This is the honest list:
|
|
|
306
387
|
- no production-grade auth / multi-user hardening yet
|
|
307
388
|
- no release pipeline yet
|
|
308
389
|
|
|
309
|
-
If you are comfortable
|
|
390
|
+
If you are comfortable running a local Node app or a small CLI tool, you can use it today.
|
|
310
391
|
|
|
311
392
|
## Roadmap
|
|
312
393
|
|
|
@@ -320,12 +401,6 @@ Near-term:
|
|
|
320
401
|
|
|
321
402
|
Later:
|
|
322
403
|
|
|
323
|
-
-
|
|
404
|
+
- improve the first-run install and update experience
|
|
324
405
|
- optional sync / multi-device helpers
|
|
325
406
|
- stronger sharing, auditing, and team workflows
|
|
326
|
-
|
|
327
|
-
## License
|
|
328
|
-
|
|
329
|
-
No license has been added yet.
|
|
330
|
-
|
|
331
|
-
Until a license is added, assume this repository is **source-available for review only**, not open source for reuse.
|
package/dist/server/src/app.js
CHANGED
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DEFAULT_PORT = void 0;
|
|
6
7
|
exports.resolvePackageRoot = resolvePackageRoot;
|
|
7
8
|
exports.resolveDefaultDatabasePath = resolveDefaultDatabasePath;
|
|
8
9
|
exports.startRemCodexServer = startRemCodexServer;
|
|
@@ -46,9 +47,10 @@ function resolvePackageRoot(startDir = __dirname) {
|
|
|
46
47
|
function resolveDefaultDatabasePath() {
|
|
47
48
|
return node_path_1.default.join((0, node_os_1.homedir)(), ".remcodex", "remcodex.db");
|
|
48
49
|
}
|
|
50
|
+
exports.DEFAULT_PORT = 18840;
|
|
49
51
|
function buildRemCodexServer(options = {}) {
|
|
50
52
|
const repoRoot = options.repoRoot ? node_path_1.default.resolve(options.repoRoot) : resolvePackageRoot();
|
|
51
|
-
const port = options.port ?? Number.parseInt(process.env.PORT ??
|
|
53
|
+
const port = options.port ?? Number.parseInt(process.env.PORT ?? String(exports.DEFAULT_PORT), 10);
|
|
52
54
|
const databasePath = options.databasePath ??
|
|
53
55
|
process.env.DATABASE_PATH ??
|
|
54
56
|
resolveDefaultDatabasePath();
|
package/dist/server/src/cli.js
CHANGED
|
@@ -169,7 +169,7 @@ async function runStart(flags) {
|
|
|
169
169
|
printError("Install Codex first, or set CODEX_COMMAND to the correct executable.");
|
|
170
170
|
return 1;
|
|
171
171
|
}
|
|
172
|
-
const preferredPort = flags.port ?? Number.parseInt(process.env.PORT ??
|
|
172
|
+
const preferredPort = flags.port ?? Number.parseInt(process.env.PORT ?? String(app_1.DEFAULT_PORT), 10);
|
|
173
173
|
const codexMode = process.env.CODEX_MODE === "exec-json" ? "exec-json" : "app-server";
|
|
174
174
|
let started = null;
|
|
175
175
|
let activePort = preferredPort;
|