@getpaseo/server 0.1.77 → 0.1.79

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 (192) hide show
  1. package/dist/scripts/dev-runner.js +1 -13
  2. package/dist/scripts/dev-runner.js.map +1 -1
  3. package/dist/scripts/supervisor-entrypoint.js +17 -3
  4. package/dist/scripts/supervisor-entrypoint.js.map +1 -1
  5. package/dist/server/client/daemon-client.d.ts +34 -2
  6. package/dist/server/client/daemon-client.d.ts.map +1 -1
  7. package/dist/server/client/daemon-client.js +138 -1
  8. package/dist/server/client/daemon-client.js.map +1 -1
  9. package/dist/server/server/agent/agent-manager.d.ts +6 -0
  10. package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
  11. package/dist/server/server/agent/agent-manager.js +40 -5
  12. package/dist/server/server/agent/agent-manager.js.map +1 -1
  13. package/dist/server/server/agent/agent-metadata-generator.js +1 -1
  14. package/dist/server/server/agent/agent-metadata-generator.js.map +1 -1
  15. package/dist/server/server/agent/agent-sdk-types.d.ts +5 -0
  16. package/dist/server/server/agent/agent-sdk-types.d.ts.map +1 -1
  17. package/dist/server/server/agent/agent-storage.d.ts +3 -0
  18. package/dist/server/server/agent/agent-storage.d.ts.map +1 -1
  19. package/dist/server/server/agent/agent-storage.js +58 -22
  20. package/dist/server/server/agent/agent-storage.js.map +1 -1
  21. package/dist/server/server/agent/create-agent-lifecycle-dispatch.d.ts +51 -0
  22. package/dist/server/server/agent/create-agent-lifecycle-dispatch.d.ts.map +1 -0
  23. package/dist/server/server/agent/create-agent-lifecycle-dispatch.js +140 -0
  24. package/dist/server/server/agent/create-agent-lifecycle-dispatch.js.map +1 -0
  25. package/dist/server/server/agent/import-sessions.js +2 -2
  26. package/dist/server/server/agent/import-sessions.js.map +1 -1
  27. package/dist/server/server/agent/mcp-server.d.ts.map +1 -1
  28. package/dist/server/server/agent/mcp-server.js +202 -99
  29. package/dist/server/server/agent/mcp-server.js.map +1 -1
  30. package/dist/server/server/agent/provider-registry.js +2 -2
  31. package/dist/server/server/agent/provider-registry.js.map +1 -1
  32. package/dist/server/server/agent/providers/acp-agent.d.ts +3 -0
  33. package/dist/server/server/agent/providers/acp-agent.d.ts.map +1 -1
  34. package/dist/server/server/agent/providers/acp-agent.js +44 -4
  35. package/dist/server/server/agent/providers/acp-agent.js.map +1 -1
  36. package/dist/server/server/agent/providers/claude/agent.d.ts.map +1 -1
  37. package/dist/server/server/agent/providers/claude/agent.js +17 -9
  38. package/dist/server/server/agent/providers/claude/agent.js.map +1 -1
  39. package/dist/server/server/agent/providers/claude/project-dir.d.ts +5 -0
  40. package/dist/server/server/agent/providers/claude/project-dir.d.ts.map +1 -0
  41. package/dist/server/server/agent/providers/claude/project-dir.js +40 -0
  42. package/dist/server/server/agent/providers/claude/project-dir.js.map +1 -0
  43. package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts.map +1 -1
  44. package/dist/server/server/agent/providers/codex/tool-call-mapper.js +13 -2
  45. package/dist/server/server/agent/providers/codex/tool-call-mapper.js.map +1 -1
  46. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +4 -0
  47. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
  48. package/dist/server/server/agent/providers/codex-app-server-agent.js +57 -19
  49. package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
  50. package/dist/server/server/agent/providers/cursor-acp-agent.d.ts.map +1 -1
  51. package/dist/server/server/agent/providers/cursor-acp-agent.js +11 -1
  52. package/dist/server/server/agent/providers/cursor-acp-agent.js.map +1 -1
  53. package/dist/server/server/agent/providers/generic-acp-agent.d.ts +2 -0
  54. package/dist/server/server/agent/providers/generic-acp-agent.d.ts.map +1 -1
  55. package/dist/server/server/agent/providers/generic-acp-agent.js +2 -0
  56. package/dist/server/server/agent/providers/generic-acp-agent.js.map +1 -1
  57. package/dist/server/server/agent/providers/opencode/runtime.d.ts +1 -0
  58. package/dist/server/server/agent/providers/opencode/runtime.d.ts.map +1 -1
  59. package/dist/server/server/agent/providers/opencode/runtime.js.map +1 -1
  60. package/dist/server/server/agent/providers/opencode/server-manager.d.ts +4 -0
  61. package/dist/server/server/agent/providers/opencode/server-manager.d.ts.map +1 -1
  62. package/dist/server/server/agent/providers/opencode/server-manager.js +18 -2
  63. package/dist/server/server/agent/providers/opencode/server-manager.js.map +1 -1
  64. package/dist/server/server/agent/providers/opencode/test-server-manager.d.ts +2 -0
  65. package/dist/server/server/agent/providers/opencode/test-server-manager.d.ts.map +1 -1
  66. package/dist/server/server/agent/providers/opencode/test-server-manager.js +1 -0
  67. package/dist/server/server/agent/providers/opencode/test-server-manager.js.map +1 -1
  68. package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.d.ts +2 -0
  69. package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.d.ts.map +1 -1
  70. package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.js +1 -1
  71. package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.js.map +1 -1
  72. package/dist/server/server/agent/providers/opencode-agent.d.ts.map +1 -1
  73. package/dist/server/server/agent/providers/opencode-agent.js +7 -2
  74. package/dist/server/server/agent/providers/opencode-agent.js.map +1 -1
  75. package/dist/server/server/agent/providers/{pi-direct-agent.d.ts → pi/agent.d.ts} +38 -29
  76. package/dist/server/server/agent/providers/pi/agent.d.ts.map +1 -0
  77. package/dist/server/server/agent/providers/pi/agent.js +829 -0
  78. package/dist/server/server/agent/providers/pi/agent.js.map +1 -0
  79. package/dist/server/server/agent/providers/pi/cli-runtime.d.ts +18 -0
  80. package/dist/server/server/agent/providers/pi/cli-runtime.d.ts.map +1 -0
  81. package/dist/server/server/agent/providers/pi/cli-runtime.js +218 -0
  82. package/dist/server/server/agent/providers/pi/cli-runtime.js.map +1 -0
  83. package/dist/server/server/agent/providers/pi/history-mapper.d.ts +5 -0
  84. package/dist/server/server/agent/providers/pi/history-mapper.d.ts.map +1 -0
  85. package/dist/server/server/agent/providers/pi/history-mapper.js +139 -0
  86. package/dist/server/server/agent/providers/pi/history-mapper.js.map +1 -0
  87. package/dist/server/server/agent/providers/pi/rpc-types.d.ts +185 -0
  88. package/dist/server/server/agent/providers/pi/rpc-types.d.ts.map +1 -0
  89. package/dist/server/server/agent/providers/pi/rpc-types.js +2 -0
  90. package/dist/server/server/agent/providers/pi/rpc-types.js.map +1 -0
  91. package/dist/server/server/agent/providers/pi/runtime.d.ts +48 -0
  92. package/dist/server/server/agent/providers/pi/runtime.d.ts.map +1 -0
  93. package/dist/server/server/agent/providers/pi/runtime.js +52 -0
  94. package/dist/server/server/agent/providers/pi/runtime.js.map +1 -0
  95. package/dist/server/server/agent/providers/pi/session-descriptor.d.ts +10 -0
  96. package/dist/server/server/agent/providers/pi/session-descriptor.d.ts.map +1 -0
  97. package/dist/server/server/agent/providers/pi/session-descriptor.js +300 -0
  98. package/dist/server/server/agent/providers/pi/session-descriptor.js.map +1 -0
  99. package/dist/server/server/agent/providers/pi/test-utils/fake-pi.d.ts +52 -0
  100. package/dist/server/server/agent/providers/pi/test-utils/fake-pi.d.ts.map +1 -0
  101. package/dist/server/server/agent/providers/pi/test-utils/fake-pi.js +109 -0
  102. package/dist/server/server/agent/providers/pi/test-utils/fake-pi.js.map +1 -0
  103. package/dist/server/server/agent/providers/pi/tool-call-mapper.d.ts +112 -0
  104. package/dist/server/server/agent/providers/pi/tool-call-mapper.d.ts.map +1 -0
  105. package/dist/server/server/agent/providers/pi/tool-call-mapper.js +284 -0
  106. package/dist/server/server/agent/providers/pi/tool-call-mapper.js.map +1 -0
  107. package/dist/server/server/agent/system-prompt.d.ts +2 -0
  108. package/dist/server/server/agent/system-prompt.d.ts.map +1 -0
  109. package/dist/server/server/agent/system-prompt.js +8 -0
  110. package/dist/server/server/agent/system-prompt.js.map +1 -0
  111. package/dist/server/server/bootstrap.d.ts +1 -0
  112. package/dist/server/server/bootstrap.d.ts.map +1 -1
  113. package/dist/server/server/bootstrap.js +15 -1
  114. package/dist/server/server/bootstrap.js.map +1 -1
  115. package/dist/server/server/config.d.ts.map +1 -1
  116. package/dist/server/server/config.js +6 -1
  117. package/dist/server/server/config.js.map +1 -1
  118. package/dist/server/server/daemon-config-store.js +1 -0
  119. package/dist/server/server/daemon-config-store.js.map +1 -1
  120. package/dist/server/server/persisted-config.d.ts +51 -44
  121. package/dist/server/server/persisted-config.d.ts.map +1 -1
  122. package/dist/server/server/persisted-config.js +1 -0
  123. package/dist/server/server/persisted-config.js.map +1 -1
  124. package/dist/server/server/pid-lock.d.ts +2 -2
  125. package/dist/server/server/session.d.ts +21 -0
  126. package/dist/server/server/session.d.ts.map +1 -1
  127. package/dist/server/server/session.js +232 -10
  128. package/dist/server/server/session.js.map +1 -1
  129. package/dist/server/server/websocket-server.d.ts +11 -1
  130. package/dist/server/server/websocket-server.d.ts.map +1 -1
  131. package/dist/server/server/websocket-server.js +10 -2
  132. package/dist/server/server/websocket-server.js.map +1 -1
  133. package/dist/server/server/workspace-git-service.d.ts +5 -1
  134. package/dist/server/server/workspace-git-service.d.ts.map +1 -1
  135. package/dist/server/server/workspace-git-service.js +122 -62
  136. package/dist/server/server/workspace-git-service.js.map +1 -1
  137. package/dist/server/shared/importable-providers.d.ts +1 -1
  138. package/dist/server/shared/importable-providers.d.ts.map +1 -1
  139. package/dist/server/shared/importable-providers.js +1 -1
  140. package/dist/server/shared/importable-providers.js.map +1 -1
  141. package/dist/server/shared/messages.d.ts +2187 -24
  142. package/dist/server/shared/messages.d.ts.map +1 -1
  143. package/dist/server/shared/messages.js +108 -0
  144. package/dist/server/shared/messages.js.map +1 -1
  145. package/dist/server/terminal/terminal-manager.d.ts +1 -0
  146. package/dist/server/terminal/terminal-manager.d.ts.map +1 -1
  147. package/dist/server/terminal/terminal-manager.js +8 -0
  148. package/dist/server/terminal/terminal-manager.js.map +1 -1
  149. package/dist/server/terminal/terminal-session-controller.d.ts +1 -0
  150. package/dist/server/terminal/terminal-session-controller.d.ts.map +1 -1
  151. package/dist/server/terminal/terminal-session-controller.js +26 -0
  152. package/dist/server/terminal/terminal-session-controller.js.map +1 -1
  153. package/dist/server/terminal/terminal.d.ts +1 -0
  154. package/dist/server/terminal/terminal.d.ts.map +1 -1
  155. package/dist/server/terminal/terminal.js +32 -10
  156. package/dist/server/terminal/terminal.js.map +1 -1
  157. package/dist/server/terminal/worker-terminal-manager.d.ts.map +1 -1
  158. package/dist/server/terminal/worker-terminal-manager.js +18 -0
  159. package/dist/server/terminal/worker-terminal-manager.js.map +1 -1
  160. package/dist/server/utils/branch-slug.d.ts +14 -0
  161. package/dist/server/utils/branch-slug.d.ts.map +1 -0
  162. package/dist/server/utils/branch-slug.js +49 -0
  163. package/dist/server/utils/branch-slug.js.map +1 -0
  164. package/dist/server/utils/directory-suggestions.js +2 -2
  165. package/dist/server/utils/directory-suggestions.js.map +1 -1
  166. package/dist/server/utils/path.d.ts +1 -0
  167. package/dist/server/utils/path.d.ts.map +1 -1
  168. package/dist/server/utils/path.js +31 -0
  169. package/dist/server/utils/path.js.map +1 -1
  170. package/dist/server/utils/run-git-command.d.ts.map +1 -1
  171. package/dist/server/utils/run-git-command.js +3 -1
  172. package/dist/server/utils/run-git-command.js.map +1 -1
  173. package/dist/server/utils/worktree.d.ts +1 -12
  174. package/dist/server/utils/worktree.d.ts.map +1 -1
  175. package/dist/server/utils/worktree.js +2 -52
  176. package/dist/server/utils/worktree.js.map +1 -1
  177. package/dist/src/server/persisted-config.js +1 -0
  178. package/dist/src/server/persisted-config.js.map +1 -1
  179. package/dist/src/shared/messages.js +108 -0
  180. package/dist/src/shared/messages.js.map +1 -1
  181. package/package.json +13 -11
  182. package/dist/server/server/agent/orchestrator-instructions.d.ts +0 -7
  183. package/dist/server/server/agent/orchestrator-instructions.d.ts.map +0 -1
  184. package/dist/server/server/agent/orchestrator-instructions.js +0 -51
  185. package/dist/server/server/agent/orchestrator-instructions.js.map +0 -1
  186. package/dist/server/server/agent/providers/pi-direct-agent.d.ts.map +0 -1
  187. package/dist/server/server/agent/providers/pi-direct-agent.js +0 -1151
  188. package/dist/server/server/agent/providers/pi-direct-agent.js.map +0 -1
  189. package/dist/server/server/agent/providers/pi-session-recovery-policy.d.ts +0 -22
  190. package/dist/server/server/agent/providers/pi-session-recovery-policy.d.ts.map +0 -1
  191. package/dist/server/server/agent/providers/pi-session-recovery-policy.js +0 -51
  192. package/dist/server/server/agent/providers/pi-session-recovery-policy.js.map +0 -1
