# Changelog
About this Changelog
All notable changes to the Protolink project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Release Notes¶
[v0.5.6] - 2026-05-17¶
Flows Refactor & Upgrade¶
- Semantic Context Injection: Flows dynamically build instruction prompts based on their downstream topology. This prompt is injected into the
task.flow_state["prompt"]for executing agents to utilize seamlessly. This way agents are aware of their downstream context and can format their output accordingly. - Correct Task management. Added flow_state to Task, so that we provide additional context to the agents.
- NEW Flow Examples for each Use case (Graph, Pipeline, Parallel, Router).
- Removed Structured Agent
- Better State Management
- Flow Sync Module
More:
- HUGE BUG fix: Agent URL received from registry was wrong most of the time.
- Agent Sync Module
- LLM Sync Module
- Added GuardRails:
- Added context for Agent ID and prevent agent from calling himself.
- Removed self from fetched agents.
- Agent Discovery TTL
- Mock LLM for testing
[v0.5.5] - 2026-05-16¶
π NEW Feature - State (API Refactor)¶
- State Management: Refactored agent state management, specifically around conversation history persistence. The syntax has been simplyfied:
agent = Agent(
card=card,
...
state=["conversation"], # Session memory is not reset between tasks
)
NEW: protolink.state module. The State class manages:
- Session memory - Session memory is not reset between tasks
- Conversation history - Conversation history persistence
- Tool call history - Tool call history persistence
- Flow state - Flow state persistence
DSA Optimization:
- Conversation History: Use Message Double Ended Queue for O(1) append and pop operations.
- Registry Storage: Optimize agent pop operations to O(1) and more...
[v0.5.4] - 2026-05-12¶
π Refactored¶
- Agent Lifecycle: Fixed issues with agent start/stop logic, specifically around event loop tasks and background threads. The syntax has been simplyfied:
- Proper Thread Management: Removed asyncio event loop and background threads for starting/stopping.
agent.start()
agent.stop()
That's it. The start() method will start the agent in a background thread and will properly wait for all queues to empty. The stop() function will properly wait for all queues to empty, and gracefully shutdown the agent and background threads.
[v0.5.3] - 2026-05-03¶
π Fixed¶
- Tooling Schema: Tool schema is now correctly inferred from the function signature and type hints. It is also correctly appended to the Agent Card prompt, so other agents are aware of available tools and schemas.
[v0.5.2] - 2026-05-02¶
π Added¶
- Logging Module: Added explicit
filelogger (json) andconsolelogger (color). - Plug in Logging to the Agent using the
loggerargument. If none is provided, a default logger using the ConsoleLogger, so the IO is appended to the terminal. - Added context memory:
- "none" - No context memory.
- "session" - Session based context memory. Agent remembers all messages exchanged during the current session with other agents.
Memory is configured in the agent using the
memoryargument. If none is provided, no memory is used.
[v0.5.1] - 2026-04-28¶
π Added¶
- Telemetry: Add LangSmith and Langfuse telemetry implementations
- BaseTelemetry: Add base telemetry class
- LangfuseTelemetry: Langfuse telemetry implementation
- LangsmithTelemetry: Langsmith telemetry implementation
- MultiTelemetry: Multiplex multiple telemetry implementations.
- Agent: Plug in to the Agent using the
telemetryargument. If none is provided, no telemetry is collected.
[v0.5.0] - 2026-04-22¶
π Added¶
- Flows: Build deterministic execution paths out of the box (
Pipeline,Parallel,Router,Graph). - StructuredAgent: Wrap any complex flow to run autonomously as a generic, network-ready A2A agent.
[v0.4.8] - 2026-04-19¶
TBA
[v0.4.7] - 2026-02-08¶
π Added¶
- LLM Inference Guardrails:
- Implemented robust guardrails for LLM inference.
- Added agent calling for delegated inference.
- Final result processing.
- NEW GrokLLM:
- Ticket Example
- Verbosity in Agent and Registry and more...
[v0.4.6] - 2026-02-05¶
π Added¶
- LLM Automated Inference:
- Implemented robust tool calling capabilities.
- Added agent calling for delegated inference.
- Final result processing.
- Agent Orchestration:
- Centralized handling for LLM inference, tool execution, and result aggregation.
π Changed¶
- LLM API: Refactored for better type safety and extensibility.
- Agent Constructor: Simplified initialization options.
- Transport Factory: Improved factory patterns for transport creation.
π Fixed¶
- Agent Stability: Resolved race conditions in agent message handling.
- HTTP Backend: Fixed issues with stream termination.
[v0.4.5] - 2026-01-26¶
Current Status
Work in progress features for the next release.
π Added¶
- LLM Automated Inference:
- Implemented robust tool calling capabilities.
- Added agent calling for delegated inference.
- Final result processing.
- Agent Orchestration:
- Centralized handling for LLM inference, tool execution, and result aggregation.
π Changed¶
- LLM API: Refactored for better type safety and extensibility.
- Agent Constructor: Simplified initialization options.
- Transport Factory: Improved factory patterns for transport creation.
π Fixed¶
- Agent Stability: Resolved race conditions in agent message handling.
- HTTP Backend: Fixed issues with stream termination.
πΊοΈ Roadmap¶
Currently working on v0.4.8
- Finalize LLM Inference Guardrails
Upcoming Features¶
- [ ] Agent Task Handling: Finalise logic for robust task management.
- [ ] Delegated Inference: Logic for agent delegation and tool calling.
- [ ] Transport Layer: Add gRPC transport support.
- [ ] Storage: Add base classes and implementations (e.g., SQLite).
- [ ] Observability: Add OpenTelemetry support out-of-the-box.
- [x] Integrations: Finalise MCP adapter.