Skip to content

A template for an agno workspace, with wiring for observability and no strong deployment opinions baked in

License

Notifications You must be signed in to change notification settings

afogel/agno_workspace_template

Repository files navigation

Agent App

This repo contains the code for a production-grade agentic system built with:

  1. A Streamlit UI
  2. A FastAPI server
  3. A Postgres database with the PgVector extension.

You can run the agent app in 2 environments:

  1. A local development environment using Overmind (recommended)
  2. A development environment running locally on docker

Setup

  1. Install uv for managing the python environment.
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Create a virtual environment and install dependencies:
./scripts/dev_setup.sh
  1. Activate virtual environment
source .venv/bin/activate

Run application locally using Overmind (Recommended)

This method runs all services directly on your local machine without Docker.

Prerequisites

  1. Install PostgreSQL 17 and pgvector:
brew install postgresql@17 pgvector

# Configure PostgreSQL 17 to run on port 5433 (to avoid conflict with PostgreSQL 16)
echo "port = 5433" >> /opt/homebrew/var/postgresql@17/postgresql.conf

# Start PostgreSQL 17
brew services start postgresql@17
  1. Install Overmind:
brew install overmind
  1. Create and configure environment variables:
cp .env.example .env
# Edit .env file with your API keys and update DB_PORT=5433 for PostgreSQL 17 (if you have another version of postgres on your machine, otherwise you can use the standard 5432)
  1. Set up the database:
# Create database using PostgreSQL 17 (specify port 5433 to avoid conflict with PostgreSQL 16)
/opt/homebrew/opt/postgresql@17/bin/createdb -p 5433 opt_out_dev

# Connect to the database and enable pgvector extension
psql -p 5433 opt_out_dev -c "CREATE EXTENSION IF NOT EXISTS vector;"
  1. Run database migrations:
uv run alembic -c db/alembic.ini upgrade head

Start the application

overmind start

This will start:

Stop the application

overmind stop

Or press Ctrl+C in the terminal running Overmind.

Run application locally using docker

  1. Install docker desktop

  2. Export API keys

Required: Set the OPENAI_API_KEY environment variable using

export OPENAI_API_KEY=***

You may use any supported model provider, just need to update the respective Agent, Team or Workflow.

  1. Start the workspace:
ag ws up
  1. Stop the workspace using:
ag ws down

More Information

Learn more about this application and how to customize it in the Agno Workspaces documentaion

About

A template for an agno workspace, with wiring for observability and no strong deployment opinions baked in

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages