pum-agent 0.2.28-beta.1 → 0.2.29-beta.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pum-agent",
3
- "version": "0.2.28-beta.1",
3
+ "version": "0.2.29-beta.1",
4
4
  "description": "A compact terminal coding agent powered by pi and OpenTUI.",
5
5
  "license": "MIT",
6
6
  "type": "module",
package/src/app.tsx CHANGED
@@ -4428,7 +4428,7 @@ export function App({
4428
4428
  const call: ToolCall = {
4429
4429
  id,
4430
4430
  name: "bash",
4431
- args: [command.split("\n")[0]!.trim()],
4431
+ args: toolArgs("bash", { command }, cwd),
4432
4432
  state: "running",
4433
4433
  startedAt: Date.now(),
4434
4434
  input: { command },
package/src/replay.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { AgentMessageKind, Line } from "./transcript";
2
- import { type ToolCall } from "./tool-line";
2
+ import { toolArgs, type ToolCall } from "./tool-line";
3
3
  import { interruptedToolCall, settledToolCall, startedToolCall } from "./tool-row";
4
4
  import {
5
5
  WEB_SEARCH_CUSTOM_TYPE,
@@ -274,7 +274,7 @@ export function replayEntries(
274
274
  const call: ToolCall = {
275
275
  id: `user-bash:${entry?.id ?? lines.length}`,
276
276
  name: "bash",
277
- args: [message.command.split("\n")[0]!.trim()],
277
+ args: toolArgs("bash", { command: message.command }, cwd),
278
278
  state: "running",
279
279
  input: { command: message.command },
280
280
  userInitiated: true,
@@ -2376,7 +2376,7 @@ export class SubagentManager {
2376
2376
  const call: ToolCall = {
2377
2377
  id: callId,
2378
2378
  name: "bash",
2379
- args: [command.split("\n")[0]!.trim()],
2379
+ args: toolArgs("bash", { command }, record.snapshot.worktree.path),
2380
2380
  state: "running",
2381
2381
  startedAt: Date.now(),
2382
2382
  input: { command },
package/src/tool-line.ts CHANGED
@@ -99,7 +99,7 @@ export function toolArgs(name: string, args: any, cwd: string): string[] {
99
99
  if (!args || typeof args !== "object") return [];
100
100
 
101
101
  if (name === "bash" && typeof args.command === "string") {
102
- return [args.command.split("\n")[0]!.trim()];
102
+ return [args.command.replaceAll("\r\n", "\n").replaceAll("\r", "\n")];
103
103
  }
104
104
  if (name === "web_search") {
105
105
  // web-search.ts owns which fields are safe to show and joins them; this
@@ -177,7 +177,9 @@ export function toolArgs(name: string, args: any, cwd: string): string[] {
177
177
 
178
178
  /** One flat line for logs, persistence, and anywhere without styled chunks. */
179
179
  export function toolArgText(name: string, args: any, cwd: string): string {
180
- return toolArgs(name, args, cwd).join(", ");
180
+ return toolArgs(name, args, cwd)
181
+ .map((arg) => arg.replaceAll("\n", "\\n"))
182
+ .join(", ");
181
183
  }
182
184
 
183
185
  /** Count changed lines from a tool result's unified patch details. */