Skip to content

Commit 55555eb

Browse files
authored
Merge pull request #590 from github/cli-fix
Spec Kit Updates
2 parents f3d55cf + 6f3e450 commit 55555eb

File tree

2 files changed

+45
-6
lines changed

2 files changed

+45
-6
lines changed

CONTRIBUTING.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,40 @@ When working on spec-kit:
4747

4848
## AI contributions in Spec Kit
4949

50+
> [!IMPORTANT]
51+
>
52+
> If you are using **any kind of AI assistance** to contribute to Spec Kit,
53+
> it must be disclosed in the pull request or issue.
54+
5055
We welcome and encourage the use of AI tools to help improve Spec Kit! Many valuable contributions have been enhanced with AI assistance for code generation, issue detection, and feature definition.
5156

57+
That being said, if you are using any kind of AI assistance (e.g., agents, ChatGPT) while contributing to Spec Kit,
58+
**this must be disclosed in the pull request or issue**, along with the extent to which AI assistance was used (e.g., documentation comments vs. code generation).
59+
60+
If your PR responses or comments are being generated by an AI, disclose that as well.
61+
62+
As an exception, trivial spacing or typo fixes don't need to be disclosed, so long as the changes are limited to small parts of the code or short phrases.
63+
64+
An example disclosure:
65+
66+
> This PR was written primarily by GitHub Copilot.
67+
68+
Or a more detailed disclosure:
69+
70+
> I consulted ChatGPT to understand the codebase but the solution
71+
> was fully authored manually by myself.
72+
73+
Failure to disclose this is first and foremost rude to the human operators on the other end of the pull request, but it also makes it difficult to
74+
determine how much scrutiny to apply to the contribution.
75+
76+
In a perfect world, AI assistance would produce equal or higher quality work than any human. That isn't the world we live in today, and in most cases
77+
where human supervision or expertise is not in the loop, it's generating code that cannot be reasonably maintained or evolved.
78+
5279
### What we're looking for
5380

5481
When submitting AI-assisted contributions, please ensure they include:
5582

83+
- **Clear disclosure of AI use** - You are transparent about AI use and degree to which you're using it for the contribution
5684
- **Human understanding and testing** - You've personally tested the changes and understand what they do
5785
- **Clear rationale** - You can explain why the change is needed and how it fits within Spec Kit's goals
5886
- **Concrete evidence** - Include test cases, scenarios, or examples that demonstrate the improvement
@@ -72,6 +100,8 @@ The key is demonstrating that you understand and have validated your proposed ch
72100

73101
Contributors who consistently submit low-effort AI-generated changes may be restricted from further contributions at the maintainers' discretion.
74102

103+
Please be respectful to maintainers and disclose AI assistance.
104+
75105
## Resources
76106

77107
- [Spec-Driven Development Methodology](./spec-driven.md)

src/specify_cli/__init__.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1058,18 +1058,27 @@ def init(
10581058
step_num += 1
10591059

10601060
steps_lines.append(f"{step_num}. Start using slash commands with your AI agent:")
1061+
10611062
steps_lines.append(" 2.1 [cyan]/constitution[/] - Establish project principles")
1062-
steps_lines.append(" 2.2 [cyan]/specify[/] - Create specifications")
1063-
steps_lines.append(" 2.3 [cyan]/clarify[/] - Clarify and de-risk specification (run before [cyan]/plan[/cyan])")
1064-
steps_lines.append(" 2.4 [cyan]/plan[/] - Create implementation plans")
1065-
steps_lines.append(" 2.5 [cyan]/tasks[/] - Generate actionable tasks")
1066-
steps_lines.append(" 2.6 [cyan]/analyze[/] - Validate alignment & surface inconsistencies (read-only)")
1067-
steps_lines.append(" 2.7 [cyan]/implement[/] - Execute implementation")
1063+
steps_lines.append(" 2.2 [cyan]/specify[/] - Create baseline specification")
1064+
steps_lines.append(" 2.3 [cyan]/plan[/] - Create implementation plan")
1065+
steps_lines.append(" 2.4 [cyan]/tasks[/] - Generate actionable tasks")
1066+
steps_lines.append(" 2.5 [cyan]/implement[/] - Execute implementation")
10681067

10691068
steps_panel = Panel("\n".join(steps_lines), title="Next Steps", border_style="cyan", padding=(1,2))
10701069
console.print()
10711070
console.print(steps_panel)
10721071

1072+
enhancement_lines = [
1073+
"Optional commands that you can use for your specs (improve quality & confidence)[/bright_black]",
1074+
"",
1075+
f"○ [cyan]/clarify[/] [bright_black](optional)[/bright_black] - Ask structured questions to de-risk ambiguous areas before planning (run before [cyan]/plan[/] if used)",
1076+
f"○ [cyan]/analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/tasks[/], before [cyan]/implement[/])"
1077+
]
1078+
enhancements_panel = Panel("\n".join(enhancement_lines), title="Enhancement Commands", border_style="cyan", padding=(1,2))
1079+
console.print()
1080+
console.print(enhancements_panel)
1081+
10731082
if selected_ai == "codex":
10741083
warning_text = """[bold yellow]Important Note:[/bold yellow]
10751084

0 commit comments

Comments
 (0)