@markusylisiurunen/tau 0.3.19 → 0.3.20

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.
Files changed (168) hide show
  1. package/README.md +19 -47
  2. package/dist/core/cli.js +6 -39
  3. package/dist/core/cli.js.map +1 -1
  4. package/dist/core/commands/index.js +1 -1
  5. package/dist/core/commands/index.js.map +1 -1
  6. package/dist/core/commands/registry.js +5 -76
  7. package/dist/core/commands/registry.js.map +1 -1
  8. package/dist/core/config/builtin_themes.js +0 -62
  9. package/dist/core/config/builtin_themes.js.map +1 -1
  10. package/dist/core/config/content_loader.js +4 -7
  11. package/dist/core/config/content_loader.js.map +1 -1
  12. package/dist/core/config/diff_tool.js +1 -1
  13. package/dist/core/config/diff_tool.js.map +1 -1
  14. package/dist/core/config/runtime.js +1 -1
  15. package/dist/core/config/runtime.js.map +1 -1
  16. package/dist/core/config/runtime_config_snapshot.js +1 -1
  17. package/dist/core/config/runtime_config_snapshot.js.map +1 -1
  18. package/dist/core/config/schema.js +10 -43
  19. package/dist/core/config/schema.js.map +1 -1
  20. package/dist/core/config/skill_parser.js +1 -1
  21. package/dist/core/config/skill_parser.js.map +1 -1
  22. package/dist/core/config/virtual_defaults.js +0 -1
  23. package/dist/core/config/virtual_defaults.js.map +1 -1
  24. package/dist/core/debug.js +1 -7
  25. package/dist/core/debug.js.map +1 -1
  26. package/dist/core/diff_review/bridge.js +1 -3
  27. package/dist/core/diff_review/bridge.js.map +1 -1
  28. package/dist/core/diff_review/index.js.map +1 -1
  29. package/dist/core/diff_review/protocol.js +13 -13
  30. package/dist/core/diff_review/protocol.js.map +1 -1
  31. package/dist/core/diff_review/review_instructions.js +48 -0
  32. package/dist/core/diff_review/review_instructions.js.map +1 -0
  33. package/dist/core/events/index.js.map +1 -1
  34. package/dist/core/events/parser.js +161 -38
  35. package/dist/core/events/parser.js.map +1 -1
  36. package/dist/core/events/types.js +1 -1
  37. package/dist/core/events/types.js.map +1 -1
  38. package/dist/core/index.js +1 -1
  39. package/dist/core/index.js.map +1 -1
  40. package/dist/core/models/catalog.js +4 -4
  41. package/dist/core/models/catalog.js.map +1 -1
  42. package/dist/core/personas.js +29 -14
  43. package/dist/core/personas.js.map +1 -1
  44. package/dist/core/runtime/chat_runtime.js +12 -34
  45. package/dist/core/runtime/chat_runtime.js.map +1 -1
  46. package/dist/core/runtime/conversation_turn_runtime.js +0 -4
  47. package/dist/core/runtime/conversation_turn_runtime.js.map +1 -1
  48. package/dist/core/runtime/runtime_bootstrap.js +191 -317
  49. package/dist/core/runtime/runtime_bootstrap.js.map +1 -1
  50. package/dist/core/runtime/session_prompt_composer.js +2 -6
  51. package/dist/core/runtime/session_prompt_composer.js.map +1 -1
  52. package/dist/core/session/core_session.js +2 -5
  53. package/dist/core/session/core_session.js.map +1 -1
  54. package/dist/core/session/message_accumulator.js +6 -0
  55. package/dist/core/session/message_accumulator.js.map +1 -1
  56. package/dist/core/session/runner.js +137 -32
  57. package/dist/core/session/runner.js.map +1 -1
  58. package/dist/core/session/session_engine.js +365 -120
  59. package/dist/core/session/session_engine.js.map +1 -1
  60. package/dist/core/static/index.js +0 -11
  61. package/dist/core/static/index.js.map +1 -1
  62. package/dist/core/subagents/registry.js +0 -2
  63. package/dist/core/subagents/registry.js.map +1 -1
  64. package/dist/core/subagents/subagent_engine.js +1 -3
  65. package/dist/core/subagents/subagent_engine.js.map +1 -1
  66. package/dist/core/telegram/adapter.js +1 -1
  67. package/dist/core/telegram/adapter.js.map +1 -1
  68. package/dist/core/telegram/config.js +3 -13
  69. package/dist/core/telegram/config.js.map +1 -1
  70. package/dist/core/telegram/session_manager.js +2 -5
  71. package/dist/core/telegram/session_manager.js.map +1 -1
  72. package/dist/core/tools/bash.js +6 -21
  73. package/dist/core/tools/bash.js.map +1 -1
  74. package/dist/core/tools/edit.js +1 -4
  75. package/dist/core/tools/edit.js.map +1 -1
  76. package/dist/core/tools/emit_output.js +1 -1
  77. package/dist/core/tools/emit_output.js.map +1 -1
  78. package/dist/core/tools/execution_backend.js +3 -1
  79. package/dist/core/tools/execution_backend.js.map +1 -1
  80. package/dist/core/tools/grep.js +1 -1
  81. package/dist/core/tools/grep.js.map +1 -1
  82. package/dist/core/tools/list.js +1 -1
  83. package/dist/core/tools/list.js.map +1 -1
  84. package/dist/core/tools/nook.js +1 -10
  85. package/dist/core/tools/nook.js.map +1 -1
  86. package/dist/core/tools/read.js +1 -1
  87. package/dist/core/tools/read.js.map +1 -1
  88. package/dist/core/tools/registry.js.map +1 -1
  89. package/dist/core/tools/send_input_to_agent.js +1 -1
  90. package/dist/core/tools/send_input_to_agent.js.map +1 -1
  91. package/dist/core/tools/spawn_agent.js +40 -88
  92. package/dist/core/tools/spawn_agent.js.map +1 -1
  93. package/dist/core/tools/terminate_agent.js +1 -1
  94. package/dist/core/tools/terminate_agent.js.map +1 -1
  95. package/dist/core/tools/view_image.js +1 -1
  96. package/dist/core/tools/view_image.js.map +1 -1
  97. package/dist/core/tools/wait_for_agents.js +1 -1
  98. package/dist/core/tools/wait_for_agents.js.map +1 -1
  99. package/dist/core/tools/web_fetch.js +1 -1
  100. package/dist/core/tools/web_fetch.js.map +1 -1
  101. package/dist/core/tools/web_search.js +1 -1
  102. package/dist/core/tools/web_search.js.map +1 -1
  103. package/dist/core/tools/write.js +1 -4
  104. package/dist/core/tools/write.js.map +1 -1
  105. package/dist/core/types.js +0 -1
  106. package/dist/core/types.js.map +1 -1
  107. package/dist/core/utils/context.js +1 -1
  108. package/dist/core/utils/context.js.map +1 -1
  109. package/dist/core/utils/context_builder.js +1 -15
  110. package/dist/core/utils/context_builder.js.map +1 -1
  111. package/dist/core/utils/user_metadata.js +13 -19
  112. package/dist/core/utils/user_metadata.js.map +1 -1
  113. package/dist/core/version.js +1 -1
  114. package/dist/execution/cloudflare_sandbox_execution_environment.js +15 -10
  115. package/dist/execution/cloudflare_sandbox_execution_environment.js.map +1 -1
  116. package/dist/execution/fly_sprite_execution_environment.js +9 -1
  117. package/dist/execution/fly_sprite_execution_environment.js.map +1 -1
  118. package/dist/execution/local_execution_environment.js +9 -55
  119. package/dist/execution/local_execution_environment.js.map +1 -1
  120. package/dist/execution/tool_backend_execution_environment.js +7 -10
  121. package/dist/execution/tool_backend_execution_environment.js.map +1 -1
  122. package/dist/host/client_tool_broker.js +1 -1
  123. package/dist/host/client_tool_broker.js.map +1 -1
  124. package/dist/host/execution_runtime.js +35 -0
  125. package/dist/host/execution_runtime.js.map +1 -0
  126. package/dist/host/hosted_ephemeral_agent_session.js +20 -11
  127. package/dist/host/hosted_ephemeral_agent_session.js.map +1 -1
  128. package/dist/host/local_session_host.js +117 -109
  129. package/dist/host/local_session_host.js.map +1 -1
  130. package/dist/host/session_protocol_handler.js +0 -10
  131. package/dist/host/session_protocol_handler.js.map +1 -1
  132. package/dist/main.js +31 -63
  133. package/dist/main.js.map +1 -1
  134. package/dist/nook/README.md +1 -1
  135. package/dist/protocol/index.d.ts +1 -1
  136. package/dist/protocol/index.js.map +1 -1
  137. package/dist/protocol/session_protocol.d.ts +1 -11
  138. package/dist/protocol/session_protocol.js +242 -343
  139. package/dist/protocol/session_protocol.js.map +1 -1
  140. package/dist/sdk/client.js +2 -24
  141. package/dist/sdk/client.js.map +1 -1
  142. package/dist/sdk/index.d.ts +1 -1
  143. package/dist/sdk/index.js.map +1 -1
  144. package/dist/sdk/session.js +0 -9
  145. package/dist/sdk/session.js.map +1 -1
  146. package/dist/sdk/types.d.ts +0 -4
  147. package/dist/starter/skills/guided-review/SKILL.md +1 -1
  148. package/dist/tui/chat_controller/command_hints.js +0 -2
  149. package/dist/tui/chat_controller/command_hints.js.map +1 -1
  150. package/dist/tui/chat_view.js +0 -2
  151. package/dist/tui/chat_view.js.map +1 -1
  152. package/dist/tui/session_chat_app.js +1 -1
  153. package/dist/tui/session_chat_app.js.map +1 -1
  154. package/dist/tui/session_chat_controller.js +2 -38
  155. package/dist/tui/session_chat_controller.js.map +1 -1
  156. package/dist/tui/ui/custom_editor.js +0 -5
  157. package/dist/tui/ui/custom_editor.js.map +1 -1
  158. package/dist/tui/ui/footer.js +4 -37
  159. package/dist/tui/ui/footer.js.map +1 -1
  160. package/dist/tui/ui/slash_autocomplete.js +2 -33
  161. package/dist/tui/ui/slash_autocomplete.js.map +1 -1
  162. package/dist/tui/ui/theme/palette.js +0 -2
  163. package/dist/tui/ui/theme/palette.js.map +1 -1
  164. package/dist/tui/ui/theme/theme.js.map +1 -1
  165. package/package.json +4 -4
  166. package/dist/core/diff_review/review_thread.js +0 -264
  167. package/dist/core/diff_review/review_thread.js.map +0 -1
  168. package/dist/core/static/prompts/diff-review-wrapper.md +0 -26
