Enables agent sessions to be traced and debugged using the same
explainability infrastructure as GraphRAG. Agent traces record:
- Session start with query and timestamp
- Each iteration's thought, action, arguments, and observation
- Final answer with derivation chain
Changes:
- Add session_id and collection fields to AgentRequest schema
- Add agent predicates (TG_THOUGHT, TG_ACTION, etc.) to namespaces
- Create agent provenance triple generators in provenance/agent.py
- Register explainability producer in agent service
- Emit provenance triples during agent execution
- Update CLI tools to detect and render agent traces alongside GraphRAG
* Plugin architecture for messaging fabric
* Schemas use a technology neutral expression
* Schemas strictness has uncovered some incorrect schema use which is fixed
* Tidy up duplicate tech specs in doc directory
* Streaming LLM text-completion service tech spec.
* text-completion and prompt interfaces
* streaming change applied to all LLMs, so far tested with VertexAI
* Skip Pinecone unit tests, upstream module issue is affecting things, tests are passing again
* Added agent streaming, not working and has broken tests
* Fix incorrect tool initialisation in agent service
* Make Action: parsing more resient. If there are quotation marks, strip them off.
* Added test case for this change
* Implement KG extraction agent (kg-extract-agent)
* Using ReAct framework (agent-manager-react)
* ReAct manager had an issue when emitting JSON, which conflicts which ReAct manager's own JSON messages, so refactored ReAct manager to use traditional ReAct messages, non-JSON structure.
* Minor refactor to take the prompt template client out of prompt-template so it can be more readily used by other modules. kg-extract-agent uses this framework.
* Updated CLI invocation and config model for tools and mcp
* CLI anomalies
* Tweaked the MCP tool implementation for new model
* Update agent implementation to match the new model
* Fix agent tools, now all tested
* Fixed integration tests
* Fix MCP delete tool params
Key Features
- MCP Tool Integration: Added core MCP tool support with ToolClientSpec and ToolClient classes
- API Enhancement: New mcp_tool method for flow-specific tool invocation
- CLI Tooling: New tg-invoke-mcp-tool command for testing MCP integration
- React Agent Enhancement: Fixed and improved multi-tool invocation capabilities
- Tool Management: Enhanced CLI for tool configuration and management
Changes
- Added MCP tool invocation to API with flow-specific integration
- Implemented ToolClientSpec and ToolClient for tool call handling
- Updated agent-manager-react to invoke MCP tools with configurable types
- Enhanced CLI with new commands and improved help text
- Added comprehensive documentation for new CLI commands
- Improved tool configuration management
Testing
- Added tg-invoke-mcp-tool CLI command for isolated MCP integration testing
- Enhanced agent capability to invoke multiple tools simultaneously
- Keeps processing in different flows separate so that data can go to different stores / collections etc.
- Potentially supports different processing flows
- Tidies the processing API with common base-classes for e.g. LLMs, and automatic configuration of 'clients' to use the right queue names in a flow
- prompt-template takes config from the config-svc, dynamically reloads
as new config appears.
- agent-react takes config from config-svc, dynamically reloads
- Fixed lack of data in config queue, needed to take the Earliest, not the
Latest values.
- Changed text-completion and knowledge-query tool to both use 'query'
as the argument.
- Prompt and agent no longer have command line args to supply
configuration.
- Removed unused LLM client configuration from agent-manager-react
- Change agent-manager-react template to use prompt-rag instead of
prompt
- Changed TextCompletion tool to use 'question' instead of 'computation'
for its parameter.