Skip to content

feat: add native Oh My Pi provider support - #446

Open
Devin-Pi wants to merge 11 commits into
SaladDay:mainfrom
Devin-Pi:feat/omp-provider-support-final
Open

feat: add native Oh My Pi provider support#446
Devin-Pi wants to merge 11 commits into
SaladDay:mainfrom
Devin-Pi:feat/omp-provider-support-final

Conversation

@Devin-Pi

@Devin-Pi Devin-Pi commented Sep 8, 2026

Copy link
Copy Markdown

Summary

  • add native Oh My Pi (omp) app support across CLI, TUI, provider, prompt, session, usage, and configuration workflows
  • manage OMP providers and models in the native models.yml format
  • add OMP model roles, model discovery/fetch, prompt files, session scanning, and usage/token/cost statistics
  • preserve OMP-native YAML fields and protect against overwriting external edits

Related issue

Issue #358 tracked the request for Pi and OMP support. Pi was later merged separately in #431; this PR implements the remaining OMP scope with native OMP configuration semantics rather than reusing the Pi adapter.

Scope

  • adds first-class AppType::Omp routing instead of reusing the Pi adapter
  • supports PI_CODING_AGENT_DIR, PI_CONFIG_DIR, OMP profiles, project/global role configuration, and native OMP path resolution
  • supports provider/model CRUD while preserving multiple providers in models.yml
  • switching the default model updates config.yml model roles; it does not delete or replace other providers
  • adds --app omp model and role commands and an OMP TUI surface aligned with the existing app menus
  • includes secure managed-directory checks, provider/model schema validation, unknown-field preservation, and revision/conflict detection

Compatibility

Existing Claude, Codex, Gemini, OpenCode, Hermes, OpenClaw, and Pi workflows remain unchanged. OMP configuration is kept separate from Pi configuration and uses OMP-native YAML files and environment variables.

Validation

  • cargo fmt --all -- --check
  • cargo check
  • cargo test --lib -- --test-threads=1
  • cargo test --bin cc-switch -- --test-threads=1
  • cargo build --release
  • git diff --check

Tests that touch OMP paths use isolated temporary directories and do not modify the host OMP, Claude, Codex, or CC-Switch configuration directories.

@Devin-Pi Devin-Pi mentioned this pull request Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant