@open-multi-agent/core 1.4.2 → 1.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.
Files changed (108) hide show
  1. package/README.md +100 -53
  2. package/dist/agent/agent.d.ts.map +1 -1
  3. package/dist/agent/agent.js +5 -0
  4. package/dist/agent/agent.js.map +1 -1
  5. package/dist/agent/runner.d.ts +12 -0
  6. package/dist/agent/runner.d.ts.map +1 -1
  7. package/dist/agent/runner.js +48 -12
  8. package/dist/agent/runner.js.map +1 -1
  9. package/dist/cli/oma.d.ts +10 -2
  10. package/dist/cli/oma.d.ts.map +1 -1
  11. package/dist/cli/oma.js +10 -5
  12. package/dist/cli/oma.js.map +1 -1
  13. package/dist/dashboard/render-team-run-dashboard.d.ts.map +1 -1
  14. package/dist/dashboard/render-team-run-dashboard.js +177 -84
  15. package/dist/dashboard/render-team-run-dashboard.js.map +1 -1
  16. package/dist/llm/adapter.d.ts +3 -1
  17. package/dist/llm/adapter.d.ts.map +1 -1
  18. package/dist/llm/adapter.js +10 -0
  19. package/dist/llm/adapter.js.map +1 -1
  20. package/dist/llm/ai-sdk.d.ts +2 -1
  21. package/dist/llm/ai-sdk.d.ts.map +1 -1
  22. package/dist/llm/ai-sdk.js +45 -13
  23. package/dist/llm/ai-sdk.js.map +1 -1
  24. package/dist/llm/anthropic.d.ts.map +1 -1
  25. package/dist/llm/anthropic.js +24 -13
  26. package/dist/llm/anthropic.js.map +1 -1
  27. package/dist/llm/azure-openai.js +2 -2
  28. package/dist/llm/azure-openai.js.map +1 -1
  29. package/dist/llm/bedrock.d.ts.map +1 -1
  30. package/dist/llm/bedrock.js +29 -19
  31. package/dist/llm/bedrock.js.map +1 -1
  32. package/dist/llm/copilot.js +2 -2
  33. package/dist/llm/copilot.js.map +1 -1
  34. package/dist/llm/deepseek.d.ts +9 -2
  35. package/dist/llm/deepseek.d.ts.map +1 -1
  36. package/dist/llm/deepseek.js +21 -2
  37. package/dist/llm/deepseek.js.map +1 -1
  38. package/dist/llm/doubao.d.ts +21 -0
  39. package/dist/llm/doubao.d.ts.map +1 -0
  40. package/dist/llm/doubao.js +24 -0
  41. package/dist/llm/doubao.js.map +1 -0
  42. package/dist/llm/gemini.d.ts.map +1 -1
  43. package/dist/llm/gemini.js +32 -18
  44. package/dist/llm/gemini.js.map +1 -1
  45. package/dist/llm/mimo.d.ts +24 -0
  46. package/dist/llm/mimo.d.ts.map +1 -0
  47. package/dist/llm/mimo.js +30 -0
  48. package/dist/llm/mimo.js.map +1 -0
  49. package/dist/llm/openai-common.d.ts +3 -17
  50. package/dist/llm/openai-common.d.ts.map +1 -1
  51. package/dist/llm/openai-common.js +66 -42
  52. package/dist/llm/openai-common.js.map +1 -1
  53. package/dist/llm/openai.d.ts +22 -1
  54. package/dist/llm/openai.d.ts.map +1 -1
  55. package/dist/llm/openai.js +44 -5
  56. package/dist/llm/openai.js.map +1 -1
  57. package/dist/llm/reasoning-fallback.d.ts +80 -15
  58. package/dist/llm/reasoning-fallback.d.ts.map +1 -1
  59. package/dist/llm/reasoning-fallback.js +45 -12
  60. package/dist/llm/reasoning-fallback.js.map +1 -1
  61. package/dist/orchestrator/orchestrator.d.ts.map +1 -1
  62. package/dist/orchestrator/orchestrator.js +35 -2
  63. package/dist/orchestrator/orchestrator.js.map +1 -1
  64. package/dist/tool/built-in/bash.d.ts +1 -1
  65. package/dist/tool/built-in/bash.d.ts.map +1 -1
  66. package/dist/tool/built-in/bash.js +60 -7
  67. package/dist/tool/built-in/bash.js.map +1 -1
  68. package/dist/tool/built-in/file-edit.d.ts.map +1 -1
  69. package/dist/tool/built-in/file-edit.js +13 -8
  70. package/dist/tool/built-in/file-edit.js.map +1 -1
  71. package/dist/tool/built-in/file-read.d.ts.map +1 -1
  72. package/dist/tool/built-in/file-read.js +9 -4
  73. package/dist/tool/built-in/file-read.js.map +1 -1
  74. package/dist/tool/built-in/file-write.d.ts.map +1 -1
  75. package/dist/tool/built-in/file-write.js +11 -6
  76. package/dist/tool/built-in/file-write.js.map +1 -1
  77. package/dist/tool/built-in/fs-walk.d.ts.map +1 -1
  78. package/dist/tool/built-in/fs-walk.js +6 -3
  79. package/dist/tool/built-in/fs-walk.js.map +1 -1
  80. package/dist/tool/built-in/glob.d.ts.map +1 -1
  81. package/dist/tool/built-in/glob.js +10 -4
  82. package/dist/tool/built-in/glob.js.map +1 -1
  83. package/dist/tool/built-in/grep.d.ts.map +1 -1
  84. package/dist/tool/built-in/grep.js +15 -6
  85. package/dist/tool/built-in/grep.js.map +1 -1
  86. package/dist/tool/built-in/path-safety.d.ts +30 -0
  87. package/dist/tool/built-in/path-safety.d.ts.map +1 -0
  88. package/dist/tool/built-in/path-safety.js +106 -0
  89. package/dist/tool/built-in/path-safety.js.map +1 -0
  90. package/dist/tool/mcp.d.ts.map +1 -1
  91. package/dist/tool/mcp.js +58 -33
  92. package/dist/tool/mcp.js.map +1 -1
  93. package/dist/types.d.ts +108 -5
  94. package/dist/types.d.ts.map +1 -1
  95. package/dist/utils/redaction.d.ts +4 -0
  96. package/dist/utils/redaction.d.ts.map +1 -0
  97. package/dist/utils/redaction.js +78 -0
  98. package/dist/utils/redaction.js.map +1 -0
  99. package/package.json +1 -2
  100. package/docs/DECISIONS.md +0 -49
  101. package/docs/cli.md +0 -265
  102. package/docs/context-management.md +0 -64
  103. package/docs/featured-partner.md +0 -28
  104. package/docs/observability.md +0 -56
  105. package/docs/providers/minimax.md +0 -75
  106. package/docs/providers.md +0 -80
  107. package/docs/shared-memory.md +0 -27
  108. package/docs/tool-configuration.md +0 -152
