@quikcommit/cli 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +242 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,242 @@
1
+ # @quikcommit/cli
2
+
3
+ AI-powered conventional commit messages. Stage your changes, run `qc`, get a perfect commit.
4
+
5
+ ```bash
6
+ git add .
7
+ qc
8
+ # → feat(auth): add OAuth2 login with GitHub and Google providers
9
+ ```
10
+
11
+ [![npm version](https://img.shields.io/npm/v/@quikcommit/cli)](https://www.npmjs.com/package/@quikcommit/cli)
12
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
13
+
14
+ ---
15
+
16
+ ## Install
17
+
18
+ ```bash
19
+ npm install -g @quikcommit/cli
20
+ # or
21
+ bun add -g @quikcommit/cli
22
+ ```
23
+
24
+ **Pre-built binaries** (no Node/Bun required) — download from [GitHub Releases](https://github.com/whrit/quikcommit/releases/latest):
25
+
26
+ | Platform | File |
27
+ |----------|------|
28
+ | macOS Apple Silicon | `qc-darwin-arm64` |
29
+ | macOS Intel | `qc-darwin-x64` |
30
+ | Linux x64 | `qc-linux-x64` |
31
+ | Linux ARM64 | `qc-linux-arm64` |
32
+
33
+ ```bash
34
+ # Example: macOS Apple Silicon
35
+ curl -fsSL https://github.com/whrit/quikcommit/releases/latest/download/qc-darwin-arm64 \
36
+ -o /usr/local/bin/qc && chmod +x /usr/local/bin/qc
37
+ ```
38
+
39
+ ---
40
+
41
+ ## Quick Start
42
+
43
+ ```bash
44
+ # 1. Sign in (opens browser — GitHub or Google)
45
+ qc login
46
+
47
+ # 2. Stage your changes
48
+ git add .
49
+
50
+ # 3. Generate + commit
51
+ qc
52
+
53
+ # That's it.
54
+ ```
55
+
56
+ ---
57
+
58
+ ## Usage
59
+
60
+ ```
61
+ qc [command] [options]
62
+ ```
63
+
64
+ ### Generate a commit (default)
65
+
66
+ ```bash
67
+ qc # generate + commit
68
+ qc --message-only # preview message, don't commit
69
+ qc --push # generate, commit, and push
70
+ qc --model llama-3.3-70b # use a specific model
71
+ ```
72
+
73
+ ### Auth & status
74
+
75
+ ```bash
76
+ qc login # sign in via browser
77
+ qc logout # clear credentials
78
+ qc status # show plan, usage, auth
79
+ ```
80
+
81
+ ### PR descriptions *(Pro+)*
82
+
83
+ ```bash
84
+ qc pr # generate PR description from branch commits
85
+ qc pr --base develop # compare against a different base branch
86
+ qc pr --create # generate + open PR with gh CLI
87
+ ```
88
+
89
+ ### Changelog *(Pro+)*
90
+
91
+ ```bash
92
+ qc changelog # generate since last tag
93
+ qc changelog --from v1.0.0 --to HEAD # specific range
94
+ qc changelog --write --version 1.1.0 # write to CHANGELOG.md
95
+ ```
96
+
97
+ ### Git hook
98
+
99
+ ```bash
100
+ qc init # install prepare-commit-msg hook
101
+ qc init --uninstall # remove hook
102
+ ```
103
+
104
+ After `qc init`, every `git commit` auto-generates a message for you to review before saving.
105
+
106
+ ### Team *(Team+ plan)*
107
+
108
+ ```bash
109
+ qc team info # show team and members
110
+ qc team rules # view team commit rules
111
+ qc team rules --push # push local commitlint config to team
112
+ qc team invite alice@corp.com # invite a teammate
113
+ ```
114
+
115
+ ### Configuration
116
+
117
+ ```bash
118
+ qc config # show current config
119
+ qc config set model qwen25-coder-32b
120
+ qc config set api_url https://api.quikcommit.dev
121
+ qc config reset # reset to defaults
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Plans
127
+
128
+ | Plan | Commits/mo | PR descriptions | Changelog | Team rules |
129
+ |------|-----------|----------------|-----------|------------|
130
+ | **Free** | 50 | — | — | — |
131
+ | **Pro** | 500 | ✓ | ✓ | — |
132
+ | **Team** | 2,000 | ✓ | ✓ | ✓ |
133
+ | **Scale** | Unlimited | ✓ | ✓ | ✓ |
134
+
135
+ ```bash
136
+ qc upgrade # open billing page
137
+ ```
138
+
139
+ ---
140
+
141
+ ## Models
142
+
143
+ | Model ID | Description | Min Plan |
144
+ |----------|-------------|----------|
145
+ | `qwen3-30b` | Fast, good quality | Free |
146
+ | `qwen25-coder-32b` | Best code understanding | Pro |
147
+ | `deepseek-r1-32b` | Reasoning model | Pro |
148
+ | `llama-3.3-70b` | Large, strong understanding | Pro |
149
+
150
+ ```bash
151
+ qc --model qwen25-coder-32b # one-time override
152
+ qc config set model qwen25-coder-32b # set permanently
153
+ ```
154
+
155
+ ---
156
+
157
+ ## Local / Self-Hosted (no subscription needed)
158
+
159
+ ```bash
160
+ qc --use-ollama # Ollama on localhost:11434 (codellama by default)
161
+ qc --use-lmstudio # LM Studio on localhost:1234
162
+ qc --use-openrouter # OpenRouter (set api_url + credentials)
163
+ qc --use-cloudflare # Your own Cloudflare Worker
164
+ ```
165
+
166
+ If no API key is stored but a local provider is configured, `qc` auto-falls back to it silently.
167
+
168
+ ---
169
+
170
+ ## Monorepo Support
171
+
172
+ In a pnpm / npm / yarn workspace, `qc` detects which packages have staged changes and sets the commit scope automatically:
173
+
174
+ ```
175
+ packages/api/src/auth.ts staged → scope: api
176
+ packages/ui/src/button.tsx staged → scope: ui
177
+ ```
178
+
179
+ ---
180
+
181
+ ## Excluding Files
182
+
183
+ 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:
184
+
185
+ ```
186
+ # .qcignore
187
+ pnpm-lock.yaml
188
+ dist/
189
+ *.min.js
190
+ ```
191
+
192
+ Lock files and build output are excluded by default.
193
+
194
+ ---
195
+
196
+ ## Environment Variables
197
+
198
+ | Variable | Description |
199
+ |----------|-------------|
200
+ | `QC_API_KEY` | Override stored API key (useful in CI) |
201
+
202
+ ```bash
203
+ QC_API_KEY=$QC_API_KEY qc --message-only
204
+ ```
205
+
206
+ ---
207
+
208
+ ## Configuration File
209
+
210
+ Stored at `~/.config/qc/config.json`:
211
+
212
+ ```jsonc
213
+ {
214
+ "model": "qwen25-coder-32b",
215
+ "apiUrl": "https://api.quikcommit.dev",
216
+ "provider": "saas",
217
+ "excludes": ["*.lock"],
218
+ "rules": {
219
+ "scopes": ["api", "ui", "auth"],
220
+ "types": ["feat", "fix", "docs", "chore"],
221
+ "maxHeaderLength": 72
222
+ }
223
+ }
224
+ ```
225
+
226
+ Credentials are stored separately at `~/.config/qc/credentials` (mode 600).
227
+
228
+ ---
229
+
230
+ ## Links
231
+
232
+ - [GitHub](https://github.com/whrit/quikcommit)
233
+ - [Full Documentation](https://github.com/whrit/quikcommit/tree/main/docs)
234
+ - [Getting Started](https://github.com/whrit/quikcommit/blob/main/docs/getting-started.md)
235
+ - [CLI Reference](https://github.com/whrit/quikcommit/blob/main/docs/cli-reference.md)
236
+ - [Local Providers](https://github.com/whrit/quikcommit/blob/main/docs/local-providers.md)
237
+
238
+ ---
239
+
240
+ ## License
241
+
242
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quikcommit/cli",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "AI-powered conventional commit messages",
5
5
  "bin": {
6
6
  "qc": "./dist/index.js"