mastracode 0.26.0-alpha.5 → 0.26.0-alpha.6

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 (98) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/acp/agent.d.ts +4 -4
  3. package/dist/acp/agent.d.ts.map +1 -1
  4. package/dist/acp/event-mapper.d.ts +3 -3
  5. package/dist/acp/event-mapper.d.ts.map +1 -1
  6. package/dist/acp/server.d.ts +2 -2
  7. package/dist/acp/server.d.ts.map +1 -1
  8. package/dist/{acp-NTTZEFVN.cjs → acp-4KUBWHJK.cjs} +13 -13
  9. package/dist/acp-4KUBWHJK.cjs.map +1 -0
  10. package/dist/{acp-7DQDVR3M.js → acp-7ADCI4VS.js} +11 -11
  11. package/dist/acp-7ADCI4VS.js.map +1 -0
  12. package/dist/acp.cjs +2 -2
  13. package/dist/acp.js +1 -1
  14. package/dist/agents/instructions.d.ts.map +1 -1
  15. package/dist/agents/mastracode-gateway.d.ts +8 -1
  16. package/dist/agents/mastracode-gateway.d.ts.map +1 -1
  17. package/dist/agents/memory.d.ts +1 -1
  18. package/dist/agents/model.d.ts +1 -1
  19. package/dist/agents/modes/build.d.ts +2 -2
  20. package/dist/agents/modes/build.d.ts.map +1 -1
  21. package/dist/agents/modes/explore.d.ts +2 -2
  22. package/dist/agents/modes/explore.d.ts.map +1 -1
  23. package/dist/agents/modes/plan.d.ts +2 -2
  24. package/dist/agents/modes/plan.d.ts.map +1 -1
  25. package/dist/agents/thread-caveman-state.d.ts +2 -2
  26. package/dist/agents/thread-caveman-state.d.ts.map +1 -1
  27. package/dist/{chunk-UW25EMMX.cjs → chunk-EMEAUCQ7.cjs} +120 -79
  28. package/dist/chunk-EMEAUCQ7.cjs.map +1 -0
  29. package/dist/{chunk-IU477VVQ.js → chunk-IFUIWWGJ.js} +8 -8
  30. package/dist/chunk-IFUIWWGJ.js.map +1 -0
  31. package/dist/{chunk-L67CU2OP.js → chunk-IXP7JO6S.js} +114 -73
  32. package/dist/chunk-IXP7JO6S.js.map +1 -0
  33. package/dist/{chunk-MUZ2ZLWN.cjs → chunk-QPIUDTEY.cjs} +107 -81
  34. package/dist/chunk-QPIUDTEY.cjs.map +1 -0
  35. package/dist/{chunk-QO4KIOLG.js → chunk-SHA3DXLU.js} +104 -78
  36. package/dist/chunk-SHA3DXLU.js.map +1 -0
  37. package/dist/{chunk-DPRNPXVC.cjs → chunk-VBH3L4LD.cjs} +8 -8
  38. package/dist/chunk-VBH3L4LD.cjs.map +1 -0
  39. package/dist/cli.cjs +23 -23
  40. package/dist/cli.cjs.map +1 -1
  41. package/dist/cli.js +17 -17
  42. package/dist/cli.js.map +1 -1
  43. package/dist/evals/context-builder.d.ts +5 -5
  44. package/dist/evals/context-builder.d.ts.map +1 -1
  45. package/dist/headless.d.ts +3 -3
  46. package/dist/headless.d.ts.map +1 -1
  47. package/dist/index.cjs +10 -10
  48. package/dist/index.d.ts +34 -34
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +1 -1
  51. package/dist/mcp/config.d.ts +6 -2
  52. package/dist/mcp/config.d.ts.map +1 -1
  53. package/dist/tools/request-sandbox-access.d.ts.map +1 -1
  54. package/dist/tools/utils.d.ts +2 -2
  55. package/dist/tui/commands/api-keys.d.ts +15 -0
  56. package/dist/tui/commands/api-keys.d.ts.map +1 -1
  57. package/dist/tui/commands/clone.d.ts +1 -1
  58. package/dist/tui/commands/goal.d.ts +2 -2
  59. package/dist/tui/commands/goal.d.ts.map +1 -1
  60. package/dist/tui/commands/types.d.ts +3 -3
  61. package/dist/tui/commands/types.d.ts.map +1 -1
  62. package/dist/tui/components/assistant-message.d.ts +3 -3
  63. package/dist/tui/components/assistant-message.d.ts.map +1 -1
  64. package/dist/tui/components/help-overlay.d.ts +1 -1
  65. package/dist/tui/components/help-overlay.d.ts.map +1 -1
  66. package/dist/tui/components/login-selector.d.ts +1 -1
  67. package/dist/tui/components/om-progress.d.ts +2 -2
  68. package/dist/tui/components/om-progress.d.ts.map +1 -1
  69. package/dist/tui/components/task-progress.d.ts +1 -1
  70. package/dist/tui/components/thread-selector.d.ts +4 -4
  71. package/dist/tui/components/thread-selector.d.ts.map +1 -1
  72. package/dist/tui/event-dispatch.d.ts +3 -3
  73. package/dist/tui/event-dispatch.d.ts.map +1 -1
  74. package/dist/tui/handlers/agent-lifecycle.d.ts +1 -1
  75. package/dist/tui/handlers/message.d.ts +4 -4
  76. package/dist/tui/handlers/message.d.ts.map +1 -1
  77. package/dist/tui/handlers/types.d.ts +3 -2
  78. package/dist/tui/handlers/types.d.ts.map +1 -1
  79. package/dist/tui/mastra-tui.d.ts +3 -3
  80. package/dist/tui/mastra-tui.d.ts.map +1 -1
  81. package/dist/tui/render-messages.d.ts +4 -3
  82. package/dist/tui/render-messages.d.ts.map +1 -1
  83. package/dist/tui/setup.d.ts +1 -1
  84. package/dist/tui/setup.d.ts.map +1 -1
  85. package/dist/tui/state.d.ts +16 -8
  86. package/dist/tui/state.d.ts.map +1 -1
  87. package/dist/tui/status-line.d.ts.map +1 -1
  88. package/dist/tui.cjs +11 -11
  89. package/dist/tui.js +1 -1
  90. package/package.json +11 -11
  91. package/dist/acp-7DQDVR3M.js.map +0 -1
  92. package/dist/acp-NTTZEFVN.cjs.map +0 -1
  93. package/dist/chunk-DPRNPXVC.cjs.map +0 -1
  94. package/dist/chunk-IU477VVQ.js.map +0 -1
  95. package/dist/chunk-L67CU2OP.js.map +0 -1
  96. package/dist/chunk-MUZ2ZLWN.cjs.map +0 -1
  97. package/dist/chunk-QO4KIOLG.js.map +0 -1
  98. package/dist/chunk-UW25EMMX.cjs.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,34 @@
