Support for Cline#621
Conversation
- Add 'cline': 'Cline' to AI_CHOICES dictionary - Add 'cline': '.clinerules/' to agent_folder_map for security notices - Update --ai option help text to include cline Similar to Roo Code support added in previous PR, Cline uses .clinerules folder for config/rules/commands.
- Add Cline to the list of supported AI assistants in build scripts - Include Cline-specific release packages (sh and ps variants) - Update README with Cline compatibility and CLI option details This expands Spec Kit's compatibility to include Cline, enabling users to generate project templates tailored for this AI assistant.
|
I would love to see this merged. |
|
@sanathusk can you please share a screenshot of these slash commands popping up in Cline? I want to make sure that the experience actually lines up with customer expectations. |
|
Hope this PR won't be dropped, waiting for cline support |
|
👀 |
|
I am also waiting for Cline's support. |
|
@localden Can it be prioritized? |
|
@sanathusk mind updating your PR to resolve the merge conflicts? |
|
@sanathusk please check this conflict resolution: sanathusk#2 |
|
close yet no so close. I m willing to volunteer if this needs some help to get it merge |
The merge conflicts have been resolved, waiting for approval from reviewer. |
|
Also can't wait to use this in Cline :) |
|
Looking forward to using this in Cline! :) |
|
@sanathusk This is what it looks like based on the PR comments
Maybe have it similar to how it shows up in Claude Code and Roo Code?
|
|
|
Any chance to merge it? |
|
I've tested this with Cline with modifications (as well as RooCode) vs how I normally use this in Claude Code. Unfortunately, it fails to deliver on the same level of quality that Claude Code gets from it's speckit integration.
Here are the additional changes I made to the specify command: Keep in mind, even with these adjustments, I still cannot pass the argument to the workflow initially like Would love to see further refinements to help these other tools execute more successfully. |
|
Any news on this? |
|
@joseluiscarcel Feel free to bring it across the finish line |
There was a problem hiding this comment.
Pull request overview
Adds Cline as a supported AI agent in Spec Kit, updating the CLI, agent-context update scripts, and release packaging so users can scaffold templates and agent files for Cline.
Changes:
- Added
clineto the CLI agent configuration andspecify init --aihelp text. - Updated bash/PowerShell agent context update scripts to recognize and manage Cline files.
- Updated release packaging scripts and README to include Cline.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
src/specify_cli/__init__.py |
Adds cline to AGENT_CONFIG and exposes it via --ai help. |
scripts/powershell/update-agent-context.ps1 |
Adds Cline support in agent type validation, file path mapping, and update logic. |
scripts/bash/update-agent-context.sh |
Adds Cline support in file path mapping and update logic; updates user-facing strings. |
README.md |
Adds Cline to the supported agent table. |
.github/workflows/scripts/create-release-packages.sh |
Adds packaging variant generation for Cline and includes it in ALL_AGENTS. |
.github/workflows/scripts/create-github-release.sh |
Publishes the new Cline release zips. |
Comments suppressed due to low confidence (1)
scripts/bash/update-agent-context.sh:756
- The usage string omits some supported agent types (e.g.,
amp) and should stay in sync with the accepted agent keys. Update the usage list to include all supported values (including the newly addedcline).
log_info "Usage: $0 [claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|cline|codebuddy|shai|q|bob|qoder]"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| # 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, Roo Code, CodeBuddy CLI, Qoder CLI, Amp, SHAI, or Amazon Q Developer CLI | ||
| # - Supports: Claude, Gemini, Copilot, Cursor, Qwen, opencode, Codex, Windsurf, Kilo Code, Auggie CLI, Roo Code, Cline, CodeBuddy CLI, Qoder CLI, Amp, SHAI, or Amazon Q Developer CLI |
There was a problem hiding this comment.
The header comment mentions the supported agents, but the separate “Agent types:” list a few lines below is now stale and missing multiple supported values (e.g., roo, cline, codebuddy, amp). Update that list to match what the script actually accepts to avoid confusing users.
| *) | ||
| log_error "Unknown agent type '$agent_type'" | ||
| log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|amp|shai|q|bob|qoder" | ||
| log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|cline|amp|shai|q|bob|qoder" |
There was a problem hiding this comment.
This error message’s expected agent list is missing codebuddy, even though codebuddy is handled in the case statement above. Update the expected list so the guidance matches the actual supported agent types.
This issue also appears on line 756 of the same file.
| log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|cline|amp|shai|q|bob|qoder" | |
| log_error "Expected: claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|roo|cline|codebuddy|amp|shai|q|bob|qoder" |
|
|
||
| # Determine agent list | ||
| ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy amp shai q bob qoder) | ||
| ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo cline codebuddy amp shai q bob qoder) |
There was a problem hiding this comment.
The script header comment that documents the AGENTS env var subset is out of date relative to ALL_AGENTS (and now misses cline, roo, etc.). Update the documented agent list so users can correctly scope builds via AGENTS=....
| 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, amp, shai, q, bob, or qoder "), | ||
| ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, roo, cline, codebuddy, amp, shai, q, bob, or qoder "), |
There was a problem hiding this comment.
The --ai help text is a manually maintained list of agents and is already diverging from other sources of truth (e.g., README). Consider generating this string from AGENT_CONFIG.keys() (or a shared constant) so new agents like cline don’t require updating multiple places and the CLI help stays accurate.
See below for a potential fix:
# Build dynamic help text for the --ai option from AGENT_CONFIG, if available.
AI_ASSISTANT_HELP = "AI assistant to use"
if "AGENT_CONFIG" in globals() and isinstance(AGENT_CONFIG, dict):
try:
_agent_names = ", ".join(sorted(AGENT_CONFIG.keys()))
if _agent_names:
AI_ASSISTANT_HELP = f"AI assistant to use: {_agent_names}"
except Exception:
# Fall back to the generic help string if anything goes wrong
pass
@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_HELP),
| | [Roo Code](https://roocode.com/) | ✅ | | | ||
| | [SHAI (OVHcloud)](https://github.com/ovh/shai) | ✅ | | | ||
| | [Windsurf](https://windsurf.com/) | ✅ | | | ||
| | [Cline](https://cline.bot/) | ✅ | | |
There was a problem hiding this comment.
The supported agents list includes Cline now, but the --ai option list below still omits cline, so the docs are inconsistent. Please add cline to the --ai list (and consider keeping the Notes column empty rather than leaving placeholder spacing).
| | [Cline](https://cline.bot/) | ✅ | | | |
| | [Cline](https://cline.bot/) | ✅ || |
|
Unfortunately, I don’t have the expertise to contribute to the discussion about the cause or to help troubleshoot the issue. I just want to say that the Spec Kit integration is very important to me as well, because I’d like to use the specify and clarify workflows in Cline in my role as a designer. I would really appreciate it if the Spec Kit were made available for Cline as well. Thank you very much for your work! |
|
any updates on this? |
|
Closing as superseded — native Cline support shipped in #2508, so Cline is now available out of the box ( |



Summary
This pull request adds support for Cline (https://cline.bot) to Spec Kit, expanding its compatibility and enabling users to generate project templates tailored for this AI assistant.
Changes
Rationale
Cline is a modern bot for developer automation. Integrating Cline with Spec Kit allows users to leverage its capabilities for enhanced workflow automation, in line with Spec Kit's goal of supporting a broad range of AI agents and tools.
Testing
Disclosure
This PR was assisted by GitHub Copilot Chat for code suggestions and documentation drafting. All changes have been personally reviewed and tested.