chore: retire Roo Code integration — extension shut down (#3167) (#3212)

* chore: retire roo integration — extension shut down (#3167)

Remove the Roo Code integration after the extension was shut down: subpackage,
registry entry, catalog entry, docs, tests, and issue-template options.

Assisted-by: GitHub Copilot (model: Claude Opus 4.8, autonomous)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: remove stale Roo Code mention in upgrade guide

Assisted-by: GitHub Copilot (model: gpt-5.3-codex, autonomous)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: remove leftover Roo Code references after merge

Drop roo from presets/ARCHITECTURE.md example and the agent-context
defaults map; these came in from main and were flagged by review.

Assisted-by: GitHub Copilot (model: claude-opus-4.8, autonomous)

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Ben Buttigieg
2026-06-30 16:24:04 +01:00
committed by GitHub
parent c5ac90b245
commit 36501d459f
14 changed files with 5 additions and 55 deletions

View File

@@ -48,8 +48,6 @@
"openai.chatgpt", "openai.chatgpt",
// Kilo Code // Kilo Code
"kilocode.Kilo-Code", "kilocode.Kilo-Code",
// Roo Code
"RooVeterinaryInc.roo-cline",
// Claude Code // Claude Code
"anthropic.claude-code" "anthropic.claude-code"
], ],

View File

@@ -8,7 +8,7 @@ body:
value: | value: |
Thanks for requesting a new agent! Before submitting, please check if the agent is already supported. Thanks for requesting a new agent! Before submitting, please check if the agent is already supported.
**Currently supported agents**: Amp, Antigravity, Auggie CLI, Claude Code, Cline, CodeBuddy, Codex CLI, Cursor, Devin for Terminal, Firebender, Forge, Gemini CLI, GitHub Copilot, Goose, Hermes Agent, IBM Bob, Junie, Kilo Code, Kimi Code, Kiro CLI, Lingma, Mistral Vibe, Oh My Pi, opencode, Pi Coding Agent, Qoder CLI, Qwen Code, Roo Code, RovoDev ACLI, SHAI, Tabnine CLI, Trae, ZCode, Zed **Currently supported agents**: Amp, Antigravity, Auggie CLI, Claude Code, Cline, CodeBuddy, Codex CLI, Cursor, Devin for Terminal, Firebender, Forge, Gemini CLI, GitHub Copilot, Goose, Hermes Agent, IBM Bob, Junie, Kilo Code, Kimi Code, Kiro CLI, Lingma, Mistral Vibe, Oh My Pi, opencode, Pi Coding Agent, Qoder CLI, Qwen Code, RovoDev ACLI, SHAI, Tabnine CLI, Trae, ZCode, Zed
- type: input - type: input
id: agent-name id: agent-name

View File

@@ -89,7 +89,6 @@ body:
- Pi Coding Agent - Pi Coding Agent
- Qoder CLI - Qoder CLI
- Qwen Code - Qwen Code
- Roo Code
- RovoDev ACLI - RovoDev ACLI
- SHAI - SHAI
- Tabnine CLI - Tabnine CLI

View File

@@ -83,7 +83,6 @@ body:
- Pi Coding Agent - Pi Coding Agent
- Qoder CLI - Qoder CLI
- Qwen Code - Qwen Code
- Roo Code
- RovoDev ACLI - RovoDev ACLI
- SHAI - SHAI
- Tabnine CLI - Tabnine CLI

View File