1
1
  # mastracode
2
2
 
3
+ ## 0.26.0-alpha.6
4
+
5
+ ### Minor Changes
6
+
7
+ - Added a live tokens/sec counter to the MastraCode terminal and web status lines. ([#18501](https://github.com/mastra-ai/mastra/pull/18501))
8
+
9
+ The counter shows how fast the model is generating, measured over decode time only — the window from the first streamed token of a step to when that step finishes. This excludes time-to-first-token, tool execution, and scheduling gaps, so the number reflects real generation speed instead of reading artificially low. Reasoning tokens are included, and the rate is smoothed with an exponential moving average for a stable readout.
10
+
11
+ The last reading stays visible while idle so you can read it after a turn finishes, and it clears when the next turn begins.
12
+
13
+ ### Patch Changes
14
+
15
+ - Switched internal imports to the canonical `@mastra/core/agent-controller` entrypoint, replacing the deprecated `@mastra/core/harness` path and `Harness` types. Updated the web client to call `getAgentController()` and use the new `AgentControllerEvent` type, renamed the `useHarnessSession` hook to `useAgentControllerSession`, and renamed the `handleHarnessEvent` ACP mapper to `handleAgentControllerEvent`. ([#18510](https://github.com/mastra-ai/mastra/pull/18510))
16
+
17
+ - Fixed OAuth logins (such as Anthropic and OpenAI sign-in) not being recognized for the selected model. The model status bar no longer shows a false "missing API key" error, and the `/api-keys` command and web settings panel now display a distinct "oauth" status for providers you are signed into instead of treating them as unset. ([#18503](https://github.com/mastra-ai/mastra/pull/18503))
18
+
19
+ - Added support for reading MCP server config from a project root `.mcp.json` (the file Claude Code uses). Projects that already keep their MCP servers there no longer need a duplicate under `.mastracode/`. The root file sits below `.mastracode/mcp.json` in priority, so project-specific config still wins. ([#18494](https://github.com/mastra-ai/mastra/pull/18494))
20
+
21
+ - Add MastraCode browser tool availability scenarios ([#18498](https://github.com/mastra-ai/mastra/pull/18498))
22
+
23
+ - Updated dependencies [[`0200e75`](https://github.com/mastra-ai/mastra/commit/0200e7552d02d4221cd6040bf4eddf189a97a156), [`42d74d5`](https://github.com/mastra-ai/mastra/commit/42d74d5671f95aa6076576e32a9b7d11f13dd208), [`b4e97e6`](https://github.com/mastra-ai/mastra/commit/b4e97e676232a3a398ef32d3e78faa0c91c5fa1c), [`06e0d63`](https://github.com/mastra-ai/mastra/commit/06e0d63d42bc2a202e18bc091f3781f409f5e6fb), [`438a971`](https://github.com/mastra-ai/mastra/commit/438a9715c8b4398e5eaf8914a1f19dc8a85dc1de), [`77518cc`](https://github.com/mastra-ai/mastra/commit/77518ccb5bb8cc684875081e64213dc85cffdbee), [`bb2a13b`](https://github.com/mastra-ai/mastra/commit/bb2a13bb4b32e6bb807200fe7b18ae8fa4322118), [`a73cd1a`](https://github.com/mastra-ai/mastra/commit/a73cd1a62a5e4ca023dcc39ba150029f4f1f74c1), [`0b5cc47`](https://github.com/mastra-ai/mastra/commit/0b5cc4726dc18d9a685a27520db39ff1b36bb89a), [`87f38a3`](https://github.com/mastra-ai/mastra/commit/87f38a3de03e24731f2dd6f8ed6a60b6722b85a1), [`d5fa3cd`](https://github.com/mastra-ai/mastra/commit/d5fa3cda1788c3cb93a361a3c6ec47de6ba21e98), [`fe98ef2`](https://github.com/mastra-ai/mastra/commit/fe98ef2e66dbfcbd7d645c88c9ee1e67b458a136), [`793ea0f`](https://github.com/mastra-ai/mastra/commit/793ea0f52f831178837f21c83af6af93bf4ce638), [`507a5c4`](https://github.com/mastra-ai/mastra/commit/507a5c461bdc3136ad80744c0efbb55ce1f18f97), [`79b3626`](https://github.com/mastra-ai/mastra/commit/79b3626f8d647307eb07c8da14c9073c2699719d)]:
24
+ - @mastra/server@1.47.0-alpha.6
25
+ - @mastra/core@1.47.0-alpha.6
26
+ - @mastra/observability@1.15.2-alpha.1
27
+ - @mastra/memory@1.21.2-alpha.1
28
+ - @mastra/schema-compat@1.3.1-alpha.0
29
+ - @mastra/hono@1.5.2-alpha.6
30
+ - @mastra/mcp@1.12.0
31
+
3
32
  ## 0.26.0-alpha.5
4
33
 
5
34
  ### Minor Changes
@@ -1,12 +1,12 @@
1
1
  import type { Agent, AgentSideConnection, InitializeRequest, InitializeResponse, NewSessionRequest, NewSessionResponse, PromptRequest, PromptResponse, CancelNotification, ContentBlock } from '@agentclientprotocol/sdk';
2
- import type { Harness, HarnessMode, Session } from '@mastra/core/harness';
2
+ import type { AgentController, AgentControllerMode, Session } from '@mastra/core/agent-controller';
3
3
  /**
4
- * ACP Agent implementation that wraps a mastracode Harness.
4
+ * ACP Agent implementation that wraps a mastracode Controller.
5
5
  * Each instance represents one ACP connection from a client.
6
6
  */
7
7
  export declare class MastraCodeAcpAgent implements Agent {
8
8
  private readonly connection;
9
- private readonly harness;
9
+ private readonly controller;
10
10
  private readonly session;
11
11
  private readonly modes;
12
12
  private readonly unsubscribeSessionEvents;
@@ -14,7 +14,7 @@ export declare class MastraCodeAcpAgent implements Agent {
14
14
  private currentPromptState;
15
15
  private promptMutex;
16
16
  private getThreadIdOrThrow;
17
- constructor(connection: AgentSideConnection, harness: Harness, session: Session, modes: HarnessMode[]);
17
+ constructor(connection: AgentSideConnection, controller: AgentController, session: Session, modes: AgentControllerMode[]);
18
18
  dispose(): void;
19
19
  initialize(_request: InitializeRequest): Promise<InitializeResponse>;
20
20
  authenticate(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/acp/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,YAAY,EACb,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI1E;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,KAAK;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IACxD,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAoC;IAEvD,OAAO,CAAC,kBAAkB;gBAQd,UAAU,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;IAYrG,OAAO,IAAI,IAAI;IAIT,UAAU,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAcpE,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,UAAU,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0CpE,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAsEvD,MAAM,CAAC,aAAa,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,cAAc,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,wBAAwB,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9F;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAY3E;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GACrD,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,mBAAmB,GAAG,SAAS,CAW3E"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/acp/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,YAAY,EACb,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAInG;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,KAAK;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IACxD,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAoC;IAEvD,OAAO,CAAC,kBAAkB;gBASxB,UAAU,EAAE,mBAAmB,EAC/B,UAAU,EAAE,eAAe,EAC3B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,mBAAmB,EAAE;IAa9B,OAAO,IAAI,IAAI;IAIT,UAAU,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAcpE,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,UAAU,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0CpE,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAsEvD,MAAM,CAAC,aAAa,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,cAAc,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,wBAAwB,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9F;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAY3E;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GACrD,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,mBAAmB,GAAG,SAAS,CAW3E"}
@@ -1,5 +1,5 @@
1
1
  import type { AgentSideConnection } from '@agentclientprotocol/sdk';
2
- import type { HarnessEvent, Session, TokenUsage } from '@mastra/core/harness';
2
+ import type { AgentControllerEvent, Session, TokenUsage } from '@mastra/core/agent-controller';
3
3
  /**
4
4
  * Enable or disable automatic tool approval (set via --dangerous-auto-approve CLI flag).
5
5
  */
@@ -14,9 +14,9 @@ export interface PromptState {
14
14
  resolve: (reason: 'complete' | 'aborted' | 'error' | 'suspended') => void;
15
15
  }
16
16
  /**
17
- * Translate a HarnessEvent into an ACP SessionNotification and send it
17
+ * Translate an AgentControllerEvent into an ACP SessionNotification and send it
18
18
  * via the provided connection. Returns null for events that don't produce
19
19
  * a session update.
20
20
  */
21
- export declare function handleHarnessEvent(event: HarnessEvent, state: PromptState | null, connection: AgentSideConnection, session: Session): void;
21
+ export declare function handleAgentControllerEvent(event: AgentControllerEvent, state: PromptState | null, connection: AgentSideConnection, session: Session): void;
22
22
  //# sourceMappingURL=event-mapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-mapper.d.ts","sourceRoot":"","sources":["../../src/acp/event-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiD,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACnH,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAI9E;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEnD;AA4BD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,KAAK,IAAI,CAAC;CAC3E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,WAAW,GAAG,IAAI,EACzB,UAAU,EAAE,mBAAmB,EAC/B,OAAO,EAAE,OAAO,GACf,IAAI,CAyEN"}
1
+ {"version":3,"file":"event-mapper.d.ts","sourceRoot":"","sources":["../../src/acp/event-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiD,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACnH,OAAO,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAI/F;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEnD;AA4BD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,KAAK,IAAI,CAAC;CAC3E;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,oBAAoB,EAC3B,KAAK,EAAE,WAAW,GAAG,IAAI,EACzB,UAAU,EAAE,mBAAmB,EAC/B,OAAO,EAAE,OAAO,GACf,IAAI,CAyEN"}
@@ -1,7 +1,7 @@
1
- import type { Harness, HarnessMode } from '@mastra/core/harness';
1
+ import type { AgentController, AgentControllerMode } from '@mastra/core/agent-controller';
2
2
  /**
3
3
  * Run the ACP server over stdio.
4
4
  * This sets up the JSON-RPC stream and keeps the process alive until the client disconnects.
5
5
  */
6
- export declare function runAcpServer(harness: Harness, modes: HarnessMode[], cleanup?: () => Promise<void>): Promise<void>;
6
+ export declare function runAcpServer(controller: AgentController, modes: AgentControllerMode[], cleanup?: () => Promise<void>): Promise<void>;
7
7
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/acp/server.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAW,MAAM,sBAAsB,CAAC;AAG1E;;;GAGG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/acp/server.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAW,MAAM,+BAA+B,CAAC;AAGnG;;;GAGG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,mBAAmB,EAAE,EAC5B,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
@@ -1,26 +1,26 @@
1
1
  'use strict';
2
2
 
3
- var chunkMUZ2ZLWN_cjs = require('./chunk-MUZ2ZLWN.cjs');
3
+ var chunkQPIUDTEY_cjs = require('./chunk-QPIUDTEY.cjs');
4
4
  var chunkDVBJN36L_cjs = require('./chunk-DVBJN36L.cjs');
5
- var chunkDPRNPXVC_cjs = require('./chunk-DPRNPXVC.cjs');
5
+ var chunkVBH3L4LD_cjs = require('./chunk-VBH3L4LD.cjs');
6
6
  var crypto = require('crypto');
7
7
  var stream = require('stream');
8
8
  var sdk = require('@agentclientprotocol/sdk');
9
9
 
10
- async function runAcpServer(harness, modes, cleanup) {
10
+ async function runAcpServer(controller, modes, cleanup) {
11
11
  const input = stream.Readable.toWeb(process.stdin);
12
12
  const output = stream.Writable.toWeb(process.stdout);
13
13
  const stream$1 = sdk.ndJsonStream(output, input);
14
14
  let session;
15
15
  let agent;
16
16
  try {
17
- session = await harness.createSession({
17
+ session = await controller.createSession({
18
18
  id: `acp-${crypto.randomUUID()}`,
19
19
  ownerId: `acp-owner-${crypto.randomUUID()}`
20
20
  });
21
21
  const activeSession = session;
22
22
  const connection = new sdk.AgentSideConnection((conn) => {
23
- agent = new chunkDPRNPXVC_cjs.MastraCodeAcpAgent(conn, harness, activeSession, modes);
23
+ agent = new chunkVBH3L4LD_cjs.MastraCodeAcpAgent(conn, controller, activeSession, modes);
24
24
  return agent;
25
25
  }, stream$1);
26
26
  await connection.closed;
@@ -37,7 +37,7 @@ async function runAcpServer(harness, modes, cleanup) {
37
37
  // src/acp/index.ts
38
38
  async function acpMain(options) {
39
39
  if (options?.dangerousAutoApprove) {
40
- chunkDPRNPXVC_cjs.setAutoApprove(true);
40
+ chunkVBH3L4LD_cjs.setAutoApprove(true);
41
41
  }
42
42
  const originalConsoleLog = console.log;
43
43
  console.log = (...args) => {
@@ -45,12 +45,12 @@ async function acpMain(options) {
45
45
  };
46
46
  let result;
47
47
  try {
48
- result = await chunkMUZ2ZLWN_cjs.createMastraCode({
48
+ result = await chunkQPIUDTEY_cjs.createMastraCode({
49
49
  unixSocketPubSub: false,
50
50
  disableMcp: false,
51
51
  disableHooks: false
52
52
  });
53
- const { harness, mcpManager, signalsPubSub } = result;
53
+ const { controller, mcpManager, signalsPubSub } = result;
54
54
  const modes = [
55
55
  { id: "build", name: "Build" },
56
56
  { id: "plan", name: "Plan" },
@@ -61,8 +61,8 @@ async function acpMain(options) {
61
61
  const closeSignalsPubSub = signalsPubSub?.close;
62
62
  await Promise.allSettled([
63
63
  mcpManager?.disconnect(),
64
- harness?.getMastra()?.stopWorkers(),
65
- harness?.stopHeartbeats(),
64
+ controller?.getMastra()?.stopWorkers(),
65
+ controller?.stopHeartbeats(),
66
66
  closeSignalsPubSub?.()
67
67
  ]);
68
68
  console.log = originalConsoleLog;
@@ -73,7 +73,7 @@ async function acpMain(options) {
73
73
  };
74
74
  process.on("SIGINT", handleSignal);
75
75
  process.on("SIGTERM", handleSignal);
76
- await runAcpServer(harness, modes, cleanup);
76
+ await runAcpServer(controller, modes, cleanup);
77
77
  } catch (error) {
78
78
  process.stderr.write(`[acp] Fatal error: ${error}
79
79
  `);
@@ -83,5 +83,5 @@ async function acpMain(options) {
83
83
  }
84
84
 
85
85
  exports.acpMain = acpMain;
86
- //# sourceMappingURL=acp-NTTZEFVN.cjs.map
87
- //# sourceMappingURL=acp-NTTZEFVN.cjs.map
86
+ //# sourceMappingURL=acp-4KUBWHJK.cjs.map
87
+ //# sourceMappingURL=acp-4KUBWHJK.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/acp/server.ts","../src/acp/index.ts"],"names":["Readable","Writable","stream","ndJsonStream","randomUUID","AgentSideConnection","MastraCodeAcpAgent","setAutoApprove","createMastraCode","releaseAllThreadLocks"],"mappings":"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","file":"acp-4KUBWHJK.cjs","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { Readable, Writable } from 'node:stream';\nimport { AgentSideConnection, ndJsonStream } from '@agentclientprotocol/sdk';\nimport type { AgentController, AgentControllerMode, Session } from '@mastra/core/agent-controller';\nimport { MastraCodeAcpAgent } from './agent.js';\n\n/**\n * Run the ACP server over stdio.\n * This sets up the JSON-RPC stream and keeps the process alive until the client disconnects.\n */\nexport async function runAcpServer(\n controller: AgentController,\n modes: AgentControllerMode[],\n cleanup?: () => Promise<void>,\n): Promise<void> {\n // Create the ndJSON stream from stdin/stdout\n const input = Readable.toWeb(process.stdin) as ReadableStream<Uint8Array>;\n const output = Writable.toWeb(process.stdout) as WritableStream<Uint8Array>;\n const stream = ndJsonStream(output, input);\n let session: Session | undefined;\n let agent: MastraCodeAcpAgent | undefined;\n\n // Handle cleanup on disconnect (success or error)\n try {\n session = await controller.createSession({\n id: `acp-${randomUUID()}`,\n ownerId: `acp-owner-${randomUUID()}`,\n });\n const activeSession = session;\n\n // Create the agent-side connection\n const connection = new AgentSideConnection(conn => {\n agent = new MastraCodeAcpAgent(conn, controller, activeSession, modes);\n return agent;\n }, stream);\n\n await connection.closed;\n } finally {\n agent?.dispose();\n session?.thread.detachFromCurrent();\n await session?.thread.clearAndReleaseLock();\n if (cleanup) {\n await cleanup();\n }\n }\n}\n","import type { AgentControllerMode } from '@mastra/core/agent-controller';\n\nimport { createMastraCode } from '../index.js';\nimport { releaseAllThreadLocks } from '../utils/thread-lock.js';\nimport { setAutoApprove } from './event-mapper.js';\nimport { runAcpServer } from './server.js';\n\n/**\n * Entry point for ACP server mode.\n * Initializes mastracode and runs the ACP protocol over stdio.\n */\nexport async function acpMain(options?: { dangerousAutoApprove?: boolean }): Promise<void> {\n if (options?.dangerousAutoApprove) {\n setAutoApprove(true);\n }\n // Redirect console.log to stderr to avoid polluting the JSON-RPC stream on stdout.\n // eslint-disable-next-line no-console\n const originalConsoleLog = console.log;\n // eslint-disable-next-line no-console\n console.log = (...args: unknown[]) => {\n process.stderr.write(args.map(String).join(' ') + '\\n');\n };\n\n let result: Awaited<ReturnType<typeof createMastraCode>> | undefined;\n\n try {\n result = await createMastraCode({\n unixSocketPubSub: false,\n disableMcp: false,\n disableHooks: false,\n });\n\n const { controller, mcpManager, signalsPubSub } = result;\n\n // Default modes (same as createMastraCode defaults)\n const modes: AgentControllerMode[] = [\n { id: 'build', name: 'Build' },\n { id: 'plan', name: 'Plan' },\n { id: 'fast', name: 'Fast' },\n ];\n\n // Cleanup function (mirrors main.ts asyncCleanup)\n const cleanup = async () => {\n releaseAllThreadLocks();\n const closeSignalsPubSub = (signalsPubSub as { close?: () => Promise<void> | void } | undefined)?.close;\n await Promise.allSettled([\n mcpManager?.disconnect(),\n controller?.getMastra()?.stopWorkers(),\n controller?.stopHeartbeats(),\n closeSignalsPubSub?.(),\n ]);\n\n // Restore console.log\n // eslint-disable-next-line no-console\n console.log = originalConsoleLog;\n };\n\n // Handle signals\n const handleSignal = async () => {\n await cleanup();\n process.exit(0);\n };\n\n process.on('SIGINT', handleSignal);\n process.on('SIGTERM', handleSignal);\n\n await runAcpServer(controller, modes, cleanup);\n } catch (error) {\n process.stderr.write(`[acp] Fatal error: ${error}\\n`);\n // eslint-disable-next-line no-console\n console.log = originalConsoleLog;\n process.exit(1);\n }\n}\n"]}
@@ -1,24 +1,24 @@
1
- import { createMastraCode } from './chunk-QO4KIOLG.js';
1
+ import { createMastraCode } from './chunk-SHA3DXLU.js';
2
2
  import { releaseAllThreadLocks } from './chunk-F3TKSK3C.js';
3
- import { setAutoApprove, MastraCodeAcpAgent } from './chunk-IU477VVQ.js';
3
+ import { setAutoApprove, MastraCodeAcpAgent } from './chunk-IFUIWWGJ.js';
4
4
  import { randomUUID } from 'crypto';
5
5
  import { Readable, Writable } from 'stream';
6
6
  import { ndJsonStream, AgentSideConnection } from '@agentclientprotocol/sdk';
7
7
 
8
- async function runAcpServer(harness, modes, cleanup) {
8
+ async function runAcpServer(controller, modes, cleanup) {
9
9
  const input = Readable.toWeb(process.stdin);
10
10
  const output = Writable.toWeb(process.stdout);
11
11
  const stream = ndJsonStream(output, input);
12
12
  let session;
13
13
  let agent;
14
14
  try {
15
- session = await harness.createSession({
15
+ session = await controller.createSession({
16
16
  id: `acp-${randomUUID()}`,
17
17
  ownerId: `acp-owner-${randomUUID()}`
18
18
  });
19
19
  const activeSession = session;
20
20
  const connection = new AgentSideConnection((conn) => {
21
- agent = new MastraCodeAcpAgent(conn, harness, activeSession, modes);
21
+ agent = new MastraCodeAcpAgent(conn, controller, activeSession, modes);
22
22
  return agent;
23
23
  }, stream);
24
24
  await connection.closed;
@@ -48,7 +48,7 @@ async function acpMain(options) {
48
48
  disableMcp: false,
49
49
  disableHooks: false
50
50
  });
51
- const { harness, mcpManager, signalsPubSub } = result;
51
+ const { controller, mcpManager, signalsPubSub } = result;
52
52
  const modes = [
53
53
  { id: "build", name: "Build" },
54
54
  { id: "plan", name: "Plan" },
@@ -59,8 +59,8 @@ async function acpMain(options) {
59
59
  const closeSignalsPubSub = signalsPubSub?.close;
60
60
  await Promise.allSettled([
61
61
  mcpManager?.disconnect(),
62
- harness?.getMastra()?.stopWorkers(),
63
- harness?.stopHeartbeats(),
62
+ controller?.getMastra()?.stopWorkers(),
63
+ controller?.stopHeartbeats(),
64
64
  closeSignalsPubSub?.()
65
65
  ]);
66
66
  console.log = originalConsoleLog;
@@ -71,7 +71,7 @@ async function acpMain(options) {
71
71
  };
72
72
  process.on("SIGINT", handleSignal);
73
73
  process.on("SIGTERM", handleSignal);
74
- await runAcpServer(harness, modes, cleanup);
74
+ await runAcpServer(controller, modes, cleanup);
75
75
  } catch (error) {
76
76
  process.stderr.write(`[acp] Fatal error: ${error}
77
77
  `);
@@ -81,5 +81,5 @@ async function acpMain(options) {
81
81
  }
82
82
 
83
83
  export { acpMain };
84
- //# sourceMappingURL=acp-7DQDVR3M.js.map
85
- //# sourceMappingURL=acp-7DQDVR3M.js.map
84
+ //# sourceMappingURL=acp-7ADCI4VS.js.map
85
+ //# sourceMappingURL=acp-7ADCI4VS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/acp/server.ts","../src/acp/index.ts"],"names":[],"mappings":"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","file":"acp-7ADCI4VS.js","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { Readable, Writable } from 'node:stream';\nimport { AgentSideConnection, ndJsonStream } from '@agentclientprotocol/sdk';\nimport type { AgentController, AgentControllerMode, Session } from '@mastra/core/agent-controller';\nimport { MastraCodeAcpAgent } from './agent.js';\n\n/**\n * Run the ACP server over stdio.\n * This sets up the JSON-RPC stream and keeps the process alive until the client disconnects.\n */\nexport async function runAcpServer(\n controller: AgentController,\n modes: AgentControllerMode[],\n cleanup?: () => Promise<void>,\n): Promise<void> {\n // Create the ndJSON stream from stdin/stdout\n const input = Readable.toWeb(process.stdin) as ReadableStream<Uint8Array>;\n const output = Writable.toWeb(process.stdout) as WritableStream<Uint8Array>;\n const stream = ndJsonStream(output, input);\n let session: Session | undefined;\n let agent: MastraCodeAcpAgent | undefined;\n\n // Handle cleanup on disconnect (success or error)\n try {\n session = await controller.createSession({\n id: `acp-${randomUUID()}`,\n ownerId: `acp-owner-${randomUUID()}`,\n });\n const activeSession = session;\n\n // Create the agent-side connection\n const connection = new AgentSideConnection(conn => {\n agent = new MastraCodeAcpAgent(conn, controller, activeSession, modes);\n return agent;\n }, stream);\n\n await connection.closed;\n } finally {\n agent?.dispose();\n session?.thread.detachFromCurrent();\n await session?.thread.clearAndReleaseLock();\n if (cleanup) {\n await cleanup();\n }\n }\n}\n","import type { AgentControllerMode } from '@mastra/core/agent-controller';\n\nimport { createMastraCode } from '../index.js';\nimport { releaseAllThreadLocks } from '../utils/thread-lock.js';\nimport { setAutoApprove } from './event-mapper.js';\nimport { runAcpServer } from './server.js';\n\n/**\n * Entry point for ACP server mode.\n * Initializes mastracode and runs the ACP protocol over stdio.\n */\nexport async function acpMain(options?: { dangerousAutoApprove?: boolean }): Promise<void> {\n if (options?.dangerousAutoApprove) {\n setAutoApprove(true);\n }\n // Redirect console.log to stderr to avoid polluting the JSON-RPC stream on stdout.\n // eslint-disable-next-line no-console\n const originalConsoleLog = console.log;\n // eslint-disable-next-line no-console\n console.log = (...args: unknown[]) => {\n process.stderr.write(args.map(String).join(' ') + '\\n');\n };\n\n let result: Awaited<ReturnType<typeof createMastraCode>> | undefined;\n\n try {\n result = await createMastraCode({\n unixSocketPubSub: false,\n disableMcp: false,\n disableHooks: false,\n });\n\n const { controller, mcpManager, signalsPubSub } = result;\n\n // Default modes (same as createMastraCode defaults)\n const modes: AgentControllerMode[] = [\n { id: 'build', name: 'Build' },\n { id: 'plan', name: 'Plan' },\n { id: 'fast', name: 'Fast' },\n ];\n\n // Cleanup function (mirrors main.ts asyncCleanup)\n const cleanup = async () => {\n releaseAllThreadLocks();\n const closeSignalsPubSub = (signalsPubSub as { close?: () => Promise<void> | void } | undefined)?.close;\n await Promise.allSettled([\n mcpManager?.disconnect(),\n controller?.getMastra()?.stopWorkers(),\n controller?.stopHeartbeats(),\n closeSignalsPubSub?.(),\n ]);\n\n // Restore console.log\n // eslint-disable-next-line no-console\n console.log = originalConsoleLog;\n };\n\n // Handle signals\n const handleSignal = async () => {\n await cleanup();\n process.exit(0);\n };\n\n process.on('SIGINT', handleSignal);\n process.on('SIGTERM', handleSignal);\n\n await runAcpServer(controller, modes, cleanup);\n } catch (error) {\n process.stderr.write(`[acp] Fatal error: ${error}\\n`);\n // eslint-disable-next-line no-console\n console.log = originalConsoleLog;\n process.exit(1);\n }\n}\n"]}
package/dist/acp.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunkDPRNPXVC_cjs = require('./chunk-DPRNPXVC.cjs');
3
+ var chunkVBH3L4LD_cjs = require('./chunk-VBH3L4LD.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "MastraCodeAcpAgent", {
8
8
  enumerable: true,
9
- get: function () { return chunkDPRNPXVC_cjs.MastraCodeAcpAgent; }
9
+ get: function () { return chunkVBH3L4LD_cjs.MastraCodeAcpAgent; }
10
10
  });
11
11
  //# sourceMappingURL=acp.cjs.map
12
12
  //# sourceMappingURL=acp.cjs.map
package/dist/acp.js CHANGED
@@ -1,3 +1,3 @@
1
- export { MastraCodeAcpAgent } from './chunk-IU477VVQ.js';
1
+ export { MastraCodeAcpAgent } from './chunk-IFUIWWGJ.js';
2
2
  //# sourceMappingURL=acp.js.map
3
3
  //# sourceMappingURL=acp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/agents/instructions.ts"],"names":[],"mappings":"AAOA,wBAAsB,sBAAsB,CAAC,EAAE,cAAc,EAAE,EAAE;IAAE,cAAc,EAAE;QAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;CAAE,mBAuBjH"}
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/agents/instructions.ts"],"names":[],"mappings":"AAOA,wBAAsB,sBAAsB,CAAC,EAAE,cAAc,EAAE,EAAE;IAAE,cAAc,EAAE;QAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;CAAE,mBAyBjH"}
@@ -1,4 +1,4 @@
1
- import type { CustomModelCatalogProvider } from '@mastra/core/harness';
1
+ import type { CustomModelCatalogProvider } from '@mastra/core/agent-controller';
2
2
  import { MastraModelGateway } from '@mastra/core/llm';
3
3
  import type { GatewayAuthRequest, GatewayAuthResult, GatewayLanguageModel, MastraModelGatewayInterface, ProviderConfig } from '@mastra/core/llm';
4
4
  import type { ThinkingLevel } from '../providers/openai-codex.js';
@@ -39,6 +39,13 @@ export declare class MastraCodeGateway extends MastraModelGateway {
39
39
  readonly name = "MastraCode Gateway";
40
40
  constructor({ mastraGatewayBaseUrl, mastraGatewayApiKey, routeThroughMastraGateway, thinkingLevel, customProviders, settingsPath, }: MastraCodeGatewayOptions);
41
41
  static getMemoryGatewayApiKey(): string | undefined;
42
+ /**
43
+ * Claim an unprefixed model id (e.g. a bare `anthropic/...`) when this gateway
44
+ * can authenticate it via OAuth or a stored/env credential. This lets the
45
+ * shared gateway router select MastraCode for auth resolution, so the status
46
+ * bar and `/api-keys` reflect OAuth logins instead of only checking env vars.
47
+ */
48
+ handlesModel(modelId: string): boolean;
42
49
  static resolveProviderAuth(request: GatewayAuthRequest, memoryGatewayApiKey?: string): GatewayAuthResult | undefined;
43
50
  static createModelCatalogProvider(gateway: MastraModelGatewayInterface): CustomModelCatalogProvider;
44
51
  createModelCatalogProvider(): CustomModelCatalogProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"mastracode-gateway.d.ts","sourceRoot":"","sources":["../../src/agents/mastracode-gateway.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAwB,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAGL,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,cAAc,EACf,MAAM,kBAAkB,CAAC;AAkB1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,qBAAqB,YAAY,CAAC;AAC/C,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAYlD,MAAM,MAAM,wBAAwB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEzG,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,OAAO,CAAC;IACnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF,wBAAgB,iBAAiB,SAEhC;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAMD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAoBrE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAQvD;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAQpD;AA+BD,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAEpH;AAgFD,qBAAa,iBAAkB,SAAQ,kBAAkB;;IACvD,QAAQ,CAAC,EAAE,gBAAyB;IACpC,QAAQ,CAAC,IAAI,wBAAwB;gBAUzB,EACV,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,aAAa,EACb,eAAe,EACf,YAAY,GACb,EAAE,wBAAwB;IAW3B,MAAM,CAAC,sBAAsB,IAAI,MAAM,GAAG,SAAS;IAInD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAcpH,MAAM,CAAC,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,0BAA0B;IA+BnG,0BAA0B,IAAI,0BAA0B;IAQlD,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IA+B/D,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIrE,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMjD,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,iBAAiB,GAAG,SAAS;IAevE,oBAAoB,CAAC,IAAI,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,kBAAkB,CAAC,EAAE,GAAG,CAAC;KAC1B,GAAG,oBAAoB;CA0JzB"}
1
+ {"version":3,"file":"mastracode-gateway.d.ts","sourceRoot":"","sources":["../../src/agents/mastracode-gateway.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { MastraVector } from '@mastra/core/vector';
4
4
  import { Memory } from '@mastra/memory';
5
5
  /**
6
6
  * Dynamic memory factory function.
7
- * Reads OM thresholds from harness state via requestContext.
7
+ * Reads OM thresholds from controller state via requestContext.
8
8
  * Model functions also read from requestContext (no mutable bridge needed).
9
9
  */
10
10
  export declare function getDynamicMemory(storage: MastraCompositeStore, vector?: MastraVector): ({ requestContext }: {
@@ -23,7 +23,7 @@ export declare function resolveModel(modelId: string, options?: {
23
23
  requestContext?: RequestContext;
24
24
  }): GatewayLanguageModel;
25
25
  /**
26
- * Dynamic model function that reads the current model from harness state.
26
+ * Dynamic model function that reads the current model from controller state.
27
27
  * This allows runtime model switching via the /models picker.
28
28
  */
29
29
  export declare function getDynamicModel({ requestContext }: {
@@ -5,6 +5,6 @@
5
5
  * read and write tools to complete it. It can modify files, run commands,
6
6
  * and perform actual development work within a constrained scope.
7
7
  */
8
- import type { HarnessMode } from '@mastra/core/harness';
9
- export declare const buildMode: HarnessMode;
8
+ import type { AgentControllerMode } from '@mastra/core/agent-controller';
9
+ export declare const buildMode: AgentControllerMode;
10
10
  //# sourceMappingURL=build.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/build.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,eAAO,MAAM,SAAS,EAAE,WAyCvB,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/build.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,eAAO,MAAM,SAAS,EAAE,mBAyCvB,CAAC"}
@@ -5,6 +5,6 @@
5
5
  * "understand how module Y works") and uses read-only tools to explore
6
6
  * the codebase, then returns a concise summary of its findings.
7
7
  */
8
- import type { HarnessMode } from '@mastra/core/harness';
9
- export declare const fastMode: HarnessMode;
8
+ import type { AgentControllerMode } from '@mastra/core/agent-controller';
9
+ export declare const fastMode: AgentControllerMode;
10
10
  //# sourceMappingURL=explore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"explore.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/explore.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,eAAO,MAAM,QAAQ,EAAE,WAkCtB,CAAC"}
1
+ {"version":3,"file":"explore.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/explore.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,eAAO,MAAM,QAAQ,EAAE,mBAkCtB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Plan mode — read-only analysis and planning.
3
3
  */
4
- import type { HarnessMode } from '@mastra/core/harness';
5
- export declare const planMode: HarnessMode;
4
+ import type { AgentControllerMode } from '@mastra/core/agent-controller';
5
+ export declare const planMode: AgentControllerMode;
6
6
  //# sourceMappingURL=plan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,eAAO,MAAM,QAAQ,EAAE,WAiCtB,CAAC"}
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../src/agents/modes/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,eAAO,MAAM,QAAQ,EAAE,mBAiCtB,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { Session } from '@mastra/core/harness';
1
+ import type { Session } from '@mastra/core/agent-controller';
2
2
  /**
3
- * Wires MastraCode-owned OM settings into harness thread events so they persist
3
+ * Wires MastraCode-owned OM settings into controller thread events so they persist
4
4
  * per-thread and new threads inherit the most recent value.
5
5
  *
6
6
  * This is intentionally implemented in mastracode rather than core: these
@@ -1 +1 @@
1
- {"version":3,"file":"thread-caveman-state.d.ts","sourceRoot":"","sources":["../../src/agents/thread-caveman-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAuEnE;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAS9F;AAED;;;;GAIG;AACH,wBAAsB,oCAAoC,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAInH"}
1
+ {"version":3,"file":"thread-caveman-state.d.ts","sourceRoot":"","sources":["../../src/agents/thread-caveman-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAyB,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAuEpF;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAS9F;AAED;;;;GAIG;AACH,wBAAsB,oCAAoC,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAInH"}