From 09cf4f6cc4b76f0a887302e7890c5406b5b123b5 Mon Sep 17 00:00:00 2001 From: Mark <1289198+valdezm@users.noreply.github.com> Date: Thu, 25 Sep 2025 14:43:57 -0700 Subject: [PATCH 1/8] Fix update-agent-context.sh to handle files without Active Technologies/Recent Changes sections - Add section detection logic to check if required sections exist - Automatically append missing sections at end of file if they don't exist - Preserve existing manually-created content in agent files - Fix bash syntax errors in grep command handling - Improve robustness for files that don't follow template structure This fixes an issue where the script would silently fail to update agent files like CLAUDE.md that were manually created with different section structures. --- scripts/bash/update-agent-context.sh | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/scripts/bash/update-agent-context.sh b/scripts/bash/update-agent-context.sh index d3cc422ed2..a7fafc4028 100644 --- a/scripts/bash/update-agent-context.sh +++ b/scripts/bash/update-agent-context.sh @@ -388,12 +388,25 @@ update_existing_agent_file() { new_change_entry="- $CURRENT_BRANCH: Added $NEW_DB" fi + # Check if sections exist in the file + local has_active_technologies=0 + local has_recent_changes=0 + + if grep -q "^## Active Technologies" "$target_file" 2>/dev/null; then + has_active_technologies=1 + fi + + if grep -q "^## Recent Changes" "$target_file" 2>/dev/null; then + has_recent_changes=1 + fi + # Process file line by line local in_tech_section=false local in_changes_section=false local tech_entries_added=false local changes_entries_added=false local existing_changes_count=0 + local file_ended=false while IFS= read -r line || [[ -n "$line" ]]; do # Handle Active Technologies section @@ -454,6 +467,22 @@ update_existing_agent_file() { # Post-loop check: if we're still in the Active Technologies section and haven't added new entries if [[ $in_tech_section == true ]] && [[ $tech_entries_added == false ]] && [[ ${#new_tech_entries[@]} -gt 0 ]]; then printf '%s\n' "${new_tech_entries[@]}" >> "$temp_file" + tech_entries_added=true + fi + + # If sections don't exist, add them at the end of the file + if [[ $has_active_technologies -eq 0 ]] && [[ ${#new_tech_entries[@]} -gt 0 ]]; then + echo "" >> "$temp_file" + echo "## Active Technologies" >> "$temp_file" + printf '%s\n' "${new_tech_entries[@]}" >> "$temp_file" + tech_entries_added=true + fi + + if [[ $has_recent_changes -eq 0 ]] && [[ -n "$new_change_entry" ]]; then + echo "" >> "$temp_file" + echo "## Recent Changes" >> "$temp_file" + echo "$new_change_entry" >> "$temp_file" + changes_entries_added=true fi # Move temp file to target atomically From b291a6efb0c9a1fc442903b7593b52f8569c8447 Mon Sep 17 00:00:00 2001 From: Daniel Silva Date: Wed, 15 Oct 2025 22:17:48 +0100 Subject: [PATCH 2/8] Added support for Amp code agent. --- .github/workflows/scripts/create-github-release.sh | 2 ++ .github/workflows/scripts/create-release-packages.sh | 12 +++++++----- AGENTS.md | 4 +++- README.md | 6 +++++- scripts/bash/update-agent-context.sh | 10 +++++++--- scripts/powershell/update-agent-context.ps1 | 10 ++++++---- src/specify_cli/__init__.py | 8 +++++++- 7 files changed, 37 insertions(+), 15 deletions(-) diff --git a/.github/workflows/scripts/create-github-release.sh b/.github/workflows/scripts/create-github-release.sh index 1125f5102f..25d354ef2f 100644 --- a/.github/workflows/scripts/create-github-release.sh +++ b/.github/workflows/scripts/create-github-release.sh @@ -40,6 +40,8 @@ gh release create "$VERSION" \ .genreleases/spec-kit-template-roo-ps-"$VERSION".zip \ .genreleases/spec-kit-template-codebuddy-sh-"$VERSION".zip \ .genreleases/spec-kit-template-codebuddy-ps-"$VERSION".zip \ + .genreleases/spec-kit-template-amp-sh-"$VERSION".zip \ + .genreleases/spec-kit-template-amp-ps-"$VERSION".zip \ .genreleases/spec-kit-template-q-sh-"$VERSION".zip \ .genreleases/spec-kit-template-q-ps-"$VERSION".zip \ --title "Spec Kit Templates - $VERSION_NO_V" \ diff --git a/.github/workflows/scripts/create-release-packages.sh b/.github/workflows/scripts/create-release-packages.sh index 5462a14fda..edf079238b 100644 --- a/.github/workflows/scripts/create-release-packages.sh +++ b/.github/workflows/scripts/create-release-packages.sh @@ -6,7 +6,7 @@ set -euo pipefail # Usage: .github/workflows/scripts/create-release-packages.sh # Version argument should include leading 'v'. # Optionally set AGENTS and/or SCRIPTS env vars to limit what gets built. -# AGENTS : space or comma separated subset of: claude gemini copilot cursor-agent qwen opencode windsurf codex (default: all) +# AGENTS : space or comma separated subset of: claude gemini copilot cursor-agent qwen opencode windsurf codex amp (default: all) # SCRIPTS : space or comma separated subset of: sh ps (default: both) # Examples: # AGENTS=claude SCRIPTS=sh $0 v0.2.0 @@ -178,9 +178,11 @@ build_variant() { mkdir -p "$base_dir/.roo/commands" generate_commands roo md "\$ARGUMENTS" "$base_dir/.roo/commands" "$script" ;; codebuddy) - mkdir -p "$base_dir/.codebuddy/commands" - generate_commands codebuddy md "\$ARGUMENTS" "$base_dir/.codebuddy/commands" "$script" ;; - + mkdir -p "$base_dir/.codebuddy/commands" + generate_commands codebuddy md "\$ARGUMENTS" "$base_dir/.codebuddy/commands" "$script" ;; + amp) + mkdir -p "$base_dir/.agents/commands" + generate_commands amp md "\$ARGUMENTS" "$base_dir/.agents/commands" "$script" ;; q) mkdir -p "$base_dir/.amazonq/prompts" generate_commands q md "\$ARGUMENTS" "$base_dir/.amazonq/prompts" "$script" ;; @@ -190,7 +192,7 @@ build_variant() { } # Determine agent list -ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy q) +ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy amp q) ALL_SCRIPTS=(sh ps) norm_list() { diff --git a/AGENTS.md b/AGENTS.md index 62bbe1e0ee..02e4376966 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -44,6 +44,7 @@ Specify supports multiple AI agents by generating agent-specific command files a | **Roo Code** | `.roo/rules/` | Markdown | N/A (IDE-based) | Roo Code IDE | | **CodeBuddy CLI** | `.codebuddy/commands/` | Markdown | `codebuddy` | CodeBuddy CLI | | **Amazon Q Developer CLI** | `.amazonq/prompts/` | Markdown | `q` | Amazon Q Developer CLI | +| **Amp** | `.agents/commands/` | Markdown | `amp` | Amp CLI | ### Step-by-Step Integration Guide @@ -250,6 +251,7 @@ Require a command-line tool to be installed: - **Qwen Code**: `qwen` CLI - **opencode**: `opencode` CLI - **CodeBuddy CLI**: `codebuddy` CLI +- **Amp**: `amp` CLI ### IDE-Based Agents Work within integrated development environments: @@ -259,7 +261,7 @@ Work within integrated development environments: ## Command File Formats ### Markdown Format -Used by: Claude, Cursor, opencode, Windsurf, Amazon Q Developer +Used by: Claude, Cursor, opencode, Windsurf, Amazon Q Developer, Amp ```markdown --- diff --git a/README.md b/README.md index 80f451bae5..0c68dbdb6f 100644 --- a/README.md +++ b/README.md @@ -147,6 +147,7 @@ Want to see Spec Kit in action? Watch our [video overview](https://www.youtube.c | [Roo Code](https://roocode.com/) | ✅ | | | [Codex CLI](https://github.com/openai/codex) | ✅ | | | [Amazon Q Developer CLI](https://aws.amazon.com/developer/learning/q-developer-cli/) | ⚠️ | Amazon Q Developer CLI [does not support](https://github.com/aws/amazon-q-developer-cli/issues/3064) custom arguments for slash commands. | +| [Amp](https://ampcode.com/) | ✅ | | ## 🔧 Specify CLI Reference @@ -164,7 +165,7 @@ The `specify` command supports the following options: | Argument/Option | Type | Description | |------------------------|----------|------------------------------------------------------------------------------| | `` | Argument | Name for your new project directory (optional if using `--here`, or use `.` for current directory) | -| `--ai` | Option | AI assistant to use: `claude`, `gemini`, `copilot`, `cursor-agent`, `qwen`, `opencode`, `codex`, `windsurf`, `kilocode`, `auggie`, `roo`, `codebuddy`, or `q` | +| `--ai` | Option | AI assistant to use: `claude`, `gemini`, `copilot`, `cursor-agent`, `qwen`, `opencode`, `codex`, `windsurf`, `kilocode`, `auggie`, `roo`, `codebuddy`, `amp`, or `q` | | `--script` | Option | Script variant to use: `sh` (bash/zsh) or `ps` (PowerShell) | | `--ignore-agent-tools` | Flag | Skip checks for AI agent tools like Claude Code | | `--no-git` | Flag | Skip git repository initialization | @@ -189,6 +190,9 @@ specify init my-project --ai cursor-agent # Initialize with Windsurf support specify init my-project --ai windsurf +# Initialize with Amp support +specify init my-project --ai amp + # Initialize with PowerShell scripts (Windows/cross-platform) specify init my-project --ai copilot --script ps diff --git a/scripts/bash/update-agent-context.sh b/scripts/bash/update-agent-context.sh index ba10ec2f57..4d83412778 100644 --- a/scripts/bash/update-agent-context.sh +++ b/scripts/bash/update-agent-context.sh @@ -30,7 +30,7 @@ # # 5. Multi-Agent Support # - Handles agent-specific file paths and naming conventions -# - Supports: Claude, Gemini, Copilot, Cursor, Qwen, opencode, Codex, Windsurf, Kilo Code, Auggie CLI, or Amazon Q Developer CLI +# - Supports: Claude, Gemini, Copilot, Cursor, Qwen, opencode, Codex, Windsurf, Kilo Code, Auggie CLI, Roo Code, CodeBuddy CLI, Amp, or Amazon Q Developer CLI # - Can update single agents or all existing agent files # - Creates default Claude file if no agent files exist # @@ -70,6 +70,7 @@ KILOCODE_FILE="$REPO_ROOT/.kilocode/rules/specify-rules.md" AUGGIE_FILE="$REPO_ROOT/.augment/rules/specify-rules.md" ROO_FILE="$REPO_ROOT/.roo/rules/specify-rules.md" CODEBUDDY_FILE="$REPO_ROOT/CODEBUDDY.md" +AMP_FILE="$REPO_ROOT/AGENTS.md" Q_FILE="$REPO_ROOT/AGENTS.md" # Template file @@ -583,14 +584,17 @@ update_specific_agent() { update_agent_file "$ROO_FILE" "Roo Code" ;; codebuddy) - update_agent_file "$CODEBUDDY_FILE" "CodeBuddy CLI" + update_agent_file "$CODEBUDDY_FILE" "CodeBuddy CLI" + ;; + amp) + update_agent_file "$AMP_FILE" "Amp" ;; q) update_agent_file "$Q_FILE" "Amazon Q Developer CLI" ;; *) log_error "Unknown agent type '$agent_type'" - log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|q" + log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|amp|q" exit 1 ;; esac diff --git a/scripts/powershell/update-agent-context.ps1 b/scripts/powershell/update-agent-context.ps1 index 2fb4abe4d8..695e28b8db 100644 --- a/scripts/powershell/update-agent-context.ps1 +++ b/scripts/powershell/update-agent-context.ps1 @@ -9,7 +9,7 @@ Mirrors the behavior of scripts/bash/update-agent-context.sh: 2. Plan Data Extraction 3. Agent File Management (create from template or update existing) 4. Content Generation (technology stack, recent changes, timestamp) - 5. Multi-Agent Support (claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, roo, q) + 5. Multi-Agent Support (claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, roo, amp, q) .PARAMETER AgentType Optional agent key to update a single agent. If omitted, updates all existing agent files (creating a default Claude file if none exist). @@ -25,7 +25,7 @@ Relies on common helper functions in common.ps1 #> param( [Parameter(Position=0)] - [ValidateSet('claude','gemini','copilot','cursor-agent','qwen','opencode','codex','windsurf','kilocode','auggie','roo','codebuddy','q')] + [ValidateSet('claude','gemini','copilot','cursor-agent','qwen','opencode','codex','windsurf','kilocode','auggie','roo','codebuddy','amp','q')] [string]$AgentType ) @@ -55,6 +55,7 @@ $KILOCODE_FILE = Join-Path $REPO_ROOT '.kilocode/rules/specify-rules.md' $AUGGIE_FILE = Join-Path $REPO_ROOT '.augment/rules/specify-rules.md' $ROO_FILE = Join-Path $REPO_ROOT '.roo/rules/specify-rules.md' $CODEBUDDY_FILE = Join-Path $REPO_ROOT 'CODEBUDDY.md' +$AMP_FILE = Join-Path $REPO_ROOT 'AGENTS.md' $Q_FILE = Join-Path $REPO_ROOT 'AGENTS.md' $TEMPLATE_FILE = Join-Path $REPO_ROOT '.specify/templates/agent-file-template.md' @@ -379,8 +380,9 @@ function Update-SpecificAgent { 'auggie' { Update-AgentFile -TargetFile $AUGGIE_FILE -AgentName 'Auggie CLI' } 'roo' { Update-AgentFile -TargetFile $ROO_FILE -AgentName 'Roo Code' } 'codebuddy' { Update-AgentFile -TargetFile $CODEBUDDY_FILE -AgentName 'CodeBuddy CLI' } + 'amp' { Update-AgentFile -TargetFile $AMP_FILE -AgentName 'Amp' } 'q' { Update-AgentFile -TargetFile $Q_FILE -AgentName 'Amazon Q Developer CLI' } - default { Write-Err "Unknown agent type '$Type'"; Write-Err 'Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|codebuddy|q'; return $false } + default { Write-Err "Unknown agent type '$Type'"; Write-Err 'Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|codebuddy|amp|q'; return $false } } } @@ -413,7 +415,7 @@ function Print-Summary { if ($NEW_FRAMEWORK) { Write-Host " - Added framework: $NEW_FRAMEWORK" } if ($NEW_DB -and $NEW_DB -ne 'N/A') { Write-Host " - Added database: $NEW_DB" } Write-Host '' - Write-Info 'Usage: ./update-agent-context.ps1 [-AgentType claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|codebuddy|q]' + Write-Info 'Usage: ./update-agent-context.ps1 [-AgentType claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|codebuddy|amp|q]' } function Main { diff --git a/src/specify_cli/__init__.py b/src/specify_cli/__init__.py index 56a7bf6e02..ddff3ce155 100644 --- a/src/specify_cli/__init__.py +++ b/src/specify_cli/__init__.py @@ -144,6 +144,12 @@ def _github_auth_headers(cli_token: str | None = None) -> dict: "install_url": "https://aws.amazon.com/developer/learning/q-developer-cli/", "requires_cli": True, }, + "amp": { + "name": "Amp", + "folder": ".agents/", + "install_url": "https://ampcode.com/", + "requires_cli": True, + }, } SCRIPT_TYPE_CHOICES = {"sh": "POSIX Shell (bash/zsh)", "ps": "PowerShell"} @@ -788,7 +794,7 @@ def ensure_executable_scripts(project_path: Path, tracker: StepTracker | None = @app.command() def init( project_name: str = typer.Argument(None, help="Name for your new project directory (optional if using --here, or use '.' for current directory)"), - ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, codebuddy, or q"), + ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, codebuddy, amp, or q"), script_type: str = typer.Option(None, "--script", help="Script type to use: sh or ps"), ignore_agent_tools: bool = typer.Option(False, "--ignore-agent-tools", help="Skip checks for AI agent tools like Claude Code"), no_git: bool = typer.Option(False, "--no-git", help="Skip git repository initialization"), From 6b58824a39aa1f2a0a8e93a1bcedc2c99403a86a Mon Sep 17 00:00:00 2001 From: Daniel Silva Date: Wed, 15 Oct 2025 22:41:48 +0100 Subject: [PATCH 3/8] Added correct `install_url` for Amp agent CLI script. --- src/specify_cli/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/specify_cli/__init__.py b/src/specify_cli/__init__.py index ddff3ce155..be77b24324 100644 --- a/src/specify_cli/__init__.py +++ b/src/specify_cli/__init__.py @@ -147,7 +147,7 @@ def _github_auth_headers(cli_token: str | None = None) -> dict: "amp": { "name": "Amp", "folder": ".agents/", - "install_url": "https://ampcode.com/", + "install_url": "https://ampcode.com/manual#install", "requires_cli": True, }, } From a97374ded0f56d5ec06641361e8d765d7cffdef3 Mon Sep 17 00:00:00 2001 From: Daniel Silva Date: Wed, 15 Oct 2025 22:43:37 +0100 Subject: [PATCH 4/8] Fixed indentation. --- .github/workflows/scripts/create-release-packages.sh | 4 ++-- scripts/bash/update-agent-context.sh | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/scripts/create-release-packages.sh b/.github/workflows/scripts/create-release-packages.sh index edf079238b..f9d3b1ae18 100644 --- a/.github/workflows/scripts/create-release-packages.sh +++ b/.github/workflows/scripts/create-release-packages.sh @@ -178,8 +178,8 @@ build_variant() { mkdir -p "$base_dir/.roo/commands" generate_commands roo md "\$ARGUMENTS" "$base_dir/.roo/commands" "$script" ;; codebuddy) - mkdir -p "$base_dir/.codebuddy/commands" - generate_commands codebuddy md "\$ARGUMENTS" "$base_dir/.codebuddy/commands" "$script" ;; + mkdir -p "$base_dir/.codebuddy/commands" + generate_commands codebuddy md "\$ARGUMENTS" "$base_dir/.codebuddy/commands" "$script" ;; amp) mkdir -p "$base_dir/.agents/commands" generate_commands amp md "\$ARGUMENTS" "$base_dir/.agents/commands" "$script" ;; diff --git a/scripts/bash/update-agent-context.sh b/scripts/bash/update-agent-context.sh index 4d83412778..c40010c2f5 100644 --- a/scripts/bash/update-agent-context.sh +++ b/scripts/bash/update-agent-context.sh @@ -584,8 +584,8 @@ update_specific_agent() { update_agent_file "$ROO_FILE" "Roo Code" ;; codebuddy) - update_agent_file "$CODEBUDDY_FILE" "CodeBuddy CLI" - ;; + update_agent_file "$CODEBUDDY_FILE" "CodeBuddy CLI" + ;; amp) update_agent_file "$AMP_FILE" "Amp" ;; From 8de5db7a3ed04f8a6baf86148fa9b199bccb649a Mon Sep 17 00:00:00 2001 From: Tine Kondo Date: Thu, 9 Oct 2025 09:23:25 +0000 Subject: [PATCH 5/8] fix: include the latest changelog in the `GitHub Release`'s body --- .github/workflows/scripts/generate-release-notes.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/scripts/generate-release-notes.sh b/.github/workflows/scripts/generate-release-notes.sh index eba2340b52..d8f5dab1fc 100644 --- a/.github/workflows/scripts/generate-release-notes.sh +++ b/.github/workflows/scripts/generate-release-notes.sh @@ -30,6 +30,10 @@ fi cat > release_notes.md << EOF This is the latest set of releases that you can use with your agent of choice. We recommend using the Specify CLI to scaffold your projects, however you can download these independently and manage them yourself. +## Changelog + +$COMMITS + EOF echo "Generated release notes:" From 7b536b578dad5cd174f8b50ce6cd96d244085d85 Mon Sep 17 00:00:00 2001 From: Hanzhi Yang Date: Tue, 21 Oct 2025 18:54:38 -0700 Subject: [PATCH 6/8] update specify to make "short-name" argu for create-new-feature.sh in the right position --- templates/commands/specify.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/commands/specify.md b/templates/commands/specify.md index 46c33e8736..03f681e573 100644 --- a/templates/commands/specify.md +++ b/templates/commands/specify.md @@ -35,9 +35,9 @@ Given that feature description, do this: **IMPORTANT**: - - Append the short-name argument to the `{SCRIPT}` command with the 2-4 word short name you created in step 1 - - Bash: `--short-name "your-generated-short-name"` - - PowerShell: `-ShortName "your-generated-short-name"` + - Append the short-name argument to the `{SCRIPT}` command with the 2-4 word short name you created in step 1. Keep the feature description as the final argument. + - Bash example: `--short-name "your-generated-short-name" "Feature description here"` + - PowerShell example: `-ShortName "your-generated-short-name" "Feature description here"` - For single quotes in args like "I'm Groot", use escape syntax: e.g 'I'\''m Groot' (or double-quote if possible: "I'm Groot") - You must only ever run this script once - The JSON is provided in the terminal as output - always refer to it to get the actual content you're looking for From 9809b1a4abb4252ffca964f324dc276cbdf298cf Mon Sep 17 00:00:00 2001 From: Hari Krishnan Date: Wed, 22 Oct 2025 07:42:37 +0530 Subject: [PATCH 7/8] docs: add steps for testing template and command changes locally --- CONTRIBUTING.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3e6e24aa85..58447f756a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -62,6 +62,28 @@ When working on spec-kit: 3. Test script functionality in the `scripts/` directory 4. Ensure memory files (`memory/constitution.md`) are updated if major process changes are made +### Testing template and command changes locally + +Running `uv run specify init` pulls released packages, which won’t include your local changes. +To test your templates, commands, and other changes locally, follow these steps: + +1. **Create release packages** + + Run the following command to generate the local packages: + ``` + ./.github/workflows/scripts/create-release-packages.sh v1.0.0 + ``` + +2. **Copy the relevant package to your test project** + + ``` + cp -r .genreleases/sdd-copilot-package-sh/. /PATH_TO/test-project/ + ``` + +3. **Open and test the agent** + + Navigate to your test project folder and open the agent to verify your implementation. + ## AI contributions in Spec Kit > [!IMPORTANT] From 89f5f9c0b97805534a89b95666b4f383b2f01749 Mon Sep 17 00:00:00 2001 From: Den Delimarsky <53200638+localden@users.noreply.github.com> Date: Tue, 21 Oct 2025 19:27:38 -0700 Subject: [PATCH 8/8] Update CONTRIBUTING.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 58447f756a..e5897b3835 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -77,7 +77,7 @@ To test your templates, commands, and other changes locally, follow these steps: 2. **Copy the relevant package to your test project** ``` - cp -r .genreleases/sdd-copilot-package-sh/. /PATH_TO/test-project/ + cp -r .genreleases/sdd-copilot-package-sh/. / ``` 3. **Open and test the agent**