Skip to content

Conversation

ahmet-cetinkaya
Copy link
Contributor

Summary

  • Add comprehensive Qwen Code integration as fourth AI assistant option
  • Extend CLI, documentation, and build pipeline to support Qwen
  • Maintain backward compatibility with existing assistants (Claude, Gemini, Copilot)

Changes Made

  • CLI Integration: Added Qwen as option in src/specify_cli/__init__.py with proper help text and tool checking
  • Shell Scripts: Extended scripts/update-agent-context.sh to support QWEN.md generation
  • GitHub Actions: Added Qwen package creation in release workflow with .qwen/commands/*.md structure
  • Documentation: Updated README.md, CONTRIBUTING.md, and templates to include Qwen CLI references
  • Templates: Extended plan template to reference Qwen in agent file updates

Testing

  • ✅ CLI help shows Qwen option: --ai claude, gemini, copilot, or qwen
  • ✅ All commands function correctly with Qwen integration
  • ✅ Check command runs without errors
  • ✅ Follows established patterns from other AI assistants

Implementation Details

  • Command Structure: Uses .qwen/commands/*.md format
  • Context File: Generates QWEN.md in project root
  • CLI Tool: Expects qwen command availability
  • Installation URL: References https://github.com/QwenLM/qwen-code

This extends Spec Kit's AI assistant ecosystem to include Qwen while maintaining full compatibility with existing workflows.

Add comprehensive Qwen Code integration following existing patterns:

- Add Qwen as fourth AI assistant option in CLI
- Update all documentation to include Qwen CLI references
- Extend GitHub Actions workflow for Qwen template generation
- Add Qwen support to shell scripts and templates
- Maintain backward compatibility with existing assistants
@localden localden self-assigned this Sep 11, 2025
@localden localden added merge-candidate Reasonable change that is going to be merged after a review. needs-verification Pull request or bug report that requires validation and testing before it can be acted on. labels Sep 11, 2025
@nds15763
Copy link

Truly appreciated

Resolved conflicts in release workflow and CLI:
- Integrated external script approach for release package creation
- Added Qwen Code support to release script and CLI tool checking
- Maintained all existing functionality for other AI assistants
schuerstedt added a commit to schuerstedt/spec-kit that referenced this pull request Sep 12, 2025
- Change from commands/ to .qwen/commands/ directory
- Match official PR github#182 implementation
- Fix command recognition in Qwen CLI
@vjaykrsna
Copy link

Can't wait to get qwen code support as well

Combines Qwen Code support with new script variant structure from main.
Key additions:
- Qwen Code AI assistant support
- PowerShell script variants alongside Bash
- Updated release packaging for per-script variants
- Maintains all existing Cursor support from main

Co-authored-by: Claude <[email protected]>
@vjaykrsna
Copy link

@ahmet-cetinkaya is this complete?
because i tried uvx --from git+https://github.com/ahmet-cetinkaya/spec-kit#feature/add-qwen-support specify
but i didn't see qwen code cli there
guide me if i did it wrong

@ahmet-cetinkaya
Copy link
Contributor Author

ahmet-cetinkaya commented Sep 14, 2025

@vjaykrsna There’s a small mistake in your command — when specifying a branch, you should use @ instead of #. Try this:

uvx --from git+https://github.com/ahmet-cetinkaya/spec-kit@feature/add-qwen-support specify

This will let you see the new option.

However, since spec-kit fetches its templates from releases, the tool won’t fully work this way.
To properly run the feature before release, you’ll need to clone the branch locally:

git clone https://github.com/ahmet-cetinkaya/spec-kit -b feature/add-qwen-support
cd spec-kit

uv sync
uv run specify

@vjaykrsna
Copy link

by default it fetch from github had to modify the function to get it to work after generating the files manually
hope they officially merge this soon

@localden
Copy link
Collaborator

@ahmet-cetinkaya once you address the nit changes I highlighted, I am happy to merge this.

@ahmet-cetinkaya
Copy link
Contributor Author

Hi @localden,

The requested changes are applied, and the branch is now ready to merge. Appreciate the review! 🚀

I usually keep lists numbered sequentially so they’re easier to read in raw Markdown, but if the 1. style is preferred, I’m happy to stick with that.

@localden
Copy link
Collaborator

@ahmet-cetinkaya - last request, can you rev the CLI version and update the changelog with the addition of Qwen support?

Add entry for Qwen Code support as new AI assistant option
@ahmet-cetinkaya
Copy link
Contributor Author

@localden I've addressed your last request:

  1. Bumped the CLI version from 0.0.4 to 0.0.5 in pyproject.toml
  2. Updated the CHANGELOG.md with the new version and added Qwen Code support as a new feature

The changes have been pushed to the branch. This should be ready to merge now.

@vjaykrsna
Copy link

Waiting for the PR to merge feels like forever.
some good ones are find for quite some time now

@localden localden merged commit 10e56aa into github:main Sep 17, 2025
@localden
Copy link
Collaborator

Thank you for contribution, @ahmet-cetinkaya! 🥳

@aemr3
Copy link
Contributor

aemr3 commented Sep 17, 2025

hey @ahmet-cetinkaya, @localden there are some missing definitions to support qwen, please check my pr: #64

Important ones are update-agent-context scripts, create-release-packages.sh, release.yml as far as I can see.

@SeanPtest
Copy link

SeanPtest commented Sep 17, 2025

I tried this moments ago, didn't work.

uvx --from git+https://github.com/github/spec-kit.git specify init spec-sample
Selected AI assistant: qwen
Selected script type: sh
No matching release asset found for pattern: spec-kit-template-qwen-sh
... ... ... spec kit template-qwen.sh.zip isn't listed, the others are.
Initialization failed: 1

I did a search for the missing zip file in the merged repo, didn't find it. We can uhh select qwen tho, at least.

Tried it like this also, same error.

uvx --from git+https://github.com/github/spec-kit.git specify init spec-qwen --ai qwen --script sh

@ahmet-cetinkaya
Copy link
Contributor Author

ahmet-cetinkaya commented Sep 17, 2025

@aemr3 @SeanPtest - Fixed! PR #321 adds missing Qwen assets to releases. specify init --ai qwen will work after merge. Thanks!

@Mingholy
Copy link
Contributor

#330 Changed md to toml so that the FileCommandLoader can load spec commands into qwen-code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge-candidate Reasonable change that is going to be merged after a review. needs-verification Pull request or bug report that requires validation and testing before it can be acted on.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants