<div align="center">
npm install @gair/sii-cli



AI-powered command-line workflow tool for developers
Installation • Quick Start • Features • Documentation • Contributing
Qwen Code is a powerful command-line AI workflow tool adapted from Gemini CLI (details), specifically optimized for Qwen3-Coder models. It enhances your development workflow with advanced code understanding, automated tasks, and intelligent assistance.
> [!WARNING]
> Token Usage Notice: Qwen Code may issue multiple API calls per cycle, resulting in higher token usage (similar to Claude Code). We're actively optimizing API efficiency.
>
> 💡 Free Option: ModelScope provides 2,000 free API calls per day for users in mainland China. OpenRouter offers up to 1,000 free API calls per day worldwide. For setup instructions, see API Configuration.
- Code Understanding & Editing - Query and edit large codebases beyond traditional context window limits
- Workflow Automation - Automate operational tasks like handling pull requests and complex rebases
- Enhanced Parser - Adapted parser specifically optimized for Qwen-Coder models
Ensure you have Node.js version 20 or higher installed.
``bash`
curl -qL https://www.npmjs.com/install.sh | sh
`bash`
npm install -g @qwen-code/qwen-code@latest
qwen --version
`bash`
git clone https://github.com/QwenLM/qwen-code.git
cd qwen-code
npm install
npm install -g .
`bashStart Qwen Code
qwen
$3
Control your token usage with configurable session limits to optimize costs and performance.
#### Configure Session Token Limit
Create or edit
.qwen/settings.json in your home directory:`json
{
"sessionTokenLimit": 32000
}
`#### Session Commands
-
/new - Start a new conversation session (recommended for starting fresh)
- /clear - Clear screen and start new session (alias for /new)
- /compress - Compress conversation history to continue within token limits
- /status - Check current token usage and limits> 📝 Note: Session token limit applies to a single conversation, not cumulative API calls.
>
> 💡 Tip: Use
/new (or /clear) to start a fresh conversation. Your current session will be ended and uploaded (preserving your history), and a new session with a fresh ID begins. This ensures your conversation history is never lost or overwritten.$3
Qwen Code supports multiple API providers. You can configure your API key through environment variables or a
.env file in your project root.#### Configuration Methods
1. Environment Variables
`bash
export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="your_api_endpoint"
export OPENAI_MODEL="your_model_choice"
`2. Project
.env File
Create a .env file in your project root:
`env
OPENAI_API_KEY=your_api_key_here
OPENAI_BASE_URL=your_api_endpoint
OPENAI_MODEL=your_model_choice
`#### API Provider Options
> ⚠️ Regional Notice:
>
> - Mainland China: Use Alibaba Cloud Bailian or ModelScope
> - International: Use Alibaba Cloud ModelStudio or OpenRouter
🇨🇳 For Users in Mainland China
Option 1: Alibaba Cloud Bailian (Apply for API Key)
`bash
export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
export OPENAI_MODEL="qwen3-coder-plus"
`Option 2: ModelScope (Free Tier) (Apply for API Key)
- ✅ 2,000 free API calls per day
- ⚠️ Connect your Aliyun account to avoid authentication errors
`bash
export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="https://api-inference.modelscope.cn/v1"
export OPENAI_MODEL="Qwen/Qwen3-Coder-480B-A35B-Instruct"
`
🌍 For International Users
Option 1: Alibaba Cloud ModelStudio (Apply for API Key)
`bash
export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
export OPENAI_MODEL="qwen3-coder-plus"
`Option 2: OpenRouter (Free Tier Available) (Apply for API Key)
`bash
export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="https://openrouter.ai/api/v1"
export OPENAI_MODEL="qwen/qwen3-coder:free"
`Usage Examples
$3
`bash
cd your-project/
qwenArchitecture analysis
> Describe the main pieces of this system's architecture
> What are the key dependencies and how do they interact?
> Find all API endpoints and their authentication methods
`$3
`bash
Refactoring
> Refactor this function to improve readability and performance
> Convert this class to use dependency injection
> Split this large module into smaller, focused componentsCode generation
> Create a REST API endpoint for user management
> Generate unit tests for the authentication module
> Add error handling to all database operations
`$3
`bash
Git automation
> Analyze git commits from the last 7 days, grouped by feature
> Create a changelog from recent commits
> Find all TODO comments and create GitHub issuesFile operations
> Convert all images in this directory to PNG format
> Rename all test files to follow the *.test.ts pattern
> Find and remove all console.log statements
`$3
`bash
Performance analysis
> Identify performance bottlenecks in this React component
> Find all N+1 query problems in the codebaseSecurity audit
> Check for potential SQL injection vulnerabilities
> Find all hardcoded credentials or API keys
`Popular Tasks
$3
`text
> What are the core business logic components?
> What security mechanisms are in place?
> How does the data flow through the system?
> What are the main design patterns used?
> Generate a dependency graph for this module
`$3
`text
> What parts of this module can be optimized?
> Help me refactor this class to follow SOLID principles
> Add proper error handling and logging
> Convert callbacks to async/await pattern
> Implement caching for expensive operations
`$3
`text
> Generate comprehensive JSDoc comments for all public APIs
> Write unit tests with edge cases for this component
> Create API documentation in OpenAPI format
> Add inline comments explaining complex algorithms
> Generate a README for this module
`$3
`text
> Set up a new Express server with authentication
> Create a React component with TypeScript and tests
> Implement a rate limiter middleware
> Add database migrations for new schema
> Configure CI/CD pipeline for this project
`Commands & Shortcuts
$3
-
/help - Display available commands
- /new - Start a new conversation session
- /clear - Clear screen and start new session (same as /new)
- /compress - Compress history to save tokens
- /status - Show current session information
- /exit or /quit - Exit Qwen Code$3
-
Ctrl+C - Cancel current operation
- Ctrl+D - Exit (on empty line)
- Up/Down` - Navigate command history| Agent | Model | Accuracy |
| --------- | ------------------ | -------- |
| Qwen Code | Qwen3-Coder-480A35 | 37.5% |
| Qwen Code | Qwen3-Coder-30BA3B | 31.3% |
See CONTRIBUTING.md to learn how to contribute to the project.
If you encounter issues, check the troubleshooting guide.
This project is based on Google Gemini CLI. We acknowledge and appreciate the excellent work of the Gemini CLI team. Our main contribution focuses on parser-level adaptations to better support Qwen-Coder models.
