Skip to content

Commit 9786e58

Browse files
committed
Lint fixes
1 parent 115b433 commit 9786e58

25 files changed

Lines changed: 176 additions & 143 deletions

AGENTS.md

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,12 +68,14 @@ AGENT_CONFIG = {
6868
```
6969

7070
**Key Design Principle**: The dictionary key should match the actual executable name that users install. For example:
71+
7172
- ✅ Use `"cursor-agent"` because the CLI tool is literally called `cursor-agent`
7273
- ❌ Don't use `"cursor"` as a shortcut if the tool is `cursor-agent`
7374

7475
This eliminates the need for special-case mappings throughout the codebase.
7576

7677
**Field Explanations**:
78+
7779
- `name`: Human-readable display name shown to users
7880
- `folder`: Directory where agent-specific files are stored (relative to project root)
7981
- `install_url`: Installation documentation URL (set to `None` for IDE-based agents)
@@ -102,12 +104,14 @@ Update the **Supported AI Agents** section in `README.md` to include the new age
102104

103105
Modify `.github/workflows/scripts/create-release-packages.sh`:
104106

105-
##### Add to ALL_AGENTS array:
107+
##### Add to ALL_AGENTS array
108+
106109
```bash
107110
ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf q)
108111
```
109112

110-
##### Add case statement for directory structure:
113+
##### Add case statement for directory structure
114+
111115
```bash
112116
case $agent in
113117
# ... existing cases ...
@@ -131,14 +135,16 @@ gh release create "$VERSION" \
131135

132136
#### 5. Update Agent Context Scripts
133137

134-
##### Bash script (`scripts/bash/update-agent-context.sh`):
138+
##### Bash script (`scripts/bash/update-agent-context.sh`)
135139

136140
Add file variable:
141+
137142
```bash
138143
WINDSURF_FILE="$REPO_ROOT/.windsurf/rules/specify-rules.md"
139144
```
140145

141146
Add to case statement:
147+
142148
```bash
143149
case "$AGENT_TYPE" in
144150
# ... existing cases ...
@@ -151,14 +157,16 @@ case "$AGENT_TYPE" in
151157
esac
152158
```
153159

154-
##### PowerShell script (`scripts/powershell/update-agent-context.ps1`):
160+
##### PowerShell script (`scripts/powershell/update-agent-context.ps1`)
155161

156162
Add file variable:
163+
157164
```powershell
158165
$windsurfFile = Join-Path $repoRoot '.windsurf/rules/specify-rules.md'
159166
```
160167

