repr-cli 0.2.5__tar.gz → 0.2.6__tar.gz

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 (41) hide show
  1. repr_cli-0.2.6/PKG-INFO +370 -0
  2. repr_cli-0.2.6/README.md +313 -0
  3. {repr_cli-0.2.5 → repr_cli-0.2.6}/pyproject.toml +1 -1
  4. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/__init__.py +6 -1
  5. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/cli.py +90 -0
  6. repr_cli-0.2.6/repr/telemetry.py +279 -0
  7. repr_cli-0.2.6/repr_cli.egg-info/PKG-INFO +370 -0
  8. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr_cli.egg-info/SOURCES.txt +1 -0
  9. repr_cli-0.2.5/PKG-INFO +0 -283
  10. repr_cli-0.2.5/README.md +0 -226
  11. repr_cli-0.2.5/repr_cli.egg-info/PKG-INFO +0 -283
  12. {repr_cli-0.2.5 → repr_cli-0.2.6}/LICENSE +0 -0
  13. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/__main__.py +0 -0
  14. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/api.py +0 -0
  15. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/auth.py +0 -0
  16. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/config.py +0 -0
  17. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/discovery.py +0 -0
  18. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/doctor.py +0 -0
  19. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/extractor.py +0 -0
  20. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/hooks.py +0 -0
  21. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/keychain.py +0 -0
  22. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/llm.py +0 -0
  23. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/openai_analysis.py +0 -0
  24. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/privacy.py +0 -0
  25. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/storage.py +0 -0
  26. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/templates.py +0 -0
  27. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/tools.py +0 -0
  28. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr/ui.py +0 -0
  29. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr_cli.egg-info/dependency_links.txt +0 -0
  30. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr_cli.egg-info/entry_points.txt +0 -0
  31. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr_cli.egg-info/requires.txt +0 -0
  32. {repr_cli-0.2.5 → repr_cli-0.2.6}/repr_cli.egg-info/top_level.txt +0 -0
  33. {repr_cli-0.2.5 → repr_cli-0.2.6}/setup.cfg +0 -0
  34. {repr_cli-0.2.5 → repr_cli-0.2.6}/setup.py +0 -0
  35. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_environment_variables.py +0 -0
  36. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_network_sandboxing.py +0 -0
  37. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_privacy_guarantees.py +0 -0
  38. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_profile_export.py +0 -0
  39. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_repo_identity.py +0 -0
  40. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_stories_review.py +0 -0
  41. {repr_cli-0.2.5 → repr_cli-0.2.6}/tests/test_token_budget.py +0 -0
