@alan-ai-hq/agent-manager-linux-arm64 0.1.130 → 0.1.131
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/alan-agent.cjs +57 -94
- package/alan-holder.cjs +56 -93
- package/package.json +1 -1
package/alan-agent.cjs
CHANGED
|
@@ -19993,7 +19993,7 @@ var init_ids = __esm({
|
|
|
19993
19993
|
function wire() {
|
|
19994
19994
|
return (schema) => schema;
|
|
19995
19995
|
}
|
|
19996
|
-
var canonicalUserMessageSchema, canonicalAssistantMessageSchema, externalMcpServerSchema, runAttachmentSchema, parsedAttachmentSchema, taskMetaSchema, pullRequestMetaSchema, agentUserIdentitySchema, workflowToolRefSchema,
|
|
19996
|
+
var canonicalUserMessageSchema, canonicalAssistantMessageSchema, externalMcpServerSchema, runAttachmentSchema, parsedAttachmentSchema, taskMetaSchema, pullRequestMetaSchema, agentUserIdentitySchema, workflowToolRefSchema, runPromptContextSchema;
|
|
19997
19997
|
var init_run_context = __esm({
|
|
19998
19998
|
"../shared/dist/runtime-v2/run-context.js"() {
|
|
19999
19999
|
"use strict";
|
|
@@ -20099,7 +20099,6 @@ var init_run_context = __esm({
|
|
|
20099
20099
|
}));
|
|
20100
20100
|
agentUserIdentitySchema = wire()(external_exports.object({ id: external_exports.string().min(1), name: external_exports.string().nullable(), email: external_exports.string() }));
|
|
20101
20101
|
workflowToolRefSchema = wire()(external_exports.object({ type: external_exports.string().min(1), id: external_exports.string().min(1) }));
|
|
20102
|
-
relevantContextRecallSchema = wire()(external_exports.object({ query: external_exports.string(), envelope: external_exports.record(external_exports.string(), external_exports.unknown()) }));
|
|
20103
20102
|
runPromptContextSchema = external_exports.object({
|
|
20104
20103
|
taskMeta: taskMetaSchema.optional(),
|
|
20105
20104
|
prMeta: pullRequestMetaSchema.optional(),
|
|
@@ -20356,10 +20355,8 @@ var init_desired_state = __esm({
|
|
|
20356
20355
|
promptContext: runPromptContextSchema.optional(),
|
|
20357
20356
|
/** Absent means entitled, so a spec from an older server keeps the code-index prompts. */
|
|
20358
20357
|
codeIndexEnabled: external_exports.boolean().optional(),
|
|
20359
|
-
/**
|
|
20358
|
+
/** Omitted by older servers; only an explicit entitlement enables context-search guidance. */
|
|
20360
20359
|
contextGraphEnabled: external_exports.boolean().optional(),
|
|
20361
|
-
/** Already appended to `content` as `<relevantContext>`; the holder records it as a recall. */
|
|
20362
|
-
relevantContext: relevantContextRecallSchema.optional(),
|
|
20363
20360
|
cloudEnvironmentId: external_exports.guid().optional(),
|
|
20364
20361
|
localRepoUrls: external_exports.array(external_exports.string().min(1)).optional()
|
|
20365
20362
|
// Never here: the provider API key. The holder fetches it per run (RUN_PROVIDER_CREDENTIAL_PATH).
|
|
@@ -21433,7 +21430,7 @@ Use these tools, in roughly this order of frequency:
|
|
|
21433
21430
|
4. \`get_session_context\` \u2014 check what a worker accomplished
|
|
21434
21431
|
5. \`update_task\` \u2014 keep status, priority, labels current
|
|
21435
21432
|
6. \`send_session_message\` / \`start_task_session\` \u2014 continue a specific session or force a new session only when needed
|
|
21436
|
-
7. \`list_sessions\` / \`find_records\` / \`
|
|
21433
|
+
7. \`list_sessions\` / \`find_records\` / \`search_code_context\` / \`Read\` / \`Glob\` / \`Grep\` \u2014 situational awareness (\`find_records\` locates canonical records; \`search_code_context\` handles source-code discovery; read exact cited sources before claiming authoritative details)
|
|
21437
21434
|
8. \`create_plan\` \u2014 document implementation plans and durable specs as artifacts
|
|
21438
21435
|
9. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21439
21436
|
|
|
@@ -21508,8 +21505,7 @@ You work on the Alan platform. The platform is where product truth lives: tasks,
|
|
|
21508
21505
|
| Scope, status, priority, or history of work | \`get_task\`, \`list_subtasks\`, \`list_tasks\` | \`git log\`, commit messages |
|
|
21509
21506
|
| What was decided and why | \`list_task_decisions\`, \`list_task_events\` | code comments, in-repo ADRs |
|
|
21510
21507
|
| What an agent did or is doing | \`list_sessions\`, \`get_session_context\` | \`git log\`, diffing the worktree |
|
|
21511
|
-
| Prior agent context | \`
|
|
21512
|
-
| Relevant non-code context with no exact source | \`search_context\` | guessing IDs, container tags, or provider filters |
|
|
21508
|
+
| Prior agent context | \`list_task_events\`, \`get_session_context\` | scratch files |
|
|
21513
21509
|
| Outputs of completed work | \`list_artifacts\`, \`get_artifact\` | build output, generated files |
|
|
21514
21510
|
| Where code lives or how it works | \`search_code_context\` first, then \`Read\` the cited files | \`Grep\`/\`Glob\` sweeps |
|
|
21515
21511
|
|
|
@@ -21538,8 +21534,7 @@ Use these tools, in roughly this order of frequency:
|
|
|
21538
21534
|
4. \`get_session_context\` / \`list_sessions\` \u2014 track progress
|
|
21539
21535
|
5. \`update_task\` \u2014 keep status and priority current
|
|
21540
21536
|
6. \`list_task_events\` / \`add_task_event\` \u2014 persist only high-signal human-readable decisions, learnings, checkpoints, and outcomes in the Agent Log
|
|
21541
|
-
7. \`
|
|
21542
|
-
8. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21537
|
+
7. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21543
21538
|
|
|
21544
21539
|
## How to think like a PM
|
|
21545
21540
|
|
|
@@ -21740,13 +21735,6 @@ var init_browser_surface = __esm({
|
|
|
21740
21735
|
}
|
|
21741
21736
|
});
|
|
21742
21737
|
|
|
21743
|
-
// ../shared/dist/agent/context-intent.js
|
|
21744
|
-
var init_context_intent = __esm({
|
|
21745
|
-
"../shared/dist/agent/context-intent.js"() {
|
|
21746
|
-
"use strict";
|
|
21747
|
-
}
|
|
21748
|
-
});
|
|
21749
|
-
|
|
21750
21738
|
// ../shared/dist/agent/gated-mcp-tools.js
|
|
21751
21739
|
var CODE_INDEX_MCP_TOOLS, CONTEXT_GRAPH_MCP_TOOLS, ENTITLEMENT_GATED_MCP_TOOLS;
|
|
21752
21740
|
var init_gated_mcp_tools = __esm({
|
|
@@ -22065,13 +22053,13 @@ var init_system_prompt = __esm({
|
|
|
22065
22053
|
|
|
22066
22054
|
The codebase records what the system does. It does not record why it is that way, what was ruled out, what an outside constraint forbids, or what someone was left owed. That record lives in \`search_context\` \u2014 this team's decisions, constraints, procedures, ownership, rejected approaches and unfinished work.
|
|
22067
22055
|
|
|
22056
|
+
Before answering or acting on a question about a past decision, ownership, history, or unfinished work whose exact source is unknown, call \`search_context\` first.
|
|
22057
|
+
|
|
22068
22058
|
So when a turn depends on something the repository cannot tell you \u2014 a value chosen rather than tuned, an approach that may already have been tried, a boundary another team owns, work someone else left half-done \u2014 recover it before you answer or act. Reading the code, or the document someone named, does not settle it: those answer a different question, and one turn can need both.
|
|
22069
22059
|
|
|
22070
22060
|
What comes back is the answer, not a step towards it. Carry its specifics into what you write or change \u2014 the value, the constraint, the reason, the person \u2014 and say plainly when the evidence contradicts what was asked for. Retrieving a decision and then producing work that ignores it is worse than never having searched, because it looks informed.
|
|
22071
22061
|
|
|
22072
|
-
Skip it when nothing team-specific is at stake: source-code questions, general knowledge, mechanical work fully specified in the request, or an exact ID already in hand
|
|
22073
|
-
|
|
22074
|
-
A \`relevantContext\` block, when present, is evidence already retrieved. Use it, do not search again for what it answers, and do not mention that it was loaded.`;
|
|
22062
|
+
Skip it when nothing team-specific is at stake: source-code questions, general knowledge, mechanical work fully specified in the request, or an exact ID already in hand.`;
|
|
22075
22063
|
ALAN_PLATFORM_TOOL_ROUTING_PROMPT = `## Alan platform tools
|
|
22076
22064
|
|
|
22077
22065
|
When an action reads, creates, changes, links, sends, or controls Alan-owned state \u2014 or uses a provider identity connected through Alan \u2014 use the matching Alan MCP tool. This applies whether the agent runs locally or in the cloud. Do not substitute a shell CLI, browser automation, raw HTTP, or a local file; those paths bypass Alan's identity, authorization, audit trail, and task linkage.
|
|
@@ -22114,8 +22102,6 @@ Team
|
|
|
22114
22102
|
|
|
22115
22103
|
${ALAN_PLATFORM_TOOL_ROUTING_PROMPT}
|
|
22116
22104
|
|
|
22117
|
-
${ALAN_CONTEXT_SEARCH_PROMPT}
|
|
22118
|
-
|
|
22119
22105
|
## Record & Entity Resolution (Tasks, PRs, Docs, Epics)
|
|
22120
22106
|
|
|
22121
22107
|
When the user refers to a specific task, pull request, document, or epic by human identifier (e.g. \`AL-2980\`, \`2980\`, \`#45\`), title, or topic phrase:
|
|
@@ -22258,7 +22244,6 @@ var init_agent2 = __esm({
|
|
|
22258
22244
|
init_agent_definitions();
|
|
22259
22245
|
init_attachment_mention();
|
|
22260
22246
|
init_browser_surface();
|
|
22261
|
-
init_context_intent();
|
|
22262
22247
|
init_gated_mcp_tools();
|
|
22263
22248
|
init_generated_images();
|
|
22264
22249
|
init_iframe_embeddability();
|
|
@@ -23825,7 +23810,7 @@ var init_acp = __esm({
|
|
|
23825
23810
|
}
|
|
23826
23811
|
});
|
|
23827
23812
|
|
|
23828
|
-
// ../agent-core/dist/chunk-
|
|
23813
|
+
// ../agent-core/dist/chunk-UGRKZTAD.js
|
|
23829
23814
|
function textBlock(text2) {
|
|
23830
23815
|
return { type: "text", text: text2 };
|
|
23831
23816
|
}
|
|
@@ -23853,18 +23838,6 @@ function noticeUpdate(severity, kind, title, description) {
|
|
|
23853
23838
|
_meta: { [NOTICE_KIND_META]: kind }
|
|
23854
23839
|
};
|
|
23855
23840
|
}
|
|
23856
|
-
function contextRecallUpdate(toolCallId, recall) {
|
|
23857
|
-
return {
|
|
23858
|
-
sessionUpdate: "tool_call_update",
|
|
23859
|
-
toolCallId,
|
|
23860
|
-
name: "search_context",
|
|
23861
|
-
kind: "search",
|
|
23862
|
-
status: "completed",
|
|
23863
|
-
rawInput: { query: recall.query },
|
|
23864
|
-
rawOutput: JSON.stringify(recall.envelope),
|
|
23865
|
-
_meta: { [CONTEXT_RECALL_META]: "prefetch" }
|
|
23866
|
-
};
|
|
23867
|
-
}
|
|
23868
23841
|
function usageUpdate(breakdown, fallbackModel = "") {
|
|
23869
23842
|
const used = (breakdown.inputTokens ?? 0) + (breakdown.outputTokens ?? 0) + (breakdown.cacheReadTokens ?? 0) + (breakdown.cacheCreationTokens ?? 0);
|
|
23870
23843
|
const model = breakdown.model || fallbackModel;
|
|
@@ -24067,9 +24040,9 @@ function withoutInlineMedia(update) {
|
|
|
24067
24040
|
...nextRawOutput === rawOutput ? {} : { rawOutput: nextRawOutput }
|
|
24068
24041
|
};
|
|
24069
24042
|
}
|
|
24070
|
-
var PROVIDER_PAYLOAD_META, TOOL_RESULT_ONLY_META, PARENT_TOOL_CALL_META, SUBAGENT_LAUNCHER_META, SUBAGENT_TASK_ID_META, SUBAGENT_OUTPUT_FILE_META, USAGE_META, TODOS_META, NOTICE_KIND_META,
|
|
24071
|
-
var
|
|
24072
|
-
"../agent-core/dist/chunk-
|
|
24043
|
+
var PROVIDER_PAYLOAD_META, TOOL_RESULT_ONLY_META, PARENT_TOOL_CALL_META, SUBAGENT_LAUNCHER_META, SUBAGENT_TASK_ID_META, SUBAGENT_OUTPUT_FILE_META, USAGE_META, TODOS_META, NOTICE_KIND_META, ASK_USER_QUESTIONS_META, USER_ANSWER_META, AWAITING_TOOL_CALLS_META, EXIT_PLAN_MODE_INPUT_META, BACKGROUND_TASK_META, TASK_PROGRESS_META, RATE_LIMIT_META, MODEL_META, TOOLS_META, SLASH_COMMANDS_META, TOOL_KIND_RULES, ANSWER_PREFIX, ACCEPT_WORDS, MIN_INLINE_MEDIA_CHARS, DATA_URL_PREFIX, BASE64_BODY;
|
|
24044
|
+
var init_chunk_UGRKZTAD = __esm({
|
|
24045
|
+
"../agent-core/dist/chunk-UGRKZTAD.js"() {
|
|
24073
24046
|
"use strict";
|
|
24074
24047
|
init_chunk_YXWJW7I5();
|
|
24075
24048
|
init_constants();
|
|
@@ -24083,7 +24056,6 @@ var init_chunk_OUQ7HMD3 = __esm({
|
|
|
24083
24056
|
USAGE_META = "alan.dev/usage";
|
|
24084
24057
|
TODOS_META = "alan.dev/todos";
|
|
24085
24058
|
NOTICE_KIND_META = "alan.dev/noticeKind";
|
|
24086
|
-
CONTEXT_RECALL_META = "alan.dev/contextRecall";
|
|
24087
24059
|
ASK_USER_QUESTIONS_META = "alan.dev/askUserQuestions";
|
|
24088
24060
|
USER_ANSWER_META = "alan.dev/userAnswer";
|
|
24089
24061
|
AWAITING_TOOL_CALLS_META = "alan.dev/awaitingToolCallIds";
|
|
@@ -24120,12 +24092,12 @@ var init_chunk_OUQ7HMD3 = __esm({
|
|
|
24120
24092
|
var init_acp2 = __esm({
|
|
24121
24093
|
"../agent-core/dist/acp.js"() {
|
|
24122
24094
|
"use strict";
|
|
24123
|
-
|
|
24095
|
+
init_chunk_UGRKZTAD();
|
|
24124
24096
|
init_chunk_YXWJW7I5();
|
|
24125
24097
|
}
|
|
24126
24098
|
});
|
|
24127
24099
|
|
|
24128
|
-
// ../agent-core/dist/chunk-
|
|
24100
|
+
// ../agent-core/dist/chunk-DALFHI4B.js
|
|
24129
24101
|
function isRecordValue(value2) {
|
|
24130
24102
|
return value2 !== null;
|
|
24131
24103
|
}
|
|
@@ -24304,10 +24276,10 @@ function readTranscriptTurns(transcript, chunk, baseOffset, skipped = []) {
|
|
|
24304
24276
|
return { turns, consumedBytes: consumedEnd - baseOffset };
|
|
24305
24277
|
}
|
|
24306
24278
|
var import_fs3, NEWLINE2, TranscriptCursor, TranscriptLineLookup, CONTENT_UPDATES;
|
|
24307
|
-
var
|
|
24308
|
-
"../agent-core/dist/chunk-
|
|
24279
|
+
var init_chunk_DALFHI4B = __esm({
|
|
24280
|
+
"../agent-core/dist/chunk-DALFHI4B.js"() {
|
|
24309
24281
|
"use strict";
|
|
24310
|
-
|
|
24282
|
+
init_chunk_UGRKZTAD();
|
|
24311
24283
|
init_chunk_YXWJW7I5();
|
|
24312
24284
|
import_fs3 = require("fs");
|
|
24313
24285
|
NEWLINE2 = 10;
|
|
@@ -24816,7 +24788,7 @@ var init_chunk_R32NAS3B = __esm({
|
|
|
24816
24788
|
}
|
|
24817
24789
|
});
|
|
24818
24790
|
|
|
24819
|
-
// ../agent-core/dist/chunk-
|
|
24791
|
+
// ../agent-core/dist/chunk-X5JKSBTB.js
|
|
24820
24792
|
function collectStrings(value2, out) {
|
|
24821
24793
|
if (typeof value2 === "string") out.push(value2);
|
|
24822
24794
|
else if (Array.isArray(value2)) for (const item of value2) collectStrings(item, out);
|
|
@@ -25186,10 +25158,10 @@ function silentStartError(name, timeoutMs) {
|
|
|
25186
25158
|
};
|
|
25187
25159
|
}
|
|
25188
25160
|
var import_crypto3, import_fs4, import_path3, IMAGE_MIME_BY_EXT, VIDEO_MIME_BY_EXT, IMAGE_EXTENSIONS, VIDEO_EXTENSIONS, MAX_IMAGE_BYTES, MAX_VIDEO_BYTES, AGENT_BROWSER_MENTION, LocalMediaReader, SessionOpenRefusal, JsonRpcError, ACP_PROTOCOL_VERSION, ACP_ERROR, STDERR_TAIL_LINES, RESULT_EXIT_GRACE_MS, PerTurnSession;
|
|
25189
|
-
var
|
|
25190
|
-
"../agent-core/dist/chunk-
|
|
25161
|
+
var init_chunk_X5JKSBTB = __esm({
|
|
25162
|
+
"../agent-core/dist/chunk-X5JKSBTB.js"() {
|
|
25191
25163
|
"use strict";
|
|
25192
|
-
|
|
25164
|
+
init_chunk_UGRKZTAD();
|
|
25193
25165
|
init_chunk_R32NAS3B();
|
|
25194
25166
|
init_chunk_NDAB5G24();
|
|
25195
25167
|
init_chunk_YXWJW7I5();
|
|
@@ -25653,7 +25625,7 @@ var init_chunk_J2KTV5FP = __esm({
|
|
|
25653
25625
|
}
|
|
25654
25626
|
});
|
|
25655
25627
|
|
|
25656
|
-
// ../agent-core/dist/chunk-
|
|
25628
|
+
// ../agent-core/dist/chunk-6WN2R725.js
|
|
25657
25629
|
function truncate(value2, limit) {
|
|
25658
25630
|
const normalized2 = Array.from(value2, (character) => {
|
|
25659
25631
|
const code = character.charCodeAt(0);
|
|
@@ -25924,7 +25896,7 @@ Prefer relative paths and keep your work scoped to this project.` : void 0;
|
|
|
25924
25896
|
]),
|
|
25925
25897
|
append: present([
|
|
25926
25898
|
ALAN_PLATFORM_TOOL_ROUTING_PROMPT,
|
|
25927
|
-
spec.contextGraphEnabled ===
|
|
25899
|
+
spec.contextGraphEnabled === true ? ALAN_CONTEXT_SEARCH_PROMPT : void 0,
|
|
25928
25900
|
overlay
|
|
25929
25901
|
])
|
|
25930
25902
|
};
|
|
@@ -25980,8 +25952,8 @@ ${body}` : body;
|
|
|
25980
25952
|
return spec.mode === "plan" ? planModePrefix(prefixed) : prefixed;
|
|
25981
25953
|
}
|
|
25982
25954
|
var MAX_PARSED_ATTACHMENTS, MAX_PARSED_ATTACHMENT_CHARS, MAX_METADATA_CHARS, UNAVAILABLE, READ_ONLY_MODES, AGENT_MODES;
|
|
25983
|
-
var
|
|
25984
|
-
"../agent-core/dist/chunk-
|
|
25955
|
+
var init_chunk_6WN2R725 = __esm({
|
|
25956
|
+
"../agent-core/dist/chunk-6WN2R725.js"() {
|
|
25985
25957
|
"use strict";
|
|
25986
25958
|
init_agent2();
|
|
25987
25959
|
MAX_PARSED_ATTACHMENTS = 3;
|
|
@@ -27244,13 +27216,13 @@ var import_crypto6, import_fs5, import_path5, import_crypto7, import_promises30,
|
|
|
27244
27216
|
var init_claude = __esm({
|
|
27245
27217
|
"../agent-core/dist/providers/claude.js"() {
|
|
27246
27218
|
"use strict";
|
|
27247
|
-
|
|
27248
|
-
|
|
27249
|
-
|
|
27219
|
+
init_chunk_DALFHI4B();
|
|
27220
|
+
init_chunk_X5JKSBTB();
|
|
27221
|
+
init_chunk_UGRKZTAD();
|
|
27250
27222
|
init_chunk_R32NAS3B();
|
|
27251
27223
|
init_chunk_J2KTV5FP();
|
|
27252
27224
|
init_chunk_NDAB5G24();
|
|
27253
|
-
|
|
27225
|
+
init_chunk_6WN2R725();
|
|
27254
27226
|
init_chunk_YXWJW7I5();
|
|
27255
27227
|
init_effort();
|
|
27256
27228
|
import_crypto6 = require("crypto");
|
|
@@ -28554,7 +28526,7 @@ function basenameOf(path4) {
|
|
|
28554
28526
|
return path4.split(/[\\/]/).at(-1) ?? "";
|
|
28555
28527
|
}
|
|
28556
28528
|
function mayMatter(line) {
|
|
28557
|
-
return line.includes("image_gen")
|
|
28529
|
+
return line.includes("image_gen");
|
|
28558
28530
|
}
|
|
28559
28531
|
function imageKey(update) {
|
|
28560
28532
|
if (update.sessionUpdate !== "_alan/generated_image") return void 0;
|
|
@@ -30016,17 +29988,17 @@ function codexTurnInput(run2, context) {
|
|
|
30016
29988
|
...images.length ? { imagePaths: images.map((image) => image.path) } : {}
|
|
30017
29989
|
};
|
|
30018
29990
|
}
|
|
30019
|
-
var import_fs6, import_path6, import_crypto8, import_crypto9, import_crypto10, TokenRefresher, MCP_STARTUP_TIMEOUT_SEC, FIELD_TYPES, YES_NO, ACCEPT_DECLINE, MAX_INLINE_GENERATED_IMAGE_BYTES, PNG_SIGNATURE, JPEG_NON_FRAME_MARKERS, IMAGE_GEN_CALL, PROMPT_LITERAL,
|
|
29991
|
+
var import_fs6, import_path6, import_crypto8, import_crypto9, import_crypto10, TokenRefresher, MCP_STARTUP_TIMEOUT_SEC, FIELD_TYPES, YES_NO, ACCEPT_DECLINE, MAX_INLINE_GENERATED_IMAGE_BYTES, PNG_SIGNATURE, JPEG_NON_FRAME_MARKERS, IMAGE_GEN_CALL, PROMPT_LITERAL, RELOCATE_EVERY_MS, CodexImageGenerationFold, CodexRolloutImages, USER_INPUT_METHOD, PERMISSIONS_METHOD, ELICITATION_METHOD, COMMAND_OR_FILE, LEGACY, DECISIONS, COORDINATION_TOOLS, SETTLED_AGENT, STATUS, CHANGE_OPERATIONS, SILENT_ON_START, IGNORED_ITEMS, PLAN_STATUS, WORKER_LIFECYCLE, INFO_KINDS, SILENT, CodexTurn, STDERR_TAIL_LINES3, MAX_BETWEEN_UPDATES, UNSUPPORTED_REQUEST, DECLINED_ELICITATION, IMAGE_CATCH_UP_MS, IMAGE_POLL_MS, CodexSession, CODEX_MIN_VERSION, CODEX_REQUIREMENT, CODEX_TESTED_LINE, DEFAULTS2, CLIENT_INFO, STATUS2, EXITED_WITHOUT_RESPONSE, CodexExecTurn, DEFAULTS22, CodexExecSession, INJECTED_USER_PREFIXES, SHELL_TOOL_NAMES, ANNOUNCING_ITEM_TYPES, OUTPUT_MARKER, OPEN_PAGE_ACTIONS, FIND_IN_PAGE_ACTIONS, FILE_OPERATIONS, UNDERSTOOD_ITEM_TYPES, PRELUDE_TYPES2, PRELUDE_EVENTS, codexRolloutFile;
|
|
30020
29992
|
var init_codex = __esm({
|
|
30021
29993
|
"../agent-core/dist/providers/codex.js"() {
|
|
30022
29994
|
"use strict";
|
|
30023
|
-
|
|
30024
|
-
|
|
30025
|
-
|
|
29995
|
+
init_chunk_DALFHI4B();
|
|
29996
|
+
init_chunk_X5JKSBTB();
|
|
29997
|
+
init_chunk_UGRKZTAD();
|
|
30026
29998
|
init_chunk_R32NAS3B();
|
|
30027
29999
|
init_chunk_J2KTV5FP();
|
|
30028
30000
|
init_chunk_NDAB5G24();
|
|
30029
|
-
|
|
30001
|
+
init_chunk_6WN2R725();
|
|
30030
30002
|
init_chunk_YXWJW7I5();
|
|
30031
30003
|
import_fs6 = require("fs");
|
|
30032
30004
|
import_path6 = require("path");
|
|
@@ -30080,19 +30052,17 @@ var init_codex = __esm({
|
|
|
30080
30052
|
JPEG_NON_FRAME_MARKERS = /* @__PURE__ */ new Set([196, 200, 204]);
|
|
30081
30053
|
IMAGE_GEN_CALL = /\bimage_gen\w*\s*\(/;
|
|
30082
30054
|
PROMPT_LITERAL = /\bprompt\s*:\s*("(?:[^"\\]|\\.)*")/;
|
|
30083
|
-
TURN_END_EVENTS = /* @__PURE__ */ new Set(["task_complete", "turn_aborted"]);
|
|
30084
30055
|
RELOCATE_EVERY_MS = 1e3;
|
|
30085
30056
|
CodexImageGenerationFold = class {
|
|
30086
30057
|
#clock;
|
|
30087
30058
|
#pending = [];
|
|
30088
30059
|
#updates = [];
|
|
30089
|
-
#turnEnded = false;
|
|
30090
30060
|
constructor(clock) {
|
|
30091
30061
|
this.#clock = clock;
|
|
30092
30062
|
}
|
|
30093
|
-
/** A call is still waiting for its image
|
|
30063
|
+
/** A call is still waiting for its image. */
|
|
30094
30064
|
get waiting() {
|
|
30095
|
-
return this.#pending.length > 0
|
|
30065
|
+
return this.#pending.length > 0;
|
|
30096
30066
|
}
|
|
30097
30067
|
foldLine(text2) {
|
|
30098
30068
|
if (!mayMatter(text2)) return;
|
|
@@ -30115,7 +30085,6 @@ var init_codex = __esm({
|
|
|
30115
30085
|
}
|
|
30116
30086
|
if (entryType !== "event_msg") return;
|
|
30117
30087
|
const type = asString(payload.type);
|
|
30118
|
-
if (TURN_END_EVENTS.has(type)) this.#turnEnded = true;
|
|
30119
30088
|
if (type === "image_generation_end") {
|
|
30120
30089
|
this.#finish(payload, ts);
|
|
30121
30090
|
return;
|
|
@@ -30199,7 +30168,7 @@ var init_codex = __esm({
|
|
|
30199
30168
|
settle() {
|
|
30200
30169
|
return [...this.drain(), ...this.#fold.settlePending()];
|
|
30201
30170
|
}
|
|
30202
|
-
/** Waits, up to `ms`, for
|
|
30171
|
+
/** Waits, up to `ms`, for pending images. A prior turn's end can trail this turn's start. */
|
|
30203
30172
|
async catchUp(ms, pollMs) {
|
|
30204
30173
|
const updates = this.drain();
|
|
30205
30174
|
const deadline = this.#clock.monotonic() + ms;
|
|
@@ -41261,8 +41230,8 @@ var require_tar_stream = __commonJS({
|
|
|
41261
41230
|
var init_dist = __esm({
|
|
41262
41231
|
"../agent-core/dist/index.js"() {
|
|
41263
41232
|
"use strict";
|
|
41264
|
-
|
|
41265
|
-
|
|
41233
|
+
init_chunk_X5JKSBTB();
|
|
41234
|
+
init_chunk_UGRKZTAD();
|
|
41266
41235
|
init_chunk_R32NAS3B();
|
|
41267
41236
|
init_chunk_NDAB5G24();
|
|
41268
41237
|
init_chunk_YXWJW7I5();
|
|
@@ -42008,12 +41977,12 @@ var import_promises46, import_path9, import_crypto12, import_promises47, CURSOR_
|
|
|
42008
41977
|
var init_acp3 = __esm({
|
|
42009
41978
|
"../agent-core/dist/providers/acp.js"() {
|
|
42010
41979
|
"use strict";
|
|
42011
|
-
|
|
42012
|
-
|
|
41980
|
+
init_chunk_X5JKSBTB();
|
|
41981
|
+
init_chunk_UGRKZTAD();
|
|
42013
41982
|
init_chunk_R32NAS3B();
|
|
42014
41983
|
init_chunk_J2KTV5FP();
|
|
42015
41984
|
init_chunk_NDAB5G24();
|
|
42016
|
-
|
|
41985
|
+
init_chunk_6WN2R725();
|
|
42017
41986
|
init_chunk_YXWJW7I5();
|
|
42018
41987
|
import_promises46 = require("fs/promises");
|
|
42019
41988
|
import_path9 = require("path");
|
|
@@ -43672,12 +43641,12 @@ var import_http10, import_crypto13, import_path10, import_url2, import_crypto14,
|
|
|
43672
43641
|
var init_opencode = __esm({
|
|
43673
43642
|
"../agent-core/dist/providers/opencode.js"() {
|
|
43674
43643
|
"use strict";
|
|
43675
|
-
|
|
43676
|
-
|
|
43644
|
+
init_chunk_X5JKSBTB();
|
|
43645
|
+
init_chunk_UGRKZTAD();
|
|
43677
43646
|
init_chunk_R32NAS3B();
|
|
43678
43647
|
init_chunk_J2KTV5FP();
|
|
43679
43648
|
init_chunk_NDAB5G24();
|
|
43680
|
-
|
|
43649
|
+
init_chunk_6WN2R725();
|
|
43681
43650
|
init_chunk_YXWJW7I5();
|
|
43682
43651
|
import_http10 = require("http");
|
|
43683
43652
|
init_runtime_v2();
|
|
@@ -45431,12 +45400,12 @@ var import_crypto15, import_promises48, FACTORY_API_VERSION, FACTORY_PROTOCOL_VE
|
|
|
45431
45400
|
var init_droid = __esm({
|
|
45432
45401
|
"../agent-core/dist/providers/droid.js"() {
|
|
45433
45402
|
"use strict";
|
|
45434
|
-
|
|
45435
|
-
|
|
45403
|
+
init_chunk_X5JKSBTB();
|
|
45404
|
+
init_chunk_UGRKZTAD();
|
|
45436
45405
|
init_chunk_R32NAS3B();
|
|
45437
45406
|
init_chunk_J2KTV5FP();
|
|
45438
45407
|
init_chunk_NDAB5G24();
|
|
45439
|
-
|
|
45408
|
+
init_chunk_6WN2R725();
|
|
45440
45409
|
init_chunk_YXWJW7I5();
|
|
45441
45410
|
init_runtime_v2();
|
|
45442
45411
|
import_crypto15 = require("crypto");
|
|
@@ -46500,12 +46469,12 @@ var import_fs8, import_path11, import_path12, import_url3, import_crypto16, NO_A
|
|
|
46500
46469
|
var init_antigravity = __esm({
|
|
46501
46470
|
"../agent-core/dist/providers/antigravity.js"() {
|
|
46502
46471
|
"use strict";
|
|
46503
|
-
|
|
46504
|
-
|
|
46505
|
-
|
|
46472
|
+
init_chunk_DALFHI4B();
|
|
46473
|
+
init_chunk_X5JKSBTB();
|
|
46474
|
+
init_chunk_UGRKZTAD();
|
|
46506
46475
|
init_chunk_R32NAS3B();
|
|
46507
46476
|
init_chunk_NDAB5G24();
|
|
46508
|
-
|
|
46477
|
+
init_chunk_6WN2R725();
|
|
46509
46478
|
init_chunk_YXWJW7I5();
|
|
46510
46479
|
import_fs8 = require("fs");
|
|
46511
46480
|
import_path11 = require("path");
|
|
@@ -47185,12 +47154,12 @@ var import_promises49, import_path13, import_crypto17, COMMAND_CODE_GRAMMAR_NAME
|
|
|
47185
47154
|
var init_command_code = __esm({
|
|
47186
47155
|
"../agent-core/dist/providers/command-code.js"() {
|
|
47187
47156
|
"use strict";
|
|
47188
|
-
|
|
47189
|
-
|
|
47157
|
+
init_chunk_X5JKSBTB();
|
|
47158
|
+
init_chunk_UGRKZTAD();
|
|
47190
47159
|
init_chunk_R32NAS3B();
|
|
47191
47160
|
init_chunk_J2KTV5FP();
|
|
47192
47161
|
init_chunk_NDAB5G24();
|
|
47193
|
-
|
|
47162
|
+
init_chunk_6WN2R725();
|
|
47194
47163
|
init_chunk_YXWJW7I5();
|
|
47195
47164
|
import_promises49 = require("fs/promises");
|
|
47196
47165
|
import_path13 = require("path");
|
|
@@ -52385,7 +52354,7 @@ var require_websocket_server = __commonJS({
|
|
|
52385
52354
|
// package.json
|
|
52386
52355
|
var package_default = {
|
|
52387
52356
|
name: "@alan-ai-hq/agent-manager",
|
|
52388
|
-
version: "0.1.
|
|
52357
|
+
version: "0.1.131",
|
|
52389
52358
|
private: true,
|
|
52390
52359
|
type: "module",
|
|
52391
52360
|
description: "Alan machine runtime (alan-agent): identity, link, reconciler, session holders, run log, uploader, local API",
|
|
@@ -65129,10 +65098,6 @@ async function runWithInputs({ spec, leaseTargets, skills }, context, sink, sign
|
|
|
65129
65098
|
_promise2 && await _promise2;
|
|
65130
65099
|
}
|
|
65131
65100
|
}
|
|
65132
|
-
function recordRelevantContext(spec, append) {
|
|
65133
|
-
if (spec.relevantContext === void 0) return;
|
|
65134
|
-
append(fitForRunLog(contextRecallUpdate(`relevant-context-${spec.runId}`, spec.relevantContext)));
|
|
65135
|
-
}
|
|
65136
65101
|
async function admitAndRun(spec, context, append, sink, signal) {
|
|
65137
65102
|
if (context.workspace === void 0) {
|
|
65138
65103
|
if (spec.skillInvocations?.length) {
|
|
@@ -65142,7 +65107,6 @@ async function admitAndRun(spec, context, append, sink, signal) {
|
|
|
65142
65107
|
message: "Selected skills need this computer's skill sync, which this holder does not have."
|
|
65143
65108
|
};
|
|
65144
65109
|
}
|
|
65145
|
-
recordRelevantContext(spec, append);
|
|
65146
65110
|
return runWithInputs({ spec, leaseTargets: [], skills: [] }, context, sink, signal);
|
|
65147
65111
|
}
|
|
65148
65112
|
const admission = await admitRun(spec, context.workspace.admission, signal);
|
|
@@ -65151,7 +65115,6 @@ async function admitAndRun(spec, context, append, sink, signal) {
|
|
|
65151
65115
|
return { outcome: "rejected", rejection: admission.rejection, message: admission.message };
|
|
65152
65116
|
}
|
|
65153
65117
|
if (admission.relocated !== null) append(admission.relocated);
|
|
65154
|
-
recordRelevantContext(spec, append);
|
|
65155
65118
|
return runWithInputs(admission, context, sink, signal);
|
|
65156
65119
|
}
|
|
65157
65120
|
async function claimRun(spec, context) {
|
package/alan-holder.cjs
CHANGED
|
@@ -19993,7 +19993,7 @@ var init_ids = __esm({
|
|
|
19993
19993
|
function wire() {
|
|
19994
19994
|
return (schema) => schema;
|
|
19995
19995
|
}
|
|
19996
|
-
var canonicalUserMessageSchema, canonicalAssistantMessageSchema, externalMcpServerSchema, runAttachmentSchema, parsedAttachmentSchema, taskMetaSchema, pullRequestMetaSchema, agentUserIdentitySchema, workflowToolRefSchema,
|
|
19996
|
+
var canonicalUserMessageSchema, canonicalAssistantMessageSchema, externalMcpServerSchema, runAttachmentSchema, parsedAttachmentSchema, taskMetaSchema, pullRequestMetaSchema, agentUserIdentitySchema, workflowToolRefSchema, runPromptContextSchema;
|
|
19997
19997
|
var init_run_context = __esm({
|
|
19998
19998
|
"../shared/dist/runtime-v2/run-context.js"() {
|
|
19999
19999
|
"use strict";
|
|
@@ -20099,7 +20099,6 @@ var init_run_context = __esm({
|
|
|
20099
20099
|
}));
|
|
20100
20100
|
agentUserIdentitySchema = wire()(external_exports.object({ id: external_exports.string().min(1), name: external_exports.string().nullable(), email: external_exports.string() }));
|
|
20101
20101
|
workflowToolRefSchema = wire()(external_exports.object({ type: external_exports.string().min(1), id: external_exports.string().min(1) }));
|
|
20102
|
-
relevantContextRecallSchema = wire()(external_exports.object({ query: external_exports.string(), envelope: external_exports.record(external_exports.string(), external_exports.unknown()) }));
|
|
20103
20102
|
runPromptContextSchema = external_exports.object({
|
|
20104
20103
|
taskMeta: taskMetaSchema.optional(),
|
|
20105
20104
|
prMeta: pullRequestMetaSchema.optional(),
|
|
@@ -20353,10 +20352,8 @@ var init_desired_state = __esm({
|
|
|
20353
20352
|
promptContext: runPromptContextSchema.optional(),
|
|
20354
20353
|
/** Absent means entitled, so a spec from an older server keeps the code-index prompts. */
|
|
20355
20354
|
codeIndexEnabled: external_exports.boolean().optional(),
|
|
20356
|
-
/**
|
|
20355
|
+
/** Omitted by older servers; only an explicit entitlement enables context-search guidance. */
|
|
20357
20356
|
contextGraphEnabled: external_exports.boolean().optional(),
|
|
20358
|
-
/** Already appended to `content` as `<relevantContext>`; the holder records it as a recall. */
|
|
20359
|
-
relevantContext: relevantContextRecallSchema.optional(),
|
|
20360
20357
|
cloudEnvironmentId: external_exports.guid().optional(),
|
|
20361
20358
|
localRepoUrls: external_exports.array(external_exports.string().min(1)).optional()
|
|
20362
20359
|
// Never here: the provider API key. The holder fetches it per run (RUN_PROVIDER_CREDENTIAL_PATH).
|
|
@@ -21374,7 +21371,7 @@ Use these tools, in roughly this order of frequency:
|
|
|
21374
21371
|
4. \`get_session_context\` \u2014 check what a worker accomplished
|
|
21375
21372
|
5. \`update_task\` \u2014 keep status, priority, labels current
|
|
21376
21373
|
6. \`send_session_message\` / \`start_task_session\` \u2014 continue a specific session or force a new session only when needed
|
|
21377
|
-
7. \`list_sessions\` / \`find_records\` / \`
|
|
21374
|
+
7. \`list_sessions\` / \`find_records\` / \`search_code_context\` / \`Read\` / \`Glob\` / \`Grep\` \u2014 situational awareness (\`find_records\` locates canonical records; \`search_code_context\` handles source-code discovery; read exact cited sources before claiming authoritative details)
|
|
21378
21375
|
8. \`create_plan\` \u2014 document implementation plans and durable specs as artifacts
|
|
21379
21376
|
9. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21380
21377
|
|
|
@@ -21449,8 +21446,7 @@ You work on the Alan platform. The platform is where product truth lives: tasks,
|
|
|
21449
21446
|
| Scope, status, priority, or history of work | \`get_task\`, \`list_subtasks\`, \`list_tasks\` | \`git log\`, commit messages |
|
|
21450
21447
|
| What was decided and why | \`list_task_decisions\`, \`list_task_events\` | code comments, in-repo ADRs |
|
|
21451
21448
|
| What an agent did or is doing | \`list_sessions\`, \`get_session_context\` | \`git log\`, diffing the worktree |
|
|
21452
|
-
| Prior agent context | \`
|
|
21453
|
-
| Relevant non-code context with no exact source | \`search_context\` | guessing IDs, container tags, or provider filters |
|
|
21449
|
+
| Prior agent context | \`list_task_events\`, \`get_session_context\` | scratch files |
|
|
21454
21450
|
| Outputs of completed work | \`list_artifacts\`, \`get_artifact\` | build output, generated files |
|
|
21455
21451
|
| Where code lives or how it works | \`search_code_context\` first, then \`Read\` the cited files | \`Grep\`/\`Glob\` sweeps |
|
|
21456
21452
|
|
|
@@ -21479,8 +21475,7 @@ Use these tools, in roughly this order of frequency:
|
|
|
21479
21475
|
4. \`get_session_context\` / \`list_sessions\` \u2014 track progress
|
|
21480
21476
|
5. \`update_task\` \u2014 keep status and priority current
|
|
21481
21477
|
6. \`list_task_events\` / \`add_task_event\` \u2014 persist only high-signal human-readable decisions, learnings, checkpoints, and outcomes in the Agent Log
|
|
21482
|
-
7. \`
|
|
21483
|
-
8. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21478
|
+
7. \`add_task_comment\` \u2014 human-facing collaboration: answer questions, post explicit status updates, escalate blockers, or leave comments the user asked you to post. Do not use comments as running notes or context storage.
|
|
21484
21479
|
|
|
21485
21480
|
## How to think like a PM
|
|
21486
21481
|
|
|
@@ -21681,13 +21676,6 @@ var init_browser_surface = __esm({
|
|
|
21681
21676
|
}
|
|
21682
21677
|
});
|
|
21683
21678
|
|
|
21684
|
-
// ../shared/dist/agent/context-intent.js
|
|
21685
|
-
var init_context_intent = __esm({
|
|
21686
|
-
"../shared/dist/agent/context-intent.js"() {
|
|
21687
|
-
"use strict";
|
|
21688
|
-
}
|
|
21689
|
-
});
|
|
21690
|
-
|
|
21691
21679
|
// ../shared/dist/agent/gated-mcp-tools.js
|
|
21692
21680
|
var CODE_INDEX_MCP_TOOLS, CONTEXT_GRAPH_MCP_TOOLS, ENTITLEMENT_GATED_MCP_TOOLS;
|
|
21693
21681
|
var init_gated_mcp_tools = __esm({
|
|
@@ -21951,13 +21939,13 @@ var init_system_prompt = __esm({
|
|
|
21951
21939
|
|
|
21952
21940
|
The codebase records what the system does. It does not record why it is that way, what was ruled out, what an outside constraint forbids, or what someone was left owed. That record lives in \`search_context\` \u2014 this team's decisions, constraints, procedures, ownership, rejected approaches and unfinished work.
|
|
21953
21941
|
|
|
21942
|
+
Before answering or acting on a question about a past decision, ownership, history, or unfinished work whose exact source is unknown, call \`search_context\` first.
|
|
21943
|
+
|
|
21954
21944
|
So when a turn depends on something the repository cannot tell you \u2014 a value chosen rather than tuned, an approach that may already have been tried, a boundary another team owns, work someone else left half-done \u2014 recover it before you answer or act. Reading the code, or the document someone named, does not settle it: those answer a different question, and one turn can need both.
|
|
21955
21945
|
|
|
21956
21946
|
What comes back is the answer, not a step towards it. Carry its specifics into what you write or change \u2014 the value, the constraint, the reason, the person \u2014 and say plainly when the evidence contradicts what was asked for. Retrieving a decision and then producing work that ignores it is worse than never having searched, because it looks informed.
|
|
21957
21947
|
|
|
21958
|
-
Skip it when nothing team-specific is at stake: source-code questions, general knowledge, mechanical work fully specified in the request, or an exact ID already in hand
|
|
21959
|
-
|
|
21960
|
-
A \`relevantContext\` block, when present, is evidence already retrieved. Use it, do not search again for what it answers, and do not mention that it was loaded.`;
|
|
21948
|
+
Skip it when nothing team-specific is at stake: source-code questions, general knowledge, mechanical work fully specified in the request, or an exact ID already in hand.`;
|
|
21961
21949
|
ALAN_PLATFORM_TOOL_ROUTING_PROMPT = `## Alan platform tools
|
|
21962
21950
|
|
|
21963
21951
|
When an action reads, creates, changes, links, sends, or controls Alan-owned state \u2014 or uses a provider identity connected through Alan \u2014 use the matching Alan MCP tool. This applies whether the agent runs locally or in the cloud. Do not substitute a shell CLI, browser automation, raw HTTP, or a local file; those paths bypass Alan's identity, authorization, audit trail, and task linkage.
|
|
@@ -22000,8 +21988,6 @@ Team
|
|
|
22000
21988
|
|
|
22001
21989
|
${ALAN_PLATFORM_TOOL_ROUTING_PROMPT}
|
|
22002
21990
|
|
|
22003
|
-
${ALAN_CONTEXT_SEARCH_PROMPT}
|
|
22004
|
-
|
|
22005
21991
|
## Record & Entity Resolution (Tasks, PRs, Docs, Epics)
|
|
22006
21992
|
|
|
22007
21993
|
When the user refers to a specific task, pull request, document, or epic by human identifier (e.g. \`AL-2980\`, \`2980\`, \`#45\`), title, or topic phrase:
|
|
@@ -22144,7 +22130,6 @@ var init_agent2 = __esm({
|
|
|
22144
22130
|
init_agent_definitions();
|
|
22145
22131
|
init_attachment_mention();
|
|
22146
22132
|
init_browser_surface();
|
|
22147
|
-
init_context_intent();
|
|
22148
22133
|
init_gated_mcp_tools();
|
|
22149
22134
|
init_generated_images();
|
|
22150
22135
|
init_iframe_embeddability();
|
|
@@ -23711,7 +23696,7 @@ var init_acp = __esm({
|
|
|
23711
23696
|
}
|
|
23712
23697
|
});
|
|
23713
23698
|
|
|
23714
|
-
// ../agent-core/dist/chunk-
|
|
23699
|
+
// ../agent-core/dist/chunk-UGRKZTAD.js
|
|
23715
23700
|
function textBlock(text2) {
|
|
23716
23701
|
return { type: "text", text: text2 };
|
|
23717
23702
|
}
|
|
@@ -23739,18 +23724,6 @@ function noticeUpdate(severity, kind, title, description) {
|
|
|
23739
23724
|
_meta: { [NOTICE_KIND_META]: kind }
|
|
23740
23725
|
};
|
|
23741
23726
|
}
|
|
23742
|
-
function contextRecallUpdate(toolCallId, recall) {
|
|
23743
|
-
return {
|
|
23744
|
-
sessionUpdate: "tool_call_update",
|
|
23745
|
-
toolCallId,
|
|
23746
|
-
name: "search_context",
|
|
23747
|
-
kind: "search",
|
|
23748
|
-
status: "completed",
|
|
23749
|
-
rawInput: { query: recall.query },
|
|
23750
|
-
rawOutput: JSON.stringify(recall.envelope),
|
|
23751
|
-
_meta: { [CONTEXT_RECALL_META]: "prefetch" }
|
|
23752
|
-
};
|
|
23753
|
-
}
|
|
23754
23727
|
function usageUpdate(breakdown, fallbackModel = "") {
|
|
23755
23728
|
const used = (breakdown.inputTokens ?? 0) + (breakdown.outputTokens ?? 0) + (breakdown.cacheReadTokens ?? 0) + (breakdown.cacheCreationTokens ?? 0);
|
|
23756
23729
|
const model = breakdown.model || fallbackModel;
|
|
@@ -23953,9 +23926,9 @@ function withoutInlineMedia(update) {
|
|
|
23953
23926
|
...nextRawOutput === rawOutput ? {} : { rawOutput: nextRawOutput }
|
|
23954
23927
|
};
|
|
23955
23928
|
}
|
|
23956
|
-
var PROVIDER_PAYLOAD_META, TOOL_RESULT_ONLY_META, PARENT_TOOL_CALL_META, SUBAGENT_LAUNCHER_META, SUBAGENT_TASK_ID_META, SUBAGENT_OUTPUT_FILE_META, USAGE_META, TODOS_META, NOTICE_KIND_META,
|
|
23957
|
-
var
|
|
23958
|
-
"../agent-core/dist/chunk-
|
|
23929
|
+
var PROVIDER_PAYLOAD_META, TOOL_RESULT_ONLY_META, PARENT_TOOL_CALL_META, SUBAGENT_LAUNCHER_META, SUBAGENT_TASK_ID_META, SUBAGENT_OUTPUT_FILE_META, USAGE_META, TODOS_META, NOTICE_KIND_META, ASK_USER_QUESTIONS_META, USER_ANSWER_META, AWAITING_TOOL_CALLS_META, EXIT_PLAN_MODE_INPUT_META, BACKGROUND_TASK_META, TASK_PROGRESS_META, RATE_LIMIT_META, MODEL_META, TOOLS_META, SLASH_COMMANDS_META, TOOL_KIND_RULES, ANSWER_PREFIX, ACCEPT_WORDS, MIN_INLINE_MEDIA_CHARS, DATA_URL_PREFIX, BASE64_BODY;
|
|
23930
|
+
var init_chunk_UGRKZTAD = __esm({
|
|
23931
|
+
"../agent-core/dist/chunk-UGRKZTAD.js"() {
|
|
23959
23932
|
"use strict";
|
|
23960
23933
|
init_chunk_YXWJW7I5();
|
|
23961
23934
|
init_constants();
|
|
@@ -23969,7 +23942,6 @@ var init_chunk_OUQ7HMD3 = __esm({
|
|
|
23969
23942
|
USAGE_META = "alan.dev/usage";
|
|
23970
23943
|
TODOS_META = "alan.dev/todos";
|
|
23971
23944
|
NOTICE_KIND_META = "alan.dev/noticeKind";
|
|
23972
|
-
CONTEXT_RECALL_META = "alan.dev/contextRecall";
|
|
23973
23945
|
ASK_USER_QUESTIONS_META = "alan.dev/askUserQuestions";
|
|
23974
23946
|
USER_ANSWER_META = "alan.dev/userAnswer";
|
|
23975
23947
|
AWAITING_TOOL_CALLS_META = "alan.dev/awaitingToolCallIds";
|
|
@@ -24006,17 +23978,17 @@ var init_chunk_OUQ7HMD3 = __esm({
|
|
|
24006
23978
|
var init_acp2 = __esm({
|
|
24007
23979
|
"../agent-core/dist/acp.js"() {
|
|
24008
23980
|
"use strict";
|
|
24009
|
-
|
|
23981
|
+
init_chunk_UGRKZTAD();
|
|
24010
23982
|
init_chunk_YXWJW7I5();
|
|
24011
23983
|
}
|
|
24012
23984
|
});
|
|
24013
23985
|
|
|
24014
|
-
// ../agent-core/dist/chunk-
|
|
23986
|
+
// ../agent-core/dist/chunk-DALFHI4B.js
|
|
24015
23987
|
var import_fs3, NEWLINE2, TranscriptCursor, TranscriptLineLookup;
|
|
24016
|
-
var
|
|
24017
|
-
"../agent-core/dist/chunk-
|
|
23988
|
+
var init_chunk_DALFHI4B = __esm({
|
|
23989
|
+
"../agent-core/dist/chunk-DALFHI4B.js"() {
|
|
24018
23990
|
"use strict";
|
|
24019
|
-
|
|
23991
|
+
init_chunk_UGRKZTAD();
|
|
24020
23992
|
init_chunk_YXWJW7I5();
|
|
24021
23993
|
import_fs3 = require("fs");
|
|
24022
23994
|
NEWLINE2 = 10;
|
|
@@ -24516,7 +24488,7 @@ var init_chunk_R32NAS3B = __esm({
|
|
|
24516
24488
|
}
|
|
24517
24489
|
});
|
|
24518
24490
|
|
|
24519
|
-
// ../agent-core/dist/chunk-
|
|
24491
|
+
// ../agent-core/dist/chunk-X5JKSBTB.js
|
|
24520
24492
|
function collectStrings(value, out) {
|
|
24521
24493
|
if (typeof value === "string") out.push(value);
|
|
24522
24494
|
else if (Array.isArray(value)) for (const item of value) collectStrings(item, out);
|
|
@@ -24886,10 +24858,10 @@ function silentStartError(name, timeoutMs) {
|
|
|
24886
24858
|
};
|
|
24887
24859
|
}
|
|
24888
24860
|
var import_crypto3, import_fs4, import_path3, IMAGE_MIME_BY_EXT, VIDEO_MIME_BY_EXT, IMAGE_EXTENSIONS, VIDEO_EXTENSIONS, MAX_IMAGE_BYTES, MAX_VIDEO_BYTES, AGENT_BROWSER_MENTION, LocalMediaReader, SessionOpenRefusal, JsonRpcError, ACP_PROTOCOL_VERSION, ACP_ERROR, STDERR_TAIL_LINES, RESULT_EXIT_GRACE_MS, PerTurnSession;
|
|
24889
|
-
var
|
|
24890
|
-
"../agent-core/dist/chunk-
|
|
24861
|
+
var init_chunk_X5JKSBTB = __esm({
|
|
24862
|
+
"../agent-core/dist/chunk-X5JKSBTB.js"() {
|
|
24891
24863
|
"use strict";
|
|
24892
|
-
|
|
24864
|
+
init_chunk_UGRKZTAD();
|
|
24893
24865
|
init_chunk_R32NAS3B();
|
|
24894
24866
|
init_chunk_NDAB5G24();
|
|
24895
24867
|
init_chunk_YXWJW7I5();
|
|
@@ -25353,7 +25325,7 @@ var init_chunk_J2KTV5FP = __esm({
|
|
|
25353
25325
|
}
|
|
25354
25326
|
});
|
|
25355
25327
|
|
|
25356
|
-
// ../agent-core/dist/chunk-
|
|
25328
|
+
// ../agent-core/dist/chunk-6WN2R725.js
|
|
25357
25329
|
function truncate(value, limit) {
|
|
25358
25330
|
const normalized2 = Array.from(value, (character) => {
|
|
25359
25331
|
const code = character.charCodeAt(0);
|
|
@@ -25624,7 +25596,7 @@ Prefer relative paths and keep your work scoped to this project.` : void 0;
|
|
|
25624
25596
|
]),
|
|
25625
25597
|
append: present([
|
|
25626
25598
|
ALAN_PLATFORM_TOOL_ROUTING_PROMPT,
|
|
25627
|
-
spec.contextGraphEnabled ===
|
|
25599
|
+
spec.contextGraphEnabled === true ? ALAN_CONTEXT_SEARCH_PROMPT : void 0,
|
|
25628
25600
|
overlay
|
|
25629
25601
|
])
|
|
25630
25602
|
};
|
|
@@ -25680,8 +25652,8 @@ ${body}` : body;
|
|
|
25680
25652
|
return spec.mode === "plan" ? planModePrefix(prefixed) : prefixed;
|
|
25681
25653
|
}
|
|
25682
25654
|
var MAX_PARSED_ATTACHMENTS, MAX_PARSED_ATTACHMENT_CHARS, MAX_METADATA_CHARS, UNAVAILABLE, READ_ONLY_MODES, AGENT_MODES;
|
|
25683
|
-
var
|
|
25684
|
-
"../agent-core/dist/chunk-
|
|
25655
|
+
var init_chunk_6WN2R725 = __esm({
|
|
25656
|
+
"../agent-core/dist/chunk-6WN2R725.js"() {
|
|
25685
25657
|
"use strict";
|
|
25686
25658
|
init_agent2();
|
|
25687
25659
|
MAX_PARSED_ATTACHMENTS = 3;
|
|
@@ -26750,13 +26722,13 @@ var import_crypto6, import_fs5, import_path5, import_crypto7, import_promises13,
|
|
|
26750
26722
|
var init_claude = __esm({
|
|
26751
26723
|
"../agent-core/dist/providers/claude.js"() {
|
|
26752
26724
|
"use strict";
|
|
26753
|
-
|
|
26754
|
-
|
|
26755
|
-
|
|
26725
|
+
init_chunk_DALFHI4B();
|
|
26726
|
+
init_chunk_X5JKSBTB();
|
|
26727
|
+
init_chunk_UGRKZTAD();
|
|
26756
26728
|
init_chunk_R32NAS3B();
|
|
26757
26729
|
init_chunk_J2KTV5FP();
|
|
26758
26730
|
init_chunk_NDAB5G24();
|
|
26759
|
-
|
|
26731
|
+
init_chunk_6WN2R725();
|
|
26760
26732
|
init_chunk_YXWJW7I5();
|
|
26761
26733
|
init_effort();
|
|
26762
26734
|
import_crypto6 = require("crypto");
|
|
@@ -28037,7 +28009,7 @@ function basenameOf(path) {
|
|
|
28037
28009
|
return path.split(/[\\/]/).at(-1) ?? "";
|
|
28038
28010
|
}
|
|
28039
28011
|
function mayMatter(line) {
|
|
28040
|
-
return line.includes("image_gen")
|
|
28012
|
+
return line.includes("image_gen");
|
|
28041
28013
|
}
|
|
28042
28014
|
function imageKey(update) {
|
|
28043
28015
|
if (update.sessionUpdate !== "_alan/generated_image") return void 0;
|
|
@@ -28878,17 +28850,17 @@ function codexTurnInput(run, context) {
|
|
|
28878
28850
|
...images.length ? { imagePaths: images.map((image) => image.path) } : {}
|
|
28879
28851
|
};
|
|
28880
28852
|
}
|
|
28881
|
-
var import_fs6, import_path6, import_crypto8, import_crypto9, import_crypto10, TokenRefresher, MCP_STARTUP_TIMEOUT_SEC, FIELD_TYPES, YES_NO, ACCEPT_DECLINE, MAX_INLINE_GENERATED_IMAGE_BYTES, PNG_SIGNATURE, JPEG_NON_FRAME_MARKERS, IMAGE_GEN_CALL, PROMPT_LITERAL,
|
|
28853
|
+
var import_fs6, import_path6, import_crypto8, import_crypto9, import_crypto10, TokenRefresher, MCP_STARTUP_TIMEOUT_SEC, FIELD_TYPES, YES_NO, ACCEPT_DECLINE, MAX_INLINE_GENERATED_IMAGE_BYTES, PNG_SIGNATURE, JPEG_NON_FRAME_MARKERS, IMAGE_GEN_CALL, PROMPT_LITERAL, RELOCATE_EVERY_MS, CodexImageGenerationFold, CodexRolloutImages, USER_INPUT_METHOD, PERMISSIONS_METHOD, ELICITATION_METHOD, COMMAND_OR_FILE, LEGACY, DECISIONS, COORDINATION_TOOLS, SETTLED_AGENT, STATUS, CHANGE_OPERATIONS, SILENT_ON_START, IGNORED_ITEMS, PLAN_STATUS, WORKER_LIFECYCLE, INFO_KINDS, SILENT, CodexTurn, STDERR_TAIL_LINES3, MAX_BETWEEN_UPDATES, UNSUPPORTED_REQUEST, DECLINED_ELICITATION, IMAGE_CATCH_UP_MS, IMAGE_POLL_MS, CodexSession, CODEX_MIN_VERSION, CODEX_REQUIREMENT, CODEX_TESTED_LINE, DEFAULTS2, CLIENT_INFO, STATUS2, EXITED_WITHOUT_RESPONSE, CodexExecTurn, DEFAULTS22, CodexExecSession;
|
|
28882
28854
|
var init_codex = __esm({
|
|
28883
28855
|
"../agent-core/dist/providers/codex.js"() {
|
|
28884
28856
|
"use strict";
|
|
28885
|
-
|
|
28886
|
-
|
|
28887
|
-
|
|
28857
|
+
init_chunk_DALFHI4B();
|
|
28858
|
+
init_chunk_X5JKSBTB();
|
|
28859
|
+
init_chunk_UGRKZTAD();
|
|
28888
28860
|
init_chunk_R32NAS3B();
|
|
28889
28861
|
init_chunk_J2KTV5FP();
|
|
28890
28862
|
init_chunk_NDAB5G24();
|
|
28891
|
-
|
|
28863
|
+
init_chunk_6WN2R725();
|
|
28892
28864
|
init_chunk_YXWJW7I5();
|
|
28893
28865
|
import_fs6 = require("fs");
|
|
28894
28866
|
import_path6 = require("path");
|
|
@@ -28942,19 +28914,17 @@ var init_codex = __esm({
|
|
|
28942
28914
|
JPEG_NON_FRAME_MARKERS = /* @__PURE__ */ new Set([196, 200, 204]);
|
|
28943
28915
|
IMAGE_GEN_CALL = /\bimage_gen\w*\s*\(/;
|
|
28944
28916
|
PROMPT_LITERAL = /\bprompt\s*:\s*("(?:[^"\\]|\\.)*")/;
|
|
28945
|
-
TURN_END_EVENTS = /* @__PURE__ */ new Set(["task_complete", "turn_aborted"]);
|
|
28946
28917
|
RELOCATE_EVERY_MS = 1e3;
|
|
28947
28918
|
CodexImageGenerationFold = class {
|
|
28948
28919
|
#clock;
|
|
28949
28920
|
#pending = [];
|
|
28950
28921
|
#updates = [];
|
|
28951
|
-
#turnEnded = false;
|
|
28952
28922
|
constructor(clock) {
|
|
28953
28923
|
this.#clock = clock;
|
|
28954
28924
|
}
|
|
28955
|
-
/** A call is still waiting for its image
|
|
28925
|
+
/** A call is still waiting for its image. */
|
|
28956
28926
|
get waiting() {
|
|
28957
|
-
return this.#pending.length > 0
|
|
28927
|
+
return this.#pending.length > 0;
|
|
28958
28928
|
}
|
|
28959
28929
|
foldLine(text2) {
|
|
28960
28930
|
if (!mayMatter(text2)) return;
|
|
@@ -28977,7 +28947,6 @@ var init_codex = __esm({
|
|
|
28977
28947
|
}
|
|
28978
28948
|
if (entryType !== "event_msg") return;
|
|
28979
28949
|
const type = asString(payload.type);
|
|
28980
|
-
if (TURN_END_EVENTS.has(type)) this.#turnEnded = true;
|
|
28981
28950
|
if (type === "image_generation_end") {
|
|
28982
28951
|
this.#finish(payload, ts);
|
|
28983
28952
|
return;
|
|
@@ -29061,7 +29030,7 @@ var init_codex = __esm({
|
|
|
29061
29030
|
settle() {
|
|
29062
29031
|
return [...this.drain(), ...this.#fold.settlePending()];
|
|
29063
29032
|
}
|
|
29064
|
-
/** Waits, up to `ms`, for
|
|
29033
|
+
/** Waits, up to `ms`, for pending images. A prior turn's end can trail this turn's start. */
|
|
29065
29034
|
async catchUp(ms, pollMs) {
|
|
29066
29035
|
const updates = this.drain();
|
|
29067
29036
|
const deadline = this.#clock.monotonic() + ms;
|
|
@@ -37632,8 +37601,8 @@ var require_dist = __commonJS({
|
|
|
37632
37601
|
var init_dist = __esm({
|
|
37633
37602
|
"../agent-core/dist/index.js"() {
|
|
37634
37603
|
"use strict";
|
|
37635
|
-
|
|
37636
|
-
|
|
37604
|
+
init_chunk_X5JKSBTB();
|
|
37605
|
+
init_chunk_UGRKZTAD();
|
|
37637
37606
|
init_chunk_R32NAS3B();
|
|
37638
37607
|
init_chunk_NDAB5G24();
|
|
37639
37608
|
init_chunk_YXWJW7I5();
|
|
@@ -38379,12 +38348,12 @@ var import_promises20, import_path9, import_crypto12, import_promises21, CURSOR_
|
|
|
38379
38348
|
var init_acp3 = __esm({
|
|
38380
38349
|
"../agent-core/dist/providers/acp.js"() {
|
|
38381
38350
|
"use strict";
|
|
38382
|
-
|
|
38383
|
-
|
|
38351
|
+
init_chunk_X5JKSBTB();
|
|
38352
|
+
init_chunk_UGRKZTAD();
|
|
38384
38353
|
init_chunk_R32NAS3B();
|
|
38385
38354
|
init_chunk_J2KTV5FP();
|
|
38386
38355
|
init_chunk_NDAB5G24();
|
|
38387
|
-
|
|
38356
|
+
init_chunk_6WN2R725();
|
|
38388
38357
|
init_chunk_YXWJW7I5();
|
|
38389
38358
|
import_promises20 = require("fs/promises");
|
|
38390
38359
|
import_path9 = require("path");
|
|
@@ -40043,12 +40012,12 @@ var import_http4, import_crypto13, import_path10, import_url2, import_crypto14,
|
|
|
40043
40012
|
var init_opencode = __esm({
|
|
40044
40013
|
"../agent-core/dist/providers/opencode.js"() {
|
|
40045
40014
|
"use strict";
|
|
40046
|
-
|
|
40047
|
-
|
|
40015
|
+
init_chunk_X5JKSBTB();
|
|
40016
|
+
init_chunk_UGRKZTAD();
|
|
40048
40017
|
init_chunk_R32NAS3B();
|
|
40049
40018
|
init_chunk_J2KTV5FP();
|
|
40050
40019
|
init_chunk_NDAB5G24();
|
|
40051
|
-
|
|
40020
|
+
init_chunk_6WN2R725();
|
|
40052
40021
|
init_chunk_YXWJW7I5();
|
|
40053
40022
|
import_http4 = require("http");
|
|
40054
40023
|
init_runtime_v2();
|
|
@@ -41802,12 +41771,12 @@ var import_crypto15, import_promises22, FACTORY_API_VERSION, FACTORY_PROTOCOL_VE
|
|
|
41802
41771
|
var init_droid = __esm({
|
|
41803
41772
|
"../agent-core/dist/providers/droid.js"() {
|
|
41804
41773
|
"use strict";
|
|
41805
|
-
|
|
41806
|
-
|
|
41774
|
+
init_chunk_X5JKSBTB();
|
|
41775
|
+
init_chunk_UGRKZTAD();
|
|
41807
41776
|
init_chunk_R32NAS3B();
|
|
41808
41777
|
init_chunk_J2KTV5FP();
|
|
41809
41778
|
init_chunk_NDAB5G24();
|
|
41810
|
-
|
|
41779
|
+
init_chunk_6WN2R725();
|
|
41811
41780
|
init_chunk_YXWJW7I5();
|
|
41812
41781
|
init_runtime_v2();
|
|
41813
41782
|
import_crypto15 = require("crypto");
|
|
@@ -42871,12 +42840,12 @@ var import_fs8, import_path11, import_path12, import_url3, import_crypto16, NO_A
|
|
|
42871
42840
|
var init_antigravity = __esm({
|
|
42872
42841
|
"../agent-core/dist/providers/antigravity.js"() {
|
|
42873
42842
|
"use strict";
|
|
42874
|
-
|
|
42875
|
-
|
|
42876
|
-
|
|
42843
|
+
init_chunk_DALFHI4B();
|
|
42844
|
+
init_chunk_X5JKSBTB();
|
|
42845
|
+
init_chunk_UGRKZTAD();
|
|
42877
42846
|
init_chunk_R32NAS3B();
|
|
42878
42847
|
init_chunk_NDAB5G24();
|
|
42879
|
-
|
|
42848
|
+
init_chunk_6WN2R725();
|
|
42880
42849
|
init_chunk_YXWJW7I5();
|
|
42881
42850
|
import_fs8 = require("fs");
|
|
42882
42851
|
import_path11 = require("path");
|
|
@@ -43556,12 +43525,12 @@ var import_promises23, import_path13, import_crypto17, COMMAND_CODE_GRAMMAR_NAME
|
|
|
43556
43525
|
var init_command_code = __esm({
|
|
43557
43526
|
"../agent-core/dist/providers/command-code.js"() {
|
|
43558
43527
|
"use strict";
|
|
43559
|
-
|
|
43560
|
-
|
|
43528
|
+
init_chunk_X5JKSBTB();
|
|
43529
|
+
init_chunk_UGRKZTAD();
|
|
43561
43530
|
init_chunk_R32NAS3B();
|
|
43562
43531
|
init_chunk_J2KTV5FP();
|
|
43563
43532
|
init_chunk_NDAB5G24();
|
|
43564
|
-
|
|
43533
|
+
init_chunk_6WN2R725();
|
|
43565
43534
|
init_chunk_YXWJW7I5();
|
|
43566
43535
|
import_promises23 = require("fs/promises");
|
|
43567
43536
|
import_path13 = require("path");
|
|
@@ -47097,10 +47066,6 @@ async function runWithInputs({ spec, leaseTargets, skills }, context, sink, sign
|
|
|
47097
47066
|
_promise2 && await _promise2;
|
|
47098
47067
|
}
|
|
47099
47068
|
}
|
|
47100
|
-
function recordRelevantContext(spec, append) {
|
|
47101
|
-
if (spec.relevantContext === void 0) return;
|
|
47102
|
-
append(fitForRunLog(contextRecallUpdate(`relevant-context-${spec.runId}`, spec.relevantContext)));
|
|
47103
|
-
}
|
|
47104
47069
|
async function admitAndRun(spec, context, append, sink, signal) {
|
|
47105
47070
|
if (context.workspace === void 0) {
|
|
47106
47071
|
if (spec.skillInvocations?.length) {
|
|
@@ -47110,7 +47075,6 @@ async function admitAndRun(spec, context, append, sink, signal) {
|
|
|
47110
47075
|
message: "Selected skills need this computer's skill sync, which this holder does not have."
|
|
47111
47076
|
};
|
|
47112
47077
|
}
|
|
47113
|
-
recordRelevantContext(spec, append);
|
|
47114
47078
|
return runWithInputs({ spec, leaseTargets: [], skills: [] }, context, sink, signal);
|
|
47115
47079
|
}
|
|
47116
47080
|
const admission = await admitRun(spec, context.workspace.admission, signal);
|
|
@@ -47119,7 +47083,6 @@ async function admitAndRun(spec, context, append, sink, signal) {
|
|
|
47119
47083
|
return { outcome: "rejected", rejection: admission.rejection, message: admission.message };
|
|
47120
47084
|
}
|
|
47121
47085
|
if (admission.relocated !== null) append(admission.relocated);
|
|
47122
|
-
recordRelevantContext(spec, append);
|
|
47123
47086
|
return runWithInputs(admission, context, sink, signal);
|
|
47124
47087
|
}
|
|
47125
47088
|
async function claimRun(spec, context) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alan-ai-hq/agent-manager-linux-arm64",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.131",
|
|
4
4
|
"description": "Alan machine runtime (alan-agent) for one platform: the official Node.js binary, the runtime bundle and its launcher. Installed by @alan-ai-hq/agent-manager.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"homepage": "https://tryalan.ai",
|