161168
Add to switch statement:
169+
162170
```powershell
163171
switch ($AgentType) {
164172
# ... existing cases ...
@@ -200,13 +208,15 @@ elif selected_ai == "windsurf":
200208
**CRITICAL**: When adding a new agent to AGENT_CONFIG, always use the **actual executable name** as the dictionary key, not a shortened or convenient version.
201209

202210
**Why this matters:**
211+
203212
- The `check_tool()` function uses `shutil.which(tool)` to find executables in the system PATH
204213
- If the key doesn't match the actual CLI tool name, you'll need special-case mappings throughout the codebase
205214
- This creates unnecessary complexity and maintenance burden
206215

207216
**Example - The Cursor Lesson:**
208217

209218
**Wrong approach** (requires special-case mapping):
219+
210220
```python
211221
AGENT_CONFIG = {
212222
"cursor": { # Shorthand that doesn't match the actual tool
@@ -222,6 +232,7 @@ if agent_key == "cursor":
222232
```
223233

224234
**Correct approach** (no mapping needed):
235+
225236
```python
226237
AGENT_CONFIG = {
227238
"cursor-agent": { # Matches the actual executable name
@@ -234,6 +245,7 @@ AGENT_CONFIG = {
234245
```
235246

236247
**Benefits of this approach:**
248+
237249
- Eliminates special-case logic scattered throughout the codebase
238250
- Makes the code more maintainable and easier to understand
239251
- Reduces the chance of bugs when adding new agents
@@ -289,6 +301,7 @@ echo "✅ Done"
289301
### CLI-Based Agents
290302

291303
Require a command-line tool to be installed:
304+
292305
- **Claude Code**: `claude` CLI
293306
- **Gemini CLI**: `gemini` CLI
294307
- **Cursor**: `cursor-agent` CLI
@@ -298,16 +311,20 @@ Require a command-line tool to be installed:
298311
- **CodeBuddy CLI**: `codebuddy` CLI
299312

300313
### IDE-Based Agents
314+
301315
Work within integrated development environments:
316+
302317
- **GitHub Copilot**: Built into VS Code/compatible editors
303318
- **Windsurf**: Built into Windsurf IDE
304319

305320
## Command File Formats
306321

307322
### Markdown Format
323+
308324
Used by: Claude, Cursor, opencode, Windsurf, Amazon Q Developer
309325

310326
**Standard format:**
327+
311328
```markdown
312329
---
313330
description: "Command description"
@@ -317,6 +334,7 @@ Command content with {SCRIPT} and $ARGUMENTS placeholders.
317334
```
318335

319336
**GitHub Copilot Chat Mode format:**
337+
320338
```markdown
321339
---
322340
description: "Command description"
@@ -327,6 +345,7 @@ Command content with {SCRIPT} and $ARGUMENTS placeholders.
327345
```
328346

329347
### TOML Format
348+
330349
Used by: Gemini, Qwen
331350

332351
```toml
@@ -348,6 +367,7 @@ Command content with {SCRIPT} and {{args}} placeholders.
348367
## Argument Patterns
349368

350369
Different agents use different argument placeholders:
370+
351371
- **Markdown/prompt-based**: `$ARGUMENTS`
352372
- **TOML-based**: `{{args}}`
353373
- **Script placeholders**: `{SCRIPT}` (replaced with actual script path)
@@ -383,4 +403,3 @@ When adding new agents:
383403
---
384404

385405
*This documentation should be updated whenever new agents are added to maintain accuracy and completeness.*
386-

CHANGELOG.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6363

6464
- New `/clarify` command template to surface up to 5 targeted clarification questions for an existing spec and persist answers into a Clarifications section in the spec.
6565
- New `/analyze` command template providing a non-destructive cross-artifact discrepancy and alignment report (spec, clarifications, plan, tasks, constitution) inserted after `/tasks` and before `/implement`.
66-
- Note: Constitution rules are explicitly treated as non-negotiable; any conflict is a CRITICAL finding requiring artifact remediation, not weakening of principles.
66+
- Note: Constitution rules are explicitly treated as non-negotiable; any conflict is a CRITICAL finding requiring artifact remediation, not weakening of principles.
6767

6868
## [0.0.16] - 2025-09-22
6969

@@ -140,7 +140,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
140140
- Updated command instructions in the CLI.
141141
- Cleaned up the code to not render agent-specific information when it's generic.
142142

143-
144143
## [0.0.6] - 2025-09-17
145144

146145
### Added
@@ -166,4 +165,3 @@ N/A
166165
### Changed
167166

168167
N/A
169-

CONTRIBUTING.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,4 +125,3 @@ Please be respectful to maintainers and disclose AI assistance.
125125
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
126126
- [Using Pull Requests](https://help.github.com/articles/about-pull-requests/)
127127
- [GitHub Help](https://help.github.com)
128-

README.md

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -417,16 +417,16 @@ At this stage, your project folder contents should resemble the following:
417417
```text
418418
└── .specify
419419
├── memory
420-
└── constitution.md
420+
└── constitution.md
421421
├── scripts
422-
├── check-prerequisites.sh
423-
├── common.sh
424-
├── create-new-feature.sh
425-
├── setup-plan.sh
426-
└── update-claude-md.sh
422+
├── check-prerequisites.sh
423+
├── common.sh
424+
├── create-new-feature.sh
425+
├── setup-plan.sh
426+
└── update-claude-md.sh
427427
├── specs
428-
└── 001-create-taskify
429-
└── spec.md
428+
└── 001-create-taskify
429+
└── spec.md
430430
└── templates
431431
├── plan-template.md
432432
├── spec-template.md
@@ -440,6 +440,7 @@ With the baseline specification created, you can go ahead and clarify any of the
440440
You should run the structured clarification workflow **before** creating a technical plan to reduce rework downstream.
441441

442442
Preferred order:
443+
443444
1. Use `/speckit.clarify` (structured) – sequential, coverage-based questioning that records answers in a Clarifications section.
444445
2. Optionally follow up with ad-hoc free-form refinement if something still feels vague.
445446

@@ -477,23 +478,23 @@ The output of this step will include a number of implementation detail documents
477478
.
478479
├── CLAUDE.md
479480
├── memory
480-
└── constitution.md
481+
└── constitution.md
481482
├── scripts
482-
├── check-prerequisites.sh
483-
├── common.sh
484-
├── create-new-feature.sh
485-
├── setup-plan.sh
486-
└── update-claude-md.sh
483+
├── check-prerequisites.sh
484+
├── common.sh
485+
├── create-new-feature.sh
486+
├── setup-plan.sh
487+
└── update-claude-md.sh
487488
├── specs
488-
└── 001-create-taskify
489-
├── contracts
490-
├── api-spec.json
491-
└── signalr-spec.md
492-
├── data-model.md
493-
├── plan.md
494-
├── quickstart.md
495-
├── research.md
496-
└── spec.md
489+
└── 001-create-taskify
490+
├── contracts
491+
├── api-spec.json
492+
└── signalr-spec.md
493+
├── data-model.md
494+
├── plan.md
495+
├── quickstart.md
496+
├── research.md
497+
└── spec.md
497498
└── templates
498499
├── CLAUDE-template.md
499500
├── plan-template.md
@@ -575,6 +576,7 @@ Once ready, use the `/speckit.implement` command to execute your implementation
575576
```
576577

577578
The `/speckit.implement` command will:
579+
578580
- Validate that all prerequisites are in place (constitution, spec, plan, and tasks)
579581
- Parse the task breakdown from `tasks.md`
580582
- Execute tasks in the correct order, respecting dependencies and parallel execution markers
@@ -625,4 +627,3 @@ This project is heavily influenced by and based on the work and research of [Joh
625627
## 📄 License
626628

627629
This project is licensed under the terms of the MIT open source license. Please refer to the [LICENSE](./LICENSE) file for the full terms.
628-

SECURITY.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Thanks for helping make GitHub safe for everyone.
44

55
GitHub takes the security of our software products and services seriously, including all of the open source code repositories managed through our GitHub organizations, such as [GitHub](https://github.com/GitHub).
66

7-
Even though [open source repositories are outside of the scope of our bug bounty program](https://bounty.github.com/index.html#scope) and therefore not eligible for bounty rewards, we will ensure that your finding gets passed along to the appropriate maintainers for remediation.
7+
Even though [open source repositories are outside of the scope of our bug bounty program](https://bounty.github.com/index.html#scope) and therefore not eligible for bounty rewards, we will ensure that your finding gets passed along to the appropriate maintainers for remediation.
88

99
## Reporting Security Issues
1010

@@ -16,13 +16,13 @@ Instead, please send an email to opensource-security[@]github.com.
1616

1717
Please include as much of the information listed below as you can to help us better understand and resolve the issue:
1818

19-
* The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting)
20-
* Full paths of source file(s) related to the manifestation of the issue
21-
* The location of the affected source code (tag/branch/commit or direct URL)
22-
* Any special configuration required to reproduce the issue
23-
* Step-by-step instructions to reproduce the issue
24-
* Proof-of-concept or exploit code (if possible)
25-
* Impact of the issue, including how an attacker might exploit the issue
19+
* The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting)
20+
* Full paths of source file(s) related to the manifestation of the issue
21+
* The location of the affected source code (tag/branch/commit or direct URL)
22+
* Any special configuration required to reproduce the issue
23+
* Step-by-step instructions to reproduce the issue
24+
* Proof-of-concept or exploit code (if possible)
25+
* Impact of the issue, including how an attacker might exploit the issue
2626

2727
This information will help us triage your report more quickly.
2828

SUPPORT.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Support
1+
# Support
22

33
## How to file issues and get help
44

@@ -17,4 +17,3 @@ For help or questions about using this project, please:
1717
## GitHub Support Policy
1818

1919
Support for this project is limited to the resources listed above.
20-

docs/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@ This folder contains the documentation source files for Spec Kit, built using [D
77
To build the documentation locally:
88

99
1. Install DocFX:
10+
1011
```bash
1112
dotnet tool install -g docfx
1213
```
1314

1415
2. Build the documentation:
16+
1517
```bash
1618
cd docs
1719
docfx docfx.json --serve
@@ -31,4 +33,3 @@ To build the documentation locally:
3133
## Deployment
3234

3335
Documentation is automatically built and deployed to GitHub Pages when changes are pushed to the `main` branch. The workflow is defined in `.github/workflows/docs.yml`.
34-

docs/index.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Spec-Driven Development **flips the script** on traditional software development
1818

1919
Spec-Driven Development is a structured process that emphasizes:
2020

21-
- **Intent-driven development** where specifications define the "_what_" before the "_how_"
21+
- **Intent-driven development** where specifications define the "*what*" before the "*how*"
2222
- **Rich specification creation** using guardrails and organizational principles
2323
- **Multi-step refinement** rather than one-shot code generation from prompts
2424
- **Heavy reliance** on advanced AI model capabilities for specification interpretation
@@ -36,19 +36,23 @@ Spec-Driven Development is a structured process that emphasizes:
3636
Our research and experimentation focus on:
3737

3838
### Technology Independence
39+
3940
- Create applications using diverse technology stacks
4041
- Validate the hypothesis that Spec-Driven Development is a process not tied to specific technologies, programming languages, or frameworks
4142

4243
### Enterprise Constraints
44+
4345
- Demonstrate mission-critical application development
4446
- Incorporate organizational constraints (cloud providers, tech stacks, engineering practices)
4547
- Support enterprise design systems and compliance requirements
4648

4749
### User-Centric Development
50+
4851
- Build applications for different user cohorts and preferences
4952
- Support various development approaches (from vibe-coding to AI-native development)
5053

5154
### Creative & Iterative Processes
55+
5256
- Validate the concept of parallel implementation exploration
5357
- Provide robust iterative feature development workflows
5458
- Extend processes to handle upgrades and modernization tasks
@@ -60,4 +64,3 @@ Please see our [Contributing Guide](https://github.com/github/spec-kit/blob/main
6064
## Support
6165

6266
For support, please check our [Support Guide](https://github.com/github/spec-kit/blob/main/SUPPORT.md) or open an issue on GitHub.
63-

docs/installation.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,13 @@ uvx --from git+https://github.com/github/spec-kit.git specify init <project_name
4242
All automation scripts now have both Bash (`.sh`) and PowerShell (`.ps1`) variants.
4343

4444
Auto behavior:
45+
4546
- Windows default: `ps`
4647
- Other OS default: `sh`
4748
- Interactive mode: you'll be prompted unless you pass `--script`
4849

4950
Force a specific script type:
51+
5052
```bash
5153
uvx --from git+https://github.com/github/spec-kit.git specify init <project_name> --script sh
5254
uvx --from git+https://github.com/github/spec-kit.git specify init <project_name> --script ps
@@ -63,6 +65,7 @@ uvx --from git+https://github.com/github/spec-kit.git specify init <project_name
6365
## Verification
6466

6567
After initialization, you should see the following commands available in your AI agent:
68+
6669
- `/speckit.specify` - Create specifications
6770
- `/speckit.plan` - Generate implementation plans
6871
- `/speckit.tasks` - Break down into actionable tasks
@@ -87,4 +90,3 @@ git config --global credential.helper manager
8790
echo "Cleaning up..."
8891
rm gcm-linux_amd64.2.6.1.deb
8992
```
90-

0 commit comments

Comments
 (0)