How rohannimje/techvruk-ai-agent works
The product is a Streamlit research chat app: users submit questions, the agent uses Gemini to decide whether to answer directly or invoke internal-knowledge or web search, and the UI presents the answer with tool badges or a persistent styled error. The README documents model switching and cached FAISS resources. The sampled code shows the agent’s ReAct graph and knowledge-base construction; unsampled UI and tool details are represented only where documented.
Main entry points: agent.py Tool executor · app.py Chat UI · dummy_data.txt Company knowledge
Components 14
Chat interface
- Chat UI
app.py - Answer and errors
app.py
Agent orchestration
- Agent entry point
agent.py - Gemini reasoner
agent.py - Tool-call router
agent.py - Tool executor
agent.py - Message history
agent.py
Knowledge retrieval
- Internal KB search
agent.py - Cached FAISS index
agent.py - Company knowledge
dummy_data.txt
External integrations
- Live web search
agent.py
Other components
- Research user
- Google Gemini
- DuckDuckGo
Connections 16
- Research user → Chat UI: submits query
README.md - Chat UI → Agent entry point: calls
README.md - Agent entry point → Gemini reasoner: starts graph
agent.py - Gemini reasoner → Google Gemini: invokes model
agent.py - Gemini reasoner → Tool-call router: checks tool calls
agent.py - Tool-call router → Tool executor: routes tool calls
agent.py - Tool-call router → Agent entry point: ends graph
agent.py - Tool executor → Internal KB search: executes selected tool
README.md - Tool executor → Live web search: executes selected tool
README.md - Internal KB search → Cached FAISS index: searches
agent.py - Cached FAISS index → Company knowledge: indexes text
agent.py - Live web search → DuckDuckGo: searches web
README.md - Tool executor → Message history: appends tool output
agent.py - Message history → Gemini reasoner: feeds next cycle
README.md - Agent entry point → Answer and errors: returns answer and tools
README.md - Chat UI → Answer and errors: renders response
app.py