Skip to content

justin-nevins/daily-advisor-panel

Repository files navigation

Daily Advisor Panel

AI-powered advisory council for executive decision-making.

A multi-persona AI advisory system that routes your questions to domain-specific AI advisors, each with specialized knowledge and perspective. Think of it as having a panel of experts on-call: a tech strategist, business analyst, creative director, and more.

Features

  • 🎯 Smart Routing — Questions automatically routed to the most relevant advisor
  • 🧠 RAG-Enhanced — Each advisor has domain-specific knowledge bases
  • 🗣️ Voice Support — Ask questions via voice (ElevenLabs TTS responses)
  • 🔌 REST API — Integrate with any frontend or workflow
  • 🌐 Web Interface — Interactive web dashboard included

Architecture

┌─────────────────────────────────────────────────────────────┐
│  Input (Text/Voice)                                         │
└─────────────────────┬───────────────────────────────────────┘
                      │
                      ▼
┌─────────────────────────────────────────────────────────────┐
│  Router (src/router.py)                                     │
│  - Analyzes query intent                                     │
│  - Selects primary + optional secondary advisor              │
│  - Uses semantic similarity for routing                      │
└─────────────────────┬───────────────────────────────────────┘
                      │
                      ▼
┌─────────────────────────────────────────────────────────────┐
│  Advisor Runner (src/advisor_runner.py)                     │
│  - Retrieves relevant context via RAG                        │
│  - Generates response using advisor persona                  │
│  - Streams or returns complete response                      │
└─────────────────────┬───────────────────────────────────────┘
                      │
                      ▼
┌─────────────────────────────────────────────────────────────┐
│  Output (Text + Optional TTS)                               │
└─────────────────────────────────────────────────────────────┘

Quick Start

Prerequisites

  • Python 3.10+
  • OpenAI API key
  • ElevenLabs API key (optional, for voice)

Installation

# Clone the repo
git clone https://github.com/Cato-Pine/daily-advisor-panel.git
cd daily-advisor-panel

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Configure environment
cp .env.example .env
# Edit .env with your API keys

Run the API

uvicorn src.api:app --reload --port 8000

Run the Web Interface

cd web
python -m http.server 3000
# Open http://localhost:3000

API Endpoints

Endpoint Method Description
/ GET Health check
/advisors GET List available advisors
/consult POST Ask a question (auto-routed)
/consult/{advisor_id} POST Ask a specific advisor

Example Request

curl -X POST http://localhost:8000/consult \
  -H "Content-Type: application/json" \
  -d '{"query": "Should I use microservices or a monolith?"}'

Example Response

{
  "routing": {
    "primary": "tech_strategist",
    "secondary": "business_analyst",
    "confidence": 0.92
  },
  "primary": {
    "advisor_id": "tech_strategist",
    "advisor_name": "Tech Strategist",
    "content": "For your situation, I'd recommend...",
    "sources": ["architecture-patterns.md", "scaling-guide.md"]
  }
}

Advisors

The panel includes specialized advisors (see advisors/ for configurations):

  • Tech Strategist — Software architecture, technical decisions
  • Business Analyst — Market analysis, business strategy
  • Creative Director — Design, branding, user experience
  • Operations Expert — Process optimization, efficiency
  • Security Advisor — Risk assessment, compliance

Configuration

Environment Variables

Variable Required Description
OPENAI_API_KEY Yes OpenAI API key
OPENAI_MODEL No Model to use (default: gpt-4o)
ELEVENLABS_API_KEY No ElevenLabs API key (for TTS)

Adding Custom Advisors

Create a new YAML file in advisors/:

id: custom_advisor
name: Custom Advisor
description: Expertise description
system_prompt: |
  You are a [role] with expertise in [domain].
  ...
knowledge_base:
  - path/to/docs/

Project Structure

src/
  api.py             — FastAPI server
  panel.py           — Main advisory panel orchestration
  router.py          — Query routing logic
  advisor_runner.py  — Individual advisor execution
  advisors.py        — Advisor definitions
  rag_engine.py      — RAG retrieval system
  voice.py           — ElevenLabs TTS integration
  config.py          — Configuration management
advisors/            — Advisor configurations
data/                — Knowledge base documents
web/                 — Web frontend
tests/               — Test suite

Development

# Run tests
pytest tests/ -v

# Type checking
mypy src/

# Format code
black src/ tests/

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors