Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR introduces a new file organizer agent that uses a custom system prompt to organize files in cloud storage environments. The agent leverages the A2A SDK and LangGraph to provide a natural language interface for file organization tasks through MCP (Model Context Protocol) tools.
- Custom agent with MCP integration for cloud storage file operations
- LangGraph-based workflow with OpenAI LLM integration
- OpenTelemetry instrumentation for observability
Reviewed Changes
Copilot reviewed 9 out of 11 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| rules.py | Defines file organization rules engine with YAML loading (currently unused) |
| graph.py | Implements the LangGraph state machine with custom system prompt for file organization |
| configuration.py | Provides LLM configuration settings with defaults for local Ollama |
| agent.py | Main agent implementation with A2A server setup and request handling |
| init.py | Sets up OpenTelemetry tracing for the service |
| pyproject.toml | Project dependencies and metadata |
| Dockerfile | Container configuration for deployment |
| .dockerignore | Files to exclude from Docker build context |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@EthanL3, once we are done with this PR, could you please also open another issue, like kagenti/kagenti#405 so we can add this new Agent to our Demo portfolio. This would complete the task. |
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
f345529 to
1c67636
Compare
mrsabath
left a comment
There was a problem hiding this comment.
This looks great! Thank you. Please just add a new issue to write a README file later, since it's empty, otherwise LGTM
|
Can this be merged in? |
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
02aaa2f to
fe7a7e9
Compare
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Signed-off-by: Ethan Levine <eolev43@gmail.com>
Summary
Custom agent for organizing files in a cloud storage environment. Main feature of this is a custom system prompt.
Related issue(s)
#74