Skip to content

Commit 016638f

Browse files
consistent naming of Rovo Dev CLI
1 parent 7ab296d commit 016638f

File tree

3 files changed

+25
-30
lines changed

3 files changed

+25
-30
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ Our research and experimentation focus on:
110110
## 🔧 Prerequisites
111111

112112
- **Linux/macOS** (or WSL2 on Windows)
113-
- AI coding agent: [Claude Code](https://www.anthropic.com/claude-code), [GitHub Copilot](https://code.visualstudio.com/), [Gemini CLI](https://github.com/google-gemini/gemini-cli), or [Rovodev CLI](https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device/)
113+
- AI coding agent: [Claude Code](https://www.anthropic.com/claude-code), [GitHub Copilot](https://code.visualstudio.com/), [Gemini CLI](https://github.com/google-gemini/gemini-cli), or [Rovo Dev CLI](https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device/)
114114
- [uv](https://docs.astral.sh/uv/) for package management
115115
- [Python 3.11+](https://www.python.org/downloads/)
116116
- [Git](https://git-scm.com/downloads)
@@ -147,12 +147,12 @@ You will be prompted to select the AI agent you are using. You can also proactiv
147147
specify init <project_name> --ai claude
148148
specify init <project_name> --ai gemini
149149
specify init <project_name> --ai copilot
150-
specify init <project_name> --ai rovodev
150+
specify init <project_name> --ai rovodevcli
151151
# Or in current directory:
152152
specify init --here --ai claude
153153
```
154154

155-
The CLI will check if you have Claude Code, Gemini CLI, Rovodev CLI installed. If you do not, or you prefer to get the templates without checking for the right tools, use `--ignore-agent-tools` with your command:
155+
The CLI will check if you have Claude Code, Gemini CLI, Rovo Dev CLI installed. If you do not, or you prefer to get the templates without checking for the right tools, use `--ignore-agent-tools` with your command:
156156

157157
```bash
158158
specify init <project_name> --ai claude --ignore-agent-tools

scripts/update-agent-context.sh

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env bash
22
# Incrementally update agent context files based on new feature plan
3-
# Supports: CLAUDE.md, GEMINI.md, agent.md (Rovodev CLI) and .github/copilot-instructions.md
3+
# Supports: CLAUDE.md, GEMINI.md, agent.md (Rovo Dev CLI) and .github/copilot-instructions.md
44
# O(1) operation - only reads current context file and new plan.md
55

66
set -e
@@ -198,15 +198,15 @@ case "$AGENT_TYPE" in
198198
"copilot")
199199
update_agent_file "$COPILOT_FILE" "GitHub Copilot"
200200
;;
201-
"rovodev")
202-
update_agent_file "$ROVODEV_FILE" "Rovodev CLI"
201+
"rovodevcli")
202+
update_agent_file "$ROVODEV_FILE" "Rovo Dev CLI"
203203
;;
204204
"")
205205
# Update all existing files
206206
[ -f "$CLAUDE_FILE" ] && update_agent_file "$CLAUDE_FILE" "Claude Code"
207207
[ -f "$GEMINI_FILE" ] && update_agent_file "$GEMINI_FILE" "Gemini CLI"
208208
[ -f "$COPILOT_FILE" ] && update_agent_file "$COPILOT_FILE" "GitHub Copilot"
209-
[ -f "$ROVODEV_FILE" ] && update_agent_file "$ROVODEV_FILE" "Rovodev CLI"
209+
[ -f "$ROVODEV_FILE" ] && update_agent_file "$ROVODEV_FILE" "Rovo Dev CLI"
210210
211211
# If no files exist, create based on current directory or ask user
212212
if [ ! -f "$CLAUDE_FILE" ] && [ ! -f "$GEMINI_FILE" ] && [ ! -f "$COPILOT_FILE" ] && [ ! -f "$ROVODEV_FILE" ]; then
@@ -215,7 +215,7 @@ case "$AGENT_TYPE" in
215215
fi
216216
;;
217217
*)
218-
echo "ERROR: Unknown agent type '$AGENT_TYPE'. Use: claude, gemini, copilot, rovodev or leave empty for all."
218+
echo "ERROR: Unknown agent type '$AGENT_TYPE'. Use: claude, gemini, copilot, rovodevcli or leave empty for all."
219219
exit 1
220220
;;
221221
esac
@@ -232,9 +232,9 @@ if [ ! -z "$NEW_DB" ] && [ "$NEW_DB" != "N/A" ]; then
232232
fi
233233
234234
echo ""
235-
echo "Usage: $0 [claude|gemini|copilot|rovodev]"
235+
echo "Usage: $0 [claude|gemini|copilot|rovodevcli]"
236236
echo " - No argument: Update all existing agent context files"
237237
echo " - claude: Update only CLAUDE.md"
238238
echo " - gemini: Update only GEMINI.md"
239239
echo " - copilot: Update only .github/copilot-instructions.md"
240-
echo " - rovodev: Update only agent.md"
240+
echo " - rovodevcli: Update only agent.md"

src/specify_cli/__init__.py

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
"copilot": "GitHub Copilot",
5353
"claude": "Claude Code",
5454
"gemini": "Gemini CLI",
55-
"rovodev": "Rovodev CLI",
55+
"rovodevcli": "Rovo Dev CLI",
5656
}
5757

