replicas-engine 0.1.876 → 0.1.878
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/{asp-host-7QXMUTSZ.js → asp-host-X5NKR6W6.js} +4 -4
- package/dist/src/{chunk-VONPE7H2.js → chunk-4CF465DO.js} +1 -1
- package/dist/src/{chunk-LDEEMUMD.js → chunk-6LLMP34F.js} +2 -2
- package/dist/src/{chunk-UCOIF2JZ.js → chunk-BYRW3S7A.js} +1 -1
- package/dist/src/{chunk-7S5PY3WN.js → chunk-OMPZUIYA.js} +2 -2
- package/dist/src/{chunk-QUDJR3YI.js → chunk-PXMZ3SJT.js} +5 -5
- package/dist/src/{chunk-DFV4EYJI.js → chunk-PYQVWR2X.js} +50 -17
- package/dist/src/command-protection-hook.js +3 -3
- package/dist/src/deepseek-command-protection-plugin.js +4 -4
- package/dist/src/headless-agent.js +2 -2
- package/dist/src/index.js +6 -6
- package/dist/src/post-tool-pr-hook.js +2 -2
- package/dist/src/relay-mcp.js +1 -1
- package/package.json +1 -1
|
@@ -5,11 +5,11 @@ import {
|
|
|
5
5
|
getCodexAspHost,
|
|
6
6
|
restartCodexAspHost,
|
|
7
7
|
restartCodexAspHostIfRunning
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-PXMZ3SJT.js";
|
|
9
|
+
import "./chunk-4CF465DO.js";
|
|
10
|
+
import "./chunk-6LLMP34F.js";
|
|
11
11
|
import "./chunk-UZSNFLDQ.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-PYQVWR2X.js";
|
|
13
13
|
import "./chunk-VEQXQN22.js";
|
|
14
14
|
export {
|
|
15
15
|
getCodexAspHost,
|
|
@@ -4,7 +4,7 @@ const require = __createRequire(import.meta.url);
|
|
|
4
4
|
import {
|
|
5
5
|
HOOK_EXEC_MAX_BUFFER_BYTES,
|
|
6
6
|
isVersionBelow
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-PYQVWR2X.js";
|
|
8
8
|
|
|
9
9
|
// src/utils/codex-agent-env.ts
|
|
10
10
|
function buildCodexAgentEnv(source = process.env) {
|
|
@@ -245,7 +245,7 @@ function getCodexModelProvider(method) {
|
|
|
245
245
|
if (method === "foundry") return "azure";
|
|
246
246
|
return method === "ollama" || method === "openai-compatible" ? "replicas_openai_compatible" : "openai";
|
|
247
247
|
}
|
|
248
|
-
var ENGINE_PACKAGE_VERSION = "0.1.
|
|
248
|
+
var ENGINE_PACKAGE_VERSION = "0.1.878";
|
|
249
249
|
var INITIALIZE_METHOD = "initialize";
|
|
250
250
|
var INITIALIZED_NOTIFICATION = "initialized";
|
|
251
251
|
var ACCOUNT_LOGIN_START_METHOD = "account/login/start";
|
|
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from 'node:module';
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
shouldRefreshPullRequests
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-PYQVWR2X.js";
|
|
7
7
|
|
|
8
8
|
// src/services/post-tool-pr-notifier.ts
|
|
9
9
|
async function notifyPostToolUse(toolName, toolInput) {
|
|
@@ -3,12 +3,12 @@ import { createRequire as __createRequire } from 'node:module';
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
monolithRequest
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-4CF465DO.js";
|
|
7
7
|
import {
|
|
8
8
|
extractCommandProtectionCommandText,
|
|
9
9
|
findGitCommitSignals,
|
|
10
10
|
findPrMergeSignals
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-PYQVWR2X.js";
|
|
12
12
|
|
|
13
13
|
// src/services/command-protection-service.ts
|
|
14
14
|
var DEFAULT_COMMAND_PROTECTION_BLOCK_MESSAGE = "Blocked by Replicas command protection.";
|
|
@@ -5,13 +5,13 @@ import {
|
|
|
5
5
|
ENGINE_ENV,
|
|
6
6
|
monolithRequest,
|
|
7
7
|
setAgentCredentialSnapshot
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-4CF465DO.js";
|
|
9
9
|
import {
|
|
10
10
|
AppServerProcess,
|
|
11
11
|
SUBPROCESS_MAX_BUFFER,
|
|
12
12
|
buildCodexAgentEnv,
|
|
13
13
|
execFileAsync
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-6LLMP34F.js";
|
|
15
15
|
import {
|
|
16
16
|
isRecord
|
|
17
17
|
} from "./chunk-UZSNFLDQ.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
listOpenAICompatibleModels,
|
|
26
26
|
readOllamaAuthEnv,
|
|
27
27
|
resolveOpenAICompatibleModelsUrl
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-PYQVWR2X.js";
|
|
29
29
|
|
|
30
30
|
// src/managers/codex-token-manager.ts
|
|
31
31
|
import { promises as fs } from "fs";
|
|
@@ -246,7 +246,7 @@ var CodexTokenManager = class extends BaseRefreshManager {
|
|
|
246
246
|
await this.applyCredentialUpdate(++this.credentialGeneration, async () => {
|
|
247
247
|
await this.applyCredentialsResponse(data);
|
|
248
248
|
if (data.scope) setAgentCredentialSnapshot("codex", { method: data.type, scope: data.scope, revision: data.revision });
|
|
249
|
-
const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-
|
|
249
|
+
const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-X5NKR6W6.js");
|
|
250
250
|
await restartCodexAspHostIfRunning2();
|
|
251
251
|
});
|
|
252
252
|
await this.start(true);
|
|
@@ -266,7 +266,7 @@ var CodexTokenManager = class extends BaseRefreshManager {
|
|
|
266
266
|
await this.applyCredentialUpdate(generation, async () => {
|
|
267
267
|
await this.applyCredentialsResponse(data);
|
|
268
268
|
if (restartOnChange && CODEX_AUTH_ENV_KEYS.some((key, index) => process.env[key] !== previousEnv[index])) {
|
|
269
|
-
const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-
|
|
269
|
+
const { restartCodexAspHostIfRunning: restartCodexAspHostIfRunning2 } = await import("./asp-host-X5NKR6W6.js");
|
|
270
270
|
await restartCodexAspHostIfRunning2();
|
|
271
271
|
}
|
|
272
272
|
if (data.scope) {
|
|
@@ -1873,6 +1873,11 @@ import { z as z5 } from "zod";
|
|
|
1873
1873
|
var WORKSPACE_CREDENTIAL_PROVIDERS = ["claude", "codex"];
|
|
1874
1874
|
var workspaceCredentialProviderSchema = z5.enum(WORKSPACE_CREDENTIAL_PROVIDERS);
|
|
1875
1875
|
var workspaceCredentialSelectionSchema = agentCredentialSnapshotSchema.omit({ revision: true });
|
|
1876
|
+
var createWorkspaceCredentialSchema = workspaceCredentialSelectionSchema.extend({
|
|
1877
|
+
provider: z5.enum(VALID_CODING_AGENT_PROVIDERS)
|
|
1878
|
+
}).refine(({ provider, method }) => agentCredentialMethods(provider).includes(method), {
|
|
1879
|
+
message: "This inference provider is not supported by this agent"
|
|
1880
|
+
});
|
|
1876
1881
|
var switchWorkspaceCredentialSchema = workspaceCredentialSelectionSchema.extend({
|
|
1877
1882
|
provider: workspaceCredentialProviderSchema
|
|
1878
1883
|
}).refine(({ provider, method }) => agentCredentialMethods(provider).includes(method), {
|
|
@@ -3998,6 +4003,15 @@ function removeReplicasInstructions(text) {
|
|
|
3998
4003
|
return removeTag(text, REPLICAS_INSTRUCTIONS_TAG);
|
|
3999
4004
|
}
|
|
4000
4005
|
|
|
4006
|
+
// ../shared/src/user-message-matching.ts
|
|
4007
|
+
function parseTimestampMs(timestamp) {
|
|
4008
|
+
const value = typeof timestamp === "number" ? timestamp : Date.parse(timestamp);
|
|
4009
|
+
return Number.isFinite(value) ? value : 0;
|
|
4010
|
+
}
|
|
4011
|
+
function areUserMessagesWithinMatchWindow(a, b) {
|
|
4012
|
+
return a.content === b.content && Math.abs(parseTimestampMs(a.timestamp) - parseTimestampMs(b.timestamp)) <= USER_MESSAGE_MATCH_GRACE_PERIOD_MS;
|
|
4013
|
+
}
|
|
4014
|
+
|
|
4001
4015
|
// ../shared/src/display-message/parsers/codex-asp-parser.ts
|
|
4002
4016
|
function collectCodexTurns(events) {
|
|
4003
4017
|
const turns = /* @__PURE__ */ new Map();
|
|
@@ -4265,6 +4279,25 @@ function parsePatch(input) {
|
|
|
4265
4279
|
}
|
|
4266
4280
|
return operations;
|
|
4267
4281
|
}
|
|
4282
|
+
function takeRecordedPrompt(prompts, echo, turnIndex) {
|
|
4283
|
+
const timestampMs = parseTimestampMs(echo.timestamp);
|
|
4284
|
+
let closestIndex = -1;
|
|
4285
|
+
let closestDistance = Infinity;
|
|
4286
|
+
for (let i = prompts.length - 1; i >= 0; i--) {
|
|
4287
|
+
const candidate = prompts[i];
|
|
4288
|
+
const distance = Math.abs(candidate.timestampMs - timestampMs);
|
|
4289
|
+
if (distance > closestDistance) continue;
|
|
4290
|
+
if (candidate.index >= turnIndex && !areUserMessagesWithinMatchWindow(
|
|
4291
|
+
{ content: candidate.message.content, timestamp: candidate.timestampMs },
|
|
4292
|
+
{ content: echo.content, timestamp: timestampMs }
|
|
4293
|
+
)) continue;
|
|
4294
|
+
const images = candidate.message.images;
|
|
4295
|
+
if (images && echo.images && (images.length !== echo.images.length || images.some((image, index) => image.mediaType !== echo.images?.[index].mediaType || image.data !== echo.images?.[index].data))) continue;
|
|
4296
|
+
closestIndex = i;
|
|
4297
|
+
closestDistance = distance;
|
|
4298
|
+
}
|
|
4299
|
+
return closestIndex === -1 ? void 0 : prompts.splice(closestIndex, 1)[0].message;
|
|
4300
|
+
}
|
|
4268
4301
|
function parseCodexEvents(events) {
|
|
4269
4302
|
const messages = [];
|
|
4270
4303
|
const turns = collectCodexTurns(events);
|
|
@@ -4448,26 +4481,35 @@ function parseCodexEvents(events) {
|
|
|
4448
4481
|
}
|
|
4449
4482
|
}
|
|
4450
4483
|
});
|
|
4484
|
+
const recordedPrompts = /* @__PURE__ */ new Map();
|
|
4485
|
+
messages.forEach((message, index) => {
|
|
4486
|
+
if (message.type !== "user") return;
|
|
4487
|
+
const prompts = recordedPrompts.get(message.content) ?? [];
|
|
4488
|
+
prompts.push({ message, index, timestampMs: parseTimestampMs(message.timestamp) });
|
|
4489
|
+
recordedPrompts.set(message.content, prompts);
|
|
4490
|
+
});
|
|
4451
4491
|
const claimedPrompts = /* @__PURE__ */ new Set();
|
|
4452
4492
|
for (const { index, turnId } of turnInsertions.reverse()) {
|
|
4453
4493
|
const turn = turns.get(turnId);
|
|
4454
4494
|
if (!turn) continue;
|
|
4455
4495
|
const kept = [];
|
|
4456
4496
|
for (const message of messagesForCodexTurn(turn)) {
|
|
4457
|
-
|
|
4458
|
-
if (recordedIndex === -1) {
|
|
4497
|
+
if (message.type !== "user") {
|
|
4459
4498
|
kept.push(message);
|
|
4460
4499
|
continue;
|
|
4461
4500
|
}
|
|
4462
|
-
|
|
4463
|
-
const recorded =
|
|
4464
|
-
if (
|
|
4465
|
-
|
|
4501
|
+
const prompts = recordedPrompts.get(message.content);
|
|
4502
|
+
const recorded = prompts && takeRecordedPrompt(prompts, message, index);
|
|
4503
|
+
if (!recorded) {
|
|
4504
|
+
kept.push(message);
|
|
4505
|
+
continue;
|
|
4466
4506
|
}
|
|
4507
|
+
claimedPrompts.add(recorded);
|
|
4508
|
+
kept.push({ ...recorded, images: recorded.images ?? message.images });
|
|
4467
4509
|
}
|
|
4468
4510
|
messages.splice(index, 0, ...kept);
|
|
4469
4511
|
}
|
|
4470
|
-
return messages;
|
|
4512
|
+
return messages.filter((message) => !claimedPrompts.has(message));
|
|
4471
4513
|
}
|
|
4472
4514
|
|
|
4473
4515
|
// ../shared/src/display-message/parsers/cursor-parser.ts
|
|
@@ -5484,15 +5526,6 @@ function parseMcpToolName(name) {
|
|
|
5484
5526
|
return { server, tool };
|
|
5485
5527
|
}
|
|
5486
5528
|
|
|
5487
|
-
// ../shared/src/user-message-matching.ts
|
|
5488
|
-
function parseTimestampMs(timestamp) {
|
|
5489
|
-
const value = Date.parse(timestamp);
|
|
5490
|
-
return Number.isFinite(value) ? value : 0;
|
|
5491
|
-
}
|
|
5492
|
-
function areUserMessagesWithinMatchWindow(a, b) {
|
|
5493
|
-
return a.content === b.content && Math.abs(parseTimestampMs(a.timestamp) - parseTimestampMs(b.timestamp)) <= USER_MESSAGE_MATCH_GRACE_PERIOD_MS;
|
|
5494
|
-
}
|
|
5495
|
-
|
|
5496
5529
|
// ../shared/src/display-message/parsers/claude-parser.ts
|
|
5497
5530
|
var ABORTED_TERMINAL_REASONS = /* @__PURE__ */ new Set(["aborted_streaming", "aborted_tools"]);
|
|
5498
5531
|
function createSubagentMessage(messageIndex, timestamp, fields) {
|
|
@@ -8152,13 +8185,13 @@ export {
|
|
|
8152
8185
|
MEMORY_ROOT,
|
|
8153
8186
|
MEMORY_INDEX_FILENAME,
|
|
8154
8187
|
MEMORY_MARKER_GUIDANCE,
|
|
8188
|
+
areUserMessagesWithinMatchWindow,
|
|
8155
8189
|
extractErrorText,
|
|
8156
8190
|
isTransientErrorText,
|
|
8157
8191
|
extractToolResultText,
|
|
8158
8192
|
normalizeContentBlocks,
|
|
8159
8193
|
TaskAccumulator,
|
|
8160
8194
|
parseMcpToolName,
|
|
8161
|
-
areUserMessagesWithinMatchWindow,
|
|
8162
8195
|
coerceClaudeResultPayload,
|
|
8163
8196
|
stripAgentDiagnosticErrors,
|
|
8164
8197
|
isClaudeResultError,
|
|
@@ -3,12 +3,12 @@ import { createRequire as __createRequire } from 'node:module';
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
evaluateCommandProtection
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-OMPZUIYA.js";
|
|
7
|
+
import "./chunk-4CF465DO.js";
|
|
8
8
|
import {
|
|
9
9
|
isRecord
|
|
10
10
|
} from "./chunk-UZSNFLDQ.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-PYQVWR2X.js";
|
|
12
12
|
import "./chunk-VEQXQN22.js";
|
|
13
13
|
|
|
14
14
|
// src/command-protection-hook.ts
|
|
@@ -3,13 +3,13 @@ import { createRequire as __createRequire } from 'node:module';
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
evaluateCommandProtection
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-OMPZUIYA.js";
|
|
7
7
|
import {
|
|
8
8
|
notifyPostToolUse
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-BYRW3S7A.js";
|
|
10
|
+
import "./chunk-4CF465DO.js";
|
|
11
11
|
import "./chunk-UZSNFLDQ.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-PYQVWR2X.js";
|
|
13
13
|
import "./chunk-VEQXQN22.js";
|
|
14
14
|
|
|
15
15
|
// src/deepseek-command-protection-plugin.ts
|
|
@@ -8,12 +8,12 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
AppServerProcess,
|
|
10
10
|
buildCodexAgentEnv
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-6LLMP34F.js";
|
|
12
12
|
import {
|
|
13
13
|
AGENT,
|
|
14
14
|
getMemoryOutputSafetyViolation,
|
|
15
15
|
headlessAgentRequestSchema
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-PYQVWR2X.js";
|
|
17
17
|
import "./chunk-VEQXQN22.js";
|
|
18
18
|
|
|
19
19
|
// src/headless-agent.ts
|
package/dist/src/index.js
CHANGED
|
@@ -91,7 +91,7 @@ import {
|
|
|
91
91
|
evaluateCommandProtection,
|
|
92
92
|
extractToolCommand,
|
|
93
93
|
reportCommandProtectionBlock
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-OMPZUIYA.js";
|
|
95
95
|
import {
|
|
96
96
|
ACCOUNT_RATE_LIMITS_UPDATED_METHOD,
|
|
97
97
|
AGENT_MESSAGE_DELTA_METHOD,
|
|
@@ -132,21 +132,21 @@ import {
|
|
|
132
132
|
recordCredentialFallback,
|
|
133
133
|
recordExhaustedCredential,
|
|
134
134
|
restartCodexAspHost
|
|
135
|
-
} from "./chunk-
|
|
135
|
+
} from "./chunk-PXMZ3SJT.js";
|
|
136
136
|
import {
|
|
137
137
|
ENGINE_ENV,
|
|
138
138
|
IS_WARMING_MODE,
|
|
139
139
|
monolithRequest,
|
|
140
140
|
monolithService,
|
|
141
141
|
setAgentCredentialSnapshot
|
|
142
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-4CF465DO.js";
|
|
143
143
|
import {
|
|
144
144
|
AspClient,
|
|
145
145
|
SUBPROCESS_MAX_BUFFER,
|
|
146
146
|
execAsync,
|
|
147
147
|
execFileAsync,
|
|
148
148
|
getCodexModelProvider
|
|
149
|
-
} from "./chunk-
|
|
149
|
+
} from "./chunk-6LLMP34F.js";
|
|
150
150
|
import {
|
|
151
151
|
isRecord as isRecord2
|
|
152
152
|
} from "./chunk-UZSNFLDQ.js";
|
|
@@ -361,7 +361,7 @@ import {
|
|
|
361
361
|
waitRelaySubagentRequestSchema,
|
|
362
362
|
withTimeout,
|
|
363
363
|
workspaceCredentialProviderSchema
|
|
364
|
-
} from "./chunk-
|
|
364
|
+
} from "./chunk-PYQVWR2X.js";
|
|
365
365
|
import {
|
|
366
366
|
__commonJS,
|
|
367
367
|
__export,
|
|
@@ -13942,7 +13942,7 @@ var ClaudeManager = class _ClaudeManager extends CodingAgentManager {
|
|
|
13942
13942
|
}
|
|
13943
13943
|
async recordContextUsage(response) {
|
|
13944
13944
|
try {
|
|
13945
|
-
const usage = await response.getContextUsage();
|
|
13945
|
+
const usage = await response.getContextUsage({ detail: "summary" });
|
|
13946
13946
|
const event = this.emitContextUsage(this.buildContextUsagePayload(usage));
|
|
13947
13947
|
this.historyFile.append(event);
|
|
13948
13948
|
} catch (error) {
|
|
@@ -3,11 +3,11 @@ import { createRequire as __createRequire } from 'node:module';
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
notifyPostToolUse
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-BYRW3S7A.js";
|
|
7
7
|
import {
|
|
8
8
|
isRecord
|
|
9
9
|
} from "./chunk-UZSNFLDQ.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-PYQVWR2X.js";
|
|
11
11
|
import "./chunk-VEQXQN22.js";
|
|
12
12
|
|
|
13
13
|
// src/post-tool-pr-hook.ts
|
package/dist/src/relay-mcp.js
CHANGED