You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,13 @@
1
1
# Changelog
2
2
3
+
## 0.5.1 (2025-10-29)
4
+
5
+
Full Changelog: [v0.5.0...v0.5.1](https://github.com/scaleapi/agentex-python/compare/v0.5.0...v0.5.1)
6
+
7
+
### Bug Fixes
8
+
9
+
***client:** close streams without requiring full consumption ([f56acae](https://github.com/scaleapi/agentex-python/commit/f56acae74ee83a116e735ca7bf68f2096aafaf6e))
10
+
3
11
## 0.5.0 (2025-10-28)
4
12
5
13
Full Changelog: [v0.4.28...v0.5.0](https://github.com/scaleapi/agentex-python/compare/v0.4.28...v0.5.0)
This is a simple AgentEx agent that just says hello and acknowledges the user's message to show which ACP methods need to be implemented for the sync ACP type.
4
-
It is a SYNC agent.
4
+
The simplest agent type: synchronous request/response pattern with a single `@acp.on_message_send` handler. Best for stateless operations that complete immediately.
That's it - one handler, immediate response. No task creation, no state management.
34
+
35
+
## When to Use
36
+
- Simple chatbots with no memory requirements
37
+
- Quick Q&A or information lookup agents
38
+
- Prototyping and testing agent responses
39
+
- Operations that complete in under a second
40
+
41
+
## Why This Matters
42
+
Sync agents are the simplest way to get started with AgentEx. They're perfect for learning the basics and building stateless agents. Once you need conversation memory or task tracking, you'll graduate to agentic agents.
43
+
44
+
**Next:**[010_multiturn](../010_multiturn/) - Add conversation memory to your agent
The handler accepts history, builds context, and returns responses that reference previous exchanges.
45
+
46
+
## When to Use
47
+
- Simple chatbots that need conversation memory
48
+
- When client can maintain and send conversation history
49
+
- Quick prototypes before building full agentic agents
50
+
51
+
## Why This Matters
52
+
While sync agents can handle conversations, you're responsible for managing state on the client side. This becomes complex quickly. For production conversational agents, consider agentic agents ([10_agentic/00_base/010_multiturn](../../10_agentic/00_base/010_multiturn/)) where the platform manages state automatically.
53
+
54
+
**Next:**[020_streaming](../020_streaming/) - Stream responses in real-time
# TaskMessages are messages that are sent between an Agent and a Client. They are fundamentally decoupled from messages sent to the LLM. This is because you may want to send additional metadata to allow the client to render the message on the UI differently.
# - If using multiple LLMs, but one LLM's output should not be sent to the user (i.e. a critic model), you can leverage the State as an internal storage mechanism to store the critic model's conversation history. This i s a powerful and flexible way to handle complex scenarios.
# The Agentex server automatically commits input and output messages to the database so you don't need to do this yourself, simply process the input content and return the output content.
Streaming dramatically improves user experience for longer operations. Instead of waiting 10 seconds for a complete response, users see results immediately as they're generated. This is essential for modern AI agents.
44
+
45
+
**Next:** Ready for task management? → [10_agentic/00_base/000_hello_acp](../../10_agentic/00_base/000_hello_acp/)
# Initialize the provider and run config to allow for tracing
74
+
provider=SyncStreamingProvider(
75
+
trace_id=params.task.id,
76
+
)
86
77
87
-
# Call an LLM to respond to the user's message
78
+
# Initialize the run config to allow for tracing and streaming
79
+
run_config=RunConfig(
80
+
model_provider=provider,
81
+
)
88
82
89
-
print(f"Calling LLM with model {state.model} and messages {llm_messages}")
90
83
91
-
# The Agentex server automatically commits input and output messages to the database so you don't need to do this yourself, simply process the input content and return the output content.
0 commit comments