5858
# ASCII Art Banner
@@ -406,22 +406,16 @@ def download_template_from_github(ai_assistant: str, download_dir: Path, *, verb
406406
console.print(f"[red]Error fetching release information:[/red] {e}")
407407
raise typer.Exit(1)
408408

409-
# Find the template asset for the specified AI assistant, with fallback for 'rovodev' -> 'copilot'
409+
# Find the template asset for the specified AI assistant, with fallback for 'rovodevcli' -> 'copilot'
410410
pattern = f"spec-kit-template-{ai_assistant}"
411411
assets = release_data.get("assets", [])
412412
matching_assets = [a for a in assets if pattern in a["name"] and a["name"].endswith(".zip")]
413+
414+
print(matching_assets)
413415

414416
asset = None
415417
if matching_assets:
416418
asset = matching_assets[0]
417-
elif ai_assistant == "rovodev":
418-
# Fallback to copilot template if rovodev-specific template is not published yet
419-
fallback_pattern = "spec-kit-template-copilot"
420-
fallback_assets = [a for a in assets if fallback_pattern in a["name"] and a["name"].endswith(".zip")]
421-
if fallback_assets:
422-
asset = fallback_assets[0]
423-
if verbose:
424-
console.print("[yellow]No 'rovodev' template found; falling back to 'copilot' template.[/yellow]")
425419

426420
if asset is None:
427421
if verbose:
@@ -646,17 +640,18 @@ def download_and_extract_template(project_path: Path, ai_assistant: str, is_curr
646640
@app.command()
647641
def init(
648642
project_name: str = typer.Argument(None, help="Name for your new project directory (optional if using --here)"),
649-
ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, or rovodev"),
643+
ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, or rovodevcli"),
650644
ignore_agent_tools: bool = typer.Option(False, "--ignore-agent-tools", help="Skip checks for AI agent tools like Claude Code"),
651645
no_git: bool = typer.Option(False, "--no-git", help="Skip git repository initialization"),
652646
here: bool = typer.Option(False, "--here", help="Initialize project in the current directory instead of creating a new one"),
647+
debug: bool = typer.Option(False, "--debug", help="Enable verbose debug output and disable live UI for this run"),
653648
):
654649
"""
655650
Initialize a new Specify project from the latest template.
656651
657652
This command will:
658653
1. Check that required tools are installed (git is optional)
659-
2. Let you choose your AI assistant (Claude Code, Gemini CLI, GitHub Copilot, or Rovodev CLI)
654+
2. Let you choose your AI assistant (Claude Code, Gemini CLI, GitHub Copilot, or Rovo Dev CLI)
660655
3. Download the appropriate template from GitHub
661656
4. Extract the template to a new project directory or current directory
662657
5. Initialize a fresh git repository (if not --no-git and no existing repo)
@@ -667,10 +662,10 @@ def init(
667662
specify init my-project --ai claude
668663
specify init my-project --ai gemini
669664
specify init my-project --ai copilot --no-git
670-
specify init my-project --ai rovodev
665+
specify init my-project --ai rovodevcli
671666
specify init --ignore-agent-tools my-project
672667
specify init --here --ai claude
673-
specify init --here --ai rovodev
668+
specify init --here --ai rovodevcli
674669
specify init --here
675670
"""
676671
# Show banner first
@@ -747,9 +742,9 @@ def init(
747742
if not check_tool("gemini", "Install from: https://github.com/google-gemini/gemini-cli"):
748743
console.print("[red]Error:[/red] Gemini CLI is required for Gemini projects")
749744
agent_tool_missing = True
750-
elif selected_ai == "rovodev":
745+
elif selected_ai == "rovodevcli":
751746
if not check_tool("acli", "Install from: https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device"):
752-
console.print("[red]Error:[/red] Rovodev CLI is required for Rovodev projects")
747+
console.print("[red]Error:[/red] Rovo Dev CLI is required for Rovo Dev CLI projects")
753748
agent_tool_missing = True
754749
# GitHub Copilot check is not needed as it's typically available in supported IDEs
755750

@@ -837,8 +832,8 @@ def init(
837832
steps_lines.append(" - See GEMINI.md for all available commands")
838833
elif selected_ai == "copilot":
839834
steps_lines.append(f"{step_num}. Open in Visual Studio Code and use [bold cyan]/specify[/], [bold cyan]/plan[/], [bold cyan]/tasks[/] commands with GitHub Copilot")
840-
elif selected_ai == "rovodev":
841-
steps_lines.append(f"{step_num}. Use / commands with Rovodev CLI")
835+
elif selected_ai == "rovodevcli":
836+
steps_lines.append(f"{step_num}. Use / commands with Rovo Dev CLI")
842837
steps_lines.append(" - Use /specify to create specifications")
843838
steps_lines.append(" - Use /plan to create implementation plans")
844839
steps_lines.append(" - Use /tasks to generate tasks")
@@ -875,13 +870,13 @@ def check():
875870
console.print("\n[cyan]Optional AI tools:[/cyan]")
876871
claude_ok = check_tool("claude", "Install from: https://docs.anthropic.com/en/docs/claude-code/setup")
877872
gemini_ok = check_tool("gemini", "Install from: https://github.com/google-gemini/gemini-cli")
878-
rovodev_ok = check_tool("acli", "Install from: https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device")
873+
rovodevcli_ok = check_tool("acli", "Install from: https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device")
879874

880875

881876
console.print("\n[green]✓ Specify CLI is ready to use![/green]")
882877
if not git_ok:
883878
console.print("[yellow]Consider installing git for repository management[/yellow]")
884-
if not (claude_ok or gemini_ok or rovodev_ok):
879+
if not (claude_ok or gemini_ok or rovodevcli_ok):
885880
console.print("[yellow]Consider installing an AI assistant for the best experience[/yellow]")
886881

887882

0 commit comments

Comments
 (0)