Skip to content

v1.8.0 - Architectural Simplification

Choose a tag to compare

@jwesleye jwesleye released this 06 Jan 16:24
· 33 commits to main since this release

πŸŽ‰ 1.8.0 - Stable Release

This stable release represents a major architectural simplification of Basic Agent Chat Loop, focused on reliability and maintainability.

πŸ—οΈ Major Changes

Single Output Path Architecture

  • Completely redesigned output handling for simplicity and reliability
  • Removed all bifurcated rendering paths (Rich/plain, Harmony/not, streaming/buffering)
  • Agent library now handles all output naturally - we just collect text for history
  • Eliminates double-output issue permanently
  • Tool prompts (Y/n confirmations) work naturally without interception

Code Cleanup (-361 lines)

  • Removed entire HarmonyProcessor system
  • Simplified ResponseRenderer from 165 to 45 lines (73% reduction)
  • Deleted OutputState pattern entirely
  • Removed Rich Console instantiation for agent output
  • Fixed type checking issues

⚠️ Breaking Changes

  • Harmony processing no longer applies - OpenAI Harmony format tokens are no longer processed
  • Rich markdown rendering no longer applies to agent output - Output appears exactly as the agent library provides it
  • suppress_agent_stdout config removed - No longer needed with new architecture

βœ… Benefits

  • No double-output - Agent prints once, naturally
  • Tool prompts always visible - No interception or suppression
  • Much simpler codebase - 361 fewer lines to maintain
  • Easier to understand - Single clear output path
  • Better reliability - Fewer moving parts means fewer bugs

πŸ“¦ Installation

Install or upgrade to the stable release:

pip install basic-agent-chat-loop==1.8.0
# or
pip install --upgrade basic-agent-chat-loop

πŸ”„ Upgrade Path

If upgrading from 1.7.x:

  • Review your .chatrc configuration - suppress_agent_stdout and harmony.* settings are now ignored
  • Agent output will appear as the library provides it (no Rich formatting)
  • All other features remain unchanged

πŸ“ Full Changelog

For detailed changes, see CHANGELOG.md

πŸ™ Acknowledgments

Thanks to all beta testers who provided feedback on the 1.8.0-beta.1 and 1.8.0-beta.2 releases!