remote-codex 0.11.21 → 0.11.23
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 +211 -110
- package/apps/relay-server/dist/index.js +295 -51
- package/apps/supervisor-api/dist/index.js +238 -137
- package/apps/supervisor-web/dist/assets/index-CtcCwgIc.js +5 -0
- package/apps/supervisor-web/dist/assets/index-PMKHoC-h.css +1 -0
- package/apps/supervisor-web/dist/assets/{thread-ui-CDgAOcDh.js → thread-ui-jJyFqIuV.js} +69 -35
- package/apps/supervisor-web/dist/index.html +3 -3
- package/package.json +4 -1
- package/packages/claude/src/runtimeAdapter.test.ts +4 -1
- package/packages/claude/src/runtimeAdapter.ts +6 -2
- package/packages/shared/src/index.ts +34 -1
- package/apps/supervisor-web/dist/assets/index-BfspE5mQ.js +0 -5
- package/apps/supervisor-web/dist/assets/index-BmBS1Wzk.css +0 -1
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Remote Codex Supervisor</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-CtcCwgIc.js"></script>
|
|
8
8
|
<link rel="modulepreload" crossorigin href="/assets/react-vendor-CgLzZcV4.js">
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/ui-vendor-CeKGesq3.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/graph-vendor-DVPtkh3h.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/terminal-vendor-B365Go3Z.js">
|
|
12
12
|
<link rel="modulepreload" crossorigin href="/assets/markdown-vendor-BQJfKm05.js">
|
|
13
|
-
<link rel="modulepreload" crossorigin href="/assets/thread-ui-
|
|
13
|
+
<link rel="modulepreload" crossorigin href="/assets/thread-ui-jJyFqIuV.js">
|
|
14
14
|
<link rel="stylesheet" crossorigin href="/assets/graph-vendor-C5ap-Sga.css">
|
|
15
15
|
<link rel="stylesheet" crossorigin href="/assets/terminal-vendor-Beg8tuEN.css">
|
|
16
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
16
|
+
<link rel="stylesheet" crossorigin href="/assets/index-PMKHoC-h.css">
|
|
17
17
|
</head>
|
|
18
18
|
<body class="bg-stone-950">
|
|
19
19
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "remote-codex",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.23",
|
|
4
4
|
"description": "Local web supervisor for Codex workspaces and threads.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"test": "NODE_ENV=test pnpm -r --if-present test",
|
|
55
55
|
"test:e2e": "playwright test",
|
|
56
56
|
"db:migrate": "pnpm --filter @remote-codex/db db:migrate",
|
|
57
|
+
"release:mobile": "node scripts/publish-mobile-release-assets.mjs",
|
|
57
58
|
"impeccable": "impeccable",
|
|
58
59
|
"impeccable:detect": "impeccable detect apps/supervisor-web/src",
|
|
59
60
|
"impeccable:detect:fast": "impeccable detect --fast apps/supervisor-web/src",
|
|
@@ -62,6 +63,8 @@
|
|
|
62
63
|
"dependencies": {
|
|
63
64
|
"@fastify/multipart": "^9.0.3",
|
|
64
65
|
"@fastify/websocket": "^11.0.2",
|
|
66
|
+
"@fontsource/noto-sans": "^5.2.10",
|
|
67
|
+
"@fontsource/noto-sans-sc": "^5.2.9",
|
|
65
68
|
"@homebridge/node-pty-prebuilt-multiarch": "^0.13.1",
|
|
66
69
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
67
70
|
"better-sqlite3": "^12.10.0",
|
|
@@ -604,6 +604,9 @@ describe('ClaudeRuntimeAdapter', () => {
|
|
|
604
604
|
model: 'fable',
|
|
605
605
|
displayName: 'Claude Fable',
|
|
606
606
|
defaultReasoningEffort: 'medium',
|
|
607
|
+
supportedReasoningEfforts: expect.arrayContaining([
|
|
608
|
+
expect.objectContaining({ reasoningEffort: 'max' }),
|
|
609
|
+
]),
|
|
607
610
|
}),
|
|
608
611
|
]),
|
|
609
612
|
);
|
|
@@ -870,7 +873,7 @@ describe('ClaudeRuntimeAdapter', () => {
|
|
|
870
873
|
providerSessionId: 'claude-session-1',
|
|
871
874
|
prompt: 'Say hello and run pwd',
|
|
872
875
|
model: 'sonnet',
|
|
873
|
-
reasoningEffort: '
|
|
876
|
+
reasoningEffort: 'max',
|
|
874
877
|
workspacePath: '/tmp/workspace',
|
|
875
878
|
});
|
|
876
879
|
expect(started.status).toBe('inProgress');
|
|
@@ -494,6 +494,7 @@ const DEFAULT_CLAUDE_MODELS: AgentModel[] = [
|
|
|
494
494
|
{ reasoningEffort: 'medium', description: 'Medium effort' },
|
|
495
495
|
{ reasoningEffort: 'high', description: 'High effort' },
|
|
496
496
|
{ reasoningEffort: 'xhigh', description: 'Extra high effort' },
|
|
497
|
+
{ reasoningEffort: 'max', description: 'Maximum effort' },
|
|
497
498
|
],
|
|
498
499
|
defaultReasoningEffort: 'medium',
|
|
499
500
|
},
|
|
@@ -509,6 +510,7 @@ const DEFAULT_CLAUDE_MODELS: AgentModel[] = [
|
|
|
509
510
|
{ reasoningEffort: 'medium', description: 'Medium effort' },
|
|
510
511
|
{ reasoningEffort: 'high', description: 'High effort' },
|
|
511
512
|
{ reasoningEffort: 'xhigh', description: 'Extra high effort' },
|
|
513
|
+
{ reasoningEffort: 'max', description: 'Maximum effort' },
|
|
512
514
|
],
|
|
513
515
|
defaultReasoningEffort: 'medium',
|
|
514
516
|
},
|
|
@@ -524,6 +526,7 @@ const DEFAULT_CLAUDE_MODELS: AgentModel[] = [
|
|
|
524
526
|
{ reasoningEffort: 'medium', description: 'Medium effort' },
|
|
525
527
|
{ reasoningEffort: 'high', description: 'High effort' },
|
|
526
528
|
{ reasoningEffort: 'xhigh', description: 'Extra high effort' },
|
|
529
|
+
{ reasoningEffort: 'max', description: 'Maximum effort' },
|
|
527
530
|
],
|
|
528
531
|
defaultReasoningEffort: 'medium',
|
|
529
532
|
},
|
|
@@ -539,6 +542,7 @@ const DEFAULT_CLAUDE_MODELS: AgentModel[] = [
|
|
|
539
542
|
{ reasoningEffort: 'medium', description: 'Medium effort' },
|
|
540
543
|
{ reasoningEffort: 'high', description: 'High effort' },
|
|
541
544
|
{ reasoningEffort: 'xhigh', description: 'Extra high effort' },
|
|
545
|
+
{ reasoningEffort: 'max', description: 'Maximum effort' },
|
|
542
546
|
],
|
|
543
547
|
defaultReasoningEffort: 'medium',
|
|
544
548
|
},
|
|
@@ -593,7 +597,7 @@ function mapModelInfo(model: ModelInfo, index: number): AgentModel {
|
|
|
593
597
|
isDefault: index === 0,
|
|
594
598
|
hidden: false,
|
|
595
599
|
supportedReasoningEfforts: (model.supportedEffortLevels ?? []).map((effort) => ({
|
|
596
|
-
reasoningEffort: effort
|
|
600
|
+
reasoningEffort: effort,
|
|
597
601
|
description: `${effort} effort`,
|
|
598
602
|
})),
|
|
599
603
|
defaultReasoningEffort: model.supportsEffort ? 'medium' : null,
|
|
@@ -1072,7 +1076,7 @@ function queryOptionsForRuntime(
|
|
|
1072
1076
|
options.betas = ['context-1m-2025-08-07'];
|
|
1073
1077
|
}
|
|
1074
1078
|
if (input.reasoningEffort) {
|
|
1075
|
-
const effort = input.reasoningEffort
|
|
1079
|
+
const effort = input.reasoningEffort;
|
|
1076
1080
|
if (['low', 'medium', 'high', 'xhigh', 'max'].includes(effort)) {
|
|
1077
1081
|
options.effort = effort as NonNullable<ClaudeQueryOptions['effort']>;
|
|
1078
1082
|
}
|
|
@@ -112,6 +112,20 @@ export interface RelayDeviceDto {
|
|
|
112
112
|
createdAt: string;
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
+
export type RelayThreadAccessDto = 'read' | 'control';
|
|
116
|
+
export type RelayWorkspaceAccessDto = 'none' | 'read' | 'write';
|
|
117
|
+
|
|
118
|
+
export interface CreateRelaySessionShareInput {
|
|
119
|
+
targetIdentifier: string;
|
|
120
|
+
deviceId: string;
|
|
121
|
+
threadId: string;
|
|
122
|
+
workspaceId?: string | null;
|
|
123
|
+
label?: string | null;
|
|
124
|
+
threadAccess: RelayThreadAccessDto;
|
|
125
|
+
workspaceAccess: RelayWorkspaceAccessDto;
|
|
126
|
+
expiresAt?: string | null;
|
|
127
|
+
}
|
|
128
|
+
|
|
115
129
|
export interface RelaySessionShareDto {
|
|
116
130
|
id: string;
|
|
117
131
|
ownerUserId: string;
|
|
@@ -121,9 +135,21 @@ export interface RelaySessionShareDto {
|
|
|
121
135
|
deviceId: string;
|
|
122
136
|
deviceName: string;
|
|
123
137
|
threadId: string;
|
|
138
|
+
workspaceId: string | null;
|
|
124
139
|
label: string | null;
|
|
140
|
+
threadAccess: RelayThreadAccessDto;
|
|
141
|
+
workspaceAccess: RelayWorkspaceAccessDto;
|
|
125
142
|
createdAt: string;
|
|
126
143
|
revokedAt: string | null;
|
|
144
|
+
expiresAt: string | null;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export interface RelayEffectiveAccessDto {
|
|
148
|
+
kind: 'owner' | 'shared';
|
|
149
|
+
shareId: string | null;
|
|
150
|
+
threadAccess: RelayThreadAccessDto;
|
|
151
|
+
workspaceAccess: RelayWorkspaceAccessDto;
|
|
152
|
+
workspaceId: string | null;
|
|
127
153
|
}
|
|
128
154
|
|
|
129
155
|
export interface RelaySessionDto {
|
|
@@ -518,7 +544,14 @@ export type ThreadWorkspaceUploadResultDto =
|
|
|
518
544
|
};
|
|
519
545
|
|
|
520
546
|
export type ApprovalMode = 'yolo' | 'guarded';
|
|
521
|
-
export type ReasoningEffortDto =
|
|
547
|
+
export type ReasoningEffortDto =
|
|
548
|
+
| 'none'
|
|
549
|
+
| 'minimal'
|
|
550
|
+
| 'low'
|
|
551
|
+
| 'medium'
|
|
552
|
+
| 'high'
|
|
553
|
+
| 'xhigh'
|
|
554
|
+
| 'max';
|
|
522
555
|
export type CollaborationModeDto = 'default' | 'plan';
|
|
523
556
|
export type SandboxModeDto = 'read-only' | 'workspace-write' | 'danger-full-access';
|
|
524
557
|
|