feat: add Oh My Pi (omp) provider support - #457
Conversation
Register .omp as a supported provider in both the CLI install/update workflow and the build system transformer pipeline. CLI (skills.mjs): - Add .omp to PROVIDER_DIRS, ALIASES, DISPLAY, INPUT_ORDER - Map .omp global skills to ~/.omp/agent/skills/ - Detect .omp in GLOBAL_HARNESS_HINTS Build (providers.js, utils.js, index.js, build.js): - Add omp provider config with frontmatter and placeholder support - Add transformOmp named export - Add omp to universal ZIP README - Register 'omp' in PROVIDER_BLOCK_TAGS for future <omp> blocks
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want higher recall? High effort reviews run extra passes and find more bugs. A team admin can switch effort levels in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3621a68. Configure here.
| { home: '.grok', provider: '.grok' }, | ||
| { home: '.kiro', provider: '.kiro' }, | ||
| { home: '.opencode', provider: '.opencode' }, | ||
| { home: '.omp', provider: '.omp' }, |
There was a problem hiding this comment.
Missing omp hash path normalizer
Medium Severity
normalizeForHash still omits omp from its provider-path regex, even though omp was registered everywhere else. Installed skill content that embeds .omp/skills/ paths will not be normalized during update/check comparisons, so equivalent installs from different methods can look stale and trigger false update prompts or unnecessary rewrites.
Reviewed by Cursor Bugbot for commit 3621a68. Configure here.
There was a problem hiding this comment.
Pull request overview
Adds Oh My Pi (omp) as a first-class provider across the CLI skills install/update flow and the build/transformer pipeline, so Impeccable can be installed directly into .omp without relying on inherited providers.
Changes:
- Registers
.ompin the CLI provider detection/selection flow, including aliases, display name, install ordering, and global skills path override (~/.omp/agent/skills). - Adds
ompto the build pipeline provider config and exportstransformOmp, plus placeholder/block-tag registration for future<omp>conditional blocks. - Extends build orchestration tests to spy on and invoke
transformOmp.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/build.test.js | Adds transformOmp spy/call/expectations in build orchestration tests. |
| scripts/lib/utils.js | Registers omp placeholders and enables omp as a recognized provider block tag. |
| scripts/lib/transformers/providers.js | Adds omp provider config (.omp, tags, display name, frontmatter fields). |
| scripts/lib/transformers/index.js | Exports transformOmp for test spying and direct transformer access. |
| scripts/build.js | Lists .omp/ in the universal bundle README and relies on the provider registry for assembly. |
| cli/bin/commands/skills.mjs | Adds .omp to provider dirs/aliases/display/input order, global skills path override, and harness inference hints. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Greptile SummaryAdds Oh My Pi support across provider detection, installation, transformation, and bundled skills. The provider registry now includes Confidence Score: 4/5The change should not merge until the supported-provider documentation reflects the newly available Oh My Pi integration. The focused consistency check reproduced a mismatch between the registered Files Needing Attention: README.md:127 needs the
What T-Rex did
|


Summary
Add Oh My Pi (omp) as a supported provider in both the CLI install/update workflow and the build system transformer pipeline.
Motivation
omp already inherits skills from
.claude,.cursor,.codex, etc. on first run, but adding direct support makes the Impeccable skill available to anyone with omp installed, regardless of other providers.Changes
skills.mjs): Register.ompin provider directories, aliases, display names, input order, global skills path (~/.omp/agent/skills/), and harness detection.ompprovider config,transformOmpexport, universal ZIP README entry, andPROVIDER_BLOCK_TAGSregistration for future<omp>conditional blocks.AGENTS.mdconfig file with standard ask/command behavior matching.pi.transformOmpspy to build test assertions.Notes
omp's skill layout mirrors Pi's (
~/.omp/agent/skills/for global,.omp/skills/for project). No hook artifacts or agent files are needed — omp has no native hook lifecycle or sub-agent markdown format.Note
Low Risk
Additive provider registration across CLI and build; no changes to auth, hooks, or existing provider behavior.
Overview
Adds Oh My Pi (
omp) as a full provider alongside existing harnesses, so the CLI can install/update Impeccable into.ompwithout relying on omp inheriting from other providers.CLI (
skills.mjs) registers.ompin detection, aliases (omp,oh-my-pi), display name, and install order. Global skills follow Pi’s layout (~/.omp/agent/skills/); project installs use.omp/skills/.~/.ompis included in global harness hints for target inference.Build pipeline adds an
ompentry in provider config (.omp,ompblock tags, frontmatter like Pi), exportstransformOmp, mapsompplaceholders toAGENTS.md, and lists.omp/in the universal bundle README.Tests extend build orchestration mocks/assertions to include
transformOmp. No hooks or agent artifacts for omp in this change.Reviewed by Cursor Bugbot for commit 3621a68. Bugbot is set up for automated code reviews on this repo. Configure here.