Skip to content

feat(integrations): add omp support#3107

Open
omar2535 wants to merge 7 commits into
github:mainfrom
omar2535:main
Open

feat(integrations): add omp support#3107
omar2535 wants to merge 7 commits into
github:mainfrom
omar2535:main

Conversation

@omar2535

Copy link
Copy Markdown

Description

Add Oh My Pi support.

This adds the omp integration, scaffolding Spec Kit slash commands into
.omp/commands/ and using AGENTS.md for agent context.

Testing

  • Tested locally with .venv/bin/specify --help
  • Ran targeted tests with:
    uv sync --extra test && uv pip install -e . && .venv/bin/python -m pytest tests/integrations/test_integration_omp.py tests/integrations/test_registry.py tests/integrations/test_integration_catalog.py tests/test_agent_config_consistency.py -q
  • Tested with a sample project:
    specify init <tmp>/omp-test --integration omp --script sh --ignore-agent-tools
  • Verified generated files:
    • .omp/commands/speckit.constitution.md
    • AGENTS.md
    • .specify/integrations/omp.manifest.json

AI Disclosure

  • I did not use AI assistance for this contribution
  • I did use AI assistance (describe below)

Code was generated with GPT and Sonnet, then manually reviewed and verified locally by me.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new built-in integration for the Oh My Pi (omp) coding agent, so Spec Kit can scaffold the standard slash-command templates into .omp/commands/ and manage agent context via AGENTS.md.

Changes:

  • Introduces OmpIntegration (Markdown-based) with CLI dispatch args that support JSON mode via --mode json.
  • Registers the new integration and adds a dedicated integration test.
  • Updates integration catalog and user docs to list omp and its generated directories.
Show a summary per file
File Description
src/specify_cli/integrations/omp/__init__.py Adds the new OmpIntegration definition and custom build_exec_args behavior.
src/specify_cli/integrations/__init__.py Registers OmpIntegration in the built-in integration registry.
tests/integrations/test_integration_omp.py Adds coverage for omp integration wiring and its JSON-mode exec args.
integrations/catalog.json Adds the omp entry to the built-in integration catalog.
README.md Updates the documented tool-check list to include Oh My Pi.
docs/upgrade.md Documents .omp/commands/ as a generated command location and troubleshooting check.
docs/reference/integrations.md Adds omp to the supported integrations reference table.
docs/installation.md Lists Oh My Pi as a supported agent and adds an --integration omp init example.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 8/8 changed files
  • Comments generated: 1

Comment thread integrations/catalog.json

@mnriem mnriem left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please address Copilot feedback

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

  • Files reviewed: 8/8 changed files
  • Comments generated: 0 new

@mnriem mnriem left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please resolve conflict by pulling in upstream/main

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

  • Files reviewed: 8/8 changed files
  • Comments generated: 1

Comment thread src/specify_cli/integrations/omp/__init__.py Outdated

@mnriem mnriem left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please address Copilot feedback

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

  • Files reviewed: 8/8 changed files
  • Comments generated: 0 new

@mnriem

mnriem commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Please resolve test & lint errors

…r in issue templates

Inherit MarkdownIntegration.build_exec_args so omp picks up shared CLI
contract changes (requires_cli gating, extra-args ordering, --model
handling) automatically; only specialize the --mode json flag.

Also add Oh My Pi / omp to the issue-template agent lists so
test_issue_template_agent_lists_match_runtime_integrations passes.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

  • Files reviewed: 12/12 changed files
  • Comments generated: 2

Comment thread src/specify_cli/integrations/omp/__init__.py
Comment thread tests/integrations/test_integration_omp.py
omar2535 and others added 2 commits June 23, 2026 20:40
OMP's CLI parser treats `-p`/`--print` as a boolean (one-shot mode)
and consumes the prompt as a positional message; the previous
inherited `-p <prompt>` shape worked by accident only because `-p`
ignores its next token. Build the argv explicitly with flags first
and the prompt as a trailing positional, matching upstream args.ts.
@omar2535 omar2535 requested a review from mnriem June 24, 2026 01:09
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.

3 participants