Skip to content

Docs and CLI: add discovery/public API docs, enable discovery CLI, and pin runtime extras#9

Merged
mahimairaja merged 1 commit intomainfrom
feat/verify-and-update-readme-and-documentation
Mar 21, 2026
Merged

Docs and CLI: add discovery/public API docs, enable discovery CLI, and pin runtime extras#9
mahimairaja merged 1 commit intomainfrom
feat/verify-and-update-readme-and-documentation

Conversation

@mahimairaja
Copy link
Copy Markdown
Collaborator

@mahimairaja mahimairaja commented Mar 21, 2026

Motivation

  • Clarify and document discovery-based workflows and the package public API so users can run one agent per file and use discovery via @agent_config(...).
  • Provide a small CLI surface for discovery workflows (list, start, dev) to simplify local and production usage.
  • Make runtime plugin requirements explicit in packaging so shared prewarm plugins are available by default.

Description

  • Add documentation and examples for discovery, including AgentDiscoveryConfig, agent_config(...), session_kwargs, discovery behavior, and routing resolution in the docs and README.md.
  • Extend the CLI to support start, dev, and list commands with --agents-dir and shared defaults (--default-stt, --default-llm, --default-tts, --default-greeting) and implement discovery/listing in src/openrtc/cli.py using AgentPool.discover().
  • Move the Silero and turn-detector LiveKit extras into the main dependency and update pyproject.toml to require livekit-agents[silero,turn-detector]~=1.4 by default.
  • Tidy wording and add a short "Public API at a glance" to the README.md, update docs site metadata (GitHub links), and clarify install and prewarm error messaging in src/openrtc/pool.py.

Testing

  • No automated tests were run for these documentation and CLI changes.

Codex Task

Summary by CodeRabbit

Release Notes

  • New Features

    • Added agent discovery via pool.discover() and @agent_config() decorator for simplified configuration
    • New CLI commands: list, start, and dev with built-in agent discovery
    • Added default_stt, default_llm, default_tts, and default_greeting pool configuration options
    • New AgentPool methods: get() and remove() for agent management
  • Documentation

    • Updated installation to pip install openrtc with included dependencies
    • Documented enhanced routing behavior with priority-based agent selection
    • Added discovery-based setup examples and API reference updates

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 21, 2026

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

Documentation updates emphasizing discovery-based workflows and new AgentPool API surface: routing behavior specifications, AgentDiscoveryConfig dataclass, @agent_config decorator, discovery/removal methods, and session options forwarding. Dependency restructuring to include livekit-agents[silero,turn-detector] directly. Minor help text and error message updates.

Changes

Cohort / File(s) Summary
Documentation: Core API & Architecture
README.md, docs/api/pool.md, docs/concepts/architecture.md, docs/getting-started.md
Installation and API documentation updated to reflect new discovery-based setup with AgentDiscoveryConfig, @agent_config decorator, and AgentPool.discover() method. Routing behavior explicitly documented with precedence rules and ValueError on unknown agent references. Session options forwarding added to AgentConfig and AgentPool.add().
Documentation: CLI & Commands
docs/cli.md, src/openrtc/cli.py
CLI behavior redefined as discovery-based: list, start, and dev subcommands introduced. Shared default options (--default-stt, --default-llm, --default-tts, --default-greeting) documented and help text updated to reference @agent_config() metadata override pattern.
Configuration & Repository
docs/.vitepress/config.ts, pyproject.toml
GitHub URLs updated from mahimairaja/openrtc-python to mahimailabs/openrtc. Dependency structure simplified: livekit-agents[silero,turn-detector] moved to direct dependencies array, removing optional-dependencies section.
Runtime Error Handling
src/openrtc/pool.py
Error message for missing plugins updated to suggest reinstalling openrtc or installing livekit-agents[silero,turn-detector].

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

Poem

🐰 Hop through discovery paths so fine,
CLI commands in perfect line,
Pool defaults dance, agents align,
Config hops to new homes—all by design!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main changes: adding discovery and public API documentation, enabling discovery-based CLI commands, and pinning runtime extras in dependencies.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/verify-and-update-readme-and-documentation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mahimairaja mahimairaja merged commit 87895c3 into main Mar 21, 2026
6 of 7 checks passed
@mahimairaja mahimairaja deleted the feat/verify-and-update-readme-and-documentation branch March 23, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant