pulseed 0.4.19 → 0.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/README.md +34 -27
- package/dist/adapters/types/mcp.d.ts +6 -6
- package/dist/base/config/global-config.d.ts +4 -4
- package/dist/base/llm/codex-llm-client.d.ts +8 -2
- package/dist/base/llm/codex-llm-client.d.ts.map +1 -1
- package/dist/base/llm/codex-llm-client.js +75 -30
- package/dist/base/llm/codex-llm-client.js.map +1 -1
- package/dist/base/llm/provider-config.d.ts +14 -0
- package/dist/base/llm/provider-config.d.ts.map +1 -1
- package/dist/base/llm/provider-config.js +56 -2
- package/dist/base/llm/provider-config.js.map +1 -1
- package/dist/base/llm/provider-factory.d.ts.map +1 -1
- package/dist/base/llm/provider-factory.js +3 -0
- package/dist/base/llm/provider-factory.js.map +1 -1
- package/dist/grounding/contracts.d.ts +160 -0
- package/dist/grounding/contracts.d.ts.map +1 -0
- package/dist/grounding/contracts.js +2 -0
- package/dist/grounding/contracts.js.map +1 -0
- package/dist/grounding/gateway.d.ts +12 -0
- package/dist/grounding/gateway.d.ts.map +1 -0
- package/dist/grounding/gateway.js +116 -0
- package/dist/grounding/gateway.js.map +1 -0
- package/dist/grounding/profiles.d.ts +4 -0
- package/dist/grounding/profiles.d.ts.map +1 -0
- package/dist/grounding/profiles.js +159 -0
- package/dist/grounding/profiles.js.map +1 -0
- package/dist/grounding/providers/agents-provider.d.ts +14 -0
- package/dist/grounding/providers/agents-provider.d.ts.map +1 -0
- package/dist/grounding/providers/agents-provider.js +129 -0
- package/dist/grounding/providers/agents-provider.js.map +1 -0
- package/dist/grounding/providers/goal-state-provider.d.ts +3 -0
- package/dist/grounding/providers/goal-state-provider.d.ts.map +1 -0
- package/dist/grounding/providers/goal-state-provider.js +34 -0
- package/dist/grounding/providers/goal-state-provider.js.map +1 -0
- package/dist/grounding/providers/helpers.d.ts +13 -0
- package/dist/grounding/providers/helpers.d.ts.map +1 -0
- package/dist/grounding/providers/helpers.js +93 -0
- package/dist/grounding/providers/helpers.js.map +1 -0
- package/dist/grounding/providers/knowledge-provider.d.ts +3 -0
- package/dist/grounding/providers/knowledge-provider.d.ts.map +1 -0
- package/dist/grounding/providers/knowledge-provider.js +49 -0
- package/dist/grounding/providers/knowledge-provider.js.map +1 -0
- package/dist/grounding/providers/lessons-provider.d.ts +3 -0
- package/dist/grounding/providers/lessons-provider.d.ts.map +1 -0
- package/dist/grounding/providers/lessons-provider.js +36 -0
- package/dist/grounding/providers/lessons-provider.js.map +1 -0
- package/dist/grounding/providers/plugins-provider.d.ts +3 -0
- package/dist/grounding/providers/plugins-provider.d.ts.map +1 -0
- package/dist/grounding/providers/plugins-provider.js +35 -0
- package/dist/grounding/providers/plugins-provider.js.map +1 -0
- package/dist/grounding/providers/progress-history-provider.d.ts +3 -0
- package/dist/grounding/providers/progress-history-provider.d.ts.map +1 -0
- package/dist/grounding/providers/progress-history-provider.js +30 -0
- package/dist/grounding/providers/progress-history-provider.js.map +1 -0
- package/dist/grounding/providers/provider-state-provider.d.ts +3 -0
- package/dist/grounding/providers/provider-state-provider.d.ts.map +1 -0
- package/dist/grounding/providers/provider-state-provider.js +32 -0
- package/dist/grounding/providers/provider-state-provider.js.map +1 -0
- package/dist/grounding/providers/session-history-provider.d.ts +3 -0
- package/dist/grounding/providers/session-history-provider.d.ts.map +1 -0
- package/dist/grounding/providers/session-history-provider.js +72 -0
- package/dist/grounding/providers/session-history-provider.js.map +1 -0
- package/dist/grounding/providers/soil-provider.d.ts +3 -0
- package/dist/grounding/providers/soil-provider.d.ts.map +1 -0
- package/dist/grounding/providers/soil-provider.js +70 -0
- package/dist/grounding/providers/soil-provider.js.map +1 -0
- package/dist/grounding/providers/static-policy-provider.d.ts +8 -0
- package/dist/grounding/providers/static-policy-provider.d.ts.map +1 -0
- package/dist/grounding/providers/static-policy-provider.js +81 -0
- package/dist/grounding/providers/static-policy-provider.js.map +1 -0
- package/dist/grounding/providers/task-state-provider.d.ts +3 -0
- package/dist/grounding/providers/task-state-provider.d.ts.map +1 -0
- package/dist/grounding/providers/task-state-provider.js +55 -0
- package/dist/grounding/providers/task-state-provider.js.map +1 -0
- package/dist/grounding/providers/trust-state-provider.d.ts +3 -0
- package/dist/grounding/providers/trust-state-provider.d.ts.map +1 -0
- package/dist/grounding/providers/trust-state-provider.js +25 -0
- package/dist/grounding/providers/trust-state-provider.js.map +1 -0
- package/dist/grounding/providers/workspace-facts-provider.d.ts +3 -0
- package/dist/grounding/providers/workspace-facts-provider.d.ts.map +1 -0
- package/dist/grounding/providers/workspace-facts-provider.js +22 -0
- package/dist/grounding/providers/workspace-facts-provider.js.map +1 -0
- package/dist/grounding/renderers/debug-renderer.d.ts +3 -0
- package/dist/grounding/renderers/debug-renderer.d.ts.map +1 -0
- package/dist/grounding/renderers/debug-renderer.js +11 -0
- package/dist/grounding/renderers/debug-renderer.js.map +1 -0
- package/dist/grounding/renderers/prompt-renderer.d.ts +10 -0
- package/dist/grounding/renderers/prompt-renderer.d.ts.map +1 -0
- package/dist/grounding/renderers/prompt-renderer.js +23 -0
- package/dist/grounding/renderers/prompt-renderer.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/interface/chat/chat-event-state.d.ts +1 -0
- package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
- package/dist/interface/chat/chat-event-state.js +12 -2
- package/dist/interface/chat/chat-event-state.js.map +1 -1
- package/dist/interface/chat/chat-runner.d.ts +18 -6
- package/dist/interface/chat/chat-runner.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner.js +331 -148
- package/dist/interface/chat/chat-runner.js.map +1 -1
- package/dist/interface/chat/cross-platform-session-global.d.ts +5 -0
- package/dist/interface/chat/cross-platform-session-global.d.ts.map +1 -0
- package/dist/interface/chat/cross-platform-session-global.js +17 -0
- package/dist/interface/chat/cross-platform-session-global.js.map +1 -0
- package/dist/interface/chat/cross-platform-session.d.ts +22 -0
- package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
- package/dist/interface/chat/cross-platform-session.js +192 -61
- package/dist/interface/chat/cross-platform-session.js.map +1 -1
- package/dist/interface/chat/event-subscriber.d.ts +14 -0
- package/dist/interface/chat/event-subscriber.d.ts.map +1 -1
- package/dist/interface/chat/event-subscriber.js +138 -28
- package/dist/interface/chat/event-subscriber.js.map +1 -1
- package/dist/interface/chat/grounding.d.ts +22 -1
- package/dist/interface/chat/grounding.d.ts.map +1 -1
- package/dist/interface/chat/grounding.js +82 -127
- package/dist/interface/chat/grounding.js.map +1 -1
- package/dist/interface/chat/ingress-router.d.ts +110 -0
- package/dist/interface/chat/ingress-router.d.ts.map +1 -0
- package/dist/interface/chat/ingress-router.js +183 -0
- package/dist/interface/chat/ingress-router.js.map +1 -0
- package/dist/interface/cli/setup.d.ts.map +1 -1
- package/dist/interface/cli/setup.js +1 -0
- package/dist/interface/cli/setup.js.map +1 -1
- package/dist/interface/tui/app.d.ts +2 -2
- package/dist/interface/tui/app.d.ts.map +1 -1
- package/dist/interface/tui/app.js +9 -0
- package/dist/interface/tui/app.js.map +1 -1
- package/dist/interface/tui/chat/scroll.d.ts +1 -0
- package/dist/interface/tui/chat/scroll.d.ts.map +1 -1
- package/dist/interface/tui/chat/scroll.js +20 -1
- package/dist/interface/tui/chat/scroll.js.map +1 -1
- package/dist/interface/tui/chat/suggestions.d.ts.map +1 -1
- package/dist/interface/tui/chat/suggestions.js +6 -0
- package/dist/interface/tui/chat/suggestions.js.map +1 -1
- package/dist/interface/tui/chat/types.d.ts +2 -0
- package/dist/interface/tui/chat/types.d.ts.map +1 -1
- package/dist/interface/tui/chat/viewport.d.ts.map +1 -1
- package/dist/interface/tui/chat/viewport.js +1 -0
- package/dist/interface/tui/chat/viewport.js.map +1 -1
- package/dist/interface/tui/chat-surface.d.ts +20 -0
- package/dist/interface/tui/chat-surface.d.ts.map +1 -0
- package/dist/interface/tui/chat-surface.js +59 -0
- package/dist/interface/tui/chat-surface.js.map +1 -0
- package/dist/interface/tui/chat.d.ts +1 -1
- package/dist/interface/tui/chat.d.ts.map +1 -1
- package/dist/interface/tui/chat.js +7 -4
- package/dist/interface/tui/chat.js.map +1 -1
- package/dist/interface/tui/entry.d.ts.map +1 -1
- package/dist/interface/tui/entry.js +64 -8
- package/dist/interface/tui/entry.js.map +1 -1
- package/dist/interface/tui/flicker/MouseTracking.d.ts +1 -0
- package/dist/interface/tui/flicker/MouseTracking.d.ts.map +1 -1
- package/dist/interface/tui/flicker/MouseTracking.js +7 -0
- package/dist/interface/tui/flicker/MouseTracking.js.map +1 -1
- package/dist/interface/tui/flicker/frame-writer.d.ts.map +1 -1
- package/dist/interface/tui/flicker/frame-writer.js +5 -4
- package/dist/interface/tui/flicker/frame-writer.js.map +1 -1
- package/dist/interface/tui/flicker/index.d.ts +1 -1
- package/dist/interface/tui/flicker/index.d.ts.map +1 -1
- package/dist/interface/tui/flicker/index.js +1 -1
- package/dist/interface/tui/flicker/index.js.map +1 -1
- package/dist/interface/tui/fullscreen-chat.d.ts +28 -0
- package/dist/interface/tui/fullscreen-chat.d.ts.map +1 -1
- package/dist/interface/tui/fullscreen-chat.js +59 -33
- package/dist/interface/tui/fullscreen-chat.js.map +1 -1
- package/dist/interface/tui/help-overlay.d.ts.map +1 -1
- package/dist/interface/tui/help-overlay.js +1 -1
- package/dist/interface/tui/help-overlay.js.map +1 -1
- package/dist/interface/tui/markdown-renderer.d.ts +1 -1
- package/dist/interface/tui/markdown-renderer.d.ts.map +1 -1
- package/dist/interface/tui/markdown-renderer.js +137 -11
- package/dist/interface/tui/markdown-renderer.js.map +1 -1
- package/dist/interface/tui/test-entry.d.ts.map +1 -1
- package/dist/interface/tui/test-entry.js +3 -2
- package/dist/interface/tui/test-entry.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.d.ts +3 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js +76 -112
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts +11 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js +13 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts +1 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-prompts.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-prompts.js +8 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-prompts.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts +1 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js +1 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.d.ts +3 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts +1 -1
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js +60 -50
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts +239 -10
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js +298 -96
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/prompted-tool-protocol.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/prompted-tool-protocol.js +1 -0
- package/dist/orchestrator/execution/agent-loop/prompted-tool-protocol.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.d.ts +2 -5
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.js +10 -12
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-factory.d.ts +2 -0
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-factory.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-factory.js +16 -9
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-factory.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.d.ts +6 -6
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.js +53 -36
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-policy.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-policy.js +87 -34
- package/dist/orchestrator/loop/core-loop/phase-policy.js.map +1 -1
- package/dist/orchestrator/loop/core-loop.d.ts +1 -0
- package/dist/orchestrator/loop/core-loop.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop.js +191 -176
- package/dist/orchestrator/loop/core-loop.js.map +1 -1
- package/dist/platform/dream/dream-types.d.ts +14 -14
- package/dist/platform/knowledge/index.d.ts +3 -0
- package/dist/platform/knowledge/index.d.ts.map +1 -0
- package/dist/platform/knowledge/index.js +3 -0
- package/dist/platform/knowledge/index.js.map +1 -0
- package/dist/platform/knowledge/knowledge-manager.d.ts +1 -4
- package/dist/platform/knowledge/knowledge-manager.d.ts.map +1 -1
- package/dist/platform/knowledge/knowledge-manager.js +1 -4
- package/dist/platform/knowledge/knowledge-manager.js.map +1 -1
- package/dist/platform/knowledge/public-api.d.ts +4 -0
- package/dist/platform/knowledge/public-api.d.ts.map +1 -0
- package/dist/platform/knowledge/public-api.js +4 -0
- package/dist/platform/knowledge/public-api.js.map +1 -0
- package/dist/platform/soil/contracts.d.ts +66 -66
- package/dist/runtime/daemon/runner-goal-cycle.d.ts.map +1 -1
- package/dist/runtime/daemon/runner-goal-cycle.js +36 -1
- package/dist/runtime/daemon/runner-goal-cycle.js.map +1 -1
- package/dist/runtime/plugin-loader.d.ts.map +1 -1
- package/dist/runtime/plugin-loader.js +3 -6
- package/dist/runtime/plugin-loader.js.map +1 -1
- package/dist/runtime/schedule/history.d.ts +3 -3
- package/dist/runtime/schedule/presets.d.ts +20 -20
- package/dist/runtime/schedule/source.d.ts +4 -4
- package/dist/runtime/store/runtime-operation-schemas.d.ts +2 -2
- package/dist/runtime/store/runtime-schemas.d.ts +2 -2
- package/dist/runtime/types/cron.d.ts +4 -4
- package/dist/runtime/types/schedule.d.ts +51 -51
- package/dist/runtime/types/trigger.d.ts +6 -6
- package/dist/tools/builtin/exports.d.ts +79 -0
- package/dist/tools/builtin/exports.d.ts.map +1 -0
- package/dist/tools/builtin/exports.js +78 -0
- package/dist/tools/builtin/exports.js.map +1 -0
- package/dist/tools/builtin/factory.d.ts +33 -0
- package/dist/tools/builtin/factory.d.ts.map +1 -0
- package/dist/tools/builtin/factory.js +182 -0
- package/dist/tools/builtin/factory.js.map +1 -0
- package/dist/tools/builtin/index.d.ts +3 -110
- package/dist/tools/builtin/index.d.ts.map +1 -1
- package/dist/tools/builtin/index.js +2 -262
- package/dist/tools/builtin/index.js.map +1 -1
- package/dist/tools/execution/SoilOpenTool/SoilOpenTool.d.ts +4 -4
- package/dist/tools/execution/SoilPublishTool/SoilPublishTool.d.ts +2 -2
- package/dist/tools/index.d.ts +5 -3
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.d.ts +4 -4
- package/dist/tools/network/GitHubCliTool/GitHubCliTool.d.ts +4 -4
- package/dist/tools/network/McpStdioTool/McpStdioTool.d.ts +8 -8
- package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.d.ts +44 -44
- package/dist/tools/schedule/ListSchedulesTool/ListSchedulesTool.d.ts +4 -4
- package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.d.ts +58 -58
- package/dist/tools/system/ProcessSessionTool/ProcessSessionTool.d.ts +6 -6
- package/dist/tools/types.d.ts +2 -2
- package/package.json +1 -1
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
//
|
|
8
8
|
// Instead, we do lightweight manual conversion that produces clean text
|
|
9
9
|
// which Ink can properly measure and render.
|
|
10
|
+
import * as os from "node:os";
|
|
11
|
+
import * as path from "node:path";
|
|
10
12
|
import { theme } from "./theme.js";
|
|
11
13
|
const WORD_SEGMENTER = typeof Intl !== "undefined" && "Segmenter" in Intl
|
|
12
14
|
? new Intl.Segmenter("en", { granularity: "word" })
|
|
@@ -65,15 +67,106 @@ export function estimateWrappedLineCount(text, width) {
|
|
|
65
67
|
}
|
|
66
68
|
/**
|
|
67
69
|
* Expand a rendered markdown line into terminal rows at the given width.
|
|
68
|
-
*
|
|
70
|
+
* Inline segment styling is preserved on wrapped rows.
|
|
69
71
|
*/
|
|
70
72
|
export function splitMarkdownLineToRows(line, width) {
|
|
71
|
-
|
|
72
|
-
text,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
if (!line.segments || line.segments.length === 0) {
|
|
74
|
+
return wrapTextToRows(line.text, width).map((text) => ({
|
|
75
|
+
text,
|
|
76
|
+
bold: line.bold,
|
|
77
|
+
dim: line.dim,
|
|
78
|
+
italic: line.italic,
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
const safeWidth = Math.max(1, Math.floor(width));
|
|
82
|
+
const rows = [];
|
|
83
|
+
let currentSegments = [];
|
|
84
|
+
let currentText = "";
|
|
85
|
+
let currentWidth = 0;
|
|
86
|
+
const pushRow = () => {
|
|
87
|
+
rows.push({
|
|
88
|
+
text: currentText,
|
|
89
|
+
bold: line.bold,
|
|
90
|
+
dim: line.dim,
|
|
91
|
+
italic: line.italic,
|
|
92
|
+
segments: currentSegments.length > 0 ? currentSegments : undefined,
|
|
93
|
+
language: line.language,
|
|
94
|
+
});
|
|
95
|
+
currentSegments = [];
|
|
96
|
+
currentText = "";
|
|
97
|
+
currentWidth = 0;
|
|
98
|
+
};
|
|
99
|
+
const appendPiece = (piece, segment) => {
|
|
100
|
+
if (!piece)
|
|
101
|
+
return;
|
|
102
|
+
const last = currentSegments[currentSegments.length - 1];
|
|
103
|
+
if (last &&
|
|
104
|
+
last.bold === segment.bold &&
|
|
105
|
+
last.code === segment.code &&
|
|
106
|
+
last.italic === segment.italic &&
|
|
107
|
+
last.color === segment.color) {
|
|
108
|
+
last.text += piece;
|
|
109
|
+
currentText += piece;
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
const nextSegment = { ...segment, text: piece };
|
|
113
|
+
currentSegments.push(nextSegment);
|
|
114
|
+
currentText += piece;
|
|
115
|
+
};
|
|
116
|
+
const piecesFor = (text) => {
|
|
117
|
+
if (text === "") {
|
|
118
|
+
return [""];
|
|
119
|
+
}
|
|
120
|
+
return WORD_SEGMENTER
|
|
121
|
+
? Array.from(WORD_SEGMENTER.segment(text), (segment) => segment.segment)
|
|
122
|
+
: text.match(/\S+\s*|\s+/g) ?? [text];
|
|
123
|
+
};
|
|
124
|
+
for (const segment of line.segments) {
|
|
125
|
+
const pieces = piecesFor(segment.text);
|
|
126
|
+
for (const piece of pieces) {
|
|
127
|
+
if (!piece)
|
|
128
|
+
continue;
|
|
129
|
+
if (piece.length > safeWidth) {
|
|
130
|
+
if (currentWidth > 0) {
|
|
131
|
+
pushRow();
|
|
132
|
+
}
|
|
133
|
+
for (let index = 0; index < piece.length; index += safeWidth) {
|
|
134
|
+
rows.push({
|
|
135
|
+
text: piece.slice(index, index + safeWidth),
|
|
136
|
+
bold: line.bold,
|
|
137
|
+
dim: line.dim,
|
|
138
|
+
italic: line.italic,
|
|
139
|
+
segments: [{ ...segment, text: piece.slice(index, index + safeWidth) }],
|
|
140
|
+
language: line.language,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
continue;
|
|
144
|
+
}
|
|
145
|
+
if (currentWidth + piece.length > safeWidth && currentWidth > 0) {
|
|
146
|
+
pushRow();
|
|
147
|
+
}
|
|
148
|
+
const rowPiece = currentWidth === 0 ? piece : piece.trimStart();
|
|
149
|
+
if (!rowPiece) {
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
appendPiece(rowPiece, segment);
|
|
153
|
+
currentWidth += rowPiece.length;
|
|
154
|
+
if (currentWidth >= safeWidth) {
|
|
155
|
+
pushRow();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
if (currentWidth > 0 || rows.length === 0) {
|
|
160
|
+
rows.push({
|
|
161
|
+
text: currentText,
|
|
162
|
+
bold: line.bold,
|
|
163
|
+
dim: line.dim,
|
|
164
|
+
italic: line.italic,
|
|
165
|
+
segments: currentSegments.length > 0 ? currentSegments : undefined,
|
|
166
|
+
language: line.language,
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
return rows;
|
|
77
170
|
}
|
|
78
171
|
/**
|
|
79
172
|
* Estimate how many terminal rows a rendered markdown block will occupy.
|
|
@@ -189,7 +282,7 @@ function prependText(prefix, segs) {
|
|
|
189
282
|
export function parseInlineSegments(text) {
|
|
190
283
|
const segments = [];
|
|
191
284
|
// Pattern: bold+italic (***), bold (**/__), italic (*/_), code (`), link ([text](url))
|
|
192
|
-
const pattern = /(\*{3}.+?\*{3}|\*{2}.+?\*{2}|_{2}.+?_{2}|\*.+?\*|_.+?_|`[^`]+`|\[
|
|
285
|
+
const pattern = /(\*{3}.+?\*{3}|\*{2}.+?\*{2}|_{2}.+?_{2}|\*.+?\*|_.+?_|`[^`]+`|\[[^\]]+\]\((?:[^()]|\([^)]*\))+(?:\s+"[^"]*")?\))/g;
|
|
193
286
|
let lastIndex = 0;
|
|
194
287
|
let m;
|
|
195
288
|
while ((m = pattern.exec(text)) !== null) {
|
|
@@ -213,9 +306,13 @@ export function parseInlineSegments(text) {
|
|
|
213
306
|
segments.push({ text: raw.slice(1, -1), italic: true });
|
|
214
307
|
}
|
|
215
308
|
else if (raw.startsWith('[')) {
|
|
216
|
-
|
|
217
|
-
const
|
|
218
|
-
|
|
309
|
+
const linkMatch = raw.match(/^\[(.+?)\]\(((?:[^()]|\([^)]*\))+?)(?:\s+"[^"]*")?\)$/);
|
|
310
|
+
const label = linkMatch?.[1] ?? raw;
|
|
311
|
+
const destination = linkMatch?.[2] ?? "";
|
|
312
|
+
segments.push({
|
|
313
|
+
text: renderMarkdownLinkText(label, destination),
|
|
314
|
+
color: theme.info,
|
|
315
|
+
});
|
|
219
316
|
}
|
|
220
317
|
else {
|
|
221
318
|
segments.push({ text: raw });
|
|
@@ -228,6 +325,35 @@ export function parseInlineSegments(text) {
|
|
|
228
325
|
}
|
|
229
326
|
return segments.length > 0 ? segments : [{ text }];
|
|
230
327
|
}
|
|
328
|
+
function renderMarkdownLinkText(label, destination) {
|
|
329
|
+
if (!destination || !isLocalPathLikeLink(destination)) {
|
|
330
|
+
return label;
|
|
331
|
+
}
|
|
332
|
+
return shortenLocalPath(destination.replace(/^file:\/\//, ""));
|
|
333
|
+
}
|
|
334
|
+
function isLocalPathLikeLink(destination) {
|
|
335
|
+
return destination.startsWith("/")
|
|
336
|
+
|| destination.startsWith("./")
|
|
337
|
+
|| destination.startsWith("../")
|
|
338
|
+
|| destination.startsWith("~/")
|
|
339
|
+
|| destination.startsWith("file://");
|
|
340
|
+
}
|
|
341
|
+
function shortenLocalPath(destination) {
|
|
342
|
+
if (destination.startsWith("~/")) {
|
|
343
|
+
return destination;
|
|
344
|
+
}
|
|
345
|
+
const homeDir = os.homedir();
|
|
346
|
+
if (destination.startsWith(homeDir)) {
|
|
347
|
+
return `~/${destination.slice(homeDir.length + 1)}`;
|
|
348
|
+
}
|
|
349
|
+
if (path.isAbsolute(destination)) {
|
|
350
|
+
const relative = path.relative(process.cwd(), destination);
|
|
351
|
+
if (relative && !relative.startsWith("..")) {
|
|
352
|
+
return relative;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
return destination;
|
|
356
|
+
}
|
|
231
357
|
// ─── Code Syntax Highlighting ───
|
|
232
358
|
const JS_TS_KEYWORDS = new Set([
|
|
233
359
|
'const', 'let', 'var', 'function', 'return', 'if', 'else', 'for', 'while',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-renderer.js","sourceRoot":"","sources":["../../../src/interface/tui/markdown-renderer.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,EAAE;AACF,uEAAuE;AACvE,uEAAuE;AACvE,oEAAoE;AACpE,uDAAuD;AACvD,EAAE;AACF,wEAAwE;AACxE,6CAA6C;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAmBnC,MAAM,cAAc,GAClB,OAAO,IAAI,KAAK,WAAW,IAAI,WAAW,IAAI,IAAI;IAChD,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC,CAAC,IAAI,CAAC;AAEX;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,KAAa;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACd,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,cAAc;YAC3B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;YAC7E,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC7B,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACnB,OAAO,GAAG,EAAE,CAAC;gBACf,CAAC;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;oBACjD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBAC/C,OAAO,IAAI,KAAK,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,OAAO,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY,EAAE,KAAa;IAClE,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAkB,EAAE,KAAa;IACvE,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,KAAa;IAChE,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,uBAAuB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAqB,EAAE,QAAgB;IACxE,IAAI,QAAQ,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;IAChD,OAAO;QACL,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC;QAC5B,EAAE,IAAI,EAAE,OAAO,cAAc,aAAa,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;KACzF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,GAAG,EAAE,CAAC;IAEtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,oBAAoB;QACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,2DAA2D;gBAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACnD,YAAY,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,EAAE,CAAC;YACpB,CAAC;YACD,WAAW,GAAG,CAAC,WAAW,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;YAC7B,MAAM,IAAI,GAAG,YAAY;gBACvB,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC;gBACvC,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACnF,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,gCAAgC;QAChC,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1B,SAAS;QACX,CAAC;QAED,yCAAyC;QACzC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,SAAS;QACX,CAAC;QAED,wCAAwC;QACxC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,WAAW,CAAC;YAC3B,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3F,SAAS;QACX,CAAC;QAED,iCAAiC;QACjC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACvD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAC7C,MAAM,IAAI,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3F,SAAS;QACX,CAAC;QAED,kBAAkB;QAClB,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS;QACX,CAAC;QAED,uCAAuC;QACvC,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;QAChF,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kDAAkD;AAClD,SAAS,eAAe,CAAC,IAAuB;IAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,6DAA6D;AAC7D,SAAS,WAAW,CAAC,MAAc,EAAE,IAAuB;IAC1D,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,uFAAuF;IACvF,MAAM,OAAO,GAAG,iFAAiF,CAAC;IAClG,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,CAAyB,CAAC;IAE9B,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACzC,+BAA+B;QAC/B,IAAI,CAAC,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjB,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACxD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACtD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,sCAAsC;YACtC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/B,CAAC;QAED,SAAS,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,uBAAuB;IACvB,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,mCAAmC;AAEnC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IACzE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ;IACvE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI;IACpE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;IACpE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IACxE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY;IACvE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;CACpE,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM;IACtE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;IACrE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS;IACpE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IACvE,OAAO;CACR,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,QAAgB;IACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1E,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACvC,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,iCAAiC;IACjC,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,cAAc,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,QAAgB;IAC9D,gBAAgB;IAChB,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE1C,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC;IAEvC,uDAAuD;IACvD,MAAM,YAAY,GAAG,4GAA4G,CAAC;IAClI,IAAI,EAA0B,CAAC;IAE/B,OAAO,CAAC,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,iBAAiB;YACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,SAAS;YACT,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5D,UAAU;YACV,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
1
|
+
{"version":3,"file":"markdown-renderer.js","sourceRoot":"","sources":["../../../src/interface/tui/markdown-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-entry.d.ts","sourceRoot":"","sources":["../../../src/interface/tui/test-entry.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"test-entry.d.ts","sourceRoot":"","sources":["../../../src/interface/tui/test-entry.ts"],"names":[],"mappings":";AAwBA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CA2DlD"}
|
|
@@ -4,7 +4,7 @@ import React from "react";
|
|
|
4
4
|
import { render } from "ink";
|
|
5
5
|
import { TUITestApp } from "./test-app.js";
|
|
6
6
|
import { resetTuiDebugLog, getTuiDebugLogPath, logTuiDebug } from "./debug-log.js";
|
|
7
|
-
import { AlternateScreen, MouseTracking, isNoFlickerEnabled, } from "./flicker/index.js";
|
|
7
|
+
import { AlternateScreen, MouseTracking, isMouseTrackingEnabled, isNoFlickerEnabled, } from "./flicker/index.js";
|
|
8
8
|
import { DEFAULT_CURSOR_STYLE, HIDE_CURSOR, SHOW_CURSOR, STEADY_BAR_CURSOR } from "./flicker/dec.js";
|
|
9
9
|
import { getGitBranch } from "./git-branch.js";
|
|
10
10
|
import { createNoFlickerOutputController } from "./output-controller.js";
|
|
@@ -21,6 +21,7 @@ export async function startTUITest() {
|
|
|
21
21
|
resetTuiDebugLog();
|
|
22
22
|
logTuiDebug("test-entry", "start", { logPath: getTuiDebugLogPath() });
|
|
23
23
|
const noFlicker = await isNoFlickerEnabled();
|
|
24
|
+
const mouseTrackingEnabled = isMouseTrackingEnabled();
|
|
24
25
|
const outputController = noFlicker ? createNoFlickerOutputController() : null;
|
|
25
26
|
outputController?.install();
|
|
26
27
|
let cleanedUp = false;
|
|
@@ -46,7 +47,7 @@ export async function startTUITest() {
|
|
|
46
47
|
noFlicker,
|
|
47
48
|
controlStream: terminalStream,
|
|
48
49
|
});
|
|
49
|
-
const { waitUntilExit } = render(React.createElement(AlternateScreen, { enabled: noFlicker, stream: terminalStream }, React.createElement(MouseTracking, { stream: terminalStream }, appElement)), {
|
|
50
|
+
const { waitUntilExit } = render(React.createElement(AlternateScreen, { enabled: noFlicker, stream: terminalStream }, React.createElement(MouseTracking, { enabled: mouseTrackingEnabled, stream: terminalStream }, appElement)), {
|
|
50
51
|
exitOnCtrlC: false,
|
|
51
52
|
incrementalRendering: noFlicker,
|
|
52
53
|
maxFps: noFlicker ? 60 : 30,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-entry.js","sourceRoot":"","sources":["../../../src/interface/tui/test-entry.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,SAAS,MAAM;IACb,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;IAC1C,CAAC;IACD,gBAAgB,EAAE,CAAC;IACnB,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAEtE,MAAM,SAAS,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC7C,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,SAAS;YAAE,OAAO;QACtB,SAAS,GAAG,IAAI,CAAC;QACjB,IAAI,SAAS,EAAE,CAAC;YACd,gBAAgB,EAAE,aAAa,CAAC,oBAAoB,GAAG,WAAW,CAAC,CAAC;QACtE,CAAC;QACD,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAC5B,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,gBAAgB,EAAE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;QAC1E,0BAA0B,CAAC,cAAc,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE,CAAC;YACd,gBAAgB,EAAE,aAAa,CAAC,iBAAiB,GAAG,WAAW,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE;YACjD,GAAG,EAAE,MAAM,EAAE;YACb,SAAS,EAAE,YAAY,EAAE;YACzB,SAAS;YACT,aAAa,EAAE,cAAc;SAC9B,CAAC,CAAC;QAEH,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAC9B,KAAK,CAAC,aAAa,CACjB,eAAe,EACf,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,EAC9C,KAAK,CAAC,aAAa,CACjB,aAAa,EACb,EAAE,MAAM,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"test-entry.js","sourceRoot":"","sources":["../../../src/interface/tui/test-entry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Task } from "../../../base/types/task.js";
|
|
2
|
+
import { type GroundingGateway } from "../../../grounding/gateway.js";
|
|
2
3
|
export interface AgentLoopContextBlock {
|
|
3
4
|
id: string;
|
|
4
5
|
source: string;
|
|
@@ -32,10 +33,11 @@ export interface TaskAgentLoopAssembly {
|
|
|
32
33
|
contextBlocks: AgentLoopContextBlock[];
|
|
33
34
|
}
|
|
34
35
|
export declare class AgentLoopContextAssembler {
|
|
36
|
+
private readonly groundingGateway;
|
|
37
|
+
constructor(groundingGateway?: GroundingGateway);
|
|
35
38
|
assembleTask(input: TaskAgentLoopAssemblyInput): Promise<TaskAgentLoopAssembly>;
|
|
36
39
|
}
|
|
37
40
|
export declare function loadProjectInstructionBlocks(cwd: string, maxChars: number, options?: {
|
|
38
41
|
trustProjectInstructions?: boolean;
|
|
39
42
|
}): Promise<AgentLoopContextBlock[]>;
|
|
40
|
-
export declare function findProjectRoot(cwd: string): string;
|
|
41
43
|
//# sourceMappingURL=agent-loop-context-assembler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-loop-context-assembler.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-context-assembler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-loop-context-assembler.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-context-assembler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAK9F,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAChF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAaD,qBAAa,yBAAyB;IACxB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBAAhB,gBAAgB,GAAE,gBAA2C;IAEpF,YAAY,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAqEtF;AAED,wBAAsB,4BAA4B,CAChD,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAUlC"}
|
|
@@ -1,133 +1,97 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { resolve } from "node:path";
|
|
2
|
+
import { createGroundingGateway } from "../../../grounding/gateway.js";
|
|
3
|
+
import { discoverAgentInstructionCandidates } from "../../../grounding/providers/agents-provider.js";
|
|
4
|
+
import { renderPromptSections } from "../../../grounding/renderers/prompt-renderer.js";
|
|
5
|
+
function sectionToBlock(section) {
|
|
6
|
+
const source = section.sources[0]?.path ?? section.sources[0]?.label ?? section.key;
|
|
7
|
+
const id = section.key === "soil_knowledge" ? "soil-prefetch" : section.key;
|
|
8
|
+
return {
|
|
9
|
+
id,
|
|
10
|
+
source,
|
|
11
|
+
content: section.content,
|
|
12
|
+
priority: section.priority,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
5
15
|
export class AgentLoopContextAssembler {
|
|
16
|
+
groundingGateway;
|
|
17
|
+
constructor(groundingGateway = createGroundingGateway()) {
|
|
18
|
+
this.groundingGateway = groundingGateway;
|
|
19
|
+
}
|
|
6
20
|
async assembleTask(input) {
|
|
7
21
|
const cwd = resolve(input.cwd ?? process.cwd());
|
|
8
|
-
const
|
|
9
|
-
|
|
22
|
+
const soilQuery = input.soilPrefetch
|
|
23
|
+
? async ({ query, rootDir, limit }) => {
|
|
24
|
+
const soil = await input.soilPrefetch({ query, rootDir, limit });
|
|
25
|
+
if (!soil?.content.trim()) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
retrievalSource: (soil.retrievalSource ?? "prefetch"),
|
|
30
|
+
warnings: soil.warnings ?? [],
|
|
31
|
+
hits: [
|
|
32
|
+
{
|
|
33
|
+
soilId: soil.soilIds?.[0] ?? "soil:prefetch",
|
|
34
|
+
title: "Prefetched Soil context",
|
|
35
|
+
summary: soil.content,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
: undefined;
|
|
41
|
+
const query = [
|
|
42
|
+
input.task.work_description,
|
|
43
|
+
input.task.approach,
|
|
44
|
+
...input.task.success_criteria.map((criterion) => criterion.description),
|
|
45
|
+
input.workspaceContext ?? "",
|
|
46
|
+
input.knowledgeContext ?? "",
|
|
47
|
+
].join("\n");
|
|
48
|
+
const bundle = await this.groundingGateway.build({
|
|
49
|
+
surface: "agent_loop",
|
|
50
|
+
purpose: "task_execution",
|
|
51
|
+
workspaceRoot: cwd,
|
|
52
|
+
goalId: input.task.goal_id,
|
|
53
|
+
taskId: input.task.id,
|
|
54
|
+
query,
|
|
55
|
+
userMessage: input.task.work_description,
|
|
10
56
|
trustProjectInstructions: input.trustProjectInstructions ?? true,
|
|
57
|
+
workspaceContext: input.workspaceContext,
|
|
58
|
+
knowledgeContext: input.knowledgeContext,
|
|
59
|
+
soilQuery,
|
|
60
|
+
include: {
|
|
61
|
+
session_history: false,
|
|
62
|
+
progress_history: false,
|
|
63
|
+
trust_state: false,
|
|
64
|
+
provider_state: false,
|
|
65
|
+
plugins: false,
|
|
66
|
+
},
|
|
11
67
|
});
|
|
12
|
-
blocks.
|
|
13
|
-
if (input.workspaceContext?.trim()) {
|
|
14
|
-
blocks.push({
|
|
15
|
-
id: "workspace-context",
|
|
16
|
-
source: "workspace",
|
|
17
|
-
content: input.workspaceContext,
|
|
18
|
-
priority: 20,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
if (input.knowledgeContext?.trim()) {
|
|
22
|
-
blocks.push({
|
|
23
|
-
id: "knowledge-context",
|
|
24
|
-
source: "knowledge",
|
|
25
|
-
content: input.knowledgeContext,
|
|
26
|
-
priority: 30,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
if (input.soilPrefetch) {
|
|
30
|
-
const query = [
|
|
31
|
-
input.task.work_description,
|
|
32
|
-
input.task.approach,
|
|
33
|
-
...input.task.success_criteria.map((criterion) => criterion.description),
|
|
34
|
-
input.workspaceContext ?? "",
|
|
35
|
-
input.knowledgeContext ?? "",
|
|
36
|
-
].join("\n");
|
|
37
|
-
const soil = await input.soilPrefetch({ query, rootDir: cwd, limit: 5 });
|
|
38
|
-
if (soil?.content.trim()) {
|
|
39
|
-
blocks.push({
|
|
40
|
-
id: "soil-prefetch",
|
|
41
|
-
source: `soil:${soil.retrievalSource ?? "unknown"}`,
|
|
42
|
-
content: [
|
|
43
|
-
soil.content,
|
|
44
|
-
soil.soilIds?.length ? `Soil IDs: ${soil.soilIds.join(", ")}` : "",
|
|
45
|
-
soil.warnings?.length ? `Warnings: ${soil.warnings.join("; ")}` : "",
|
|
46
|
-
].filter(Boolean).join("\n"),
|
|
47
|
-
priority: 15,
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
}
|
|
68
|
+
const blocks = bundle.dynamicSections.map(sectionToBlock).sort((a, b) => a.priority - b.priority);
|
|
51
69
|
const userPrompt = [
|
|
52
70
|
`Task: ${input.task.work_description}`,
|
|
53
71
|
`Approach: ${input.task.approach}`,
|
|
54
72
|
`Success criteria:\n${input.task.success_criteria.map((c) => `- ${c.description}`).join("\n")}`,
|
|
55
|
-
blocks.length
|
|
73
|
+
blocks.length > 0
|
|
74
|
+
? `Context:\n${blocks.map((block) => `[${block.source}]\n${block.content}`).join("\n\n")}`
|
|
75
|
+
: "",
|
|
56
76
|
"Return final output as JSON matching the required schema.",
|
|
57
77
|
].filter(Boolean).join("\n\n");
|
|
58
78
|
return {
|
|
59
79
|
cwd,
|
|
60
|
-
systemPrompt:
|
|
61
|
-
"You are PulSeed's task agentloop.",
|
|
62
|
-
"Choose tools, inspect results, and continue until this task has a final answer.",
|
|
63
|
-
"Do not decide goal completion, global priority, stall, or replan.",
|
|
64
|
-
"Keep changes scoped to the task and run appropriate verification.",
|
|
65
|
-
].join("\n"),
|
|
80
|
+
systemPrompt: renderPromptSections(bundle.staticSections, { preserveOrder: true }),
|
|
66
81
|
userPrompt,
|
|
67
82
|
contextBlocks: blocks,
|
|
68
83
|
};
|
|
69
84
|
}
|
|
70
85
|
}
|
|
71
86
|
export async function loadProjectInstructionBlocks(cwd, maxChars, options = {}) {
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
break;
|
|
82
|
-
cursor = next;
|
|
83
|
-
}
|
|
84
|
-
const blocks = [];
|
|
85
|
-
let remaining = maxChars;
|
|
86
|
-
const homeCandidates = [
|
|
87
|
-
join(homedir(), ".pulseed", "AGENTS.md"),
|
|
88
|
-
join(homedir(), ".pulseed", "AGENTS.override.md"),
|
|
89
|
-
];
|
|
90
|
-
for (const filePath of homeCandidates) {
|
|
91
|
-
if (!existsSync(filePath) || remaining <= 0)
|
|
92
|
-
continue;
|
|
93
|
-
const content = (await readFile(filePath, "utf-8")).slice(0, remaining);
|
|
94
|
-
remaining -= content.length;
|
|
95
|
-
blocks.push({
|
|
96
|
-
id: `project-doc:${filePath}`,
|
|
97
|
-
source: filePath,
|
|
98
|
-
content,
|
|
99
|
-
priority: filePath.endsWith("override.md") ? 1 : 2,
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
if (options.trustProjectInstructions === false) {
|
|
103
|
-
return blocks;
|
|
104
|
-
}
|
|
105
|
-
for (const dir of dirs.reverse()) {
|
|
106
|
-
const candidates = [join(dir, "AGENTS.md"), join(dir, "AGENTS.override.md")];
|
|
107
|
-
for (const filePath of candidates) {
|
|
108
|
-
if (!existsSync(filePath) || remaining <= 0)
|
|
109
|
-
continue;
|
|
110
|
-
const content = (await readFile(filePath, "utf-8")).slice(0, remaining);
|
|
111
|
-
remaining -= content.length;
|
|
112
|
-
blocks.push({
|
|
113
|
-
id: `project-doc:${filePath}`,
|
|
114
|
-
source: filePath,
|
|
115
|
-
content,
|
|
116
|
-
priority: filePath.endsWith("override.md") ? 3 : 5,
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return blocks;
|
|
121
|
-
}
|
|
122
|
-
export function findProjectRoot(cwd) {
|
|
123
|
-
let cursor = resolve(cwd);
|
|
124
|
-
while (true) {
|
|
125
|
-
if (existsSync(join(cursor, ".git")))
|
|
126
|
-
return cursor;
|
|
127
|
-
const next = dirname(cursor);
|
|
128
|
-
if (next === cursor)
|
|
129
|
-
return resolve(cwd);
|
|
130
|
-
cursor = next;
|
|
131
|
-
}
|
|
87
|
+
const candidates = await discoverAgentInstructionCandidates(cwd, maxChars, options);
|
|
88
|
+
return candidates
|
|
89
|
+
.filter((candidate) => candidate.accepted)
|
|
90
|
+
.map((candidate) => ({
|
|
91
|
+
id: `project-doc:${candidate.filePath}`,
|
|
92
|
+
source: candidate.filePath,
|
|
93
|
+
content: candidate.content,
|
|
94
|
+
priority: candidate.priority,
|
|
95
|
+
}));
|
|
132
96
|
}
|
|
133
97
|
//# sourceMappingURL=agent-loop-context-assembler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-loop-context-assembler.js","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-context-assembler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"agent-loop-context-assembler.js","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-context-assembler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAyB,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,kCAAkC,EAAE,MAAM,iDAAiD,CAAC;AAErG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AAuCvF,SAAS,cAAc,CAAC,OAAyB;IAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;IACpF,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,KAAK,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAC5E,OAAO;QACL,EAAE;QACF,MAAM;QACN,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,yBAAyB;IACP;IAA7B,YAA6B,mBAAqC,sBAAsB,EAAE;QAA7D,qBAAgB,GAAhB,gBAAgB,CAA6C;IAAG,CAAC;IAE9F,KAAK,CAAC,YAAY,CAAC,KAAiC;QAClD,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY;YAClC,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAqD,EAAE,EAAE;gBACrF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,YAAa,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC1B,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO;oBACL,eAAe,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,UAAU,CAAsC;oBAC1F,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBAC7B,IAAI,EAAE;wBACJ;4BACE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,eAAe;4BAC5C,KAAK,EAAE,yBAAyB;4BAChC,OAAO,EAAE,IAAI,CAAC,OAAO;yBACtB;qBACF;iBACF,CAAC;YACJ,CAAC;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,KAAK,GAAG;YACZ,KAAK,CAAC,IAAI,CAAC,gBAAgB;YAC3B,KAAK,CAAC,IAAI,CAAC,QAAQ;YACnB,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC;YACxE,KAAK,CAAC,gBAAgB,IAAI,EAAE;YAC5B,KAAK,CAAC,gBAAgB,IAAI,EAAE;SAC7B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAC/C,OAAO,EAAE,YAAY;YACrB,OAAO,EAAE,gBAAgB;YACzB,aAAa,EAAE,GAAG;YAClB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO;YAC1B,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE;YACrB,KAAK;YACL,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB;YACxC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB,IAAI,IAAI;YAChE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,SAAS;YACT,OAAO,EAAE;gBACP,eAAe,EAAE,KAAK;gBACtB,gBAAgB,EAAE,KAAK;gBACvB,WAAW,EAAE,KAAK;gBAClB,cAAc,EAAE,KAAK;gBACrB,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAClG,MAAM,UAAU,GAAG;YACjB,SAAS,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACtC,aAAa,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClC,sBAAsB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC/F,MAAM,CAAC,MAAM,GAAG,CAAC;gBACf,CAAC,CAAC,aAAa,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAC1F,CAAC,CAAC,EAAE;YACN,2DAA2D;SAC5D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE/B,OAAO;YACL,GAAG;YACH,YAAY,EAAE,oBAAoB,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAClF,UAAU;YACV,aAAa,EAAE,MAAM;SACtB,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,GAAW,EACX,QAAgB,EAChB,UAAkD,EAAE;IAEpD,MAAM,UAAU,GAAG,MAAM,kCAAkC,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpF,OAAO,UAAU;SACd,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC;SACzC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACnB,EAAE,EAAE,eAAe,SAAS,CAAC,QAAQ,EAAE;QACvC,MAAM,EAAE,SAAS,CAAC,QAAQ;QAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC,CAAC,CAAC;AACR,CAAC"}
|
|
@@ -4,6 +4,7 @@ import type { AgentLoopSecurityConfig, ExecutionPolicy } from "./execution-polic
|
|
|
4
4
|
import type { AgentLoopReasoningEffort } from "./agent-loop-model.js";
|
|
5
5
|
import type { AgentLoopToolPolicy } from "./agent-loop-turn-context.js";
|
|
6
6
|
import type { AgentLoopWorktreePolicy } from "./task-agent-loop-worktree.js";
|
|
7
|
+
import type { ProviderConfig } from "../../../base/llm/provider-config.js";
|
|
7
8
|
export type AgentLoopDefaultProfileName = "task" | "chat" | "review" | `core_phase:${CorePhaseKind}`;
|
|
8
9
|
export interface AgentLoopResolvedProfile {
|
|
9
10
|
name: AgentLoopDefaultProfileName;
|
|
@@ -41,7 +42,17 @@ interface CorePhaseProfileInput {
|
|
|
41
42
|
failPolicy?: "return_low_confidence" | "fallback_deterministic" | "fail_cycle";
|
|
42
43
|
}
|
|
43
44
|
export type ResolveAgentLoopDefaultProfileInput = SurfaceProfileInput | CorePhaseProfileInput;
|
|
45
|
+
export interface ResolveAgentLoopDefaultProfileFromProviderConfigInput {
|
|
46
|
+
surface: "task" | "chat" | "review";
|
|
47
|
+
workspaceRoot: string;
|
|
48
|
+
providerConfig?: Pick<ProviderConfig, "agent_loop">;
|
|
49
|
+
budget?: Partial<AgentLoopBudget>;
|
|
50
|
+
toolPolicy?: AgentLoopToolPolicy;
|
|
51
|
+
worktreePolicy?: AgentLoopWorktreePolicy;
|
|
52
|
+
reasoningEffort?: AgentLoopReasoningEffort;
|
|
53
|
+
}
|
|
44
54
|
export declare function resolveAgentLoopDefaultProfile(input: ResolveAgentLoopDefaultProfileInput): AgentLoopResolvedProfile;
|
|
55
|
+
export declare function resolveAgentLoopDefaultProfileFromProviderConfig(input: ResolveAgentLoopDefaultProfileFromProviderConfigInput): AgentLoopResolvedProfile;
|
|
45
56
|
export declare function summarizeAgentLoopResolvedProfile(profile: Pick<AgentLoopResolvedProfile, "name" | "executionPolicy" | "reasoningEffort" | "worktreePolicy">, executionPolicy?: ExecutionPolicy | undefined): AgentLoopResolvedProfileSummary;
|
|
46
57
|
export declare function formatAgentLoopResolvedProfileSummary(summary: AgentLoopResolvedProfileSummary): string;
|
|
47
58
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-loop-default-profile.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-default-profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-loop-default-profile.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/execution/agent-loop/agent-loop-default-profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolveExecutionPolicy, withExecutionPolicyOverrides } from "./execution-policy.js";
|
|
2
2
|
import { withDefaultBudget } from "./agent-loop-turn-context.js";
|
|
3
|
+
import { resolveProviderNativeAgentLoopDefaults } from "../../../base/llm/provider-config.js";
|
|
3
4
|
const DEFAULT_SURFACE_PROFILE = {
|
|
4
5
|
budget: withDefaultBudget(),
|
|
5
6
|
toolPolicy: {},
|
|
@@ -217,6 +218,18 @@ export function resolveAgentLoopDefaultProfile(input) {
|
|
|
217
218
|
reasoningEffort: input.reasoningEffort ?? "medium",
|
|
218
219
|
};
|
|
219
220
|
}
|
|
221
|
+
export function resolveAgentLoopDefaultProfileFromProviderConfig(input) {
|
|
222
|
+
const providerDefaults = resolveProviderNativeAgentLoopDefaults(input.providerConfig);
|
|
223
|
+
return resolveAgentLoopDefaultProfile({
|
|
224
|
+
surface: input.surface,
|
|
225
|
+
workspaceRoot: input.workspaceRoot,
|
|
226
|
+
security: providerDefaults.security,
|
|
227
|
+
budget: input.budget,
|
|
228
|
+
toolPolicy: input.toolPolicy,
|
|
229
|
+
worktreePolicy: mergeWorktreePolicy(providerDefaults.worktreePolicy, input.worktreePolicy),
|
|
230
|
+
reasoningEffort: input.reasoningEffort,
|
|
231
|
+
});
|
|
232
|
+
}
|
|
220
233
|
export function summarizeAgentLoopResolvedProfile(profile, executionPolicy = profile.executionPolicy) {
|
|
221
234
|
const posture = executionPolicy
|
|
222
235
|
? [
|