@@ -0,0 +1,370 @@
1
+ Metadata-Version: 2.4
2
+ Name: repr-cli
3
+ Version: 0.2.6
4
+ Summary: A beautiful, privacy-first CLI that analyzes your code repositories and generates a compelling developer profile
5
+ Author-email: Repr <hello@repr.dev>
6
+ License: MIT License
7
+
8
+ Copyright (c) 2024 Repr
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+
28
+ Project-URL: Homepage, https://repr.dev
29
+ Project-URL: Documentation, https://repr.dev/docs
30
+ Project-URL: Repository, https://github.com/repr-app/cli
31
+ Keywords: cli,developer,profile,git,analysis,repr
32
+ Classifier: Development Status :: 4 - Beta
33
+ Classifier: Environment :: Console
34
+ Classifier: Intended Audience :: Developers
35
+ Classifier: Operating System :: OS Independent
36
+ Classifier: Programming Language :: Python :: 3
37
+ Classifier: Programming Language :: Python :: 3.10
38
+ Classifier: Programming Language :: Python :: 3.11
39
+ Classifier: Programming Language :: Python :: 3.12
40
+ Classifier: Topic :: Software Development :: Version Control :: Git
41
+ Requires-Python: >=3.10
42
+ Description-Content-Type: text/markdown
43
+ License-File: LICENSE
44
+ Requires-Dist: typer>=0.9.0
45
+ Requires-Dist: rich>=13.0.0
46
+ Requires-Dist: gitpython>=3.1.0
47
+ Requires-Dist: pygments>=2.16.0
48
+ Requires-Dist: httpx>=0.25.0
49
+ Requires-Dist: openai>=1.0.0
50
+ Requires-Dist: keyring>=24.0.0
51
+ Provides-Extra: dev
52
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
53
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
54
+ Requires-Dist: black>=23.0.0; extra == "dev"
55
+ Requires-Dist: ruff>=0.1.0; extra == "dev"
56
+ Dynamic: license-file
57
+
58
+ # Repr CLI
59
+
60
+ **Stop trying to remember what you did.** Your git history is already a career diary—repr unlocks it.
61
+
62
+ Turn commits into professional narratives for interviews, performance reviews, and career growth. Local-first, privacy-focused, works offline.
63
+
64
+ [![PyPI version](https://img.shields.io/pypi/v/repr-cli.svg)](https://pypi.org/project/repr-cli/)
65
+ [![Python versions](https://img.shields.io/pypi/pyversions/repr-cli.svg)](https://pypi.org/project/repr-cli/)
66
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
67
+ [![Build](https://github.com/repr-app/cli/actions/workflows/build-release.yml/badge.svg)](https://github.com/repr-app/cli/actions/workflows/build-release.yml)
68
+
69
+ ## Real Developers, Real Results
70
+
71
+ > *"I used repr to prep for my Meta interview in 30 minutes. Turned 2 years of commits into 8 STAR-format stories. Nailed every behavioral question."*
72
+ > **— Sarah, Senior Backend Engineer**
73
+
74
+ > *"Our sprint demos went from chaos to polished in 5 minutes. Just run `repr since '2 weeks ago'` and export. Stakeholders love it."*
75
+ > **— Marcus, Engineering Manager**
76
+
77
+ > *"I run repr in a fully air-gapped environment. Zero network calls, 100% local. It's the only tool I trust for this."*
78
+ > **— Alex, Defense Contractor**
79
+
80
+ ## Perfect For
81
+
82
+ - 🎯 **Interview Prep** — Generate STAR-format stories in 30 minutes instead of hours of commit archaeology
83
+ - 📊 **Performance Reviews** — Turn 6 months of work into quantified impact with one command
84
+ - 🚀 **Sprint Demos** — Professional changelogs for stakeholders in seconds
85
+ - 👔 **Weekly 1-on-1s** — Show up with specific examples instead of vague "I worked on stuff"
86
+ - 🔒 **Sensitive Work** — Air-gapped support for defense, healthcare, finance
87
+ - 💼 **Engineering Managers** — Prep for team reviews with per-developer summaries
88
+
89
+ ## Why Repr
90
+
91
+ ### Privacy First (Not an Afterthought)
92
+
93
+ - ✅ **Local-first by default** — Your repos, diffs, and stories stay on your machine in `~/.repr/`
94
+ - ✅ **Air-gapped ready** — Works in fully offline environments (defense, healthcare, finance approved)
95
+ - ✅ **Bring your own model** — Use local LLMs (Ollama) or your own API keys (OpenAI/Anthropic)
96
+ - ✅ **Privacy audit** — See exactly what data (if any) left your machine with `repr privacy audit`
97
+ - ✅ **OS keychain** — API keys never touch config files, stored in system keychain
98
+ - ✅ **Zero telemetry** — No tracking, no analytics, no silent uploads
99
+
100
+ ### Time Savings
101
+
102
+ | Task | Without repr | With repr | Savings |
103
+ |------|--------------|-----------|---------|
104
+ | Interview prep | 3-4 hours digging through commits | 30 minutes | **85% faster** |
105
+ | Performance review | 2 days remembering work | 5 minutes | **99% faster** |
106
+ | Sprint demo prep | 30 min asking "what did we ship?" | 2 minutes | **93% faster** |
107
+ | Weekly 1-on-1 prep | 15 min trying to remember | 30 seconds | **97% faster** |
108
+
109
+ ### vs. Alternatives
110
+
111
+ **vs. Manual brag documents:**
112
+ ❌ Requires discipline to maintain
113
+ ❌ Easy to forget to update
114
+ ❌ No structure or templates
115
+ ✅ repr: Automatic, retroactive, professional templates
116
+
117
+ **vs. GitHub commit history:**
118
+ ❌ Raw commits are cryptic
119
+ ❌ No narrative or context
120
+ ❌ Not interview/resume ready
121
+ ✅ repr: LLM transforms commits into narratives
122
+
123
+ **vs. Trying to remember at review time:**
124
+ ❌ Forget 80% of your work
125
+ ❌ Can't quantify impact
126
+ ❌ Miss your best stories
127
+ ✅ repr: Never forget, always quantified
128
+
129
+ ## Install
130
+
131
+ ### macOS / Linux (Homebrew)
132
+
133
+ ```bash
134
+ brew tap repr-app/tap
135
+ brew install repr
136
+ ```
137
+
138
+ ### Direct Download
139
+
140
+ Grab pre-built binaries for macOS, Linux, and Windows from the [latest release](https://github.com/repr-app/cli/releases/latest).
141
+
142
+ ### Python (pipx)
143
+
144
+ ```bash
145
+ pipx install repr-cli
146
+ ```
147
+
148
+ ## Quickstart (60 seconds)
149
+
150
+ ```bash
151
+ # 1) Scan your repos and set up local config
152
+ repr init ~/code
153
+
154
+ # 2) Generate stories from your recent work (local LLM)
155
+ repr generate --local
156
+
157
+ # 3) See what you created
158
+ repr stories
159
+ repr story view <id>
160
+ ```
161
+
162
+ ## Common workflows
163
+
164
+ For full step-by-step guides, see the [documentation](https://repr.dev/docs/cli/workflows/). Below are the quick happy-path snippets.
165
+
166
+ ### First-time setup
167
+
168
+ ```bash
169
+ repr init ~/code
170
+ repr week
171
+ repr generate --local
172
+ ```
173
+
174
+ [Full guide →](https://repr.dev/docs/cli/workflows/first-time-setup)
175
+
176
+ ### Daily workflow
177
+
178
+ ```bash
179
+ repr hooks install --all
180
+ repr generate --local
181
+ repr review
182
+ ```
183
+
184
+ [Full guide →](https://repr.dev/docs/cli/workflows/daily-workflow)
185
+
186
+ ### Weekly reflection
187
+
188
+ ```bash
189
+ repr week
190
+ repr generate --local
191
+ repr story edit <id>
192
+ repr story feature <id>
193
+ ```
194
+
195
+ [Full guide →](https://repr.dev/docs/cli/workflows/weekly-reflection)
196
+
197
+ ### Interview prep (STAR stories)
198
+
199
+ ```bash
200
+ repr generate --template interview --local
201
+ repr stories
202
+ repr story view <id>
203
+ ```
204
+
205
+ [Full guide →](https://repr.dev/docs/cli/workflows/interview-prep)
206
+
207
+ ### Publish your profile (optional)
208
+
209
+ ```bash
210
+ repr login
211
+ repr push --dry-run
212
+ repr push --all
213
+ repr profile link
214
+ ```
215
+
216
+ [Full guide →](https://repr.dev/docs/cli/workflows/publishing-profile)
217
+
218
+ ### Privacy-focused (local only)
219
+
220
+ ```bash
221
+ repr privacy lock-local
222
+ repr llm configure
223
+ repr llm test
224
+ repr generate --local
225
+ ```
226
+
227
+ [Full guide →](https://repr.dev/docs/cli/workflows/privacy-local-only)
228
+
229
+ ### Multi-device sync
230
+
231
+ ```bash
232
+ repr login
233
+ repr sync
234
+ ```
235
+
236
+ [Full guide →](https://repr.dev/docs/cli/workflows/multi-device-sync)
237
+
238
+ ### Troubleshooting
239
+
240
+ ```bash
241
+ repr status
242
+ repr mode
243
+ repr doctor
244
+ ```
245
+
246
+ [Full guide →](https://repr.dev/docs/cli/workflows/troubleshooting)
247
+
248
+ ## Configure your models
249
+
250
+ Your config lives at `~/.repr/config.json`.
251
+
252
+ ### Local LLM (Ollama/LocalAI)
253
+
254
+ ```bash
255
+ repr llm configure
256
+
257
+ # or set it manually:
258
+ repr config set llm.local_api_url http://localhost:11434/v1
259
+ repr config set llm.local_model llama3.2
260
+ ```
261
+
262
+ ### Bring your own API keys (BYOK)
263
+
264
+ ```bash
265
+ repr llm add openai
266
+ repr llm add anthropic
267
+ repr llm use byok:openai
268
+ ```
269
+
270
+ ### Privacy modes
271
+
272
+ | Mode | Typical command | What happens |
273
+ |------|-----------------|--------------|
274
+ | **Local LLM** | `repr generate --local` | Talks only to your local endpoint. |
275
+ | **BYOK** | `repr llm add <provider>` | Calls your provider directly with your key. |
276
+ | **Cloud** | `repr generate --cloud` | Requires login; you initiate all network calls. |
277
+ | **Offline** | `repr week` / `repr stories` | Pure local operations. |
278
+
279
+ ## Command help
280
+
281
+ For the full flag reference:
282
+
283
+ ```bash
284
+ repr --help
285
+ repr <command> --help
286
+ ```
287
+
288
+ ## Enterprise & Compliance
289
+
290
+ ### Air-Gapped Environments
291
+
292
+ repr works in fully offline, air-gapped environments:
293
+
294
+ ```bash
295
+ # 1. Install repr (transfer binary via USB)
296
+ # 2. Install Ollama and download models offline
297
+ # 3. Lock to local-only permanently
298
+ repr privacy lock-local --permanent
299
+
300
+ # 4. Generate stories (zero network calls)
301
+ repr generate --local
302
+ ```
303
+
304
+ **Use cases:**
305
+ - Defense contractors (classified environments)
306
+ - Healthcare (HIPAA compliance)
307
+ - Finance (SOX/PCI requirements)
308
+ - Stealth startups (pre-launch confidentiality)
309
+
310
+ ### Privacy Audit Trail
311
+
312
+ See exactly what data left your machine:
313
+
314
+ ```bash
315
+ repr privacy audit --days 30
316
+ ```
317
+
318
+ Output:
319
+ ```
320
+ Network Activity Audit (Last 30 days)
321
+
322
+ No network activity detected.
323
+
324
+ Local operations:
325
+ • 143 commits analyzed
326
+ • 23 stories generated
327
+ • 0 cloud syncs
328
+ • 0 API calls to repr.dev
329
+
330
+ Mode: LOCAL_ONLY (locked)
331
+ ```
332
+
333
+ Perfect for security audits and compliance reviews.
334
+
335
+ ### BYOK (Bring Your Own Key)
336
+
337
+ Use your own API keys, stored securely:
338
+
339
+ ```bash
340
+ # Keys stored in OS keychain (never in config files)
341
+ repr llm add openai
342
+ repr llm add anthropic
343
+
344
+ # Calls go directly to your provider, not repr.dev
345
+ repr generate # Uses your OpenAI key
346
+ ```
347
+
348
+ - ✅ Keys stored in macOS Keychain / Windows Credential Manager / Linux Secret Service
349
+ - ✅ repr.dev never sees your keys or data
350
+ - ✅ Full control over costs and models
351
+
352
+ ## Documentation
353
+
354
+ - **[Full Documentation](https://repr.dev/docs)** — Comprehensive guides
355
+ - **[USER_WORKFLOWS.md](docs/USER_WORKFLOWS.md)** — 10 detailed workflow examples
356
+ - **[Privacy Model](https://repr.dev/docs/concepts/privacy-model)** — How data is protected
357
+
358
+ ## License
359
+
360
+ MIT License — see [LICENSE](LICENSE).
361
+
362
+ ---
363
+
364
+ **🚀 Ready to unlock your git history?**
365
+
366
+ ```bash
367
+ brew install repr
368
+ repr init ~/code
369
+ repr generate --local
370
+ ```
@@ -0,0 +1,313 @@
1
+ # Repr CLI
2
+
3
+ **Stop trying to remember what you did.** Your git history is already a career diary—repr unlocks it.
4
+
5
+ Turn commits into professional narratives for interviews, performance reviews, and career growth. Local-first, privacy-focused, works offline.
6
+
7
+ [![PyPI version](https://img.shields.io/pypi/v/repr-cli.svg)](https://pypi.org/project/repr-cli/)
8
+ [![Python versions](https://img.shields.io/pypi/pyversions/repr-cli.svg)](https://pypi.org/project/repr-cli/)
9
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
10
+ [![Build](https://github.com/repr-app/cli/actions/workflows/build-release.yml/badge.svg)](https://github.com/repr-app/cli/actions/workflows/build-release.yml)
11
+
12
+ ## Real Developers, Real Results
13
+
14
+ > *"I used repr to prep for my Meta interview in 30 minutes. Turned 2 years of commits into 8 STAR-format stories. Nailed every behavioral question."*
15
+ > **— Sarah, Senior Backend Engineer**
16
+
17
+ > *"Our sprint demos went from chaos to polished in 5 minutes. Just run `repr since '2 weeks ago'` and export. Stakeholders love it."*
18
+ > **— Marcus, Engineering Manager**
19
+
20
+ > *"I run repr in a fully air-gapped environment. Zero network calls, 100% local. It's the only tool I trust for this."*
21
+ > **— Alex, Defense Contractor**
22
+
23
+ ## Perfect For
24
+
25
+ - 🎯 **Interview Prep** — Generate STAR-format stories in 30 minutes instead of hours of commit archaeology
26
+ - 📊 **Performance Reviews** — Turn 6 months of work into quantified impact with one command
27
+ - 🚀 **Sprint Demos** — Professional changelogs for stakeholders in seconds
28
+ - 👔 **Weekly 1-on-1s** — Show up with specific examples instead of vague "I worked on stuff"
29
+ - 🔒 **Sensitive Work** — Air-gapped support for defense, healthcare, finance
30
+ - 💼 **Engineering Managers** — Prep for team reviews with per-developer summaries
31
+
32
+ ## Why Repr
33
+
34
+ ### Privacy First (Not an Afterthought)
35
+
36
+ - ✅ **Local-first by default** — Your repos, diffs, and stories stay on your machine in `~/.repr/`
37
+ - ✅ **Air-gapped ready** — Works in fully offline environments (defense, healthcare, finance approved)
38
+ - ✅ **Bring your own model** — Use local LLMs (Ollama) or your own API keys (OpenAI/Anthropic)
39
+ - ✅ **Privacy audit** — See exactly what data (if any) left your machine with `repr privacy audit`
40
+ - ✅ **OS keychain** — API keys never touch config files, stored in system keychain
41
+ - ✅ **Zero telemetry** — No tracking, no analytics, no silent uploads
42
+
43
+ ### Time Savings
44
+
45
+ | Task | Without repr | With repr | Savings |
46
+ |------|--------------|-----------|---------|
47
+ | Interview prep | 3-4 hours digging through commits | 30 minutes | **85% faster** |
48
+ | Performance review | 2 days remembering work | 5 minutes | **99% faster** |
49
+ | Sprint demo prep | 30 min asking "what did we ship?" | 2 minutes | **93% faster** |
50
+ | Weekly 1-on-1 prep | 15 min trying to remember | 30 seconds | **97% faster** |
51
+
52
+ ### vs. Alternatives
53
+
54
+ **vs. Manual brag documents:**
55
+ ❌ Requires discipline to maintain
56
+ ❌ Easy to forget to update
57
+ ❌ No structure or templates
58
+ ✅ repr: Automatic, retroactive, professional templates
59
+
60
+ **vs. GitHub commit history:**
61
+ ❌ Raw commits are cryptic
62
+ ❌ No narrative or context
63
+ ❌ Not interview/resume ready
64
+ ✅ repr: LLM transforms commits into narratives
65
+
66
+ **vs. Trying to remember at review time:**
67
+ ❌ Forget 80% of your work
68
+ ❌ Can't quantify impact
69
+ ❌ Miss your best stories
70
+ ✅ repr: Never forget, always quantified
71
+
72
+ ## Install
73
+
74
+ ### macOS / Linux (Homebrew)
75
+
76
+ ```bash
77
+ brew tap repr-app/tap
78
+ brew install repr
79
+ ```
80
+
81
+ ### Direct Download
82
+
83
+ Grab pre-built binaries for macOS, Linux, and Windows from the [latest release](https://github.com/repr-app/cli/releases/latest).
84
+
85
+ ### Python (pipx)
86
+
87
+ ```bash
88
+ pipx install repr-cli
89
+ ```
90
+
91
+ ## Quickstart (60 seconds)
92
+
93
+ ```bash
94
+ # 1) Scan your repos and set up local config
95
+ repr init ~/code
96
+
97
+ # 2) Generate stories from your recent work (local LLM)
98
+ repr generate --local
99
+
100
+ # 3) See what you created
101
+ repr stories
102
+ repr story view <id>
103
+ ```
104
+
105
+ ## Common workflows
106
+
107
+ For full step-by-step guides, see the [documentation](https://repr.dev/docs/cli/workflows/). Below are the quick happy-path snippets.
108
+
109
+ ### First-time setup
110
+
111
+ ```bash
112
+ repr init ~/code
113
+ repr week
114
+ repr generate --local
115
+ ```
116
+
117
+ [Full guide →](https://repr.dev/docs/cli/workflows/first-time-setup)
118
+
119
+ ### Daily workflow
120
+
121
+ ```bash
122
+ repr hooks install --all
123
+ repr generate --local
124
+ repr review
125
+ ```
126
+
127
+ [Full guide →](https://repr.dev/docs/cli/workflows/daily-workflow)
128
+
129
+ ### Weekly reflection
130
+
131
+ ```bash
132
+ repr week
133
+ repr generate --local
134
+ repr story edit <id>
135
+ repr story feature <id>
136
+ ```
137
+
138
+ [Full guide →](https://repr.dev/docs/cli/workflows/weekly-reflection)
139
+
140
+ ### Interview prep (STAR stories)
141
+
142
+ ```bash
143
+ repr generate --template interview --local
144
+ repr stories
145
+ repr story view <id>
146
+ ```
147
+
148
+ [Full guide →](https://repr.dev/docs/cli/workflows/interview-prep)
149
+
150
+ ### Publish your profile (optional)
151
+
152
+ ```bash
153
+ repr login
154
+ repr push --dry-run
155
+ repr push --all
156
+ repr profile link
157
+ ```
158
+
159
+ [Full guide →](https://repr.dev/docs/cli/workflows/publishing-profile)
160
+
161
+ ### Privacy-focused (local only)
162
+
163
+ ```bash
164
+ repr privacy lock-local
165
+ repr llm configure
166
+ repr llm test
167
+ repr generate --local
168
+ ```
169
+
170
+ [Full guide →](https://repr.dev/docs/cli/workflows/privacy-local-only)
171
+
172
+ ### Multi-device sync
173
+
174
+ ```bash
175
+ repr login
176
+ repr sync
177
+ ```
178
+
179
+ [Full guide →](https://repr.dev/docs/cli/workflows/multi-device-sync)
180
+
181
+ ### Troubleshooting
182
+
183
+ ```bash
184
+ repr status
185
+ repr mode
186
+ repr doctor
187
+ ```
188
+
189
+ [Full guide →](https://repr.dev/docs/cli/workflows/troubleshooting)
190
+
191
+ ## Configure your models
192
+
193
+ Your config lives at `~/.repr/config.json`.
194
+
195
+ ### Local LLM (Ollama/LocalAI)
196
+
197
+ ```bash
198
+ repr llm configure
199
+
200
+ # or set it manually:
201
+ repr config set llm.local_api_url http://localhost:11434/v1
202
+ repr config set llm.local_model llama3.2
203
+ ```
204
+
205
+ ### Bring your own API keys (BYOK)
206
+
207
+ ```bash
208
+ repr llm add openai
209
+ repr llm add anthropic
210
+ repr llm use byok:openai
211
+ ```
212
+
213
+ ### Privacy modes
214
+
215
+ | Mode | Typical command | What happens |
216
+ |------|-----------------|--------------|
217
+ | **Local LLM** | `repr generate --local` | Talks only to your local endpoint. |
218
+ | **BYOK** | `repr llm add <provider>` | Calls your provider directly with your key. |
219
+ | **Cloud** | `repr generate --cloud` | Requires login; you initiate all network calls. |
220
+ | **Offline** | `repr week` / `repr stories` | Pure local operations. |
221
+
222
+ ## Command help
223
+
224
+ For the full flag reference:
225
+
226
+ ```bash
227
+ repr --help
228
+ repr <command> --help
229
+ ```
230
+
231
+ ## Enterprise & Compliance
232
+
233
+ ### Air-Gapped Environments
234
+
235
+ repr works in fully offline, air-gapped environments:
236
+
237
+ ```bash
238
+ # 1. Install repr (transfer binary via USB)
239
+ # 2. Install Ollama and download models offline
240
+ # 3. Lock to local-only permanently
241
+ repr privacy lock-local --permanent
242
+
243
+ # 4. Generate stories (zero network calls)
244
+ repr generate --local
245
+ ```
246
+
247
+ **Use cases:**
248
+ - Defense contractors (classified environments)
249
+ - Healthcare (HIPAA compliance)
250
+ - Finance (SOX/PCI requirements)
251
+ - Stealth startups (pre-launch confidentiality)
252
+
253
+ ### Privacy Audit Trail
254
+
255
+ See exactly what data left your machine:
256
+
257
+ ```bash
258
+ repr privacy audit --days 30
259
+ ```
260
+
261
+ Output:
262
+ ```
263
+ Network Activity Audit (Last 30 days)
264
+
265
+ No network activity detected.
266
+
267
+ Local operations:
268
+ • 143 commits analyzed
269
+ • 23 stories generated
270
+ • 0 cloud syncs
271
+ • 0 API calls to repr.dev
272
+
273
+ Mode: LOCAL_ONLY (locked)
274
+ ```
275
+
276
+ Perfect for security audits and compliance reviews.
277
+
278
+ ### BYOK (Bring Your Own Key)
279
+
280
+ Use your own API keys, stored securely:
281
+
282
+ ```bash
283
+ # Keys stored in OS keychain (never in config files)
284
+ repr llm add openai
285
+ repr llm add anthropic
286
+
287
+ # Calls go directly to your provider, not repr.dev
288
+ repr generate # Uses your OpenAI key
289
+ ```
290
+
291
+ - ✅ Keys stored in macOS Keychain / Windows Credential Manager / Linux Secret Service
292
+ - ✅ repr.dev never sees your keys or data
293
+ - ✅ Full control over costs and models
294
+
295
+ ## Documentation
296
+
297
+ - **[Full Documentation](https://repr.dev/docs)** — Comprehensive guides
298
+ - **[USER_WORKFLOWS.md](docs/USER_WORKFLOWS.md)** — 10 detailed workflow examples
299
+ - **[Privacy Model](https://repr.dev/docs/concepts/privacy-model)** — How data is protected
300
+
301
+ ## License
302
+
303
+ MIT License — see [LICENSE](LICENSE).
304
+
305
+ ---
306
+
307
+ **🚀 Ready to unlock your git history?**
308
+
309
+ ```bash
310
+ brew install repr
311
+ repr init ~/code
312
+ repr generate --local
313
+ ```
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "repr-cli"
7
- version = "0.2.5"
7
+ version = "0.2.6"
8
8
  description = "A beautiful, privacy-first CLI that analyzes your code repositories and generates a compelling developer profile"
9
9
  readme = "README.md"
10
10
  license = {file = "LICENSE"}
@@ -5,6 +5,11 @@ Analyzes your local git repositories and generates a compelling
5
5
  developer profile without ever sending your source code to the cloud.
6
6
  """
7
7
 
8
- __version__ = "0.2.0"
8
+ try:
9
+ from importlib.metadata import version
10
+ __version__ = version("repr-cli")
11
+ except Exception:
12
+ # Fallback for PyInstaller builds where metadata isn't available
13
+ __version__ = "0.2.6"
9
14
  __author__ = "Repr"
10
15
  __email__ = "hello@repr.dev"