@@ -0,0 +1,112 @@
1
+ import type { ToolCallDetail } from "../../agent-sdk-types.js";
2
+ interface BashToolInput {
3
+ command: string;
4
+ timeout?: number;
5
+ }
6
+ interface ReadToolInput {
7
+ path: string;
8
+ offset?: number;
9
+ limit?: number;
10
+ }
11
+ interface EditToolInput {
12
+ path: string;
13
+ edits: Array<{
14
+ oldText: string;
15
+ newText: string;
16
+ }>;
17
+ }
18
+ interface WriteToolInput {
19
+ path: string;
20
+ content: string;
21
+ }
22
+ interface FindToolInput {
23
+ pattern: string;
24
+ path?: string;
25
+ limit?: number;
26
+ }
27
+ interface GrepToolInput {
28
+ pattern: string;
29
+ path?: string;
30
+ glob?: string;
31
+ ignoreCase?: boolean;
32
+ literal?: boolean;
33
+ context?: number;
34
+ limit?: number;
35
+ }
36
+ interface LsToolInput {
37
+ path?: string;
38
+ limit?: number;
39
+ }
40
+ interface PiToolResultObject {
41
+ output?: string;
42
+ stdout?: string;
43
+ text?: string;
44
+ content?: PiToolResultContent[];
45
+ exitCode?: number;
46
+ code?: number;
47
+ details?: PiToolResultDetails;
48
+ }
49
+ interface PiToolResultDetails {
50
+ diff?: string;
51
+ mode?: string;
52
+ server?: string;
53
+ tool?: string;
54
+ mcpResult?: unknown;
55
+ }
56
+ interface PiToolResultTextContent {
57
+ type: "text";
58
+ text: string;
59
+ }
60
+ interface PiToolResultUnknownContent {
61
+ type: string;
62
+ }
63
+ type PiToolResultContent = PiToolResultTextContent | PiToolResultUnknownContent;
64
+ export type PiToolResult = string | PiToolResultObject | null;
65
+ interface PiBashToolCall {
66
+ kind: "bash";
67
+ toolName: "bash";
68
+ args: BashToolInput;
69
+ }
70
+ interface PiReadToolCall {
71
+ kind: "read";
72
+ toolName: "read";
73
+ args: ReadToolInput;
74
+ }
75
+ interface PiEditToolCall {
76
+ kind: "edit";
77
+ toolName: "edit";
78
+ args: EditToolInput;
79
+ }
80
+ interface PiWriteToolCall {
81
+ kind: "write";
82
+ toolName: "write";
83
+ args: WriteToolInput;
84
+ }
85
+ interface PiFindToolCall {
86
+ kind: "find";
87
+ toolName: "find";
88
+ args: FindToolInput;
89
+ }
90
+ interface PiGrepToolCall {
91
+ kind: "grep";
92
+ toolName: "grep";
93
+ args: GrepToolInput;
94
+ }
95
+ interface PiLsToolCall {
96
+ kind: "ls";
97
+ toolName: "ls";
98
+ args: LsToolInput;
99
+ }
100
+ interface PiUnknownToolCall {
101
+ kind: "unknown";
102
+ toolName: string;
103
+ args: unknown;
104
+ }
105
+ export type PiTrackedToolCall = PiBashToolCall | PiReadToolCall | PiEditToolCall | PiWriteToolCall | PiFindToolCall | PiGrepToolCall | PiLsToolCall | PiUnknownToolCall;
106
+ export declare function parseToolResult(rawResult: unknown): PiToolResult;
107
+ export declare function extractTextFromToolResult(result: PiToolResult): string | undefined;
108
+ export declare function parseToolArgs(toolName: string, rawArgs: unknown): PiTrackedToolCall;
109
+ export declare function resolveToolCallName(toolCall: PiTrackedToolCall, result?: PiToolResult): string;
110
+ export declare function mapToolDetail(toolCall: PiTrackedToolCall, result?: PiToolResult): ToolCallDetail;
111
+ export {};
112
+ //# sourceMappingURL=tool-call-mapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-call-mapper.d.ts","sourceRoot":"","sources":["../../../../../../src/server/agent/providers/pi/tool-call-mapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,284 @@
1
+ import { z } from "zod";
2
+ const PiToolResultTextContentSchema = z.object({
3
+ type: z.literal("text"),
4
+ text: z.string(),
5
+ });
6
+ const PiToolResultUnknownContentSchema = z
7
+ .object({
8
+ type: z.string(),
9
+ })
10
+ .passthrough();
11
+ const PiToolResultContentSchema = z.union([
12
+ PiToolResultTextContentSchema,
13
+ PiToolResultUnknownContentSchema,
14
+ ]);
15
+ const PiToolResultDetailsSchema = z
16
+ .object({
17
+ diff: z.string().optional(),
18
+ })
19
+ .passthrough();
20
+ const PiToolResultObjectSchema = z
21
+ .object({
22
+ output: z.string().optional(),
23
+ stdout: z.string().optional(),
24
+ text: z.string().optional(),
25
+ content: z.array(PiToolResultContentSchema).optional(),
26
+ exitCode: z.number().optional(),
27
+ code: z.number().optional(),
28
+ details: PiToolResultDetailsSchema.optional(),
29
+ })
30
+ .passthrough();
31
+ const PiToolResultSchema = z.union([z.string(), PiToolResultObjectSchema, z.null()]);
32
+ function isRecord(value) {
33
+ return typeof value === "object" && value !== null && !Array.isArray(value);
34
+ }
35
+ function readNonEmptyString(value) {
36
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : undefined;
37
+ }
38
+ const BashToolInputSchema = z.object({
39
+ command: z.string(),
40
+ timeout: z.number().optional(),
41
+ });
42
+ const ReadToolInputSchema = z.object({
43
+ path: z.string(),
44
+ offset: z.number().optional(),
45
+ limit: z.number().optional(),
46
+ });
47
+ const EditToolInputSchema = z.object({
48
+ path: z.string(),
49
+ edits: z.array(z.object({
50
+ oldText: z.string(),
51
+ newText: z.string(),
52
+ })),
53
+ });
54
+ const LegacyEditToolInputSchema = z.object({
55
+ path: z.string(),
56
+ old_string: z.string().optional(),
57
+ oldString: z.string().optional(),
58
+ new_string: z.string().optional(),
59
+ newString: z.string().optional(),
60
+ });
61
+ const WriteToolInputSchema = z.object({
62
+ path: z.string(),
63
+ content: z.string(),
64
+ });
65
+ const FindToolInputSchema = z.object({
66
+ pattern: z.string(),
67
+ path: z.string().optional(),
68
+ limit: z.number().optional(),
69
+ });
70
+ const GrepToolInputSchema = z.object({
71
+ pattern: z.string(),
72
+ path: z.string().optional(),
73
+ glob: z.string().optional(),
74
+ ignoreCase: z.boolean().optional(),
75
+ literal: z.boolean().optional(),
76
+ context: z.number().optional(),
77
+ limit: z.number().optional(),
78
+ });
79
+ const LsToolInputSchema = z.object({
80
+ path: z.string().optional(),
81
+ limit: z.number().optional(),
82
+ });
83
+ export function parseToolResult(rawResult) {
84
+ const parsed = PiToolResultSchema.safeParse(rawResult);
85
+ if (parsed.success) {
86
+ return parsed.data;
87
+ }
88
+ return null;
89
+ }
90
+ export function extractTextFromToolResult(result) {
91
+ if (typeof result === "string") {
92
+ return result;
93
+ }
94
+ if (!result) {
95
+ return undefined;
96
+ }
97
+ const directText = result.output ?? result.stdout ?? result.text;
98
+ if (directText) {
99
+ return directText;
100
+ }
101
+ if (!result.content) {
102
+ return undefined;
103
+ }
104
+ const textParts = [];
105
+ for (const block of result.content) {
106
+ if (block.type === "text" && "text" in block) {
107
+ textParts.push(block.text);
108
+ }
109
+ }
110
+ return textParts.length > 0 ? textParts.join("\n") : undefined;
111
+ }
112
+ export function parseToolArgs(toolName, rawArgs) {
113
+ if (toolName === "edit") {
114
+ return parseEditToolArgs(rawArgs);
115
+ }
116
+ const schema = SIMPLE_TOOL_SCHEMAS[toolName];
117
+ if (schema) {
118
+ const parsed = schema.safeParse(rawArgs);
119
+ if (parsed.success) {
120
+ return { kind: toolName, toolName, args: parsed.data };
121
+ }
122
+ }
123
+ return { kind: "unknown", toolName, args: rawArgs ?? null };
124
+ }
125
+ function stripMcpProxyPrefix(toolName, serverName) {
126
+ const prefix = `${serverName}_`;
127
+ return toolName.startsWith(prefix) ? toolName.slice(prefix.length) : toolName;
128
+ }
129
+ export function resolveToolCallName(toolCall, result) {
130
+ if (toolCall.toolName !== "mcp") {
131
+ return toolCall.toolName;
132
+ }
133
+ if (result && typeof result !== "string") {
134
+ const serverName = readNonEmptyString(result.details?.server);
135
+ const toolName = readNonEmptyString(result.details?.tool);
136
+ if (serverName && toolName) {
137
+ return `${serverName}.${toolName}`;
138
+ }
139
+ }
140
+ if (isRecord(toolCall.args)) {
141
+ const requestedTool = readNonEmptyString(toolCall.args.tool);
142
+ const requestedServer = readNonEmptyString(toolCall.args.server);
143
+ if (requestedTool && requestedServer) {
144
+ return `${requestedServer}.${stripMcpProxyPrefix(requestedTool, requestedServer)}`;
145
+ }
146
+ if (requestedTool) {
147
+ const [serverName, ...toolParts] = requestedTool.split("_");
148
+ if (serverName && toolParts.length > 0) {
149
+ return `${serverName}.${toolParts.join("_")}`;
150
+ }
151
+ }
152
+ }
153
+ return toolCall.toolName;
154
+ }
155
+ export function mapToolDetail(toolCall, result) {
156
+ const parsedResult = result ?? null;
157
+ switch (toolCall.kind) {
158
+ case "bash": {
159
+ const summary = resolveToolCallOutput(parsedResult);
160
+ return {
161
+ type: "shell",
162
+ command: toolCall.args.command,
163
+ output: summary.output,
164
+ exitCode: summary.exitCode,
165
+ };
166
+ }
167
+ case "read":
168
+ return {
169
+ type: "read",
170
+ filePath: toolCall.args.path,
171
+ content: extractTextFromToolResult(parsedResult),
172
+ offset: toolCall.args.offset,
173
+ limit: toolCall.args.limit,
174
+ };
175
+ case "edit": {
176
+ const firstEdit = toolCall.args.edits[0];
177
+ const unifiedDiff = parsedResult && typeof parsedResult !== "string" ? parsedResult.details?.diff : undefined;
178
+ return {
179
+ type: "edit",
180
+ filePath: toolCall.args.path,
181
+ oldString: firstEdit?.oldText,
182
+ newString: firstEdit?.newText,
183
+ unifiedDiff,
184
+ };
185
+ }
186
+ case "write":
187
+ return {
188
+ type: "write",
189
+ filePath: toolCall.args.path,
190
+ content: toolCall.args.content,
191
+ };
192
+ case "find":
193
+ return mapFindToolDetail(toolCall.args, parsedResult);
194
+ case "grep":
195
+ return mapGrepToolDetail(toolCall.args, parsedResult);
196
+ case "ls":
197
+ return mapLsToolDetail(toolCall.args, parsedResult);
198
+ default:
199
+ return {
200
+ type: "unknown",
201
+ input: toolCall.args,
202
+ output: parsedResult,
203
+ };
204
+ }
205
+ }
206
+ function resolveToolCallOutput(result) {
207
+ if (typeof result === "string") {
208
+ return { output: result };
209
+ }
210
+ if (!result) {
211
+ return {};
212
+ }
213
+ const summary = {
214
+ output: extractTextFromToolResult(result),
215
+ };
216
+ if (typeof result.exitCode === "number") {
217
+ summary.exitCode = result.exitCode;
218
+ return summary;
219
+ }
220
+ if (typeof result.code === "number") {
221
+ summary.exitCode = result.code;
222
+ return summary;
223
+ }
224
+ summary.exitCode = null;
225
+ return summary;
226
+ }
227
+ function normalizeLegacyEditArgs(rawArgs) {
228
+ const parsed = LegacyEditToolInputSchema.safeParse(rawArgs);
229
+ if (!parsed.success) {
230
+ return null;
231
+ }
232
+ const oldText = parsed.data.old_string ?? parsed.data.oldString;
233
+ const newText = parsed.data.new_string ?? parsed.data.newString;
234
+ if (!oldText || newText === undefined) {
235
+ return null;
236
+ }
237
+ return {
238
+ path: parsed.data.path,
239
+ edits: [{ oldText, newText }],
240
+ };
241
+ }
242
+ function parseEditToolArgs(rawArgs) {
243
+ const parsed = EditToolInputSchema.safeParse(rawArgs);
244
+ if (parsed.success) {
245
+ return { kind: "edit", toolName: "edit", args: parsed.data };
246
+ }
247
+ const legacyArgs = normalizeLegacyEditArgs(rawArgs);
248
+ if (legacyArgs) {
249
+ return { kind: "edit", toolName: "edit", args: legacyArgs };
250
+ }
251
+ return { kind: "unknown", toolName: "edit", args: rawArgs ?? null };
252
+ }
253
+ const SIMPLE_TOOL_SCHEMAS = {
254
+ bash: BashToolInputSchema,
255
+ read: ReadToolInputSchema,
256
+ write: WriteToolInputSchema,
257
+ find: FindToolInputSchema,
258
+ grep: GrepToolInputSchema,
259
+ ls: LsToolInputSchema,
260
+ };
261
+ function mapFindToolDetail(args, result) {
262
+ return {
263
+ type: "search",
264
+ query: args.pattern,
265
+ toolName: "search",
266
+ content: typeof result === "string" ? result : undefined,
267
+ };
268
+ }
269
+ function mapGrepToolDetail(args, result) {
270
+ return {
271
+ type: "search",
272
+ query: args.pattern,
273
+ toolName: "grep",
274
+ content: typeof result === "string" ? result : undefined,
275
+ };
276
+ }
277
+ function mapLsToolDetail(args, result) {
278
+ return {
279
+ type: "search",
280
+ query: args.path ?? "ls",
281
+ content: typeof result === "string" ? result : undefined,
282
+ };
283
+ }
284
+ //# sourceMappingURL=tool-call-mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-call-mapper.js","sourceRoot":"","sources":["../../../../../../src/server/agent/providers/pi/tool-call-mapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function composeSystemPromptParts(...parts: Array<string | null | undefined>): string | undefined;
2
+ //# sourceMappingURL=system-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../../../src/server/agent/system-prompt.ts"],"names":[],"mappings":"AAAA,wBAAgB,wBAAwB,CACtC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GACzC,MAAM,GAAG,SAAS,CAOpB"}
@@ -0,0 +1,8 @@
1
+ export function composeSystemPromptParts(...parts) {
2
+ const prompt = parts
3
+ .map((part) => part?.trim())
4
+ .filter((part) => typeof part === "string" && part.length > 0)
5
+ .join("\n\n");
6
+ return prompt.length > 0 ? prompt : undefined;
7
+ }
8
+ //# sourceMappingURL=system-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../../../src/server/agent/system-prompt.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,wBAAwB,CACtC,GAAG,KAAuC;IAE1C,MAAM,MAAM,GAAG,KAAK;SACjB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SAC3B,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SAC7E,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAChD,CAAC"}
@@ -55,6 +55,7 @@ export interface PaseoDaemonConfig {
55
55
  mcpEnabled?: boolean;
56
56
  mcpInjectIntoAgents?: boolean;
57
57
  autoArchiveAfterMerge?: boolean;
58
+ appendSystemPrompt?: string;
58
59
  staticDir: string;
59
60
  mcpDebug: boolean;
60
61
  isDev?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/server/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/server/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -160,6 +160,7 @@ export async function createPaseoDaemon(config, rootLogger) {
160
160
  },
161
161
  ])),
