Documentation Index Fetch the complete documentation index at: https://docs.getbindu.com/llms.txt
Use this file to discover all available pages before exploring further.
Research assistant with DuckDuckGo search integration.
Code
import os
from bindu.penguin.bindufy import bindufy
from agno.agent import Agent
from agno.tools.duckduckgo import DuckDuckGoTools
from agno.models.openrouter import OpenRouter
from dotenv import load_dotenv
load_dotenv()
agent = Agent(
instructions = "You are a research assistant that finds and summarizes information." ,
model = OpenRouter(
id = "openai/gpt-5-mini" ,
api_key = os.getenv( "OPENROUTER_API_KEY" )
),
tools = [DuckDuckGoTools()],
)
config = {
"author" : "your.email@example.com" ,
"name" : "research_agent" ,
"description" : "A research assistant agent" ,
"deployment" : {
"url" : "http://localhost:3773" ,
"expose" : True ,
"cors_origins" : [ "http://localhost:5173" ]
},
}
def handler ( messages : list[dict[ str , str ]]):
result = agent.run( input = messages)
return result
if __name__ == "__main__" :
os.environ[ "AUTH_ENABLED" ] = "false"
bindufy(config, handler)
#bindufy(config, handler, launch=True)
# This will create a tunnel to your agent and expose it on port 3773
How It Works
Research Capability
Agent searches web via DuckDuckGo
Finds relevant information
Summarizes findings clearly
Instructions
Simple, focused directive
“Find and summarize information”
Guides agent behavior
Auth Disabled
AUTH_ENABLED = "false" for local dev
Frontend connects without OAuth
Production should enable auth
Dependencies
uv init
uv add bindu agno python-dotenv
Environment Setup
Create .env file:
OPENROUTER_API_KEY = your_openrouter_api_key_here
Run
uv run agno_simple_example.py
Examples:
“Research the latest developments in quantum computing”
“Find information about climate change and its effects”
“What are the recent breakthroughs in medical research?”
Example API Calls
{
"jsonrpc" : "2.0" ,
"method" : "message/send" ,
"params" : {
"message" : {
"role" : "user" ,
"kind" : "message" ,
"messageId" : "9f11c870-5616-49ad-b187-d93cbb100001" ,
"contextId" : "9f11c870-5616-49ad-b187-d93cbb100002" ,
"taskId" : "9f11c870-5616-49ad-b187-d93cbb100003" ,
"parts" : [
{
"kind" : "text" ,
"text" : "Research the latest developments in quantum computing"
}
]
},
"configuration" : {
"acceptedOutputModes" : [ "application/json" ]
}
},
"id" : "9f11c870-5616-49ad-b187-d93cbb100003"
}
{
"jsonrpc" : "2.0" ,
"method" : "tasks/get" ,
"params" : {
"taskId" : "9f11c870-5616-49ad-b187-d93cbb100003"
},
"id" : "9f11c870-5616-49ad-b187-d93cbb100004"
}
Frontend Setup
# Clone the Bindu repository
git clone https://github.com/GetBindu/Bindu
# Navigate to frontend directory
cd frontend
# Install dependencies
npm install
# Start frontend development server
npm run dev
Open http://localhost:5173 and try to chat with research assistant