Skip to content

[qodercli] Slash commands not recognized in Qoder IDE 1.24+ — needs skills-based layout migration #4199

Description

@mengqiang81

Bug Description

The qodercli integration currently scaffolds commands as flat .qoder/commands/speckit.<name>.md files. Starting with Qoder IDE 1.24.0 (released Aug 12, 2026), the IDE no longer scans .qoder/commands/ for slash commands. It only discovers skills in the .qoder/skills/{skill-name}/SKILL.md format (with a name field in frontmatter). This means all /speckit-* commands silently stopped working after the IDE auto-upgraded to 1.24.x.

Steps to Reproduce

  1. specify init my-project --integration qodercli (generates .qoder/commands/speckit.*.md)
    1. Open the project in Qoder IDE 1.24+
    1. Type / in the chat — speckit commands do not appear in the autocomplete list
    1. Manually typing /speckit.specify — not recognized (rawCommandCount: 0 in quest.log)

Expected Behavior

The qodercli integration should scaffold skills in the .qoder/skills/speckit-<name>/SKILL.md format, similar to how the claude integration uses .claude/skills/, codex uses .agents/skills/, etc.

Actual Behavior

Qoder IDE 1.24.x no longer scans .qoder/commands/ for slash commands. It only discovers skills in .qoder/skills/{skill-name}/SKILL.md format with a name field in frontmatter. The quest.log shows rawCommandCount:0 after upgrade, confirming the commands are not recognized.

Specify CLI Version

0.16.4

AI Agent

Alquimia AI

Operating System

macOS 26.5.2 (darwin-arm64)

Python Version

Python 3.11.0

Error Logs

Additional Context

Root Cause

Qoder IDE 1.24.x unified slash commands and skills into a single discovery mechanism. Per the official Skills docs, skills must be located at .qoder/skills/{skill-name}/SKILL.md and include a name field in frontmatter.

Suggested Fix

  1. Migrate qodercli to a SkillsIntegration subclass
    1. Output to .qoder/skills/speckit-<name>/SKILL.md instead of .qoder/commands/speckit.<name>.md
    1. Add name: speckit-<name> to frontmatter
    1. Use hyphenated naming (speckit-analyze) instead of dotted (speckit.analyze)
    1. Provide a migration path for existing installs
    1. Update invoke_separator from . to -

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions