Agentic AI Planner is a modular, graph-based autonomous agent system that breaks down high-level user goals into actionable plans, executes tool-augmented tasks, and delivers structured results β all powered by a locally-hosted LLM via Ollama.
No API keys. No cloud dependency. Fully local & private.
- Features
- Demo / Screenshots
- Architecture β Full system design document
- Tech Stack
- Project Structure
- Installation & Setup
- Usage
- Testing
- Deployment
- Contributing
- Roadmap / Future Improvements
- License
- Contact / Author
- π§ Autonomous Planning β Accepts a high-level goal and generates a step-by-step execution plan using an AI planning agent.
- π Graph-Based Orchestration β Uses LangGraph to define a stateful, multi-node workflow (
Planner β Tool β Final Output). - π οΈ Tool-Augmented Execution β Integrates custom tools (e.g., calculator) that the agent can invoke during the workflow.
- π» 100% Local Inference β Runs entirely on your machine using Ollama with the Qwen3:8b model β no API keys or cloud services required.
- π₯οΈ Interactive Web UI β Provides a clean Streamlit-based interface for goal input and result visualization.
- π¦ Modular Architecture β Clean separation of agents, tools, prompts, graph logic, and utilities for easy extensibility.
π§ Coming Soon β Screenshots and a live demo link will be added here.
To try it locally, follow the Installation & Setup section below.
π View Full System Design & Architecture Document β Includes sequence diagrams, state machine automata, class diagrams, and deployment architecture.
The agent follows a three-node state graph workflow:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β User Goal β
β "Help me prepare for ML exam" β
ββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββ
β
βΌ
ββββββββββββββββββ
β π§ Planner β β Breaks goal into sub-tasks
β Node β using Qwen3 via Ollama
βββββββββ¬βββββββββ
β
βΌ
ββββββββββββββββββ
β π οΈ Tool β β Executes tool-augmented
β Node β actions (e.g., calculator)
βββββββββ¬βββββββββ
β
βΌ
ββββββββββββββββββ
β π Final β β Aggregates plan + tool
β Node β results into final output
βββββββββ¬βββββββββ
β
βΌ
ββββββββββββββββββ
β β
END β
ββββββββββββββββββ
| Layer | Technology |
|---|---|
| LLM Runtime | Ollama + Qwen3:8b |
| Framework | LangChain |
| Orchestration | LangGraph |
| Frontend / UI | Streamlit |
| Language | Python 3.10+ |
| Env Management | venv + pip |
agentic-ai-demo/
β
βββ agents/
β βββ planner_agent.py # Planning agent β generates step-by-step plans
β
βββ graph/
β βββ agent_graph.py # LangGraph state graph definition & workflow
β
βββ prompts/
β βββ planner_prompt.py # Prompt template for the planner agent
β
βββ tools/
β βββ calculator_tool.py # Calculator tool (LangChain @tool)
β
βββ utils/
β βββ llm_loader.py # Loads Ollama LLM (Qwen3:8b)
β
βββ app.py # Streamlit web UI entry point
βββ main.py # CLI entry point
βββ test_llm.py # Test script β LLM connectivity
βββ test_planner.py # Test script β planner agent
βββ test_tool.py # Test script β calculator tool
βββ requirements.txt # Python dependencies
βββ ARCHITECTURE.md # System design & architecture document
βββ README.md
| Requirement | Version | Notes |
|---|---|---|
| Python | β₯ 3.10 | Required |
| Ollama | Latest | Install Guide |
| Git | Latest | To clone the repository |
git clone https://github.com/<your-username>/agentic-ai-demo.git
cd agentic-ai-demopython3 -m venv venv
source venv/bin/activate # Linux / macOS
# venv\Scripts\activate # Windowspip install -r requirements.txt# Install Ollama (if not already installed)
curl -fsSL https://ollama.com/install.sh | sh
# Pull the Qwen3:8b model
ollama pull qwen3:8b
# Start the Ollama server (if not running)
ollama serveCreate a .env file in the project root if you need to customize settings:
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=qwen3:8bNote: The default configuration connects to
http://localhost:11434with theqwen3:8bmodel. No.envfile is needed for default usage.
streamlit run app.pyThis launches an interactive web interface where you can:
- Enter a high-level goal (e.g., "Help me prepare for ML exam in 5 days")
- Click Run Agent
- View the generated plan and tool execution results
python main.pyExample Output:
AGENT OUTPUT:
Goal:
Help me prepare for ML exam in 5 days
Plan:
Step 1: Review core ML concepts (supervised, unsupervised, reinforcement learning)
Step 2: Practice key algorithms β linear regression, decision trees, SVM, KNN
Step 3: Work through hands-on projects and Kaggle datasets
Step 4: Take timed practice tests
Step 5: Revise weak areas and review notes
Calculation Result:
20
Run the individual test scripts to verify each component:
# Test LLM connectivity
python test_llm.py
# Test the planner agent
python test_planner.py
# Test the calculator tool
python test_tool.py| Script | Purpose |
|---|---|
test_llm.py |
Verifies Ollama/Qwen3 connectivity |
test_planner.py |
Tests goal β plan generation |
test_tool.py |
Tests calculator tool invocation |
Tip: Ensure the Ollama server is running (
ollama serve) before executing tests.
The application is designed for local-first deployment. Simply follow the Installation & Setup steps.
A Dockerfile and docker-compose.yml will be provided in a future release for containerized deployment.
To deploy on a cloud VM (e.g., AWS EC2, GCP Compute Engine):
- Provision a VM with β₯ 8 GB RAM (for the Qwen3:8b model)
- Install Python 3.10+, Ollama, and project dependencies
- Run
ollama pull qwen3:8b && ollama serve & - Run
streamlit run app.py --server.port 8501 --server.address 0.0.0.0 - Open
http://<VM_PUBLIC_IP>:8501in your browser
Contributions are welcome! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name
- Commit your changes with clear, descriptive messages:
git commit -m "feat: add web search tool to agent workflow" - Push to your fork:
git push origin feature/your-feature-name
- Open a Pull Request with a clear description of your changes
- Follow existing code structure and naming conventions
- Add test scripts for new tools or agents
- Update the README if you add new features
- Use Conventional Commits for commit messages
- π Web Search Tool β Add internet search capabilities to the agent
- π§ Memory & Context β Implement conversation memory for multi-turn interactions
- π Dynamic Tool Selection β Let the agent decide which tools to use based on the goal
- π Document Summarizer β Add a tool for summarizing PDFs and web pages
- π³ Docker Support β Containerize the full stack (app + Ollama)
- π Conditional Graph Routing β Add branching logic in the workflow graph
- π Execution Dashboard β Visualize agent execution traces and graph state
- π§ͺ Unit Test Suite β Comprehensive
pytest-based test coverage - π€ Multi-Agent Support β Orchestrate multiple specialized agents
This project is licensed under the MIT License β see the LICENSE file for details.
MIT License
Copyright (c) 2025 [Your Name]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
| Field | Details |
|---|---|
| Author | Amaan Ali Doddamani |
| amaanalidoddamani05@gmail.com | |
| GitHub | github.com/ |
| linkedin.com/in/ |
β If you found this project useful, give it a star on GitHub! β
Built with β€οΈ using LangChain, LangGraph, Ollama & Streamlit