package/README.md CHANGED
@@ -44,12 +44,16 @@
44
44
 
45
45
  > **Your engineers describe the goal, not the graph.**
46
46
 
47
+ Graph-first frameworks make you enumerate every node and edge up front. `open-multi-agent` is goal-first: you describe the outcome and the coordinator builds the task DAG at runtime, so the orchestration adapts to the goal instead of being hand-wired for one.
48
+
49
+ ## Contents
50
+
51
+ [Quick Start](#quick-start) · [Three Ways to Run](#three-ways-to-run) · [Features](#features) · [Orchestration Controls](#orchestration-controls) · [Examples](#examples) · [How Is This Different?](#how-is-this-different-from-x) · [Ecosystem](#ecosystem) · [Architecture](#architecture) · [Supported Providers](#supported-providers) · [Production Checklist](#production-checklist) · [Documentation](#documentation) · [Contributing](#contributing)
52
+
47
53
  ## Quick Start
48
54
 
49
55
  Requires Node.js >= 18.
50
56
 
51
- ### Use it in your project
52
-
53
57
  ```bash
54
58
  npm install @open-multi-agent/core
55
59
  ```
@@ -71,7 +75,13 @@ const orchestrator = new OpenMultiAgent({
71
75
  })
72
76
 
73
77
  const team = orchestrator.createTeam('api-team', { name: 'api-team', agents, sharedMemory: true })
74
- const result = await orchestrator.runTeam(team, 'Create a REST API for a todo list in /tmp/todo-api/')
78
+
79
+ // Built-in filesystem tools default to a `<cwd>/.agent-workspace` sandbox.
80
+ // Point the agent at an absolute path inside that root.
81
+ const result = await orchestrator.runTeam(
82
+ team,
83
+ `Create a REST API for a todo list in ${process.cwd()}/.agent-workspace/todo-api/`,
84
+ )
75
85
 
76
86
  console.log(result.success, result.totalTokenUsage.output_tokens)
77
87
  ```
@@ -104,7 +114,7 @@ Tokens: 12847 output tokens
104
114
 
105
115
  Local models via Ollama need no API key, see [`providers/ollama`](examples/providers/ollama.ts). For hosted providers (`OPENAI_API_KEY`, `GEMINI_API_KEY`, etc.), see [Supported Providers](#supported-providers).
106
116
 
107
- ### Three Ways to Run
117
+ ## Three Ways to Run
108
118
 
109
119
  | Mode | Method | When to use | Example |
110
120
  |------|--------|-------------|---------|
@@ -118,32 +128,66 @@ Preview the coordinator's task DAG without executing agents:
118
128
  const plan = await orchestrator.runTeam(team, goal, { planOnly: true })
119
129
  ```
120
130
 
121
- Inject team context (goal, roster, this worker's role) into every worker prompt. Helps workers stay aligned with the overall goal and makes multi-step runs easier to debug. Off by default; worker prompts stay byte-identical when omitted.
131
+ ## Features
132
+
133
+ | Capability | What you get |
134
+ |------------|--------------|
135
+ | **Goal-driven coordinator** | One `runTeam(team, goal)` call decomposes the goal into a task DAG, parallelizes independents, and synthesizes the result. Unassigned tasks are auto-scheduled — `dependency-first` (default), `round-robin`, `least-busy`, or `capability-match`. |
136
+ | **Mix providers in one team** | 12 built-in providers plus any OpenAI-compatible endpoint (Ollama, vLLM, LM Studio, OpenRouter, Groq), mixed freely in one team. Local servers that emit tool calls as plain text are recovered by a fallback parser. ([full list](#supported-providers) · [setup](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/providers.md)) |
137
+ | **Extended thinking / reasoning** | One `thinking` config maps to Anthropic thinking, Gemini `thinkingConfig`, and OpenAI `reasoning_effort`; reasoning is streamed as events, with opt-in preservation across a provider switch. ([`cross-provider-reasoning`](examples/patterns/cross-provider-reasoning.ts)) |
138
+ | **Tools + MCP** | 6 built-in (`bash`, `file_*`, `grep`, `glob`), opt-in `delegate_to_agent` (cycle + depth guards), custom tools via `defineTool()` + Zod, stdio MCP servers via `connectMCPTools()`. ([tool config](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/tool-configuration.md)) |
139
+ | **Streaming + structured output** | Token-by-token streaming on every adapter (per-agent during team runs via `onAgentStream`); Zod-validated final answer with auto-retry on parse failure. ([`structured-output`](examples/patterns/structured-output.ts)) |
140
+ | **Human-in-the-loop** | Gate execution with `onPlanReady` (approve the plan before any agent runs) and `onApproval` (approve between task rounds), or inspect first with `planOnly`. |
141
+ | **Lifecycle hooks + cancellation** | `beforeRun` rewrites the prompt, `afterRun` post-processes or rejects the result; pass an `AbortSignal` to cancel a run in flight. |
142
+ | **Configurable coordinator** | Override the coordinator's model, provider, adapter, system prompt, or tools via `runTeam(team, goal, { coordinator })`. |
143
+ | **Observability** | `onProgress` events, `onTrace` spans, post-run HTML dashboard rendering the executed task DAG. API keys and tokens are redacted from traces, bash output, and the dashboard. ([observability guide](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/observability.md)) |
144
+ | **Pluggable shared memory** | Default in-process KV; swap in Redis / Postgres / your own backend by implementing `MemoryStore`. ([shared memory](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/shared-memory.md)) |
145
+ | **Sandboxed filesystem workspace** | Built-in filesystem tools are sandboxed to `<cwd>/.agent-workspace` by default; agents sharing the default configuration share this root. For per-agent isolation, set `AgentConfig.cwd`; for a different shared root, set `OrchestratorConfig.defaultCwd`; pass `null` to disable. ([sandbox config](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/tool-configuration.md)) |
146
+
147
+ Production controls ([context strategies](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/context-management.md), task retry with backoff, loop detection, tool output truncation/compression) are covered in the [Production Checklist](#production-checklist).
148
+
149
+ ## Orchestration Controls
150
+
151
+ Fine-grained control over a `runTeam` run. All optional; defaults keep behavior unchanged.
152
+
153
+ **Inject team context.** Prepend the goal, roster, and this worker's role to every worker prompt — helps workers stay aligned and makes multi-step runs easier to debug. Off by default; worker prompts stay byte-identical when omitted.
154
+
155
+ ```ts
156
+ await orchestrator.runTeam(team, goal, { revealCoordinator: true })
157
+ ```
158
+
159
+ **Approve before running.** Inspect the coordinator's plan before any agent executes, and again between task rounds. These live on the orchestrator. Returning `false` aborts; remaining tasks are marked `skipped`.
122
160
 
123
161
  ```ts
124
- const result = await orchestrator.runTeam(team, goal, { revealCoordinator: true })
162
+ const orchestrator = new OpenMultiAgent({
163
+ onPlanReady: async (tasks) => tasks.length <= 10, // gate the whole plan
164
+ onApproval: async (completed, next) => next.length > 0, // gate each round
165
+ })
125
166
  ```
126
167
 
127
- For MapReduce-style fan-out without task dependencies, use `AgentPool.runParallel()` directly. See [`patterns/fan-out-aggregate`](examples/patterns/fan-out-aggregate.ts).
168
+ **Cancel a run.** Pass an `AbortSignal`; aborting stops the run in flight.
128
169
 
129
- For shell and CI, use the JSON-first `oma` binary. See [docs/cli.md](./docs/cli.md).
170
+ ```ts
171
+ const controller = new AbortController()
172
+ const run = orchestrator.runTeam(team, goal, { abortSignal: controller.signal })
173
+ // controller.abort() from elsewhere to cancel
174
+ ```
130
175
 
131
- ## Features
176
+ **Configure the coordinator.** Give the planner its own model, adapter, or extra instructions without touching the worker agents.
132
177
 
133
- | Capability | What you get |
134
- |------------|--------------|
135
- | **Goal-driven coordinator** | One `runTeam(team, goal)` call. The coordinator decomposes the goal into a task DAG, parallelizes independents, and synthesizes the result. |
136
- | **Mix providers in one team** | 10 built-in: Anthropic, OpenAI, Azure, Bedrock, Gemini, Grok, DeepSeek, MiniMax, Qiniu, Copilot. Ollama / vLLM / LM Studio / OpenRouter / Groq via OpenAI-compatible. ([full setup](./docs/providers.md)) |
137
- | **Tools + MCP** | 6 built-in (`bash`, `file_*`, `grep`, `glob`), opt-in `delegate_to_agent`, custom tools via `defineTool()` + Zod, stdio MCP servers via `connectMCPTools()`. ([tool config](./docs/tool-configuration.md)) |
138
- | **Streaming + structured output** | Token-by-token streaming on every adapter; Zod-validated final answer with auto-retry on parse failure. ([`structured-output`](examples/patterns/structured-output.ts)) |
139
- | **Observability** | `onProgress` events, `onTrace` spans, post-run HTML dashboard rendering the executed task DAG. ([observability guide](./docs/observability.md)) |
140
- | **Pluggable shared memory** | Default in-process KV; swap in Redis / Postgres / your own backend by implementing `MemoryStore`. ([shared memory](./docs/shared-memory.md)) |
178
+ ```ts
179
+ await orchestrator.runTeam(team, goal, {
180
+ coordinator: { model: 'claude-opus-4-6', instructions: 'Prefer fewer, larger tasks.' },
181
+ })
182
+ ```
183
+
184
+ **Fan-out without dependencies.** For MapReduce-style parallelism, use `AgentPool.runParallel()` directly. See [`patterns/fan-out-aggregate`](examples/patterns/fan-out-aggregate.ts).
141
185
 
142
- Production controls (context strategies, task retry with backoff, loop detection, tool output truncation/compression) are covered in the [Production Checklist](#production-checklist).
186
+ **Shell & CI.** Use the JSON-first `oma` binary. See [docs/cli.md](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/cli.md).
143
187
 
144
188
  ## Examples
145
189
 
146
- [`examples/`](./examples/) is organized by category: basics, cookbook, patterns, providers, integrations, and production. See [`examples/README.md`](./examples/README.md) for the full index.
190
+ [`examples/`](./examples/) is organized by category: basics, cookbook, patterns, providers, and integrations. See [`examples/README.md`](./examples/README.md) for the full index. ([`production/`](./examples/production/README.md) is open for contributions — see the acceptance criteria.)
147
191
 
148
192
  ### Real-world workflows ([`cookbook/`](./examples/cookbook/))
149
193
 
@@ -153,11 +197,16 @@ End-to-end scenarios you can run today. Each one is a complete, opinionated work
153
197
  - [`meeting-summarizer`](examples/cookbook/meeting-summarizer.ts): three specialised agents fan out on a transcript, an aggregator merges them into one Markdown report with action items and sentiment.
154
198
  - [`competitive-monitoring`](examples/cookbook/competitive-monitoring.ts): three parallel source agents extract claims from feeds; an aggregator cross-checks them and flags contradictions.
155
199
  - [`translation-backtranslation`](examples/cookbook/translation-backtranslation.ts): translate EN to target with one provider, back-translate with another, flag semantic drift.
200
+ - [`incident-postmortem-dag`](examples/cookbook/incident-postmortem-dag.ts): three independent root tasks fan out at t=0, then a root-cause hypothesizer and postmortem writer synthesize them into one document.
201
+ - [`personalized-interview-simulator`](examples/cookbook/personalized-interview-simulator.ts): a stateful interviewer (`Agent.prompt()` across turns) plus a transcript-reading observer, with `readline` human input and a Zod-validated debrief.
156
202
 
157
203
  ### Patterns and integrations
158
204
 
159
205
  - [`basics/team-collaboration`](examples/basics/team-collaboration.ts): `runTeam()` coordinator pattern.
160
206
  - [`patterns/structured-output`](examples/patterns/structured-output.ts): any agent returns Zod-validated JSON.
207
+ - [`patterns/multi-perspective-code-review`](examples/patterns/multi-perspective-code-review.ts): a generator feeds security, performance, and style reviewers running in parallel, then a synthesizer returns Zod-validated findings.
208
+ - [`patterns/cross-provider-reasoning`](examples/patterns/cross-provider-reasoning.ts): preserve a reasoning model's thought stream across a provider switch via `preserveReasoningAsText`.
209
+ - [`patterns/cost-tiered-pipeline`](examples/patterns/cost-tiered-pipeline.ts): assign a different model per stage and estimate per-model USD cost from `onTrace` token counts.
161
210
  - [`patterns/fan-out-aggregate`](examples/patterns/fan-out-aggregate.ts): MapReduce-style fan-out via `AgentPool.runParallel()`.
162
211
  - [`patterns/agent-handoff`](examples/patterns/agent-handoff.ts): synchronous sub-agent delegation via `delegate_to_agent`.
163
212
  - [`integrations/trace-observability`](examples/integrations/trace-observability.ts): `onTrace` spans for LLM calls, tools, and tasks.
@@ -202,17 +251,17 @@ Using `open-multi-agent` in production or a side project? [Open a discussion](ht
202
251
  - **[Engram](https://www.engram-memory.com)** — "Git for AI memory." Syncs knowledge across agents instantly and flags conflicts. ([repo](https://github.com/Agentscreator/engram-memory))
203
252
  - **[@agentsonar/oma](https://github.com/agentsonar/agentsonar-oma)** — Sidecar detecting cross-run delegation cycles, repetition, and rate bursts.
204
253
 
205
- Built an integration? [Open a discussion](https://github.com/open-multi-agent/open-multi-agent/discussions) to get listed.
254
+ Built an integration? See the [integration guide](examples/integrations/README.md) for how to submit a reference or vendor example and get your product listed.
206
255
 
207
256
  ### Provider community offers
208
257
 
209
258
  Limited-time provider offers for `open-multi-agent` users. Listings are not paid endorsements.
210
259
 
211
- - **[MiniMax](https://platform.minimax.io/subscribe/coding-plan?code=6ZoOY13DDV&source=link)** — Use MiniMax M2.7 in OMA's TypeScript multi-agent workflows. OMA users get 12% off the MiniMax Token Plan until 2026-06-30. See the [MiniMax setup guide](./docs/providers/minimax.md).
260
+ - **[MiniMax](https://platform.minimax.io/subscribe/coding-plan?code=6ZoOY13DDV&source=link)** — Use MiniMax M2.7 in OMA's TypeScript multi-agent workflows. OMA users get 12% off the MiniMax Token Plan until 2026-06-30. See the [MiniMax setup guide](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/providers/minimax.md).
212
261
 
213
262
  ### Featured partner
214
263
 
215
- For products and platforms with a deep `open-multi-agent` integration. See the [Featured partner program](./docs/featured-partner.md) for terms and how to apply.
264
+ For products and platforms with a deep `open-multi-agent` integration. See the [Featured partner program](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/featured-partner.md) for terms and how to apply.
216
265
 
217
266
  ## Architecture
218
267
 
@@ -243,16 +292,10 @@ For products and platforms with a deep `open-multi-agent` integration. See the [
243
292
  │ Agent │
244
293
  │ - run() │ ┌────────────────────────┐
245
294
  │ - prompt() │───►│ LLMAdapter │
246
- │ - stream() │ │ - AnthropicAdapter
247
- └────────┬──────────┘ │ - OpenAIAdapter
248
- │ │ - AzureOpenAIAdapter
249
- │ │ - BedrockAdapter
250
- │ │ - CopilotAdapter │
251
- │ │ - GeminiAdapter │
252
- │ │ - GrokAdapter │
253
- │ │ - MiniMaxAdapter │
254
- │ │ - DeepSeekAdapter │
255
- │ │ - QiniuAdapter │
295
+ │ - stream() │ │ - 12 built-in
296
+ └────────┬──────────┘ │ providers
297
+ │ │ - OpenAI-compatible
298
+ │ │ - AI SDK bridge
256
299
  │ └────────────────────────┘
257
300
  ┌────────▼──────────┐
258
301
  │ AgentRunner │ ┌──────────────────────┐
@@ -263,13 +306,6 @@ For products and platforms with a deep `open-multi-agent` integration. See the [
263
306
  └──────────────────────┘
264
307
  ```
265
308
 
266
- ## Core Concepts
267
-
268
- - **Tools + MCP.** Built-ins cover `bash`, `file_read`, `file_write`, `file_edit`, `grep`, and `glob`; custom tools use `defineTool()` + Zod; stdio MCP servers connect through `connectMCPTools()`. See [tool configuration](./docs/tool-configuration.md).
269
- - **Observability.** Wire `onProgress` for live lifecycle events, `onTrace` for structured spans, and `renderTeamRunDashboard(result)` for a static DAG dashboard. See [observability](./docs/observability.md).
270
- - **Shared memory.** Use the default in-process KV or bring Redis, Postgres, Engram, or any `MemoryStore`. See [shared memory](./docs/shared-memory.md).
271
- - **Context management.** Use sliding windows, summarization, rule-based compaction, or a custom compressor for long-running agents. See [context management](./docs/context-management.md).
272
-
273
309
  ## Supported Providers
274
310
 
275
311
  Change `provider`, `model`, and set the env var. The agent config shape stays the same.
@@ -285,11 +321,11 @@ const agent: AgentConfig = {
285
321
 
286
322
  | Kind | How to configure | Services |
287
323
  |------|------------------|----------|
288
- | Built-in shortcuts | Set `provider` to `anthropic`, `gemini`, `openai`, `azure-openai`, `copilot`, `grok`, `deepseek`, `minimax`, `qiniu`, or `bedrock`; the framework supplies the endpoint. | Anthropic, Gemini, OpenAI, Azure OpenAI, GitHub Copilot, xAI Grok, DeepSeek, MiniMax, Qiniu, AWS Bedrock |
289
- | OpenAI-compatible endpoints | Set `provider: 'openai'` plus `baseURL` and, when needed, `apiKey`. | Ollama, vLLM, LM Studio, llama.cpp server, OpenRouter, Groq, Mistral |
324
+ | Built-in shortcuts | Set `provider` to `anthropic`, `gemini`, `openai`, `azure-openai`, `copilot`, `grok`, `deepseek`, `doubao`, `minimax`, `mimo`, `qiniu`, or `bedrock`; the framework supplies the endpoint. | Anthropic, Gemini, OpenAI, Azure OpenAI, GitHub Copilot, xAI Grok, DeepSeek, Doubao (Volcengine), MiniMax, MiMo, Qiniu, AWS Bedrock |
325
+ | OpenAI-compatible endpoints | Set `provider: 'openai'` plus `baseURL` and, when needed, `apiKey`. | Ollama, vLLM, LM Studio, llama.cpp server, OpenRouter, Groq, Mistral, Moonshot (Kimi), Qwen, Zhipu |
290
326
  | Vercel AI SDK | Import `AISdkAdapter` from `@open-multi-agent/core/ai-sdk`; install optional peer `ai` plus an `@ai-sdk/*` provider. | [Any AI SDK provider](https://ai-sdk.dev/providers) (60+ models and hosts) |
291
327
 
292
- See [docs/providers.md](./docs/providers.md) for env vars, model examples, local tool-calling, timeouts, and troubleshooting.
328
+ See [docs/providers.md](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/providers.md) for env vars, model examples, local tool-calling, timeouts, and troubleshooting.
293
329
 
294
330
  ### Vercel AI SDK (optional)
295
331
 
@@ -321,11 +357,23 @@ Before going live, wire up the controls that protect token spend, recover from f
321
357
  | Concern | Knob | Where it lives |
322
358
  |---------|------|----------------|
323
359
  | Bound the conversation | `maxTurns` per agent + `contextStrategy` (`sliding-window` / `summarize` / `compact` / `custom`) | `AgentConfig` |
360
+ | Bound wall-clock time | `timeoutMs` per agent (aborts a run that hangs, common with local models) | `AgentConfig` |
324
361
  | Cap tool output | `maxToolOutputChars` (or per-tool `maxOutputChars`) + `compressToolResults: true` | `AgentConfig` and `defineTool()` |
325
362
  | Recover from failure | Per-task `maxRetries`, `retryDelayMs`, `retryBackoff` (exponential multiplier) | Task config used via `runTasks()` |
326
363
  | Hard-cap spend | `maxTokenBudget` on the orchestrator | `OrchestratorConfig` |
327
364
  | Catch stuck agents | `loopDetection` with `onLoopDetected: 'terminate'` (or a custom handler) | `AgentConfig` |
328
365
  | Trace and audit | `onTrace` to your tracing backend; persist `renderTeamRunDashboard(result)` | `OrchestratorConfig` |
366
+ | Redact secrets | Automatic — API keys, tokens, and Authorization headers stripped from traces, bash output, and dashboard payloads | built-in (on by default) |
367
+ | Bound filesystem reach | `cwd` / `defaultCwd` (default `.agent-workspace` subdir; widen with `process.cwd()`, disable with `null`) | `AgentConfig` / `OrchestratorConfig` |
368
+
369
+ ## Documentation
370
+
371
+ - [Providers](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/providers.md) — env vars, model examples, local tool-calling, timeouts, troubleshooting.
372
+ - [Tool configuration](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/tool-configuration.md) — tool presets, custom tools, the filesystem sandbox, and MCP.
373
+ - [Observability](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/observability.md) — `onProgress` events, `onTrace` spans, and the post-run dashboard.
374
+ - [Shared memory](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/shared-memory.md) — the default store and custom `MemoryStore` backends.
375
+ - [Context management](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/context-management.md) — sliding window, summarization, compaction, and custom compressors.
376
+ - [CLI](https://github.com/open-multi-agent/open-multi-agent/blob/main/docs/cli.md) — the JSON-first `oma` binary for shell and CI.
329
377
 
330
378
  ## Contributing
331
379
 
@@ -338,7 +386,7 @@ Issues, feature requests, and PRs are welcome. Some areas where contributions wo
338
386
  ## Contributors
339
387
 
340
388
  <a href="https://github.com/open-multi-agent/open-multi-agent/graphs/contributors">
341
- <img src="https://contrib.rocks/image?repo=open-multi-agent/open-multi-agent&max=100&v=20260507" />
389
+ <img src="https://contrib.rocks/image?repo=open-multi-agent/open-multi-agent&max=100&v=20260529" />
342
390
  </a>
343
391
 
344
392
  <details>
@@ -357,6 +405,8 @@ Issues, feature requests, and PRs are welcome. Some areas where contributions wo
357
405
  - [@NamelessNATM](https://github.com/NamelessNATM) (agent delegation base implementation)
358
406
  - [@MyPrototypeWhat](https://github.com/MyPrototypeWhat) (reasoning blocks, reasoning_effort, sampling parity, trace input/output)
359
407
  - [@SiMinus](https://github.com/SiMinus) (streaming reasoning events)
408
+ - [@matthewYang08](https://github.com/matthewYang08) (OpenAI reasoning-to-text fallback)
409
+ - [@dvirarad](https://github.com/dvirarad) (OpenAI-family adapter hardening)
360
410
 
361
411
  **Provider integrations**
362
412
 
@@ -367,6 +417,7 @@ Issues, feature requests, and PRs are welcome. Some areas where contributions wo
367
417
  - [@Deathwing](https://github.com/Deathwing) (GitHub Copilot)
368
418
  - [@JackChiang233](https://github.com/JackChiang233) (Qiniu)
369
419
  - [@CodingBangboo](https://github.com/CodingBangboo) (AWS Bedrock)
420
+ - [@kidoom](https://github.com/kidoom) (MiMo, Doubao)
370
421
 
371
422
  **Examples & cookbook**
372
423
 
@@ -383,25 +434,21 @@ Issues, feature requests, and PRs are welcome. Some areas where contributions wo
383
434
  - [@DaiMao-UT](https://github.com/DaiMao-UT) (paper replication triage)
384
435
  - [@oooooowoooooo](https://github.com/oooooowoooooo) (rare disease information triage)
385
436
  - [@CodingBangboo](https://github.com/CodingBangboo) (Express customer support pipeline)
437
+ - [@nuthalapativarun](https://github.com/nuthalapativarun) (Doubao and Zhipu provider examples)
438
+ - [@goodneamtakenbydogs](https://github.com/goodneamtakenbydogs) (Moonshot and Qwen provider examples)
439
+ - [@suans4746-del](https://github.com/suans4746-del) (narrative puzzle hint arbitration)
440
+ - [@gregkonush](https://github.com/gregkonush) (Bilig WorkPaper MCP integration)
386
441
 
387
442
  **Docs & tests**
388
443
 
389
444
  - [@tmchow](https://github.com/tmchow) (llama.cpp docs)
390
445
  - [@kenrogers](https://github.com/kenrogers) (OpenRouter docs)
391
446
  - [@jadegold55](https://github.com/jadegold55) (LLM adapter test coverage)
447
+ - [@btroops](https://github.com/btroops) (DeepSeek tool-calling tests)
448
+ - [@nuthalapativarun](https://github.com/nuthalapativarun) (context-management docs)
392
449
 
393
450
  </details>
394
451
 
395
- ## Star History
396
-
397
- <a href="https://star-history.com/#open-multi-agent/open-multi-agent&Date">
398
- <picture>
399
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=open-multi-agent/open-multi-agent&type=Date&theme=dark&v=20260425" />
400
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=open-multi-agent/open-multi-agent&type=Date&v=20260425" />
401
- <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=open-multi-agent/open-multi-agent&type=Date&v=20260425" />
402
- </picture>
403
- </a>
404
-
405
452
  ## License
406
453
 
407
454
  MIT
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EAEd,UAAU,EACV,WAAW,EAEX,cAAc,EACf,MAAM,aAAa,CAAA;AAEpB,OAAO,KAAK,EAAE,cAAc,IAAI,uBAAuB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAmC,KAAK,UAAU,EAAkB,MAAM,aAAa,CAAA;AAqC9F;;;GAGG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAE5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAc;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAc;IAC5C,OAAO,CAAC,cAAc,CAAmB;IAEzC;;;;;;;OAOG;gBAED,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAkB5B;;;;;OAKG;YACW,SAAS;IA0DvB;;;;;;;OAOG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAQpF;;;;;;;OAOG;IAEG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkBtD;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC;IAY5F,oFAAoF;IACpF,QAAQ,IAAI,UAAU;IAItB,uDAAuD;IACvD,UAAU,IAAI,UAAU,EAAE;IAI1B;;;OAGG;IACH,KAAK,IAAI,IAAI;IAab;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI;IAI5C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B,0DAA0D;IAC1D,QAAQ,IAAI,MAAM,EAAE;IAQpB;;;OAGG;YACW,UAAU;IAiGxB,4DAA4D;IAC5D,OAAO,CAAC,cAAc;IAqBtB;;;OAGG;YACW,wBAAwB;IAiFtC;;;OAGG;YACY,aAAa;IAwD5B,gFAAgF;IAChF,OAAO,CAAC,yBAAyB;IAgBjC;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,gBAAgB;IAqBxB;;;OAGG;IACH,gBAAgB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,cAAc;CAU5D"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EAEd,UAAU,EACV,WAAW,EAEX,cAAc,EACf,MAAM,aAAa,CAAA;AAEpB,OAAO,KAAK,EAAE,cAAc,IAAI,uBAAuB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGvD,OAAO,EAAmC,KAAK,UAAU,EAAkB,MAAM,aAAa,CAAA;AAqC9F;;;GAGG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAE5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAc;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAc;IAC5C,OAAO,CAAC,cAAc,CAAmB;IAEzC;;;;;;;OAOG;gBAED,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAkB5B;;;;;OAKG;YACW,SAAS;IA6DvB;;;;;;;OAOG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAQpF;;;;;;;OAOG;IAEG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkBtD;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC;IAY5F,oFAAoF;IACpF,QAAQ,IAAI,UAAU;IAItB,uDAAuD;IACvD,UAAU,IAAI,UAAU,EAAE;IAI1B;;;OAGG;IACH,KAAK,IAAI,IAAI;IAab;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI;IAI5C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B,0DAA0D;IAC1D,QAAQ,IAAI,MAAM,EAAE;IAQpB;;;OAGG;YACW,UAAU;IAiGxB,4DAA4D;IAC5D,OAAO,CAAC,cAAc;IAqBtB;;;OAGG;YACW,wBAAwB;IAiFtC;;;OAGG;YACY,aAAa;IAwD5B,gFAAgF;IAChF,OAAO,CAAC,yBAAyB;IAgBjC;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,gBAAgB;IAqBxB;;;OAGG;IACH,gBAAgB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,cAAc;CAW5D"}
@@ -36,6 +36,7 @@
36
36
  * ```
37
37
  */
38
38
  import { emitTrace, generateRunId } from '../utils/trace.js';
39
+ import { defaultWorkspaceDir } from '../tool/built-in/path-safety.js';
39
40
  import { createAdapter } from '../llm/adapter.js';
40
41
  import { AgentRunner } from './runner.js';
41
42
  import { buildStructuredOutputInstruction, extractJSON, validateOutput, } from './structured-output.js';
@@ -139,12 +140,15 @@ export class Agent {
139
140
  toolPreset: this.config.toolPreset,
140
141
  allowedTools: this.config.tools,
141
142
  disallowedTools: this.config.disallowedTools,
143
+ cwd: this.config.cwd,
142
144
  agentName: this.name,
143
145
  agentRole: this.config.systemPrompt?.slice(0, 50) ?? 'assistant',
144
146
  loopDetection: this.config.loopDetection,
145
147
  maxTokenBudget: this.config.maxTokenBudget,
146
148
  contextStrategy: this.config.contextStrategy,
147
149
  compressToolResults: this.config.compressToolResults,
150
+ preserveReasoningAsText: this.config.preserveReasoningAsText,
151
+ compressReasoningText: this.config.compressReasoningText,
148
152
  };
149
153
  this.runner = new AgentRunner(adapter, this._toolRegistry, this._toolExecutor, runnerOptions);
150
154
  return this.runner;
@@ -554,6 +558,7 @@ export class Agent {
554
558
  model: this.config.model,
555
559
  },
556
560
  abortSignal,
561
+ cwd: this.config.cwd === undefined ? defaultWorkspaceDir() : this.config.cwd,
557
562
  };
558
563
  }
559
564
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,12 @@ export interface RunnerOptions {
87
87
  readonly toolPreset?: 'readonly' | 'readwrite' | 'full';
88
88
  readonly allowedTools?: readonly string[];
89
89
  readonly disallowedTools?: readonly string[];
90
+ /**
91
+ * Root directory passed to built-in filesystem tools via `ToolUseContext.cwd`.
92
+ * `null` disables the sandbox; `undefined` falls back to
93
+ * `<process.cwd()>/.agent-workspace`.
94
+ */
95
+ readonly cwd?: string | null;
90
96
  /** Display name of the agent driving this runner (used in tool context). */
91
97
  readonly agentName?: string;
92
98
  /** Short role description of the agent (used in tool context). */
@@ -104,6 +110,12 @@ export interface RunnerOptions {
104
110
  readonly compressToolResults?: boolean | {
105
111
  readonly minChars?: number;
106
112
  };
113
+ /** See {@link AgentConfig.preserveReasoningAsText}. */
114
+ readonly preserveReasoningAsText?: boolean;
115
+ /** See {@link AgentConfig.compressReasoningText}. */
116
+ readonly compressReasoningText?: boolean | {
117
+ readonly minChars?: number;
118
+ };
107
119
  }
108
120
  /**
109
121
  * Per-call callbacks for observing tool execution in real time.
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,8 @@ import { TokenBudgetExceededError } from '../errors.js';
15
15
  import { LoopDetector } from './loop-detector.js';
16
16
  import { emitTrace } from '../utils/trace.js';
17
17
  import { estimateTokens } from '../utils/tokens.js';
18
+ import { redactSensitiveObject, redactSensitiveText } from '../utils/redaction.js';
19
+ import { defaultWorkspaceDir } from '../tool/built-in/path-safety.js';
18
20
  // ---------------------------------------------------------------------------
19
21
  // Tool presets
20
22
  // ---------------------------------------------------------------------------
@@ -138,6 +140,15 @@ function prependSyntheticPrefixToFirstUser(messages, prefix) {
138
140
  };
139
141
  return [...messages.slice(0, userIdx), merged, ...messages.slice(userIdx + 1)];
140
142
  }
143
+ function loopWarningText(kind) {
144
+ return kind === 'text_repetition'
145
+ ? 'WARNING: You appear to be generating the same response repeatedly. ' +
146
+ 'This suggests you are stuck in a loop. Please try a different approach ' +
147
+ 'or provide new information.'
148
+ : 'WARNING: You appear to be repeating the same tool calls with identical arguments. ' +
149
+ 'This suggests you are stuck in a loop. Please try a different approach, use different ' +
150
+ 'parameters, or explain what you are trying to accomplish.';
151
+ }
141
152
  // ---------------------------------------------------------------------------
142
153
  // AgentRunner
143
154
  // ---------------------------------------------------------------------------
@@ -434,6 +445,8 @@ export class AgentRunner {
434
445
  presencePenalty: this.options.presencePenalty,
435
446
  extraBody: this.options.extraBody,
436
447
  thinking: this.options.thinking,
448
+ preserveReasoningAsText: this.options.preserveReasoningAsText,
449
+ compressReasoningText: this.options.compressReasoningText,
437
450
  systemPrompt: this.options.systemPrompt,
438
451
  abortSignal: effectiveAbortSignal,
439
452
  };
@@ -441,6 +454,20 @@ export class AgentRunner {
441
454
  const detector = this.options.loopDetection
442
455
  ? new LoopDetector(this.options.loopDetection)
443
456
  : null;
457
+ if (detector !== null) {
458
+ for (const message of conversationMessages) {
459
+ if (message.role !== 'assistant')
460
+ continue;
461
+ const historicalToolUseBlocks = extractToolUseBlocks(message.content);
462
+ if (historicalToolUseBlocks.length > 0) {
463
+ detector.recordToolCalls(historicalToolUseBlocks);
464
+ }
465
+ const historicalText = extractText(message.content);
466
+ if (historicalText.length > 0) {
467
+ detector.recordText(historicalText);
468
+ }
469
+ }
470
+ }
444
471
  let loopDetected = false;
445
472
  let loopWarned = false;
446
473
  const loopAction = this.options.loopDetection?.onLoopDetected ?? 'warn';
@@ -529,8 +556,10 @@ export class AgentRunner {
529
556
  // ------------------------------------------------------------------
530
557
  let injectWarning = false;
531
558
  let injectWarningKind = 'tool_repetition';
532
- if (detector && toolUseBlocks.length > 0) {
533
- const toolInfo = detector.recordToolCalls(toolUseBlocks);
559
+ if (detector) {
560
+ const toolInfo = toolUseBlocks.length > 0
561
+ ? detector.recordToolCalls(toolUseBlocks)
562
+ : null;
534
563
  const textInfo = turnText.length > 0 ? detector.recordText(turnText) : null;
535
564
  const info = toolInfo ?? textInfo;
536
565
  if (info) {
@@ -568,6 +597,19 @@ export class AgentRunner {
568
597
  // Step 3: Decide whether to continue looping.
569
598
  // ------------------------------------------------------------------
570
599
  if (toolUseBlocks.length === 0) {
600
+ if (pendingBudgetExceeded) {
601
+ break;
602
+ }
603
+ if (injectWarning) {
604
+ const warningMessage = {
605
+ role: 'user',
606
+ content: [{ type: 'text', text: loopWarningText(injectWarningKind) }],
607
+ };
608
+ conversationMessages.push(warningMessage);
609
+ newMessages.push(warningMessage);
610
+ options.onMessage?.(warningMessage);
611
+ continue;
612
+ }
571
613
  // Warn on first turn if tools were provided but model didn't use them.
572
614
  if (turns === 1 && toolDefs.length > 0 && options.onWarning) {
573
615
  const agentName = this.options.agentName ?? 'unknown';
@@ -614,8 +656,8 @@ export class AgentRunner {
614
656
  agent: options.traceAgent ?? this.options.agentName ?? 'unknown',
615
657
  tool: block.name,
616
658
  isError: result.isError ?? false,
617
- input: block.input,
618
- output: result.data,
659
+ input: redactSensitiveObject(block.input),
660
+ output: redactSensitiveText(result.data),
619
661
  startMs: startTime,
620
662
  endMs: endTime,
621
663
  durationMs: duration,
@@ -667,14 +709,7 @@ export class AgentRunner {
667
709
  // the LLM sees it alongside the results (avoids two consecutive user
668
710
  // messages which violates the alternating-role constraint).
669
711
  if (injectWarning) {
670
- const warningText = injectWarningKind === 'text_repetition'
671
- ? 'WARNING: You appear to be generating the same response repeatedly. ' +
672
- 'This suggests you are stuck in a loop. Please try a different approach ' +
673
- 'or provide new information.'
674
- : 'WARNING: You appear to be repeating the same tool calls with identical arguments. ' +
675
- 'This suggests you are stuck in a loop. Please try a different approach, use different ' +
676
- 'parameters, or explain what you are trying to accomplish.';
677
- toolResultBlocks.push({ type: 'text', text: warningText });
712
+ toolResultBlocks.push({ type: 'text', text: loopWarningText(injectWarningKind) });
678
713
  }
679
714
  const toolResultMessage = {
680
715
  role: 'user',
@@ -943,6 +978,7 @@ export class AgentRunner {
943
978
  model: this.options.model,
944
979
  },
945
980
  abortSignal: options.abortSignal ?? this.options.abortSignal,
981
+ cwd: this.options.cwd === undefined ? defaultWorkspaceDir() : this.options.cwd,
946
982
  ...(options.team !== undefined ? { team: options.team } : {}),
947
983
  };
948
984
  }