Skip to content

Releases: deepmind11/clinic-ops-copilot

v0.2.0 - Onboarding + agents-as-tools UX

11 Apr 07:36

Choose a tag to compare

Highlights

  • New Onboarding sub-agent — registers first-time patients with duplicate detection and input validation. Returns a patient_id the patient can immediately use for booking or coverage.
  • Single-chatbot UX (agents-as-tools refactor) — the patient now talks to one ClinicOps Assistant. Sub-agents (Onboarding, Scheduler, Eligibility) are exposed to the master as delegate_to_<name> tools and invoked as stateless subroutines. No more visible routing handoff.
  • Interactive REPLclinicops with no subcommand drops into a prompt-toolkit-powered session: persistent history at ~/.clinicops_history, up/down arrow recall, ctrl+r reverse search, inline autosuggest.
  • Streaming responses — agent output streams token-by-token via the OpenAI SDK streaming API.
  • Trace propagation via ContextVar — master agent propagates trace_id into nested sub-agent runs so every event lands under one trace in the events store.

Added

  • Onboarding agent with lookup_patient and register_patient tools
  • Interactive REPL with prompt-toolkit (history, search, autosuggest)
  • Streaming responses via the OpenAI SDK streaming API
  • Current datetime injection into Scheduler, Onboarding, and master system prompts so agents resolve relative dates
  • ContextVar-based trace propagation for nested delegate calls
  • register_builtins() helper shared by CLI and eval runner

Changed

  • Architecture: moved from visible triage → scheduler handoff to single user-facing assistant with sub-agents as tools
  • Config: provider-agnostic LLM_API_KEY / LLM_BASE_URL / LLM_MODEL replace OPENROUTER_* (works with OpenRouter, OpenAI, Ollama, Azure, Groq, any OpenAI-compatible provider)
  • REPL conversation memory via prior_messages passed to the master every turn
  • Master agent system prompt explicitly suppresses routing disclosure
  • CLI chat subcommand simplified — one call to the master, no manual orchestration
  • All markdown docs refreshed for the new architecture

Fixed

  • register_patient validates inputs before any DB I/O so bad inputs fail fast
  • Dashboard Recent decisions panel no longer crashes with ValueError: cannot convert float NaN to integer on events without a latency
  • REPL visual polish: httpx logs suppressed, distinct rich.Panel banner and colored you ▶ prompt

See CHANGELOG.md for the full list.

v0.1.0 - Phase 1 complete

11 Apr 05:54

Choose a tag to compare

What's in v0.1.0

Added

  • Scheduler agent — books, reschedules, and cancels appointments; handles double-bookings and provider availability
  • Eligibility agent — checks insurance coverage, expired plans, and prior authorization gaps
  • Triage agent — classifies patient intents and routes to the right agent; handles Spanish / English-Spanish code-switching
  • Agent registry with plugin discovery — drop a .py file into plugins/ to add a new workflow
  • clinicops CLI: seed, chat, logs, healthcheck, dashboard, eval
  • Streamlit observability dashboard with per-agent metrics and full trace drill-down
  • Eval harness with 20 golden test cases (scheduling, eligibility, triage, multilingual, failure modes)
  • Provider-agnostic LLM config (LLM_API_KEY, LLM_BASE_URL, LLM_MODEL) — works with OpenRouter, OpenAI, Ollama, and any OpenAI-compatible endpoint
  • GitHub Actions CI: lint, format, type check, pytest on Python 3.11 and 3.12

Known Limitations

  • Loom demo recording pending
  • Install from source only (no PyPI release)

See CHANGELOG.md for the full list.