Compare commits

...

5 Commits

Author SHA1 Message Date
den (work)
6f3e450cd8 Update CONTRIBUTING.md 2025-09-25 12:27:37 -07:00
Den Delimarsky 🌺
f1ddf33ac4 Update __init__.py 2025-09-23 18:29:15 -07:00
Den Delimarsky
f1063321c6 Merge pull request #502 from amondnet/docs-remove-constitution_update_checklist
docs: remove constitution_update_checklist from README
2025-09-23 13:48:48 -07:00
Minsu Lee
62f20c601c docs: remove constitution_update_checklist from README 2025-09-23 12:09:19 +00:00
Den Delimarsky
26645103a6 Merge pull request #491 from github/quizme
Update with extra commands
2025-09-22 21:15:56 -07:00
3 changed files with 47 additions and 10 deletions

View File

@@ -47,12 +47,40 @@ When working on spec-kit:
## AI contributions in Spec Kit ## AI contributions in Spec Kit
> [!IMPORTANT]
>
> If you are using **any kind of AI assistance** to contribute to Spec Kit,
> it must be disclosed in the pull request or issue.
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. 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.
That being said, if you are using any kind of AI assistance (e.g., agents, ChatGPT) while contributing to Spec Kit,
**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).
If your PR responses or comments are being generated by an AI, disclose that as well.
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.
An example disclosure:
> This PR was written primarily by GitHub Copilot.
Or a more detailed disclosure:
> I consulted ChatGPT to understand the codebase but the solution
> was fully authored manually by myself.
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
determine how much scrutiny to apply to the contribution.
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
where human supervision or expertise is not in the loop, it's generating code that cannot be reasonably maintained or evolved.
### What we're looking for ### What we're looking for
When submitting AI-assisted contributions, please ensure they include: When submitting AI-assisted contributions, please ensure they include:
- **Clear disclosure of AI use** - You are transparent about AI use and degree to which you're using it for the contribution
- **Human understanding and testing** - You've personally tested the changes and understand what they do - **Human understanding and testing** - You've personally tested the changes and understand what they do
- **Clear rationale** - You can explain why the change is needed and how it fits within Spec Kit's goals - **Clear rationale** - You can explain why the change is needed and how it fits within Spec Kit's goals
- **Concrete evidence** - Include test cases, scenarios, or examples that demonstrate the improvement - **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
Contributors who consistently submit low-effort AI-generated changes may be restricted from further contributions at the maintainers' discretion. Contributors who consistently submit low-effort AI-generated changes may be restricted from further contributions at the maintainers' discretion.
Please be respectful to maintainers and disclose AI assistance.
## Resources ## Resources
- [Spec-Driven Development Methodology](./spec-driven.md) - [Spec-Driven Development Methodology](./spec-driven.md)

View File

@@ -377,8 +377,7 @@ At this stage, your project folder contents should resemble the following:
```text ```text
├── memory ├── memory
── constitution.md ── constitution.md
│ └── constitution_update_checklist.md
├── scripts ├── scripts
│ ├── check-prerequisites.sh │ ├── check-prerequisites.sh
│ ├── common.sh │ ├── common.sh
@@ -438,8 +437,7 @@ The output of this step will include a number of implementation detail documents
. .
├── CLAUDE.md ├── CLAUDE.md
├── memory ├── memory
── constitution.md ── constitution.md
│ └── constitution_update_checklist.md
├── scripts ├── scripts
│ ├── check-prerequisites.sh │ ├── check-prerequisites.sh
│ ├── common.sh │ ├── common.sh

View File

@@ -1058,18 +1058,27 @@ def init(
step_num += 1 step_num += 1
steps_lines.append(f"{step_num}. Start using slash commands with your AI agent:") steps_lines.append(f"{step_num}. Start using slash commands with your AI agent:")
steps_lines.append(" 2.1 [cyan]/constitution[/] - Establish project principles") steps_lines.append(" 2.1 [cyan]/constitution[/] - Establish project principles")
steps_lines.append(" 2.2 [cyan]/specify[/] - Create specifications") steps_lines.append(" 2.2 [cyan]/specify[/] - Create baseline specification")
steps_lines.append(" 2.3 [cyan]/clarify[/] - Clarify and de-risk specification (run before [cyan]/plan[/cyan])") steps_lines.append(" 2.3 [cyan]/plan[/] - Create implementation plan")
steps_lines.append(" 2.4 [cyan]/plan[/] - Create implementation plans") steps_lines.append(" 2.4 [cyan]/tasks[/] - Generate actionable tasks")
steps_lines.append(" 2.5 [cyan]/tasks[/] - Generate actionable tasks") steps_lines.append(" 2.5 [cyan]/implement[/] - Execute implementation")
steps_lines.append(" 2.6 [cyan]/analyze[/] - Validate alignment & surface inconsistencies (read-only)")
steps_lines.append(" 2.7 [cyan]/implement[/] - Execute implementation")
steps_panel = Panel("\n".join(steps_lines), title="Next Steps", border_style="cyan", padding=(1,2)) steps_panel = Panel("\n".join(steps_lines), title="Next Steps", border_style="cyan", padding=(1,2))
console.print() console.print()
console.print(steps_panel) console.print(steps_panel)
enhancement_lines = [
"Optional commands that you can use for your specs (improve quality & confidence)[/bright_black]",
"",
f"○ [cyan]/clarify[/] [bright_black](optional)[/bright_black] - Ask structured questions to de-risk ambiguous areas before planning (run before [cyan]/plan[/] if used)",
f"○ [cyan]/analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/tasks[/], before [cyan]/implement[/])"
]
enhancements_panel = Panel("\n".join(enhancement_lines), title="Enhancement Commands", border_style="cyan", padding=(1,2))
console.print()
console.print(enhancements_panel)
if selected_ai == "codex": if selected_ai == "codex":
warning_text = """[bold yellow]Important Note:[/bold yellow] warning_text = """[bold yellow]Important Note:[/bold yellow]