Files
oh-my-pi/packages/agent/CHANGELOG.md
T
2026-01-04 19:18:29 +01:00

3.2 KiB

Changelog

[Unreleased]

[3.14.0] - 2026-01-04

[3.13.1337] - 2026-01-04

[3.9.1337] - 2026-01-04

[3.8.1337] - 2026-01-04

[3.7.1337] - 2026-01-04

[3.6.1337] - 2026-01-03

[3.5.1337] - 2026-01-03

[3.4.1337] - 2026-01-03

Added

  • Added popMessage() method to Agent class for removing and retrieving the last message
  • Added abort signal checks during response streaming for faster interruption handling

Fixed

  • Fixed abort handling to properly return aborted message state when stream is interrupted mid-response

[3.3.1337] - 2026-01-03

[3.1.1337] - 2026-01-03

[3.0.1337] - 2026-01-03

[2.3.1337] - 2026-01-03

[2.2.1337] - 2026-01-03

[2.1.1337] - 2026-01-03

[2.0.1337] - 2026-01-03

[1.500.0] - 2026-01-03

[1.341.0] - 2026-01-03

Added

  • Added interruptMode option to control when queued messages interrupt tool execution.
  • Implemented "immediate" mode (default) to check queue after each tool and interrupt remaining tools.
  • Implemented "wait" mode to defer queue processing until the entire turn completes.
  • Added getter and setter methods for interruptMode on Agent class.

[1.338.0] - 2026-01-03

[1.337.1] - 2026-01-02

Changed

  • Forked to @oh-my-pi scope with unified versioning across all packages

[1.337.0] - 2026-01-02

Initial release under @oh-my-pi scope. See previous releases at badlogic/pi-mono.

[0.31.1] - 2026-01-02

[0.31.0] - 2026-01-02

Breaking Changes

  • Transport abstraction removed: ProviderTransport, AppTransport, and AgentTransport interface have been removed. Use the streamFn option directly for custom streaming implementations.

  • Agent options renamed:

    • transport → removed (use streamFn instead)
    • messageTransformer → convertToLlm
    • preprocessor → transformContext
  • AppMessage renamed to AgentMessage: All references to AppMessage have been renamed to AgentMessage for consistency.

  • CustomMessages renamed to CustomAgentMessages: The declaration merging interface has been renamed.

  • UserMessageWithAttachments and Attachment types removed: Attachment handling is now the responsibility of the convertToLlm function.

  • Agent loop moved from @oh-my-pi/pi-ai: The agentLoop, agentLoopContinue, and related types have moved to this package. Import from @oh-my-pi/pi-agent instead.

Added

  • streamFn option on Agent for custom stream implementations. Default uses streamSimple from pi-ai.

  • streamProxy() utility function for browser apps that need to proxy LLM calls through a backend server. Replaces the removed AppTransport.

  • getApiKey option for dynamic API key resolution (useful for expiring OAuth tokens like GitHub Copilot).

  • agentLoop() and agentLoopContinue() low-level functions for running the agent loop without the Agent class wrapper.

  • New exported types: AgentLoopConfig, AgentContext, AgentTool, AgentToolResult, AgentToolUpdateCallback, StreamFn.

Changed

  • Agent constructor now has all options optional (empty options use defaults).

  • queueMessage() is now synchronous (no longer returns a Promise).