|
Entropic 2.14.3
Local-first agentic inference engine
|
Tool for managing a persistent todo list. More...


Public Member Functions | |
| TodoTool (ToolDefinition def) | |
| Construct from tool definition. | |
| ServerResponse | execute (const std::string &args_json) override |
| Execute todo action (add/update/remove). | |
| std::string | anchor_key (const std::string &args_json) const override |
| Anchor key for todo state replacement. | |
| bool | release (const std::string &key) |
| Forget a session's list (gh#158). | |
| std::size_t | session_count () const |
| Sessions holding a list (gh#158). | |
Public Member Functions inherited from entropic::ToolBase | |
| ToolBase (ToolDefinition def) | |
| Construct with a pre-built definition. | |
| const std::string & | name () const |
| Get the tool name. | |
| const ToolDefinition & | definition () const |
| Get the full tool definition. | |
| virtual MCPAccessLevel | required_access_level () const |
| Minimum access level required to execute this tool. | |
Additional Inherited Members | |
Protected Attributes inherited from entropic::ToolBase | |
| ToolDefinition | definition_ |
| Tool definition. | |
Tool for managing a persistent todo list.
gh#158 (v2.13.0): one list PER SESSION. The tool object is one per EntropicServer, and the handle's default set serves every unbound session, so a list kept on the object was shared — session B's result listed session A's items (and before that, two sessions appending raced the vector into heap corruption). The list is now keyed by the calling session and released with that session's conversation.
@dg_internal
Definition at line 65 of file entropic_server.cpp.
|
inlineexplicit |
Construct from tool definition.
| def | Tool definition loaded from entropic/todo.json. @dg_internal |
Definition at line 73 of file entropic_server.cpp.
|
overridevirtual |
Anchor key for todo state replacement.
Anchor key for context replacement.
| args_json | Arguments (unused). |
| args_json | Arguments (unused). |
Reimplemented from entropic::ToolBase.
Definition at line 126 of file entropic_server.cpp.
|
overridevirtual |
Execute todo action (add/update/remove).
Execute the todo tool (add/update/remove) and emit directives.
| args_json | JSON with "action", "content", "index", "status". |
gh#158 (v2.13.0): acts on THE CALLING SESSION's list — the session the ToolExecutor routed this call on, published to its thread. The action and the render run under ONE hold of the list's lock, so the list a call returns is the list its own action produced.
| args_json | JSON with "action" plus the action's own fields. |
out_of_range error with NO directives (v2.14.0). @req REQ-MCP-024 @req REQ-LOOP-009 Implements entropic::ToolBase.
Definition at line 234 of file entropic_server.cpp.
Forget a session's list (gh#158).
| key | Session key. |
Definition at line 102 of file entropic_server.cpp.
|
inline |
Sessions holding a list (gh#158).
Definition at line 110 of file entropic_server.cpp.