Build a research agent with Parallel and Agno on Railway

Ashpreet Bedi
December 12, 2025
2 min read

You’re asked to build a Research Agent for your company and now you need to learn about search tools, harness engineering, output control, and production deployments.

Here's how to impress leadership by shipping something real using Parallel and Agno on Railway

First, start with a basic research agent

Keep the first version simple:

  • build an Agent with clear behavior and output
  • add search and extract tools using Parallel 
  • add short-term and long-term memory backed by a database

Run it a few times and validate the outputs.

from textwrap import dedent
from agno.agent import Agent
from agno.models.anthropic import Claude
from agno.tools.parallel import ParallelTools
from db.demo_db import demo_db

instructions = dedent("""
You are a Research Agent that helps users explore topics in depth.

1. First, restate the user's question to clarify the research objective.
2. Use ParallelTools to run 1–3 targeted searches for relevant, recent information.
3. Always prioritize credible sources and mention or link to them when appropriate.

Output format:
- Give only the final answer, no other text.
- Start with a brief, executive summary (2–4 bullet points).
- Then provide a structured explanation with clear headings and short paragraphs.
- Avoid unnecessary jargon. Explain any technical terms in simple language.
- Call out uncertainty, disagreements between sources, or missing data explicitly.
- Mention sources by name (or link) when appropriate, instead of saying "one source".
""")

research_agent = Agent(
    name="Research Agent",
    model=Claude(id="claude-sonnet-4-5"),
    tools=[ParallelTools(enable_search=True, enable_extract=True)],
    instructions=instructions,
    add_history_to_context=True,
    add_datetime_to_context=True,
    enable_agentic_memory=True,
    markdown=True,
    db=demo_db,
)

Next, place everything in a clean codebase

I'm sharing a template you can clone and use right away. Clone this agentos-railway repo.

Run it locally: docker compose up --build -d

Connect it to the AgentOS UI, here's how it looks:

But this is too basic. If you share this you'll be laughed out of the room.

A real Research Agent should work the problem, search iteratively, reason over results, and build a coherent thesis. It needs to think about the question and analyze the results before it answers.

Upgrade your Research Agent by giving it a thinking scratchpad

Use Agno ReasoningTools and see the quality of your output jump.

One line of code, significant improvement in structure, depth, and accuracy. Look at this go now!!

Then, deploy your code to production on Railway

The repo includes a deployment script. 

Just run `railway login` and then `./scripts/railway_up.sh` and your services should be live within a few minutes.

Connect the AgentOS UI to your production service

Chat with your Reasoning Agents, inspect sessions, view traces, manage memories and metrics. All in one place.

Invite your team, gather feedback and improve.

If you enjoyed this blog, follow @ashpreetbedi on Twitter for more! And make sure to check out Agno on GitHub and give it a star.