Skip to content

feat: Add Alquimia AI integration - #2734

Merged
mnriem merged 23 commits into
github:mainfrom
Alquimia-ai:alquimia-integration-merge-conflicts-resolution
Jul 28, 2026
Merged

feat: Add Alquimia AI integration#2734
mnriem merged 23 commits into
github:mainfrom
Alquimia-ai:alquimia-integration-merge-conflicts-resolution

Conversation

@exengstfeld

@exengstfeld exengstfeld commented May 28, 2026

Copy link
Copy Markdown

Description

Add Alquimia AI integration https://www.alquimia.ai/

Testing

  • [ x ] Tested locally with uv run specify --help
  • [ x ] Ran existing tests with uv sync && uv run pytest
  • [ x ] Tested with a sample project (if applicable)

AI Disclosure

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

All commits until 80a1429 where made by hand, then I introduced claude with Sonnet 5 to help me out with syncing and addressing copilot's code review

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 Alquimia AI integration to Spec Kit, enabling projects to install and use Alquimia’s skills-based command layout alongside existing integrations.

Changes:

  • Introduces AlquimiaAIIntegration (skills layout, context file, skill post-processing for Alquimia-specific frontmatter and argument hints).
  • Registers the new integration and adds it to the built-in integration catalog.
  • Adds a comprehensive integration test suite and updates the speckit workflow compatibility hints to include alquimia.
Show a summary per file
File Description
workflows/speckit/workflow.yml Adds alquimia to the workflow’s advisory integration compatibility list.
tests/integrations/test_integration_alquimia.py New test suite covering registration, setup outputs, context-file behavior (incl. BOM), and skill post-processing behavior.
src/specify_cli/integrations/alquimia_ai/init.py Implements the Alquimia skills integration and skill file post-processing logic.
src/specify_cli/integrations/init.py Imports and registers the new built-in integration.
integrations/catalog.json Adds the new integration entry to the built-in catalog.

Copilot's findings

Tip

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

  • Files reviewed: 5/5 changed files
  • Comments generated: 4

Comment thread src/specify_cli/integrations/__init__.py
Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py Outdated
Comment thread tests/integrations/test_integration_alquimia.py Outdated
Comment thread integrations/catalog.json Outdated

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: 5/5 changed files
  • Comments generated: 2

Comment thread tests/integrations/test_integration_alquimia.py Outdated
Comment thread src/specify_cli/integrations/alquimia_ai/__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. If not applicable, please explain why

@exengstfeld

Copy link
Copy Markdown
Author

Please address Copilot feedback. If not applicable, please explain why

PR ready for review :)

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: 5/5 changed files
  • Comments generated: 2

Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py Outdated
Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py
@mnriem

mnriem commented Jun 4, 2026

Copy link
Copy Markdown
Collaborator

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: 5/5 changed files
  • Comments generated: 3

Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py Outdated
Comment thread integrations/catalog.json Outdated
Comment thread workflows/speckit/workflow.yml Outdated
@mnriem

mnriem commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

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: 5/5 changed files
  • Comments generated: 4

Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py Outdated
Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py Outdated
Comment thread src/specify_cli/integrations/alquimia_ai/__init__.py
Comment thread integrations/catalog.json Outdated
@mnriem

mnriem commented Jun 17, 2026

Copy link
Copy Markdown
Collaborator

Please address Copilot feedback and resolve conflicts and pull 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: 5/5 changed files
  • Comments generated: 1

Comment thread src/specify_cli/integrations/__init__.py
@mnriem

mnriem commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Please address Copilot feedback

@mnriem
mnriem requested a review from Copilot June 24, 2026 16:07
@exengstfeld
exengstfeld force-pushed the alquimia-integration-merge-conflicts-resolution branch from 40b9515 to 80a1429 Compare July 27, 2026 23:15

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.

Review details

Comments suppressed due to low confidence (3)

src/specify_cli/integrations/alquimia/init.py:46

  • SkillsIntegration.setup() builds SKILL.md content directly and never calls this override; repository search finds _render_skill() used only by its dedicated test. _build_skill_fm(), Any, and dump_frontmatter are therefore also dead production code and can drift from the actual generation path. Remove these helpers and update the test to exercise setup() output instead.
    def _render_skill(
        self, template_name: str, frontmatter: dict[str, Any], body: str
    ) -> str:

tests/integrations/test_integration_alquimia.py:247

  • This test still does not make any converter fail or patch install_skills; it only runs the same successful init path covered above. Its name/docstring therefore claim coverage that the assertions do not provide. Either inject the stated failure and verify fallback behavior, or rename/remove this duplicate success-path test.
    def test_alquimia_init_remains_usable_when_converter_fails(self, tmp_path):
        """Alquimia init should succeed even without install_skills."""

src/specify_cli/integrations/alquimia/init.py:108

  • This line-oriented insertion can corrupt valid YAML when a preset or extension supplies a multiline description. dump_frontmatter() may serialize that value as a quoted/folded multiline scalar; inserting argument-hint immediately after the description: line places the new key inside that scalar. CommandRegistrar.apply_argument_hint() explicitly mutates the frontmatter dict before serialization to avoid this case (src/specify_cli/agents.py:446-453). Please mutate and reserialize the frontmatter (or add the default hint before its initial serialization) instead of splicing text.
                out.append(f'argument-hint: "{escaped}"{eol}')
  • Files reviewed: 11/11 changed files
  • Comments generated: 0 new
  • Review effort level: Medium

@mnriem
mnriem self-requested a review July 28, 2026 12:53
@mnriem
mnriem merged commit 7fc5b23 into github:main Jul 28, 2026
14 checks passed
@mnriem

mnriem commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Thank you!

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