repr-cli 0.2.16__py3-none-any.whl → 0.2.18__py3-none-any.whl
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.
- repr/__init__.py +1 -1
- repr/api.py +363 -62
- repr/auth.py +47 -38
- repr/change_synthesis.py +478 -0
- repr/cli.py +4306 -364
- repr/config.py +119 -11
- repr/configure.py +889 -0
- repr/cron.py +419 -0
- repr/dashboard/__init__.py +9 -0
- repr/dashboard/build.py +126 -0
- repr/dashboard/dist/assets/index-B-aCjaCw.js +384 -0
- repr/dashboard/dist/assets/index-BYFVbEev.css +1 -0
- repr/dashboard/dist/assets/index-BrrhyJFO.css +1 -0
- repr/dashboard/dist/assets/index-C7Gzxc4f.js +384 -0
- repr/dashboard/dist/assets/index-CQdMXo6g.js +391 -0
- repr/dashboard/dist/assets/index-CcEg74ts.js +270 -0
- repr/dashboard/dist/assets/index-Cerc-iA_.js +377 -0
- repr/dashboard/dist/assets/index-CjVcBW2L.css +1 -0
- repr/dashboard/dist/assets/index-Cs8ofFGd.js +384 -0
- repr/dashboard/dist/assets/index-Dfl3mR5E.js +377 -0
- repr/dashboard/dist/assets/index-DwN0SeMc.css +1 -0
- repr/dashboard/dist/assets/index-YFch_e0S.js +384 -0
- repr/dashboard/dist/favicon.svg +4 -0
- repr/dashboard/dist/index.html +14 -0
- repr/dashboard/manager.py +234 -0
- repr/dashboard/server.py +1489 -0
- repr/db.py +980 -0
- repr/hooks.py +3 -2
- repr/loaders/__init__.py +22 -0
- repr/loaders/base.py +156 -0
- repr/loaders/claude_code.py +287 -0
- repr/loaders/clawdbot.py +313 -0
- repr/loaders/gemini_antigravity.py +381 -0
- repr/mcp_server.py +1196 -0
- repr/models.py +503 -0
- repr/openai_analysis.py +25 -0
- repr/session_extractor.py +481 -0
- repr/storage.py +328 -0
- repr/story_synthesis.py +1296 -0
- repr/templates.py +68 -4
- repr/timeline.py +710 -0
- repr/tools.py +17 -8
- {repr_cli-0.2.16.dist-info → repr_cli-0.2.18.dist-info}/METADATA +48 -10
- repr_cli-0.2.18.dist-info/RECORD +58 -0
- {repr_cli-0.2.16.dist-info → repr_cli-0.2.18.dist-info}/WHEEL +1 -1
- {repr_cli-0.2.16.dist-info → repr_cli-0.2.18.dist-info}/entry_points.txt +1 -0
- repr_cli-0.2.16.dist-info/RECORD +0 -26
- {repr_cli-0.2.16.dist-info → repr_cli-0.2.18.dist-info}/licenses/LICENSE +0 -0
- {repr_cli-0.2.16.dist-info → repr_cli-0.2.18.dist-info}/top_level.txt +0 -0
repr/tools.py
CHANGED
|
@@ -502,15 +502,16 @@ def get_commits_by_shas(
|
|
|
502
502
|
except Exception:
|
|
503
503
|
# Skip invalid SHAs
|
|
504
504
|
continue
|
|
505
|
-
|
|
505
|
+
|
|
506
506
|
# Skip merge commits (commits with more than one parent)
|
|
507
507
|
if len(commit.parents) > 1:
|
|
508
508
|
continue
|
|
509
|
-
|
|
509
|
+
|
|
510
510
|
# Get files changed with diffs
|
|
511
511
|
files = []
|
|
512
512
|
parent = commit.parents[0] if commit.parents else None
|
|
513
|
-
|
|
513
|
+
file_stats = commit.stats.files # Per-file stats {path: {insertions, deletions, lines}}
|
|
514
|
+
|
|
514
515
|
try:
|
|
515
516
|
# Get diff for this commit
|
|
516
517
|
if parent:
|
|
@@ -518,12 +519,12 @@ def get_commits_by_shas(
|
|
|
518
519
|
else:
|
|
519
520
|
# Initial commit - show all files as additions
|
|
520
521
|
diffs = commit.diff(None, create_patch=True)
|
|
521
|
-
|
|
522
|
+
|
|
522
523
|
for diff_item in list(diffs)[:max_files_per_commit]:
|
|
523
524
|
file_path = diff_item.b_path or diff_item.a_path
|
|
524
525
|
if not file_path:
|
|
525
526
|
continue
|
|
526
|
-
|
|
527
|
+
|
|
527
528
|
# Get the diff text
|
|
528
529
|
diff_text = ""
|
|
529
530
|
if diff_item.diff:
|
|
@@ -531,29 +532,37 @@ def get_commits_by_shas(
|
|
|
531
532
|
diff_text = diff_item.diff.decode('utf-8', errors='ignore')
|
|
532
533
|
except:
|
|
533
534
|
diff_text = str(diff_item.diff)
|
|
534
|
-
|
|
535
|
+
|
|
535
536
|
# Truncate diff if too long
|
|
536
537
|
diff_lines = diff_text.split('\n')
|
|
537
538
|
if len(diff_lines) > max_diff_lines_per_file:
|
|
538
539
|
diff_text = '\n'.join(diff_lines[:max_diff_lines_per_file])
|
|
539
540
|
diff_text += f"\n... ({len(diff_lines) - max_diff_lines_per_file} more lines)"
|
|
540
|
-
|
|
541
|
+
|
|
542
|
+
# Get per-file insertions/deletions
|
|
543
|
+
stats = file_stats.get(file_path, {})
|
|
544
|
+
|
|
541
545
|
files.append({
|
|
542
546
|
"path": file_path,
|
|
543
547
|
"change_type": diff_item.change_type, # A=added, D=deleted, M=modified, R=renamed
|
|
544
548
|
"diff": diff_text,
|
|
549
|
+
"insertions": stats.get("insertions", 0),
|
|
550
|
+
"deletions": stats.get("deletions", 0),
|
|
545
551
|
})
|
|
546
552
|
except (GitCommandError, Exception):
|
|
547
553
|
# If we can't get diff, just include file list
|
|
548
554
|
for filename in commit.stats.files.keys():
|
|
549
555
|
if len(files) >= max_files_per_commit:
|
|
550
556
|
break
|
|
557
|
+
stats = file_stats.get(filename, {})
|
|
551
558
|
files.append({
|
|
552
559
|
"path": filename,
|
|
553
560
|
"change_type": "M",
|
|
554
561
|
"diff": "",
|
|
562
|
+
"insertions": stats.get("insertions", 0),
|
|
563
|
+
"deletions": stats.get("deletions", 0),
|
|
555
564
|
})
|
|
556
|
-
|
|
565
|
+
|
|
557
566
|
commits.append({
|
|
558
567
|
"sha": commit.hexsha[:8],
|
|
559
568
|
"full_sha": commit.hexsha,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: repr-cli
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.18
|
|
4
4
|
Summary: A beautiful, privacy-first CLI that analyzes your code repositories and generates a compelling developer profile
|
|
5
5
|
Author-email: Repr <hello@repr.dev>
|
|
6
6
|
License: MIT License
|
|
@@ -49,6 +49,9 @@ Requires-Dist: httpx>=0.25.0
|
|
|
49
49
|
Requires-Dist: openai>=1.0.0
|
|
50
50
|
Requires-Dist: keyring>=24.0.0
|
|
51
51
|
Requires-Dist: pydantic>=2.0.0
|
|
52
|
+
Requires-Dist: fastmcp<3,>=2.0.0
|
|
53
|
+
Requires-Dist: jinja2>=3.1.0
|
|
54
|
+
Requires-Dist: simple-term-menu>=1.6.0
|
|
52
55
|
Provides-Extra: dev
|
|
53
56
|
Requires-Dist: pytest>=7.0.0; extra == "dev"
|
|
54
57
|
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
|
|
@@ -56,17 +59,27 @@ Requires-Dist: black>=23.0.0; extra == "dev"
|
|
|
56
59
|
Requires-Dist: ruff>=0.1.0; extra == "dev"
|
|
57
60
|
Dynamic: license-file
|
|
58
61
|
|
|
62
|
+
<p align="center">
|
|
63
|
+
<strong>Official $REPR Links:</strong> <a href="https://bags.fm/5WsMLk8Zb8PWTXoHev7Ry6QDHNC2KSpY5x8R13GGBAGS">Bags.fm</a> · <a href="https://axiom.trade/t/5WsMLk8Zb8PWTXoHev7Ry6QDHNC2KSpY5x8R13GGBAGS">Axiom</a> · <a href="https://jup.ag/swap?sell=So11111111111111111111111111111111111111112&buy=5WsMLk8Zb8PWTXoHev7Ry6QDHNC2KSpY5x8R13GGBAGS">Jupiter</a> · <a href="https://photon-sol.tinyastro.io/en/lp/5WsMLk8Zb8PWTXoHev7Ry6QDHNC2KSpY5x8R13GGBAGS">Photon</a>
|
|
64
|
+
<br>
|
|
65
|
+
<strong>Official CA:</strong> <code>5WsMLk8Zb8PWTXoHev7Ry6QDHNC2KSpY5x8R13GGBAGS</code> (on Solana)
|
|
66
|
+
</p>
|
|
67
|
+
|
|
68
|
+
|
|
59
69
|
# Repr CLI
|
|
60
70
|
|
|
61
|
-
**
|
|
71
|
+
**The developer context layer.**
|
|
62
72
|
|
|
63
|
-
|
|
73
|
+
Your git history is rich with context about what you build, how you think, and how you grow. repr captures that context and makes it available everywhere — to AI agents, to applications, to you.
|
|
74
|
+
|
|
75
|
+
**Use it however you need:** Interview prep, performance reviews, social content, AI agent context — these are all *lenses* into the same underlying data. Local-first, privacy-focused, works offline.
|
|
64
76
|
|
|
65
77
|
[](https://pypi.org/project/repr-cli/)
|
|
66
78
|
[](https://pypi.org/project/repr-cli/)
|
|
67
79
|
[](https://opensource.org/licenses/MIT)
|
|
68
80
|
[](https://github.com/repr-app/cli/actions/workflows/build-release.yml)
|
|
69
81
|
|
|
82
|
+
|
|
70
83
|
## Real Developers, Real Results
|
|
71
84
|
|
|
72
85
|
> *"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."*
|
|
@@ -78,17 +91,31 @@ Turn commits into professional narratives for interviews, performance reviews, a
|
|
|
78
91
|
> *"I run repr in a fully air-gapped environment. Zero network calls, 100% local. It's the only tool I trust for this."*
|
|
79
92
|
> **— Alex, Defense Contractor**
|
|
80
93
|
|
|
81
|
-
##
|
|
94
|
+
## Lenses (Ways to Use Your Context)
|
|
82
95
|
|
|
83
|
-
-
|
|
84
|
-
-
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
88
|
-
-
|
|
96
|
+
- 🤖 **AI Agent Context** — MCP server lets Claude Code, Cursor, and other agents know your work history
|
|
97
|
+
- 🎯 **Interview Prep** — Generate STAR-format stories in 30 minutes (interview lens)
|
|
98
|
+
- 📊 **Performance Reviews** — Turn 6 months of work into quantified impact (resume lens)
|
|
99
|
+
- 🚀 **Sprint Demos** — Professional changelogs for stakeholders (changelog lens)
|
|
100
|
+
- 📱 **Build in Public** — Social posts from your actual work (content lens)
|
|
101
|
+
- 🔒 **Proof of Work** — Verified credentials from real commits (proof lens)
|
|
102
|
+
- 💼 **Engineering Managers** — Team summaries and sprint recaps
|
|
89
103
|
|
|
90
104
|
## Why Repr
|
|
91
105
|
|
|
106
|
+
### Context That Compounds
|
|
107
|
+
|
|
108
|
+
The longer you use repr, the richer your context becomes. By the time you need a resume, interview prep, or content — you have months of structured history ready to use. No other tool builds this persistent layer.
|
|
109
|
+
|
|
110
|
+
### AI-Native
|
|
111
|
+
|
|
112
|
+
repr exposes your context via MCP (Model Context Protocol), so AI agents like Claude Code, Cursor, and Clawdbot can know your work history and patterns. Your coding assistant finally understands *you*.
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
# Start MCP server for AI agents
|
|
116
|
+
repr mcp serve
|
|
117
|
+
```
|
|
118
|
+
|
|
92
119
|
### Privacy First (Not an Afterthought)
|
|
93
120
|
|
|
94
121
|
- ✅ **Local-first by default** — Your repos, diffs, and stories stay on your machine in `~/.repr/`
|
|
@@ -98,6 +125,16 @@ Turn commits into professional narratives for interviews, performance reviews, a
|
|
|
98
125
|
- ✅ **OS keychain** — API keys never touch config files, stored in system keychain
|
|
99
126
|
- ✅ **Zero telemetry** — No tracking, no analytics, no silent uploads
|
|
100
127
|
|
|
128
|
+
### Story Engine (New in v0.2.16)
|
|
129
|
+
|
|
130
|
+
`repr` now synthesizes **Stories** from your commits — coherent narratives that capture WHY and HOW you built something, not just WHAT changed.
|
|
131
|
+
|
|
132
|
+
- **Generate**: Create stories from your commits with `repr generate`
|
|
133
|
+
- **Dashboard**: Explore your work in a premium dark-mode UI with `repr dashboard` (or `rp dashboard`)
|
|
134
|
+
- **MCP Integration**: AI agents can answer questions about your implementation details
|
|
135
|
+
|
|
136
|
+
[Read the Story Engine Documentation →](docs/STORY_ENGINE.md)
|
|
137
|
+
|
|
101
138
|
### Time Savings
|
|
102
139
|
|
|
103
140
|
| Task | Without repr | With repr | Savings |
|
|
@@ -385,3 +422,4 @@ brew install repr
|
|
|
385
422
|
repr init ~/code
|
|
386
423
|
repr generate --local
|
|
387
424
|
```
|
|
425
|
+
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
repr/__init__.py,sha256=_YVX4f3_NtxGhDquXGSiaxkfAG2BdWZlB4MbobLsO74,447
|
|
2
|
+
repr/__main__.py,sha256=N7amYwdGB3yzk2ZJJbtH2hhESNkDuhDL11dDEm5Kl60,166
|
|
3
|
+
repr/api.py,sha256=rJRn_4xZXipdBFMrsZbQPWfZKfPLWJpTI0uYUyvjFhw,22814
|
|
4
|
+
repr/auth.py,sha256=TpqwqwZ3tAEolcSYu-zD8oHhzfwHALkauPP1xg5VTiY,12208
|
|
5
|
+
repr/change_synthesis.py,sha256=z7GmCeEHQFlnqLtKDGDvlM7p9MAWl_ByeIJstEVAhbU,15223
|
|
6
|
+
repr/cli.py,sha256=OFYq2oAqobX8uV14Pfz0k8upyoPVUALzDcoOrpueIoQ,225197
|
|
7
|
+
repr/config.py,sha256=S69hdgFdvcHoIO2zihuvsSAQf2Gp41JtC5GGlE4Cy78,34233
|
|
8
|
+
repr/configure.py,sha256=GnwjOC64F0uDD90IjA6LJNev8FlHHAHARuSLwBqI6k0,26860
|
|
9
|
+
repr/cron.py,sha256=Hvo9ssVmGn09dLIHKWqzorKkW7eXdLQnQlBzagTX2Ko,11402
|
|
10
|
+
repr/db.py,sha256=V5UIeCC-AdfxltCmHwXmNXWjJL9htvaKmsiga1OtrLc,37295
|
|
11
|
+
repr/discovery.py,sha256=2RYmJleqV7TbxIMMYP2izkEBUeKH7U1F-U4KAUlUNww,14816
|
|
12
|
+
repr/doctor.py,sha256=-ZyaRu_tb0vpT-ol7vLkgke68UQAxbpwqbubTJqbWsU,13443
|
|
13
|
+
repr/extractor.py,sha256=lGPN8gwTF_ZSezoQoPBMnf95nCJArGIteNiInfb39FM,10566
|
|
14
|
+
repr/hooks.py,sha256=1Kv1KR7b1YVKWt5soR1sg_eUKz6H61c8PchWJiM7X8w,20087
|
|
15
|
+
repr/keychain.py,sha256=CpKU3tjFZVEPgiHiplSAtBQFDPA6qOSovv4IXXgJXbY,6957
|
|
16
|
+
repr/llm.py,sha256=inABX2kwEhPnON7sjCzcTMZZeCf0k3G08LyrKsi6Sko,14637
|
|
17
|
+
repr/mcp_server.py,sha256=IhQM35bMD5c-6ASYIAa9VfnrvxzvFlZntUqkBm08Xqk,39752
|
|
18
|
+
repr/models.py,sha256=mQAkP1bBiAFPweC0OxU-UwKNLZkinvVYHB0KjItHt3Q,20093
|
|
19
|
+
repr/openai_analysis.py,sha256=FZY9pAlC2zdIjxxXxvZ2C3F65nqOp5OpXHS4Bu26jec,30527
|
|
20
|
+
repr/privacy.py,sha256=sN1tkoZjCDSwAjkQWeH6rHaLrtv727yT1HNHQ54GRis,9834
|
|
21
|
+
repr/session_extractor.py,sha256=t1rEyhndjxMREt3gfmcGBYzFGEwzt1kAYbmXPq-QbU8,17104
|
|
22
|
+
repr/storage.py,sha256=y_EYYKrUD2qNRKK2_vdjsIlPIq-IzfaNMUyj9aHofpQ,24223
|
|
23
|
+
repr/story_synthesis.py,sha256=3wV9v8PQkoaSEGBouDtC6q_ewRLNAdo4EXjRYl7g9OU,46443
|
|
24
|
+
repr/telemetry.py,sha256=M1NribTkiezpvweLrdbJxKDU2mlTe7frke6sUP0Yhiw,7000
|
|
25
|
+
repr/templates.py,sha256=5Z3vftQMn87ufvEVt0uWx_gagmvdZGoNxjD1Q9ZbS0w,11029
|
|
26
|
+
repr/timeline.py,sha256=z84PL_CfYikiNkz0oN4_glLxOQIQCeCUIGwXYvS6Dfk,22527
|
|
27
|
+
repr/tools.py,sha256=TK3Gwok9rUU-UnlkudvVVZXobCV2H0FkYx83OIXsMTs,21535
|
|
28
|
+
repr/ui.py,sha256=29pl_paJEWfCUu4GcDaePlmeWTQ0B3MFhD7de6LgJsM,6105
|
|
29
|
+
repr/updater.py,sha256=rybVVIxDk6RmKaswyKogVun8egVaonyH9nh_q2Rr0Vk,7335
|
|
30
|
+
repr/dashboard/__init__.py,sha256=gnS9cajkmGD-HFiYSDe5vKlzLOpsysicK-YU7TnpAMI,162
|
|
31
|
+
repr/dashboard/build.py,sha256=k01__9ECsdlsPR-0AAfv0p920VOUBQ68-xPkwF4o69g,3519
|
|
32
|
+
repr/dashboard/manager.py,sha256=HFRM2WUqvg3kzPx5K9AIdxWejMTTBEcd-zg8VCxtvaY,6879
|
|
33
|
+
repr/dashboard/server.py,sha256=bzh8WF2JrbxP7xIUjq4wrHiUEoLVi9RTf4RrYeamGyA,55319
|
|
34
|
+
repr/dashboard/dist/favicon.svg,sha256=_GU6Mv99D6MDjMP0TYIbtP1AJWoliAshDg-M47jdWjY,246
|
|
35
|
+
repr/dashboard/dist/index.html,sha256=PcdV2dKqNFOfuVrOmwgwPnszakLxyLYSyx_sIOsIe60,457
|
|
36
|
+
repr/dashboard/dist/assets/index-B-aCjaCw.js,sha256=v9vra_751KIpzs5z88UjcqyQ2cFYCH2wszJ32-X1aUw,154193
|
|
37
|
+
repr/dashboard/dist/assets/index-BYFVbEev.css,sha256=4oJsN21PA3lcgNF_Odx-3SalE0vU8Olot827hrB-Jrk,35198
|
|
38
|
+
repr/dashboard/dist/assets/index-BrrhyJFO.css,sha256=B0YN9FVh4hNlb5Sq-oZR8EvLTbj2boTit5VHYBgYYOs,30794
|
|
39
|
+
repr/dashboard/dist/assets/index-C7Gzxc4f.js,sha256=GyBY5jBflG97EhHLVcrqet2zUeE_KxejgHCUdmLBhiE,154295
|
|
40
|
+
repr/dashboard/dist/assets/index-CQdMXo6g.js,sha256=vT5yZHkZMx14hR2KLg07ecR0l7OVmqr9HvBiP-NLtiE,153831
|
|
41
|
+
repr/dashboard/dist/assets/index-CcEg74ts.js,sha256=3q45hpLvDBnr1BXgJqMsR0SR136wqq6LRsFFXxRFobc,131744
|
|
42
|
+
repr/dashboard/dist/assets/index-Cerc-iA_.js,sha256=SYypLBfj__-UvtdnH63TlQOqnrWJMNE3bfw162KWO74,145935
|
|
43
|
+
repr/dashboard/dist/assets/index-CjVcBW2L.css,sha256=A2-2av1DjlTaXSGCGwtZ5Re-9e_9evZXnPWEmObE4zo,35183
|
|
44
|
+
repr/dashboard/dist/assets/index-Cs8ofFGd.js,sha256=FXtpRH-rXtvkNI3NLSab7m-ammiL1fukhio9i4A8cFU,153438
|
|
45
|
+
repr/dashboard/dist/assets/index-Dfl3mR5E.js,sha256=2cJfa7nndn6gJUD4q0sUbfZ4bXGzWvVJJ_PGH94dvII,141440
|
|
46
|
+
repr/dashboard/dist/assets/index-DwN0SeMc.css,sha256=iOFXiTDPv_gcm81Bi1zlLayBKs-5xizz0zhgeK-_i-A,36564
|
|
47
|
+
repr/dashboard/dist/assets/index-YFch_e0S.js,sha256=0Zj1ogi_yAQo-19it1wuKySgdhXySLEHYszEJ-ukZgs,154295
|
|
48
|
+
repr/loaders/__init__.py,sha256=GJLT6NlrcMOg7C64cD8Yiu70rTMXqs2ayK-Iz9HpwOY,647
|
|
49
|
+
repr/loaders/base.py,sha256=AE9lFr8ZvPYt6KDwBTkNv3JF5A2QakVn9gA_ha77GLU,4308
|
|
50
|
+
repr/loaders/claude_code.py,sha256=sWAiQgNVWsdw9qUDcfHDBi5k6jBL7D8_SI3NAEsL-io,11106
|
|
51
|
+
repr/loaders/clawdbot.py,sha256=daKfTjI16tZrlwGUNaVOnLwxKyV6eW102CgIOu4mwAw,12064
|
|
52
|
+
repr/loaders/gemini_antigravity.py,sha256=_0HhtC1TwB2gSu20Bcco_W-V3Bt6v9O2iqOL6kIHQLU,13766
|
|
53
|
+
repr_cli-0.2.18.dist-info/licenses/LICENSE,sha256=tI16Ry3IQhjsde6weJ_in6czzWW2EF4Chz1uicyDLAA,1061
|
|
54
|
+
repr_cli-0.2.18.dist-info/METADATA,sha256=ntG6B0qQ8SrMx-bM6xWw8sIR3RIeqmhZruOC8bmXDDA,13387
|
|
55
|
+
repr_cli-0.2.18.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
56
|
+
repr_cli-0.2.18.dist-info/entry_points.txt,sha256=dlI-TCeDTW2rBC_nvOvMhwLihU4qsgD5r4Ot5BuVqSw,56
|
|
57
|
+
repr_cli-0.2.18.dist-info/top_level.txt,sha256=LNgPqdJPQnlicRve7uzI4a6rEUdcxHrNkUq_2w7eeiA,5
|
|
58
|
+
repr_cli-0.2.18.dist-info/RECORD,,
|
repr_cli-0.2.16.dist-info/RECORD
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
repr/__init__.py,sha256=jraImidqaPxv03Uy76zPtnAcNnOl5KLZSXYBzxI85BI,446
|
|
2
|
-
repr/__main__.py,sha256=N7amYwdGB3yzk2ZJJbtH2hhESNkDuhDL11dDEm5Kl60,166
|
|
3
|
-
repr/api.py,sha256=SfcoGysf_G5tXegM-zk_Rzsh5Zs59ptzUlStWgrHXP0,13812
|
|
4
|
-
repr/auth.py,sha256=xFtDRtdecT0T8ToTEpGinJoLf53zRQSdKSoPWjeyvoQ,12252
|
|
5
|
-
repr/cli.py,sha256=BVPRkjcxf9J13z-gFNG35tTAp2_2kAFPcpuzS6BEQWo,91630
|
|
6
|
-
repr/config.py,sha256=bxgOfsIAiTiYFclmEetPNRmrP1BcOn6z0rvo_rghdIc,30600
|
|
7
|
-
repr/discovery.py,sha256=2RYmJleqV7TbxIMMYP2izkEBUeKH7U1F-U4KAUlUNww,14816
|
|
8
|
-
repr/doctor.py,sha256=-ZyaRu_tb0vpT-ol7vLkgke68UQAxbpwqbubTJqbWsU,13443
|
|
9
|
-
repr/extractor.py,sha256=lGPN8gwTF_ZSezoQoPBMnf95nCJArGIteNiInfb39FM,10566
|
|
10
|
-
repr/hooks.py,sha256=Af78HiuxhN7OEu4npiZWoxFktuMlNUtSTjYgYDEzzFQ,20011
|
|
11
|
-
repr/keychain.py,sha256=CpKU3tjFZVEPgiHiplSAtBQFDPA6qOSovv4IXXgJXbY,6957
|
|
12
|
-
repr/llm.py,sha256=inABX2kwEhPnON7sjCzcTMZZeCf0k3G08LyrKsi6Sko,14637
|
|
13
|
-
repr/openai_analysis.py,sha256=PE3UBTXcmJe-uwZUKR00PAfghGHIgsxHi1SWA15uRKM,28883
|
|
14
|
-
repr/privacy.py,sha256=sN1tkoZjCDSwAjkQWeH6rHaLrtv727yT1HNHQ54GRis,9834
|
|
15
|
-
repr/storage.py,sha256=rjHTBs-6tFds6Cb-hA9Ezdjrd-MS6pFCZ3E0tDTAdzg,15775
|
|
16
|
-
repr/telemetry.py,sha256=M1NribTkiezpvweLrdbJxKDU2mlTe7frke6sUP0Yhiw,7000
|
|
17
|
-
repr/templates.py,sha256=O9pONIkrfWR-JqIyRp6C7e_csnD50SgbJxNNTZSjWFg,7449
|
|
18
|
-
repr/tools.py,sha256=opAWp34PY_8So9n_nYQQiF3OpokQsJebanhOdjX867Q,21130
|
|
19
|
-
repr/ui.py,sha256=29pl_paJEWfCUu4GcDaePlmeWTQ0B3MFhD7de6LgJsM,6105
|
|
20
|
-
repr/updater.py,sha256=rybVVIxDk6RmKaswyKogVun8egVaonyH9nh_q2Rr0Vk,7335
|
|
21
|
-
repr_cli-0.2.16.dist-info/licenses/LICENSE,sha256=tI16Ry3IQhjsde6weJ_in6czzWW2EF4Chz1uicyDLAA,1061
|
|
22
|
-
repr_cli-0.2.16.dist-info/METADATA,sha256=jgPfM4b5FYsxRGmRJCS0j_MTGtPfhd0-mdQO1FDZwEo,11396
|
|
23
|
-
repr_cli-0.2.16.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
24
|
-
repr_cli-0.2.16.dist-info/entry_points.txt,sha256=SJoKgNB-fRy6O2T_lztFr9T3ND_BQl0ijWxNW-J7dUU,38
|
|
25
|
-
repr_cli-0.2.16.dist-info/top_level.txt,sha256=LNgPqdJPQnlicRve7uzI4a6rEUdcxHrNkUq_2w7eeiA,5
|
|
26
|
-
repr_cli-0.2.16.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|