@quikcommit/cli
v4.2.0
Published
AI-powered conventional commit messages
Readme
@quikcommit/cli
AI-powered conventional commit messages. Stage your changes, run qc, get a perfect commit.
git add .
qc
# → feat(auth): add OAuth2 login with GitHub and Google providersInstall
npm install -g @quikcommit/cli
# or
bun add -g @quikcommit/cliPre-built binaries (no Node/Bun required) — download from GitHub Releases:
| Platform | File |
|----------|------|
| macOS Apple Silicon | qc-darwin-arm64 |
| macOS Intel | qc-darwin-x64 |
| Linux x64 | qc-linux-x64 |
| Linux ARM64 | qc-linux-arm64 |
# Example: macOS Apple Silicon
curl -fsSL https://github.com/Quikcommit-Internal/public/releases/latest/download/qc-darwin-arm64 \
-o /usr/local/bin/qc && chmod +x /usr/local/bin/qcQuick Start
# 1. Sign in (opens browser — GitHub or Google)
qc login
# 2. Stage your changes
git add .
# 3. Generate + commit
qc
# That's it.Usage
qc [command] [options]Generate a commit (default)
qc # generate + commit
qc --message-only # preview message, don't commit
qc --push # generate, commit, and push
qc --model llama-3.3-70b # use a specific modelAuth & status
qc login # sign in via browser
qc logout # clear credentials
qc status # show plan, usage, authPR descriptions (Pro+)
qc pr # generate PR description from branch commits
qc pr --base develop # compare against a different base branch
qc pr --create # generate + open PR with gh CLIChangelog (Pro+)
qc changelog # generate since last tag
qc changelog --from v1.0.0 --to HEAD # specific range
qc changelog --write --version 1.1.0 # write to CHANGELOG.mdGit hook
qc init # install prepare-commit-msg hook
qc init --uninstall # remove hookAfter qc init, every git commit auto-generates a message for you to review before saving.
Team (Team+ plan)
qc team info # show team and members
qc team rules # view team commit rules
qc team rules --push # push local commitlint config to team
qc team invite [email protected] # invite a teammateConfiguration
qc config # show current config
qc config set model qwen25-coder-32b
qc config set api_url https://api.quikcommit.dev
qc config reset # reset to defaultsPlans
| Plan | Commits/mo | PR descriptions | Changelog | Team rules | |------|-----------|----------------|-----------|------------| | Free | 50 | — | — | — | | Pro | 500 | ✓ | ✓ | — | | Team | 2,000 | ✓ | ✓ | ✓ | | Scale | Unlimited | ✓ | ✓ | ✓ |
qc upgrade # open billing pageModels
| Model ID | Description | Min Plan |
|----------|-------------|----------|
| qwen3-30b | Fast, good quality | Free |
| qwen25-coder-32b | Best code understanding | Pro |
| deepseek-r1-32b | Reasoning model | Pro |
| llama-3.3-70b | Large, strong understanding | Pro |
qc --model qwen25-coder-32b # one-time override
qc config set model qwen25-coder-32b # set permanentlyLocal / Self-Hosted (no subscription needed)
qc --use-ollama # Ollama on localhost:11434 (codellama by default)
qc --use-lmstudio # LM Studio on localhost:1234
qc --use-openrouter # OpenRouter (set api_url + credentials)
qc --use-cloudflare # Your own Cloudflare WorkerIf no API key is stored but a local provider is configured, qc auto-falls back to it silently.
Monorepo Support
In a pnpm / npm / yarn workspace, qc detects which packages have staged changes and sets the commit scope automatically:
packages/api/src/auth.ts staged → scope: api
packages/ui/src/button.tsx staged → scope: uiExcluding Files
Create a .qcignore in your repo root (same syntax as .gitignore) to prevent certain files from being included in the diff sent to the AI:
# .qcignore
pnpm-lock.yaml
dist/
*.min.jsLock files and build output are excluded by default.
Environment Variables
| Variable | Description |
|----------|-------------|
| QC_API_KEY | Override stored API key (useful in CI) |
QC_API_KEY=$QC_API_KEY qc --message-onlyConfiguration File
Stored at ~/.config/qc/config.json:
{
"model": "qwen25-coder-32b",
"apiUrl": "https://api.quikcommit.dev",
"provider": "saas",
"excludes": ["*.lock"],
"rules": {
"scopes": ["api", "ui", "auth"],
"types": ["feat", "fix", "docs", "chore"],
"maxHeaderLength": 72
}
}Credentials are stored separately at ~/.config/qc/credentials (mode 600).
Links
License
MIT
