Skip to content

Commit ee9f839

Browse files
committed
Update contribution guidelines.
1 parent 3bdb1d9 commit ee9f839

2 files changed

Lines changed: 15 additions & 5 deletions

File tree

CONTRIBUTING.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ These are one time installations required to be able to test your changes locall
1818
>[!NOTE]
1919
>If your pull request introduces a large change that materially impacts the work of the CLI or the rest of the repository (e.g., you're introducing new templates, arguments, or otherwise major changes), make sure that it was **discussed and agreed upon** by the project maintainers. Pull requests with large changes that did not have a prior conversation and agreement will be closed.
2020
21+
>[!IMPORTANT]
22+
>We leverage AI and AI agents for help with this project and value contributions that also use AI to detect issues and improve Spec Kit. However, to help the team focus on important issues and features, we will close issues and PRs that are **low-effort AI-generated changes**. If you are submitting an AI generated issue or pull request, please include **concrete test cases**, **scenarios**, and an outline of the **end-to-end developer experience** with your suggested change.
23+
>
24+
>This means that you need to be supervising the changes and understanding why the change is necessary within the Spec Kit scope.
25+
2126
1. Fork and clone the repository
2227
1. Configure and install the dependencies: `uv sync`
2328
1. Make sure the CLI works on your machine: `uv run specify --help`

scripts/bash/update-agent-context.sh

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -291,15 +291,20 @@ create_new_agent_file() {
291291
local language_conventions
292292
language_conventions=$(get_language_conventions "$NEW_LANG")
293293

294-
# Perform substitutions with error checking
294+
# Perform substitutions with error checking using safer approach
295+
# Escape special characters for sed by using a different delimiter or escaping
296+
local escaped_lang=$(printf '%s\n' "$NEW_LANG" | sed 's/[[\.*^$()+{}|]/\\&/g')
297+
local escaped_framework=$(printf '%s\n' "$NEW_FRAMEWORK" | sed 's/[[\.*^$()+{}|]/\\&/g')
298+
local escaped_branch=$(printf '%s\n' "$CURRENT_BRANCH" | sed 's/[[\.*^$()+{}|]/\\&/g')
299+
295300
local substitutions=(
296-
"s/\[PROJECT NAME\]/$project_name/"
297-
"s/\[DATE\]/$current_date/"
298-
"s/\[EXTRACTED FROM ALL PLAN.MD FILES\]/- $NEW_LANG + $NEW_FRAMEWORK ($CURRENT_BRANCH)/"
301+
"s|\[PROJECT NAME\]|$project_name|"
302+
"s|\[DATE\]|$current_date|"
303+
"s|\[EXTRACTED FROM ALL PLAN.MD FILES\]|- $escaped_lang + $escaped_framework ($escaped_branch)|"
299304
"s|\[ACTUAL STRUCTURE FROM PLANS\]|$project_structure|g"
300305
"s|\[ONLY COMMANDS FOR ACTIVE TECHNOLOGIES\]|$commands|"
301306
"s|\[LANGUAGE-SPECIFIC, ONLY FOR LANGUAGES IN USE\]|$language_conventions|"
302-
"s|\[LAST 3 FEATURES AND WHAT THEY ADDED\]|- $CURRENT_BRANCH: Added $NEW_LANG + $NEW_FRAMEWORK|"
307+
"s|\[LAST 3 FEATURES AND WHAT THEY ADDED\]|- $escaped_branch: Added $escaped_lang + $escaped_framework|"
303308
)
304309

305310
for substitution in "${substitutions[@]}"; do

0 commit comments

Comments
 (0)