@@ -1,5 +1,3 @@
1
- import { dirname, join, parse, resolve, sep } from "node:path/posix";
2
- import { findAgentsFilesInScopeDetailed } from "../utils/agents_files.js";
3
1
  import { buildProjectContextBlock, buildSkillsIndexBlock } from "../utils/context_builder.js";
4
2
  export function resolvePersonaSkillsForPromptContext(args) {
5
3
  const personaSkills = args.persona.skills;
@@ -38,47 +36,140 @@ export function resolvePersonaSkillsForPromptContext(args) {
38
36
  skillsBlock: buildSkillsIndexBlock(skills),
39
37
  };
40
38
  }
41
- export function resolveProjectContextForPromptContext(args) {
42
- if (!args.includeAgentContext) {
43
- return { agentsFiles: [], warnings: [], projectContextBlock: undefined };
44
- }
45
- const agentsContext = findAgentsFilesInScopeDetailed(args.cwd, args.home);
46
- return {
47
- agentsFiles: agentsContext.files,
48
- warnings: agentsContext.errors,
49
- projectContextBlock: buildProjectContextBlock({
50
- cwd: args.cwd,
51
- home: args.home,
52
- agentsFiles: agentsContext.files,
53
- readFile: args.readFile,
54
- }),
55
- };
39
+ const INSPECT_RUNTIME_PROMPT_CONTEXT_SCRIPT = `
40
+ const fs = require("node:fs");
41
+ const path = require("node:path");
42
+ const { spawnSync } = require("node:child_process");
43
+
44
+ const cwd = path.resolve(process.argv[1]);
45
+ const home = path.resolve(process.argv[2]);
46
+ const includeAgentContext = process.argv[3] === "true";
47
+ const additionalFiles = JSON.parse(process.argv[4]);
48
+ const ignoredChildDirs = new Set(JSON.parse(process.argv[5]));
49
+ const maxDirs = Number(process.argv[6]);
50
+
51
+ function realpath(pathname) {
52
+ try {
53
+ return fs.realpathSync(pathname);
54
+ } catch {
55
+ return undefined;
56
+ }
56
57
  }
57
- export function resolveRuntimePromptBootstrap(args) {
58
- const projectContext = resolveProjectContextForPromptContext({
59
- cwd: args.cwd,
60
- home: args.home,
61
- includeAgentContext: args.includeAgentContext,
62
- readFile: args.readFile,
63
- });
64
- const resolvedSkills = resolvePersonaSkillsForPromptContext({
65
- persona: args.persona,
66
- discoveredSkills: args.discoveredSkills,
67
- });
68
- return {
69
- promptContext: {
70
- cwd: args.cwd,
71
- home: args.home,
72
- includeAgentContext: args.includeAgentContext,
73
- projectContextBlock: projectContext.projectContextBlock,
74
- skillsBlock: resolvedSkills.skillsBlock,
75
- },
76
- agentsFiles: projectContext.agentsFiles,
77
- warnings: projectContext.warnings,
78
- unknownSkills: resolvedSkills.unknown,
79
- };
58
+
59
+ function isSameOrParent(parent, child) {
60
+ if (parent === child) return true;
61
+ const root = path.parse(parent).root;
62
+ if (parent === root) return child.startsWith(root);
63
+ return child.startsWith(parent + path.sep);
64
+ }
65
+
66
+ const cwdReal = realpath(cwd) || cwd;
67
+ const homeReal = realpath(home) || home;
68
+ const cwdWithinHome = isSameOrParent(homeReal, cwdReal);
69
+
70
+ function resolveAgentsFile(pathname) {
71
+ const resolved = path.resolve(pathname);
72
+ if (path.basename(resolved) !== "AGENTS.md") return undefined;
73
+ const canonical = realpath(resolved);
74
+ if (!canonical || path.basename(canonical) !== "AGENTS.md") return undefined;
75
+ let stat;
76
+ try {
77
+ stat = fs.statSync(canonical);
78
+ } catch {
79
+ return undefined;
80
+ }
81
+ if (!stat.isFile()) return undefined;
82
+ if (cwdWithinHome && !isSameOrParent(homeReal, canonical)) return undefined;
83
+ const fileDir = path.dirname(canonical);
84
+ if (!isSameOrParent(fileDir, cwdReal) && !isSameOrParent(cwdReal, fileDir)) return undefined;
85
+ return { path: resolved, canonical };
86
+ }
87
+
88
+ function ancestorCandidates() {
89
+ const stop = cwdWithinHome ? home : path.parse(cwd).root;
90
+ const candidates = [];
91
+ let dir = cwd;
92
+ while (true) {
93
+ candidates.push(path.join(dir, "AGENTS.md"));
94
+ if (dir === stop) break;
95
+ const parent = path.dirname(dir);
96
+ if (parent === dir) break;
97
+ dir = parent;
98
+ }
99
+ return candidates;
100
+ }
101
+
102
+ const agentsFiles = [];
103
+ const seenFiles = new Set();
104
+ function addAgentsFile(pathname) {
105
+ const file = resolveAgentsFile(pathname);
106
+ if (!file || seenFiles.has(file.canonical)) return;
107
+ seenFiles.add(file.canonical);
108
+ agentsFiles.push({ path: file.path, content: fs.readFileSync(file.canonical, "utf8") });
109
+ }
110
+
111
+ const childAgentsFiles = [];
112
+ if (includeAgentContext) {
113
+ for (const candidate of [...ancestorCandidates(), ...additionalFiles]) {
114
+ addAgentsFile(candidate);
115
+ }
116
+
117
+ const seenDirs = new Set();
118
+ let visitedDirs = 0;
119
+ function walk(dir) {
120
+ if (visitedDirs >= maxDirs) return;
121
+ const canonicalDir = realpath(dir);
122
+ if (!canonicalDir || seenDirs.has(canonicalDir) || !isSameOrParent(cwdReal, canonicalDir)) return;
123
+ seenDirs.add(canonicalDir);
124
+ visitedDirs += 1;
125
+
126
+ let entries;
127
+ try {
128
+ entries = fs.readdirSync(canonicalDir, { withFileTypes: true });
129
+ } catch {
130
+ return;
131
+ }
132
+ entries.sort((a, b) => a.name.localeCompare(b.name));
133
+ for (const entry of entries) {
134
+ if (visitedDirs >= maxDirs) return;
135
+ if ((!entry.isDirectory() && !entry.isSymbolicLink()) || ignoredChildDirs.has(entry.name)) {
136
+ continue;
137
+ }
138
+ const childDir = path.join(canonicalDir, entry.name);
139
+ const candidate = resolveAgentsFile(path.join(childDir, "AGENTS.md"));
140
+ if (
141
+ candidate &&
142
+ !seenFiles.has(candidate.canonical) &&
143
+ path.dirname(candidate.canonical) !== cwdReal
144
+ ) {
145
+ childAgentsFiles.push(candidate.path);
146
+ }
147
+ walk(childDir);
148
+ }
149
+ }
150
+ walk(cwd);
80
151
  }
81
- const DEFAULT_IGNORED_CHILD_DIRS = new Set([
152
+
153
+ let repoRoot;
154
+ try {
155
+ const result = spawnSync("git", ["rev-parse", "--show-toplevel"], {
156
+ cwd,
157
+ encoding: "utf8",
158
+ stdio: ["ignore", "pipe", "ignore"],
159
+ });
160
+ const value = result.status === 0 ? String(result.stdout || "").trim() : "";
161
+ if (value) repoRoot = path.resolve(value);
162
+ } catch {}
163
+
164
+ process.stdout.write(JSON.stringify({
165
+ platform: process.platform,
166
+ nodeVersion: process.version,
167
+ repoRoot,
168
+ agentsFiles,
169
+ childAgentsFiles: [...new Set(childAgentsFiles)].sort((a, b) => a.localeCompare(b)),
170
+ }));
171
+ `;
172
+ const DEFAULT_IGNORED_CHILD_DIRS = [
82
173
  ".cache",
83
174
  ".git",
84
175
  ".hg",
@@ -99,16 +190,27 @@ const DEFAULT_IGNORED_CHILD_DIRS = new Set([
99
190
  "target",
100
191
  "vendor",
101
192
  "venv",
102
- ]);
193
+ ];
103
194
  const CHILD_AGENTS_WALK_MAX_DIRS = 10_000;
104
- const TOOL_BACKEND_PROJECT_CONTEXT_TIMEOUT_MS = 15_000;
105
- export async function resolveRuntimePromptBootstrapAsync(args) {
106
- const projectContext = await resolveProjectContextForPromptContextAsync({
107
- cwd: args.cwd,
108
- home: args.home,
109
- includeAgentContext: args.includeAgentContext,
110
- fs: args.fs,
111
- });
195
+ const RUNTIME_PROMPT_CONTEXT_TIMEOUT_MS = 15_000;
196
+ export async function resolveRuntimePromptBootstrap(args) {
197
+ const inspection = await inspectRuntimePromptContext(args);
198
+ const contentByPath = new Map(inspection.agentsFiles.map((file) => [file.path, file.content]));
199
+ const projectContextBlock = args.includeAgentContext
200
+ ? buildProjectContextBlock({
201
+ cwd: args.cwd,
202
+ home: args.home,
203
+ agentsFiles: inspection.agentsFiles.map((file) => file.path),
204
+ childAgentsFiles: inspection.childAgentsFiles,
205
+ readFile: (path) => {
206
+ const content = contentByPath.get(path);
207
+ if (content === undefined) {
208
+ throw new Error(`missing execution environment AGENTS.md content for ${path}`);
209
+ }
210
+ return content;
211
+ },
212
+ })
213
+ : undefined;
112
214
  const resolvedSkills = resolvePersonaSkillsForPromptContext({
113
215
  persona: args.persona,
114
216
  discoveredSkills: args.discoveredSkills,
@@ -117,290 +219,62 @@ export async function resolveRuntimePromptBootstrapAsync(args) {
117
219
  promptContext: {
118
220
  cwd: args.cwd,
119
221
  home: args.home,
222
+ repoRoot: inspection.repoRoot,
223
+ platform: inspection.platform,
224
+ nodeVersion: inspection.nodeVersion,
120
225
  includeAgentContext: args.includeAgentContext,
121
- projectContextBlock: projectContext.projectContextBlock,
226
+ projectContextBlock,
122
227
  skillsBlock: resolvedSkills.skillsBlock,
123
228
  },
124
- agentsFiles: projectContext.agentsFiles,
125
- warnings: projectContext.warnings,
229
+ agentsFiles: inspection.agentsFiles.map((file) => file.path),
126
230
  unknownSkills: resolvedSkills.unknown,
127
231
  };
128
232
  }
129
- async function resolveProjectContextForPromptContextAsync(args) {
130
- if (!args.includeAgentContext) {
131
- return { agentsFiles: [], warnings: [], projectContextBlock: undefined };
132
- }
133
- if (args.fs.runBash) {
134
- return await resolveProjectContextWithCommandAsync({
135
- cwd: args.cwd,
136
- home: args.home,
137
- runBash: args.fs.runBash,
138
- });
139
- }
140
- const agentsFiles = await findAgentsFilesFromCwdToHomeAsync(args.cwd, args.home, args.fs);
141
- const childAgentsFiles = await findChildAgentsFilesAsync(args.cwd, args.fs);
142
- const projectContextBlock = await buildProjectContextBlockAsync({
233
+ async function inspectRuntimePromptContext(args) {
234
+ const result = await args.backend.runNodeScript(INSPECT_RUNTIME_PROMPT_CONTEXT_SCRIPT, [
235
+ args.cwd,
236
+ args.home,
237
+ String(args.includeAgentContext),
238
+ JSON.stringify(args.agentContextFiles),
239
+ JSON.stringify(DEFAULT_IGNORED_CHILD_DIRS),
240
+ String(CHILD_AGENTS_WALK_MAX_DIRS),
241
+ ], {
143
242
  cwd: args.cwd,
144
- home: args.home,
145
- agentsFiles,
146
- childAgentsFiles,
147
- readFile: args.fs.readFile,
148
- });
149
- return {
150
- agentsFiles,
151
- warnings: [],
152
- projectContextBlock,
153
- };
154
- }
155
- async function resolveProjectContextWithCommandAsync(args) {
156
- const result = await args.runBash(buildResolveProjectContextCommand(args.cwd, args.home), {
157
- timeoutMs: TOOL_BACKEND_PROJECT_CONTEXT_TIMEOUT_MS,
243
+ timeoutMs: RUNTIME_PROMPT_CONTEXT_TIMEOUT_MS,
244
+ maxCaptureBytes: null,
158
245
  });
159
246
  if (result.exitCode !== 0) {
160
- return { agentsFiles: [], warnings: [], projectContextBlock: undefined };
247
+ const output = result.output.trim();
248
+ throw new Error(output
249
+ ? `failed to inspect execution environment prompt context: ${output}`
250
+ : "failed to inspect execution environment prompt context");
161
251
  }
162
- const parsed = parseProjectContextCommandOutput(args.cwd, result.output);
163
- const contentByPath = new Map(parsed.agentsFiles.map((file) => [file.path, file.content]));
164
- const projectContextBlock = await buildProjectContextBlockAsync({
165
- cwd: args.cwd,
166
- home: args.home,
167
- agentsFiles: parsed.agentsFiles.map((file) => file.path),
168
- childAgentsFiles: parsed.childAgentsFiles,
169
- readFile: async (path) => {
170
- const content = contentByPath.get(path);
171
- if (content === undefined) {
172
- throw new Error(`missing decoded AGENTS.md content for ${path}`);
173
- }
174
- return content;
175
- },
176
- });
177
- return {
178
- agentsFiles: parsed.agentsFiles.map((file) => file.path),
179
- warnings: [],
180
- projectContextBlock,
181
- };
182
- }
183
- async function fileExists(path, fs) {
252
+ let parsed;
184
253
  try {
185
- await fs.readFile(path);
186
- return true;
254
+ parsed = JSON.parse(result.output);
187
255
  }
188
- catch {
189
- return false;
256
+ catch (error) {
257
+ throw new Error("execution environment returned invalid prompt context JSON", { cause: error });
190
258
  }
191
- }
192
- function isSameOrParentPath(parent, child) {
193
- if (parent === child)
194
- return true;
195
- const root = parse(parent).root;
196
- if (parent === root)
197
- return child.startsWith(root);
198
- return child.startsWith(parent + sep);
199
- }
200
- async function findAgentsFilesFromCwdToHomeAsync(cwd, home, fs) {
201
- const cwdAbs = resolve(cwd);
202
- const homeAbs = resolve(home);
203
- const withinHome = cwdAbs === homeAbs || cwdAbs.startsWith(homeAbs + sep);
204
- const stopAbs = withinHome ? homeAbs : parse(cwdAbs).root;
205
- const found = [];
206
- let dir = cwdAbs;
207
- while (true) {
208
- const candidate = join(dir, "AGENTS.md");
209
- if (await fileExists(candidate, fs)) {
210
- found.push(candidate);
211
- }
212
- if (dir === stopAbs)
213
- break;
214
- const parent = dirname(dir);
215
- if (parent === dir)
216
- break;
217
- dir = parent;
259
+ if (!parsed || typeof parsed !== "object") {
260
+ throw new Error("execution environment returned invalid prompt context shape");
218
261
  }
219
- return found;
220
- }
221
- async function findChildAgentsFilesAsync(cwd, fs) {
222
- const cwdAbs = resolve(cwd);
223
- const found = [];
224
- const seenDirs = new Set();
225
- let visitedDirs = 0;
226
- const walk = async (dir) => {
227
- if (visitedDirs >= CHILD_AGENTS_WALK_MAX_DIRS)
228
- return;
229
- if (seenDirs.has(dir))
230
- return;
231
- seenDirs.add(dir);
232
- visitedDirs += 1;
233
- let entries;
234
- try {
235
- entries = await fs.listDir(dir);
236
- }
237
- catch {
238
- return;
239
- }
240
- for (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {
241
- if (visitedDirs >= CHILD_AGENTS_WALK_MAX_DIRS)
242
- return;
243
- if (!entry.isDirectory && !entry.isSymlink)
244
- continue;
245
- if (DEFAULT_IGNORED_CHILD_DIRS.has(entry.name))
246
- continue;
247
- const childDir = join(dir, entry.name);
248
- const candidate = join(childDir, "AGENTS.md");
249
- if ((await fileExists(candidate, fs)) && isSameOrParentPath(cwdAbs, candidate)) {
250
- found.push(candidate);
251
- }
252
- await walk(childDir);
253
- }
254
- };
255
- await walk(cwdAbs);
256
- return found.filter((filePath) => dirname(filePath) !== cwdAbs);
257
- }
258
- function buildFindChildAgentsFilesCommand(cwd) {
259
- const ignoredExpression = [...DEFAULT_IGNORED_CHILD_DIRS]
260
- .sort((a, b) => a.localeCompare(b))
261
- .map((name) => `-name ${shellQuote(name)}`)
262
- .join(" -o ");
263
- return [
264
- "find",
265
- shellQuote(cwd),
266
- "\\(",
267
- ignoredExpression,
268
- "\\)",
269
- "-prune",
270
- "-o",
271
- "-type",
272
- "f",
273
- "-name",
274
- shellQuote("AGENTS.md"),
275
- "-print",
276
- "2>/dev/null",
277
- "|",
278
- "head",
279
- "-n",
280
- String(CHILD_AGENTS_WALK_MAX_DIRS),
281
- ].join(" ");
282
- }
283
- function buildResolveProjectContextCommand(cwd, home) {
284
- const ancestorFiles = findAncestorAgentsFileCandidates(cwd, home);
285
- const ancestors = ancestorFiles.map(shellQuote).join(" ");
286
- return [
287
- "for file in",
288
- ancestors,
289
- "; do",
290
- '[ -f "$file" ] || continue;',
291
- "printf 'A\\t';",
292
- "printf '%s' \"$file\" | base64 | tr -d '\\n';",
293
- "printf '\\t';",
294
- "base64 < \"$file\" | tr -d '\\n';",
295
- "printf '\\n';",
296
- "done;",
297
- buildFindChildAgentsFilesCommand(cwd),
298
- "| while IFS= read -r file; do",
299
- "printf 'C\\t';",
300
- "printf '%s' \"$file\" | base64 | tr -d '\\n';",
301
- "printf '\\n';",
302
- "done",
303
- ].join(" ");
304
- }
305
- function findAncestorAgentsFileCandidates(cwd, home) {
306
- const cwdAbs = resolve(cwd);
307
- const homeAbs = resolve(home);
308
- const withinHome = cwdAbs === homeAbs || cwdAbs.startsWith(homeAbs + sep);
309
- const stopAbs = withinHome ? homeAbs : parse(cwdAbs).root;
310
- const candidates = [];
311
- let dir = cwdAbs;
312
- while (true) {
313
- candidates.push(join(dir, "AGENTS.md"));
314
- if (dir === stopAbs)
315
- break;
316
- const parent = dirname(dir);
317
- if (parent === dir)
318
- break;
319
- dir = parent;
320
- }
321
- return candidates;
322
- }
323
- function parseProjectContextCommandOutput(cwd, output) {
324
- const cwdAbs = resolve(cwd);
325
- const agentsFiles = [];
326
- const childAgentsFiles = [];
327
- for (const line of output.split("\n")) {
328
- if (!line.trim())
329
- continue;
330
- const [kind, encodedPath, encodedContent] = line.split("\t");
331
- if (!kind || !encodedPath) {
332
- throw new Error("invalid project context command output");
333
- }
334
- const filePath = decodeBase64Utf8(encodedPath);
335
- if (!filePath) {
336
- throw new Error("project context command returned an empty path");
337
- }
338
- if (kind === "A") {
339
- if (!isSameOrParentPath(dirname(filePath), cwdAbs))
340
- continue;
341
- if (encodedContent === undefined) {
342
- throw new Error(`project context command returned AGENTS.md without content: ${filePath}`);
343
- }
344
- agentsFiles.push({
345
- path: filePath,
346
- content: decodeBase64Utf8(encodedContent),
347
- });
348
- continue;
349
- }
350
- if (kind === "C" && isSameOrParentPath(cwdAbs, filePath) && dirname(filePath) !== cwdAbs) {
351
- childAgentsFiles.push(filePath);
352
- continue;
353
- }
354
- if (kind !== "C") {
355
- throw new Error(`unknown project context command output row '${kind}'`);
356
- }
357
- }
358
- return { agentsFiles, childAgentsFiles };
359
- }
360
- function decodeBase64Utf8(value) {
361
- return Buffer.from(value, "base64").toString("utf-8");
362
- }
363
- function shellQuote(arg) {
364
- if (/^[A-Za-z0-9@%+=:,./-]+$/.test(arg)) {
365
- return arg;
262
+ const value = parsed;
263
+ if (typeof value.platform !== "string" ||
264
+ typeof value.nodeVersion !== "string" ||
265
+ (value.repoRoot !== undefined && typeof value.repoRoot !== "string") ||
266
+ !Array.isArray(value.agentsFiles) ||
267
+ !Array.isArray(value.childAgentsFiles)) {
268
+ throw new Error("execution environment returned invalid prompt context shape");
366
269
  }
367
- return `'${arg.replaceAll("'", "'\\''")}'`;
368
- }
369
- async function buildProjectContextBlockAsync(args) {
370
- const injectedAgentsFiles = new Set(args.agentsFiles);
371
- const childAgentsFiles = args.childAgentsFiles.filter((filePath) => !injectedAgentsFiles.has(filePath));
372
- if (args.agentsFiles.length === 0 && childAgentsFiles.length === 0)
373
- return undefined;
374
- const escapeXml = (value) => value
375
- .replaceAll("&", "&amp;")
376
- .replaceAll("<", "&lt;")
377
- .replaceAll(">", "&gt;")
378
- .replaceAll('"', "&quot;")
379
- .replaceAll("'", "&apos;");
380
- const lines = ["### Project context", ""];
381
- for (const filePath of args.agentsFiles) {
382
- let content = "";
383
- try {
384
- content = await args.readFile(filePath);
385
- }
386
- catch {
387
- continue;
270
+ for (const file of value.agentsFiles) {
271
+ if (!file || typeof file.path !== "string" || typeof file.content !== "string") {
272
+ throw new Error("execution environment returned invalid AGENTS.md entry");
388
273
  }
389
- lines.push(`<file path="${escapeXml(filePath)}">`);
390
- lines.push(content.trimEnd());
391
- lines.push("</file>");
392
- lines.push("");
393
274
  }
394
- if (childAgentsFiles.length > 0) {
395
- lines.push("Nested AGENTS.md files under the current working directory (paths only):");
396
- lines.push("");
397
- lines.push("<nested-agents-files>");
398
- for (const filePath of childAgentsFiles) {
399
- lines.push(` <file path="${escapeXml(filePath)}" />`);
400
- }
401
- lines.push("</nested-agents-files>");
275
+ if (value.childAgentsFiles.some((path) => typeof path !== "string")) {
276
+ throw new Error("execution environment returned invalid child AGENTS.md entry");
402
277
  }
403
- const out = lines.join("\n").trimEnd();
404
- return out.trim() ? out : undefined;
278
+ return value;
405
279
  }
406
280
  //# sourceMappingURL=runtime_bootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime_bootstrap.js","sourceRoot":"","sources":["../../../src/core/runtime/runtime_bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime_bootstrap.js","sourceRoot":"","sources":["../../../src/core/runtime/runtime_bootstrap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAS9F,MAAM,UAAU,oCAAoC,CAAC,IAGpD;IACC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAE1C,IAAI,aAAa,KAAK,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC1C,OAAO;YACL,MAAM;YACN,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC;SAC3C,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,OAAO;QACL,MAAM;QACN,OAAO;QACP,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC;KAC3C,CAAC;AACJ,CAAC;AAkBD,MAAM,qCAAqC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoI7C,CAAC;AAEF,MAAM,0BAA0B,GAAG;IACjC,QAAQ;IACR,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,OAAO;IACP,eAAe;IACf,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;IACP,aAAa;IACb,OAAO;IACP,UAAU;IACV,MAAM;IACN,cAAc;IACd,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,MAAM;CACP,CAAC;AAEF,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAC1C,MAAM,iCAAiC,GAAG,MAAM,CAAC;AAUjD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,IAAuC;IAEvC,MAAM,UAAU,GAAG,MAAM,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/F,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB;QAClD,CAAC,CAAC,wBAAwB,CAAC;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5D,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;YAC7C,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjB,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,MAAM,IAAI,KAAK,CAAC,uDAAuD,IAAI,EAAE,CAAC,CAAC;gBACjF,CAAC;gBACD,OAAO,OAAO,CAAC;YACjB,CAAC;SACF,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,cAAc,GAAG,oCAAoC,CAAC;QAC1D,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;KACxC,CAAC,CAAC;IAEH,OAAO;QACL,aAAa,EAAE;YACb,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,mBAAmB;YACnB,WAAW,EAAE,cAAc,CAAC,WAAW;SACxC;QACD,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5D,aAAa,EAAE,cAAc,CAAC,OAAO;KACtC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,IAAuC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAC7C,qCAAqC,EACrC;QACE,IAAI,CAAC,GAAG;QACR,IAAI,CAAC,IAAI;QACT,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,0BAA0B,CAAC;QAC1C,MAAM,CAAC,0BAA0B,CAAC;KACnC,EACD;QACE,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,SAAS,EAAE,iCAAiC;QAC5C,eAAe,EAAE,IAAI;KACtB,CACF,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CACb,MAAM;YACJ,CAAC,CAAC,2DAA2D,MAAM,EAAE;YACrE,CAAC,CAAC,wDAAwD,CAC7D,CAAC;IACJ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,4DAA4D,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,KAAK,GAAG,MAAiD,CAAC;IAChE,IACE,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAClC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACpE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;QACjC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EACtC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,KAAuC,CAAC;AACjD,CAAC"}
@@ -1,12 +1,9 @@
1
1
  import { formatSubagentsForPrompt, getSubagentBasePrompt } from "../subagents/registry.js";
2
2
  import { buildBaseSystemPrompt, buildEnvironmentTag } from "../utils/context.js";
3
- import { resolvePromptGitRoot } from "../utils/git.js";
4
3
  export function composeSessionPrompts(args) {
5
- const repoRoot = resolvePromptGitRoot({ cwd: args.cwd });
6
4
  const environmentTag = buildEnvironmentTag({
7
- riskLevel: args.riskLevel,
8
5
  cwd: args.cwd,
9
- repoRoot,
6
+ repoRoot: args.repoRoot,
10
7
  datetime: args.datetime,
11
8
  platform: args.platform,
12
9
  nodeVersion: args.nodeVersion,
@@ -28,9 +25,8 @@ export function composeSessionPrompts(args) {
28
25
  mainPersonaSystemPrompt: args.persona.systemPrompt,
29
26
  });
30
27
  const subagentEnvironmentTag = buildEnvironmentTag({
31
- riskLevel: config.riskLevel ?? args.riskLevel,
32
28
  cwd: args.cwd,
33
- repoRoot,
29
+ repoRoot: args.repoRoot,
34
30
  datetime: args.datetime,
35
31
  platform: args.platform,
36
32
  nodeVersion: args.nodeVersion,
@@ -1 +1 @@
1
- {"version":3,"file":"session_prompt_composer.js","sourceRoot":"","sources":["../../../src/core/runtime/session_prompt_composer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAmBvD,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAEzD,MAAM,cAAc,GAAG,mBAAmB,CAAC;QACzC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,QAAQ;QACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;QAC7C,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;QAC9C,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;QAC7C,cAAc;QACd,cAAc,EAAE,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC;KACvD,CAAC,CAAC;IAEH,MAAM,eAAe,GAA2B,EAAE,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;gBAChD,IAAI;gBACJ,MAAM;gBACN,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;aACnD,CAAC,CAAC;YAEH,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;gBACjD,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;gBAC7C,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ;gBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YAEH,eAAe,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC;gBAC5C,mBAAmB;gBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;gBAC7C,cAAc,EAAE,sBAAsB;aACvC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,eAAe;KAChB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"session_prompt_composer.js","sourceRoot":"","sources":["../../../src/core/runtime/session_prompt_composer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAkBjF,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,MAAM,cAAc,GAAG,mBAAmB,CAAC;QACzC,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;QAC7C,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;QAC9C,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;QAC7C,cAAc;QACd,cAAc,EAAE,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC;KACvD,CAAC,CAAC;IAEH,MAAM,eAAe,GAA2B,EAAE,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;gBAChD,IAAI;gBACJ,MAAM;gBACN,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;aACnD,CAAC,CAAC;YAEH,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;gBACjD,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YAEH,eAAe,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC;gBAC5C,mBAAmB;gBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;gBAC7C,cAAc,EAAE,sBAAsB;aACvC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,eAAe;KAChB,CAAC;AACJ,CAAC"}
@@ -19,11 +19,8 @@ export class CoreSession {
19
19
  setReasoning(reasoning) {
20
20
  this.engine.setReasoning(reasoning);
21
21
  }
22
- setRiskLevel(level) {
23
- this.engine.setRiskLevel(level);
24
- }
25
- setConfig(config) {
26
- this.engine.setConfig(config);
22
+ setRuntimeConfig(config, modelResolver) {
23
+ this.engine.setRuntimeConfig(config, modelResolver);
27
24
  }
28
25
  setPromptContext(context) {
29
26
  this.engine.setPromptContext(context);
@@ -1 +1 @@
1
- {"version":3,"file":"core_session.js","sourceRoot":"","sources":["../../../src/core/session/core_session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core_session.js","sourceRoot":"","sources":["../../../src/core/session/core_session.ts"],"names":[],"mappings":"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"}