codex-relay 1.4.13 → 1.5.0
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/dist/src.js +38 -16
- package/package.json +3 -3
package/dist/src.js
CHANGED
|
@@ -3636,8 +3636,9 @@ async function streamRunningAppServerThread(input) {
|
|
|
3636
3636
|
observedTurnActivity = true;
|
|
3637
3637
|
const item = params?.item;
|
|
3638
3638
|
if (!item || typeof item !== "object") return;
|
|
3639
|
-
|
|
3639
|
+
let message = upsertAppServerItemMessage(input.messagesByThreadId, input.threadId, firstString(params, ["turnId"]) ?? activeTurnId, item);
|
|
3640
3640
|
if (!message) return;
|
|
3641
|
+
if (notification.method === "item/started") message = updateMessage(input.messagesByThreadId, input.threadId, message.id, { state: "streaming" });
|
|
3641
3642
|
const isAsyncAgentMessage = isAsyncAppServerAgentMessage(item);
|
|
3642
3643
|
if (isAsyncAgentMessage) asyncAgentMessageIds.add(message.id);
|
|
3643
3644
|
if (message.role !== "user" && !isAsyncAgentMessage) producedTurnOutput = true;
|
|
@@ -3656,14 +3657,22 @@ async function streamRunningAppServerThread(input) {
|
|
|
3656
3657
|
case "item/agentMessage/delta": {
|
|
3657
3658
|
observedTurnActivity = true;
|
|
3658
3659
|
const itemId = firstString(params, ["itemId"]);
|
|
3659
|
-
const delta =
|
|
3660
|
+
const delta = streamDelta(params);
|
|
3660
3661
|
if (!itemId || !delta) return;
|
|
3661
|
-
if (!input.messagesByThreadId.get(input.threadId)?.some((item) => item.id === itemId))
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3662
|
+
if (!input.messagesByThreadId.get(input.threadId)?.some((item) => item.id === itemId)) {
|
|
3663
|
+
const createdMessage = appendMessageWithId(input.messagesByThreadId, input.threadId, itemId, {
|
|
3664
|
+
role: "assistant",
|
|
3665
|
+
content: "",
|
|
3666
|
+
state: "streaming",
|
|
3667
|
+
turnId: firstString(params, ["turnId"]) ?? activeTurnId
|
|
3668
|
+
});
|
|
3669
|
+
threadSummary = updateThread(input.threads, input.messagesByThreadId, input.threadId, { state: "running" });
|
|
3670
|
+
sendSse(input.controller, input.encoder, input.secureSession, {
|
|
3671
|
+
type: "thread.message.created",
|
|
3672
|
+
thread: threadSummary,
|
|
3673
|
+
message: createdMessage
|
|
3674
|
+
});
|
|
3675
|
+
}
|
|
3667
3676
|
const isAsyncAgentMessage = asyncAgentMessageIds.has(itemId);
|
|
3668
3677
|
if (!isAsyncAgentMessage) {
|
|
3669
3678
|
assistantMessageId = itemId;
|
|
@@ -4157,8 +4166,9 @@ async function runAppServerPromptStreamed(input) {
|
|
|
4157
4166
|
return;
|
|
4158
4167
|
}
|
|
4159
4168
|
const turnId = firstString(params, ["turnId"]) ?? activeTurnId;
|
|
4160
|
-
|
|
4169
|
+
let message = upsertAppServerItemMessage(input.messagesByThreadId, activeThreadId, turnId, item);
|
|
4161
4170
|
if (!message) return;
|
|
4171
|
+
if (notification.method === "item/started") message = updateMessage(input.messagesByThreadId, activeThreadId, message.id, { state: "streaming" });
|
|
4162
4172
|
const isAsyncAgentMessage = isAsyncAppServerAgentMessage(item);
|
|
4163
4173
|
if (isAsyncAgentMessage) asyncAgentMessageIds.add(message.id);
|
|
4164
4174
|
if (message.role !== "user" && !isAsyncAgentMessage) producedTurnOutput = true;
|
|
@@ -4176,14 +4186,22 @@ async function runAppServerPromptStreamed(input) {
|
|
|
4176
4186
|
}
|
|
4177
4187
|
case "item/agentMessage/delta": {
|
|
4178
4188
|
const itemId = firstString(params, ["itemId"]);
|
|
4179
|
-
const delta =
|
|
4189
|
+
const delta = streamDelta(params);
|
|
4180
4190
|
if (!itemId || !delta) return;
|
|
4181
|
-
if (!input.messagesByThreadId.get(activeThreadId)?.some((item) => item.id === itemId))
|
|
4182
|
-
|
|
4183
|
-
|
|
4184
|
-
|
|
4185
|
-
|
|
4186
|
-
|
|
4191
|
+
if (!input.messagesByThreadId.get(activeThreadId)?.some((item) => item.id === itemId)) {
|
|
4192
|
+
const createdMessage = appendMessageWithId(input.messagesByThreadId, activeThreadId, itemId, {
|
|
4193
|
+
role: "assistant",
|
|
4194
|
+
content: "",
|
|
4195
|
+
state: "streaming",
|
|
4196
|
+
turnId: firstString(params, ["turnId"]) ?? activeTurnId
|
|
4197
|
+
});
|
|
4198
|
+
threadSummary = updateThread(input.threads, input.messagesByThreadId, activeThreadId, { state: "running" });
|
|
4199
|
+
sendSse(input.controller, input.encoder, input.secureSession, {
|
|
4200
|
+
type: "thread.message.created",
|
|
4201
|
+
thread: threadSummary,
|
|
4202
|
+
message: createdMessage
|
|
4203
|
+
});
|
|
4204
|
+
}
|
|
4187
4205
|
const isAsyncAgentMessage = asyncAgentMessageIds.has(itemId);
|
|
4188
4206
|
if (!isAsyncAgentMessage) assistantMessageId = itemId;
|
|
4189
4207
|
const patch = appendMessageDelta(input.messagesByThreadId, activeThreadId, itemId, delta);
|
|
@@ -6806,6 +6824,10 @@ function firstString(record, keys) {
|
|
|
6806
6824
|
if (typeof value === "string" && value.trim()) return value;
|
|
6807
6825
|
}
|
|
6808
6826
|
}
|
|
6827
|
+
function streamDelta(record) {
|
|
6828
|
+
const value = record?.delta;
|
|
6829
|
+
return typeof value === "string" && value.length > 0 ? value : void 0;
|
|
6830
|
+
}
|
|
6809
6831
|
function firstNumber(record, keys) {
|
|
6810
6832
|
for (const key of keys) {
|
|
6811
6833
|
const value = record?.[key];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-relay",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "Local Codex Relay CLI bridge for the Codex Relay mobile app.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"@noble/ciphers": "2.2.0",
|
|
42
42
|
"@noble/curves": "2.2.0",
|
|
43
43
|
"@noble/hashes": "2.2.0",
|
|
44
|
-
"@openai/codex": "0.
|
|
45
|
-
"@openai/codex-sdk": "0.
|
|
44
|
+
"@openai/codex": "0.153.4",
|
|
45
|
+
"@openai/codex-sdk": "0.153.4",
|
|
46
46
|
"base64-js": "1.5.1",
|
|
47
47
|
"commander": "^14.0.3",
|
|
48
48
|
"es-git": "^0.6.0",
|