162
162
  autoArchiveAfterMerge: config.autoArchiveAfterMerge ?? false,
163
+ appendSystemPrompt: config.appendSystemPrompt ?? "",
163
164
  }, logger);
164
165
  const serverId = getOrCreateServerId(config.paseoHome, { logger });
165
166
  const daemonKeyPair = await loadOrCreateDaemonKeyPair(config.paseoHome, logger);
@@ -351,6 +352,7 @@ export async function createPaseoDaemon(config, rootLogger) {
351
352
  },
352
353
  providerDefinitions: providerRegistry,
353
354
  registry: agentStorage,
355
+ appendSystemPrompt: config.appendSystemPrompt,
354
356
  logger,
355
357
  });
356
358
  const detachAgentStoragePersistence = attachAgentStoragePersistence(logger, agentManager, agentStorage);
@@ -646,6 +648,9 @@ export async function createPaseoDaemon(config, rootLogger) {
646
648
  daemonConfigStore.onFieldChange("mcp.injectIntoAgents", (value) => {
647
649
  agentManager.setMcpBaseUrl(value ? mcpBaseUrl : null);
648
650
  });
651
+ daemonConfigStore.onFieldChange("appendSystemPrompt", (value) => {
652
+ agentManager.setAppendSystemPrompt(typeof value === "string" ? value : "");
653
+ });
649
654
  const relayEnabled = config.relayEnabled ?? true;
650
655
  const relayEndpoint = config.relayEndpoint ?? "relay.paseo.sh:443";
651
656
  const relayPublicEndpoint = config.relayPublicEndpoint ?? relayEndpoint;
@@ -679,7 +684,16 @@ export async function createPaseoDaemon(config, rootLogger) {
679
684
  catch (error) {
680
685
  logger.error({ err: error, intent }, "Failed to handle daemon lifecycle intent");
681
686
  }
682
- }, projectRegistry, workspaceRegistry, chatService, loopService, scheduleService, checkoutDiffManager, scriptRouteStore, scriptRuntimeStore, handleBranchChange, () => (boundListenTarget?.type === "tcp" ? boundListenTarget.port : null), () => (boundListenTarget?.type === "tcp" ? boundListenTarget.host : null), (hostname) => scriptHealthMonitor.getHealthForHostname(hostname), workspaceGitService, github, config.pushNotificationSender);
687
+ }, projectRegistry, workspaceRegistry, chatService, loopService, scheduleService, checkoutDiffManager, scriptRouteStore, scriptRuntimeStore, handleBranchChange, () => (boundListenTarget?.type === "tcp" ? boundListenTarget.port : null), () => (boundListenTarget?.type === "tcp" ? boundListenTarget.host : null), (hostname) => scriptHealthMonitor.getHealthForHostname(hostname), workspaceGitService, github, config.pushNotificationSender, {
688
+ listen: formatListenTarget(boundListenTarget ?? listenTarget),
689
+ relay: {
690
+ enabled: relayEnabled,
691
+ endpoint: relayEndpoint,
692
+ publicEndpoint: relayPublicEndpoint,
693
+ useTls: relayUseTls,
694
+ publicUseTls: relayPublicUseTls,
695
+ },
696
+ });
683
697
  if (relayEnabled) {
684
698
  const offer = await createConnectionOfferV2({
685
699
  serverId,