feat: add Oh My Pi (omp) launcher integration#1619
Open
ahmedyounes wants to merge 1 commit into
Open
Conversation
e6a96a2 to
35ceec0
Compare
Adds an "Oh My Pi" tile alongside Pi that launches the oh-my-pi (omp) coding agent against the running oMLX server. omp is a fork of pi-coding-agent with its own binary and ~/.omp/agent config dir. It reads custom OpenAI-compatible providers from models.yml (YAML) using the same providers.<name> schema as pi and honors the same PI_CODING_AGENT_DIR override. The integration writes/merges that models.yml (preserving other providers) and execs `omp --model omlx/<model>`. - omlx/integrations/omp.py: OhMyPiIntegration (hermes-style YAML I/O + pi's provider schema); registered in integrations/__init__.py - settings.py + admin/routes.py: omp_model parity with the other tools - dashboard tile + ompCommand getter; omp.svg icon; cli.py help text - tests/test_integrations.py: TestOhMyPiIntegration (+ registry updates)
35ceec0 to
f4bb8fe
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds an Oh My Pi tile to the dashboard's Applications list that launches the oh-my-pi (
omp) coding agent against the running oMLX server — a sibling of the existing Pi tile. Non-destructive: the Pi tile is unchanged.Why
ompis a popular fork of pi-coding-agent with a coding-first workflow. Users who runompinstead of vanillapihad no one-click way to point it at their local oMLX server.How it works
ompis a separate binary frompiwith its own config dir (~/.omp/agent), but it:PI_CODING_AGENT_DIRoverride, and~/.omp/agent/models.ymlusing the sameproviders.<name>schema as pi — just YAML instead of JSON.OhMyPiIntegrationtherefore reusesPiIntegration's provider schema but writes/mergesmodels.yml(YAML) with the same read→backup→merge→write pattern as the Hermes integration, preserving any other providers the user already has, then execsomp --model omlx/<model>. (omp only auto-migratesmodels.json→models.ymlwhen the latter is absent, so writing YAML directly is the robust path across relaunches.)Changes
omlx/integrations/omp.py—OhMyPiIntegration; registered inomlx/integrations/__init__.pyomlx/settings.py+omlx/admin/routes.py—omp_modelsetting (parity with the other tools)omlx/admin/templates/dashboard/_status.html— new tile;omlx/admin/static/js/dashboard.js—ompCommandgetter + save/default wiringomlx/admin/static/img/integrations/omp.svg— icon (theme-aware π glyph matching the existing set)omlx/cli.py—launchhelp texttests/test_integrations.py—TestOhMyPiIntegration+ registry assertionsTesting
pytest tests/test_integrations.py→ 101 passed (13 new omp cases mirroring the Pi suite + registry updates).ompv15.8.0: the generated~/.omp/agent/models.ymlis accepted andomp --list-models omlxlists the configured model./admin/dashboard, andomlx launch listreportsomp.