@@ -33,7 +33,6 @@ The Specify CLI supports a wide range of AI coding agents. When you run `specify
| [Pi Coding Agent](https://pi.dev) | `pi` | Pi doesn't have MCP support out of the box, so `taskstoissues` won't work as intended. MCP support can be added via [extensions](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent#extensions) | | [Pi Coding Agent](https://pi.dev) | `pi` | Pi doesn't have MCP support out of the box, so `taskstoissues` won't work as intended. MCP support can be added via [extensions](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent#extensions) |
| [Qoder CLI](https://qoder.com/cli) | `qodercli` | | | [Qoder CLI](https://qoder.com/cli) | `qodercli` | |
| [Qwen Code](https://github.com/QwenLM/qwen-code) | `qwen` | | | [Qwen Code](https://github.com/QwenLM/qwen-code) | `qwen` | |
| [Roo Code](https://roocode.com/) | `roo` | |
| [RovoDev](https://www.atlassian.com/software/rovo-dev) | `rovodev` | Generates `.rovodev/skills/`, prompt wrappers, and `prompts.yml`; runtime dispatch uses `acli rovodev` | | [RovoDev](https://www.atlassian.com/software/rovo-dev) | `rovodev` | Generates `.rovodev/skills/`, prompt wrappers, and `prompts.yml`; runtime dispatch uses `acli rovodev` |
| [SHAI (OVHcloud)](https://github.com/ovh/shai) | `shai` | | | [SHAI (OVHcloud)](https://github.com/ovh/shai) | `shai` | |
| [Tabnine CLI](https://docs.tabnine.com/main/getting-started/tabnine-cli) | `tabnine` | | | [Tabnine CLI](https://docs.tabnine.com/main/getting-started/tabnine-cli) | `tabnine` | |
@@ -267,7 +266,6 @@ The currently declared multi-install safe integrations are:
| `kilocode` | `.kilocode/workflows`, `.kilocode/rules/specify-rules.md` | | `kilocode` | `.kilocode/workflows`, `.kilocode/rules/specify-rules.md` |
| `qodercli` | `.qoder/commands`, `QODER.md` | | `qodercli` | `.qoder/commands`, `QODER.md` |
| `qwen` | `.qwen/commands`, `QWEN.md` | | `qwen` | `.qwen/commands`, `QWEN.md` |
| `roo` | `.roo/commands`, `.roo/rules/specify-rules.md` |
| `shai` | `.shai/commands`, `SHAI.md` | | `shai` | `.shai/commands`, `SHAI.md` |
| `tabnine` | `.tabnine/agent/commands`, `TABNINE.md` | | `tabnine` | `.tabnine/agent/commands`, `TABNINE.md` |
| `trae` | `.trae/skills`, `.trae/rules/project_rules.md` | | `trae` | `.trae/skills`, `.trae/rules/project_rules.md` |

View File

@@ -185,7 +185,7 @@ cp -r .specify/scripts .specify/scripts-backup
### 3. Duplicate slash commands (IDE-based agents) ### 3. Duplicate slash commands (IDE-based agents)
Some IDE-based agents (like Kilo Code, Roo Code) may show **duplicate slash commands** after upgrading—both old and new versions appear. Some IDE-based agents (like Kilo Code, Cline) may show **duplicate slash commands** after upgrading—both old and new versions appear.
**Solution:** Manually delete the old command files from your agent's folder. **Solution:** Manually delete the old command files from your agent's folder.
@@ -242,7 +242,7 @@ mv /tmp/constitution-backup.md .specify/memory/constitution.md
### Scenario 3: "I see duplicate slash commands in my IDE" ### Scenario 3: "I see duplicate slash commands in my IDE"
This happens with IDE-based agents (Kilo Code, Roo Code, Cline, etc.). This happens with IDE-based agents (Kilo Code, Cline, etc.).
```bash ```bash
# Find the agent folder (example: .kilocode/workflows/) # Find the agent folder (example: .kilocode/workflows/)

View File

@@ -28,7 +28,6 @@
"pi": "AGENTS.md", "pi": "AGENTS.md",
"qodercli": "QODER.md", "qodercli": "QODER.md",
"qwen": "QWEN.md", "qwen": "QWEN.md",
"roo": ".roo/rules/specify-rules.md",
"rovodev": "AGENTS.md", "rovodev": "AGENTS.md",
"shai": "SHAI.md", "shai": "SHAI.md",
"tabnine": "TABNINE.md", "tabnine": "TABNINE.md",

View File

@@ -165,15 +165,6 @@
"repository": "https://github.com/github/spec-kit", "repository": "https://github.com/github/spec-kit",
"tags": ["ide"] "tags": ["ide"]
}, },
"roo": {
"id": "roo",
"name": "Roo Code",
"version": "1.0.0",
"description": "Roo Code IDE integration",
"author": "spec-kit-core",
"repository": "https://github.com/github/spec-kit",
"tags": ["ide"]
},
"rovodev": { "rovodev": {
"id": "rovodev", "id": "rovodev",
"name": "RovoDev ACLI", "name": "RovoDev ACLI",

View File

@@ -99,7 +99,7 @@ The `CommandRegistrar` renders commands differently per agent:
| Agent | Format | Extension | Arg placeholder | | Agent | Format | Extension | Arg placeholder |
|-------|--------|-----------|-----------------| |-------|--------|-----------|-----------------|
| Claude, Kilo Code, opencode, Roo Code, etc. | Markdown | `.md` | `$ARGUMENTS` | | Claude, Kilo Code, opencode, etc. | Markdown | `.md` | `$ARGUMENTS` |
| Copilot | Markdown | `.agent.md` + `.prompt.md` | `$ARGUMENTS` | | Copilot | Markdown | `.agent.md` + `.prompt.md` | `$ARGUMENTS` |
| Gemini, Qwen, Tabnine | TOML | `.toml` | `{{args}}` | | Gemini, Qwen, Tabnine | TOML | `.toml` | `{{args}}` |

View File

@@ -74,7 +74,6 @@ def _register_builtins() -> None:
from .pi import PiIntegration from .pi import PiIntegration
from .qodercli import QodercliIntegration from .qodercli import QodercliIntegration
from .qwen import QwenIntegration from .qwen import QwenIntegration
from .roo import RooIntegration
from .rovodev import RovodevIntegration from .rovodev import RovodevIntegration
from .shai import ShaiIntegration from .shai import ShaiIntegration
from .tabnine import TabnineIntegration from .tabnine import TabnineIntegration
@@ -111,7 +110,6 @@ def _register_builtins() -> None:
_register(PiIntegration()) _register(PiIntegration())
_register(QodercliIntegration()) _register(QodercliIntegration())
_register(QwenIntegration()) _register(QwenIntegration())
_register(RooIntegration())
_register(RovodevIntegration()) _register(RovodevIntegration())
_register(ShaiIntegration()) _register(ShaiIntegration())
_register(TabnineIntegration()) _register(TabnineIntegration())

View File

@@ -1,21 +0,0 @@
"""Roo Code integration."""
from ..base import MarkdownIntegration
class RooIntegration(MarkdownIntegration):
key = "roo"
config = {
"name": "Roo Code",
"folder": ".roo/",
"commands_subdir": "commands",
"install_url": None,
"requires_cli": False,
}
registrar_config = {
"dir": ".roo/commands",
"format": "markdown",
"args": "$ARGUMENTS",
"extension": ".md",
}
multi_install_safe = True

View File

@@ -1,10 +0,0 @@
"""Tests for RooIntegration."""
from .test_integration_base_markdown import MarkdownIntegrationTests
class TestRooIntegration(MarkdownIntegrationTests):
KEY = "roo"
FOLDER = ".roo/"
COMMANDS_SUBDIR = "commands"
REGISTRAR_DIR = ".roo/commands"

View File

@@ -22,7 +22,7 @@ ALL_INTEGRATION_KEYS = [
"copilot", "copilot",
# Stage 3 — standard markdown integrations # Stage 3 — standard markdown integrations
"claude", "qwen", "opencode", "junie", "kilocode", "auggie", "claude", "qwen", "opencode", "junie", "kilocode", "auggie",
"roo", "rovodev", "codebuddy", "qodercli", "amp", "shai", "bob", "trae", "rovodev", "codebuddy", "qodercli", "amp", "shai", "bob", "trae",
"pi", "kiro-cli", "vibe", "cursor-agent", "firebender", "pi", "kiro-cli", "vibe", "cursor-agent", "firebender",
# Stage 4 — TOML integrations # Stage 4 — TOML integrations
"gemini", "tabnine", "gemini", "tabnine",

View File

@@ -38,7 +38,6 @@ ISSUE_TEMPLATE_AGENT_KEYS = [
"pi", "pi",
"qodercli", "qodercli",
"qwen", "qwen",
"roo",
"rovodev", "rovodev",
"shai", "shai",
"tabnine", "tabnine",