agent-session-hub 0.2.0__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.
Files changed (42) hide show
  1. agent_session_hub-0.2.0.dist-info/METADATA +369 -0
  2. agent_session_hub-0.2.0.dist-info/RECORD +42 -0
  3. agent_session_hub-0.2.0.dist-info/WHEEL +5 -0
  4. agent_session_hub-0.2.0.dist-info/entry_points.txt +2 -0
  5. agent_session_hub-0.2.0.dist-info/licenses/LICENSE +21 -0
  6. agent_session_hub-0.2.0.dist-info/top_level.txt +1 -0
  7. agent_sessions/__init__.py +5 -0
  8. agent_sessions/archive.py +513 -0
  9. agent_sessions/archive_status.py +209 -0
  10. agent_sessions/baseline.py +345 -0
  11. agent_sessions/baseline_agent.py +223 -0
  12. agent_sessions/baseline_calibration.py +149 -0
  13. agent_sessions/baseline_eval.py +399 -0
  14. agent_sessions/baseline_handoffs.py +797 -0
  15. agent_sessions/baseline_ingest.py +276 -0
  16. agent_sessions/baseline_lint.py +317 -0
  17. agent_sessions/baseline_predictions.py +309 -0
  18. agent_sessions/baseline_promote.py +294 -0
  19. agent_sessions/baseline_publish.py +182 -0
  20. agent_sessions/baseline_redaction.py +271 -0
  21. agent_sessions/baseline_replay.py +607 -0
  22. agent_sessions/baseline_replay_ingest.py +267 -0
  23. agent_sessions/baseline_report.py +175 -0
  24. agent_sessions/baseline_settings.py +357 -0
  25. agent_sessions/baseline_types.py +85 -0
  26. agent_sessions/cli.py +515 -0
  27. agent_sessions/config.py +69 -0
  28. agent_sessions/models.py +29 -0
  29. agent_sessions/path_templates.py +95 -0
  30. agent_sessions/portable_paths.py +146 -0
  31. agent_sessions/render.py +103 -0
  32. agent_sessions/rule_clusterer.py +272 -0
  33. agent_sessions/rule_extractor.py +177 -0
  34. agent_sessions/rule_ledger.py +209 -0
  35. agent_sessions/sources/__init__.py +6 -0
  36. agent_sessions/sources/claude.py +31 -0
  37. agent_sessions/sources/codex.py +35 -0
  38. agent_sessions/sources/deepseek.py +16 -0
  39. agent_sessions/sources/gemini.py +24 -0
  40. agent_sessions/sources/grok.py +23 -0
  41. agent_sessions/sources/registry.py +32 -0
  42. agent_sessions/utils.py +219 -0
@@ -0,0 +1,369 @@
1
+ Metadata-Version: 2.4
2
+ Name: agent-session-hub
3
+ Version: 0.2.0
4
+ Summary: Local-first multi-agent coding session archive tooling — discover, export, and baseline your AI coding sessions
5
+ License: MIT
6
+ Project-URL: Homepage, https://github.com/avidullu/agent-sessions
7
+ Project-URL: Repository, https://github.com/avidullu/agent-sessions
8
+ Project-URL: Issues, https://github.com/avidullu/agent-sessions/issues
9
+ Project-URL: Changelog, https://github.com/avidullu/agent-sessions/blob/main/CHANGELOG.md
10
+ Keywords: ai,coding-agent,session,archive,claude,codex,copilot,deepseek,gemini,grok,baseline,export
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Operating System :: OS Independent
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Topic :: Software Development :: Version Control
21
+ Classifier: Topic :: Utilities
22
+ Requires-Python: >=3.11
23
+ Description-Content-Type: text/markdown
24
+ License-File: LICENSE
25
+ Provides-Extra: dev
26
+ Requires-Dist: mypy<3,>=1.10; extra == "dev"
27
+ Requires-Dist: pytest<10,>=7.0; extra == "dev"
28
+ Requires-Dist: pytest-cov<8,>=4.0; extra == "dev"
29
+ Requires-Dist: reportlab<6,>=4.0; extra == "dev"
30
+ Requires-Dist: ruff<0.16,>=0.6; extra == "dev"
31
+ Requires-Dist: types-reportlab<6,>=4.0; extra == "dev"
32
+ Dynamic: license-file
33
+
34
+ # Agent Sessions
35
+
36
+ [![CI](https://github.com/avidullu/agent-sessions/actions/workflows/ci.yml/badge.svg)](https://github.com/avidullu/agent-sessions/actions/workflows/ci.yml)
37
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
38
+ [![Python](https://img.shields.io/badge/Python-3.11%2B-3776AB)](https://python.org)
39
+ [![PyPI](https://img.shields.io/pypi/v/agent-session-hub?label=PyPI)](https://pypi.org/project/agent-session-hub/)
40
+ [![VS Code extension](https://img.shields.io/visual-studio-marketplace/v/avidullu.agent-session-router?label=VS%20Code%20extension)](https://marketplace.visualstudio.com/items?itemName=avidullu.agent-session-router)
41
+
42
+ **Local-first, multi-agent coding session archive.** Discover, export, and
43
+ baseline your AI coding sessions across Claude Code, Codex CLI, Gemini,
44
+ DeepSeek, Grok, and VS Code agents (via the companion
45
+ [router extension](https://marketplace.visualstudio.com/items?itemName=avidullu.agent-session-router)).
46
+
47
+ > The Python hub installs as [`agent-session-hub`](https://pypi.org/project/agent-session-hub/) on PyPI; the VS Code companion is
48
+ > [`avidullu.agent-session-router`](https://marketplace.visualstudio.com/items?itemName=avidullu.agent-session-router) on the Marketplace
49
+ > (`code --install-extension avidullu.agent-session-router`).
50
+
51
+ > **New here?** → [Getting Started](docs/GETTING_STARTED.md) (5-minute guide)
52
+ > **Agent-assisted setup?** → [Agent-Assisted Setup](#agent-assisted-setup) (give any capable agent a prompt; it sets up the archive on a new machine)
53
+ > **Questions?** → [FAQ](docs/FAQ.md)
54
+ > **Want to contribute?** → [CONTRIBUTING.md](CONTRIBUTING.md)
55
+
56
+ ## Supported Agents
57
+
58
+ > **Note:** This tool has been manually tested on **Windows, WSL, and Ubuntu**. macOS
59
+ > support is provided through the same code paths but has not been validated by the
60
+ > developer (who does not own a Mac). If you hit macOS-specific issues, please file a
61
+ > bug — PRs welcome!
62
+
63
+ | Agent | Platform | Via |
64
+ |-------|----------|-----|
65
+ | Claude Code | Windows, macOS, Linux, WSL | Direct Python importer |
66
+ | Codex CLI | Windows, macOS, Linux | Direct Python importer |
67
+ | Gemini Antigravity | Windows, macOS | Direct Python importer |
68
+ | Grok | WSL, Linux | Direct Python importer |
69
+ | DeepSeek V4 | VS Code (all platforms) | Direct Python importer |
70
+ | GitHub Copilot Chat | VS Code (all platforms) | [Router extension](https://marketplace.visualstudio.com/items?itemName=avidullu.agent-session-router) |
71
+ | Continue, Cline, Cody, Aider, Tabby | VS Code (all platforms) | [Router extension](https://marketplace.visualstudio.com/items?itemName=avidullu.agent-session-router) |
72
+
73
+ Configure sources in `sources.toml` (copy from `sources.example.toml`). Platform-specific examples included for Windows, macOS, Linux, and WSL.
74
+
75
+ ## Quick Start
76
+
77
+ ```bash
78
+ # Install
79
+ pip install agent-session-hub
80
+
81
+ # Discover sessions
82
+ agent-archive discover --write docs/DISCOVERY.md
83
+
84
+ # Export to Markdown
85
+ agent-archive export --all
86
+
87
+ # Check status
88
+ agent-archive status
89
+ ```
90
+
91
+ See [Getting Started](docs/GETTING_STARTED.md) for full setup including the VS Code extension, PDF export, and daily automation.
92
+
93
+ **Prefer to let an agent do the setup?** See [Agent-Assisted Setup](#agent-assisted-setup) — a carefully written prompt that lets Codex, Claude, Gemini, Grok, or another capable agent clone, install, discover, validate, and produce a first archive + structured setup report on a new machine.
94
+
95
+ Optional PDF output:
96
+
97
+ ```powershell
98
+ python .\tools\agent_archive.py export --all --pdf
99
+ ```
100
+
101
+ Optional raw backups:
102
+
103
+ ```powershell
104
+ python .\tools\agent_archive.py export --all --copy-raw
105
+ ```
106
+
107
+ Raw files land under `raw/`, which is ignored by Git unless you intentionally
108
+ force-add it.
109
+
110
+ ### Expected Outputs
111
+
112
+ `discover --write docs\DISCOVERY.md` refreshes the local source inventory:
113
+
114
+ - configured source roots, whether each root exists, and matching file counts;
115
+ - sample files per source;
116
+ - inventory-only sources such as Copilot/ZAI storage locations, even when they
117
+ are not exportable transcript sources yet.
118
+
119
+ `status` prints archive freshness and convergence signals:
120
+
121
+ - indexed records, visible configured files, new files, and changed files;
122
+ - indexed records not visible from this machine, preserved from other machines;
123
+ - source counts and inferred origin environments.
124
+
125
+ `export --all` writes Markdown archive artifacts and updates the shared catalog:
126
+
127
+ - `archive/**/*.md`
128
+ - `archive/index.jsonl`
129
+ - `archive/INDEX.md`
130
+
131
+ `export --all --pdf` also writes `archive/**/*.pdf` when `reportlab` is
132
+ installed. The `.[dev]` install includes `reportlab`; to check a minimal
133
+ environment, run:
134
+
135
+ ```powershell
136
+ python -c "import reportlab; print('reportlab ok')"
137
+ ```
138
+
139
+ If PDF support is missing, Markdown export still works. The CLI will report that
140
+ PDF export requires `reportlab`.
141
+
142
+ Some configured sources are intentionally inventory-only. A message like this is
143
+ expected unless transcript files exist in supported locations:
144
+
145
+ ```text
146
+ Skipped sources without extractors:
147
+ - copilot-vscode-windows-inventory (inventory)
148
+ - copilot-vscode-wsl-ubuntu-inventory (inventory)
149
+ - zai-vscode-wsl-ubuntu-inventory (inventory)
150
+ ```
151
+
152
+ After a real export, review only the intended generated paths:
153
+
154
+ ```powershell
155
+ git status --short archive/ docs/DISCOVERY.md
156
+ ```
157
+
158
+ Stage explicit paths only. Do not commit `sources.toml`, `raw/`, or unrelated
159
+ files.
160
+
161
+ ## Verify Changes Before Opening A PR
162
+
163
+ Run CI's gates locally, with CI's pinned toolchain, in a throwaway venv:
164
+
165
+ ```bash
166
+ ./scripts/local_ci.sh
167
+ ```
168
+
169
+ That runs `ruff check`, `mypy`, and the test suite with coverage — the same
170
+ commands as `.github/workflows/ci.yml` — and refuses to run at all if the script
171
+ has drifted from the workflow. Use `--lint-only` for a fast inner loop, but note
172
+ it is not the CI verdict.
173
+
174
+ ### Automatic Enforcement On `git push`
175
+
176
+ `scripts/pre-push` is an opt-in git hook that runs the gates and aborts a push
177
+ that would go red. Install it once per clone:
178
+
179
+ ```bash
180
+ ln -s ../../scripts/pre-push .git/hooks/pre-push
181
+ ```
182
+
183
+ The hook gates the commits being pushed, not whatever happens to be checked out.
184
+ Documentation-only pushes are skipped automatically; `SKIP_LOCAL_CI=1 git push`
185
+ and `git push --no-verify` are the explicit bypasses. Full details, including the
186
+ drift guard, the parity limits, and the Windows/WSL install path, are in
187
+ [docs/LOCAL_CI.md](docs/LOCAL_CI.md).
188
+
189
+ ## Agent-Assisted Setup
190
+
191
+ To set this up on a new computer with Codex, Claude, Gemini, Grok, DeepSeek, or
192
+ another capable local agent, give the agent this prompt from the machine you
193
+ want to add:
194
+
195
+ ```text
196
+ Set up my private agent-sessions archive on this computer.
197
+
198
+ 1. Clone or open the repo:
199
+ https://github.com/avidullu/agent-sessions
200
+ Pull with `git pull --ff-only` before reading files.
201
+ 2. Install local tooling in a Python 3.11+ environment:
202
+ `python -m pip install -e ".[dev]"`
203
+ 3. Validate the repo and report results. Use POSIX-style paths in the prompt;
204
+ PowerShell users may substitute `.\tools\...` and `docs\DISCOVERY.md` if
205
+ they prefer:
206
+ - `python -m pytest --cov=agent_sessions --cov-report=term-missing`
207
+ - `python -m ruff check .`
208
+ - `python -m mypy agent_sessions tools`
209
+ - optional/informational: `python tools/agent_archive.py baseline eval --dry-run`
210
+ 4. Discover local agent stores:
211
+ - `python tools/agent_archive.py discover --write docs/DISCOVERY.md`
212
+ - `python tools/agent_archive.py status`
213
+ If defaults miss a local path, create or edit ignored `sources.toml`; do not
214
+ commit `sources.toml`.
215
+ 5. Ask me which sync mode I want before enabling it:
216
+ - manual: export only when I ask
217
+ - scheduled: daily Task Scheduler/cron export
218
+ - triggered: filesystem watcher with debounce
219
+ Ask separately whether to generate PDFs.
220
+ 6. If I approve the first sync, run:
221
+ `python tools/agent_archive.py export --all --pdf`
222
+ Then stage only `archive/` changes. Push directly only if I explicitly
223
+ approve this as a one-time archive sync; otherwise branch and open a PR.
224
+ 7. Finish with a short setup report: validation status, agents discovered,
225
+ total indexed sessions, new/changed files, origin environments, sync mode,
226
+ and 1-2 promoted guardrails from `baseline/global/` or optional
227
+ `baseline suggest --dry-run` output that show the value.
228
+
229
+ Do not commit raw logs, `sources.toml`, unrelated files, or merge PRs without
230
+ explicit approval scoped to that PR or project.
231
+ ```
232
+
233
+ The final setup report should be plain enough to review at a glance:
234
+
235
+ ```text
236
+ Repo validation:
237
+ - Tests/coverage:
238
+ - Ruff:
239
+ - Mypy:
240
+ - Baseline eval:
241
+
242
+ Local archive status:
243
+ - Agents/sources discovered:
244
+ - Indexed sessions:
245
+ - New files:
246
+ - Changed files:
247
+ - Origin environments:
248
+
249
+ Sync:
250
+ - Selected mode:
251
+ - PDF export:
252
+ - Last export/commit:
253
+
254
+ Value preview:
255
+ - Guardrail/pattern 1:
256
+ - Guardrail/pattern 2:
257
+ - Evidence breadcrumbs:
258
+ ```
259
+
260
+ See [docs/AUTOMATION.md](docs/AUTOMATION.md) for scheduled export details and
261
+ [docs/MULTI_MACHINE.md](docs/MULTI_MACHINE.md) for how indexes converge across
262
+ computers. For a step-by-step manual checklist, see
263
+ [docs/NEW_MACHINE_SETUP.md](docs/NEW_MACHINE_SETUP.md).
264
+
265
+ ## Adding Agents
266
+
267
+ 1. Add a source entry in `config/default_sources.toml` or local `sources.toml`.
268
+ 2. Add an extractor module under `agent_sessions/sources/`.
269
+ 3. Register it with `@register("<kind>")`.
270
+ 4. Run a dry export with `--source <kind> --limit 1 --dry-run`.
271
+
272
+ ## Baseline Status And Follow-Ups
273
+
274
+ The original promote/publish/calibrate closure proof is documented in
275
+ [docs/archives/BASELINE_LOOP_CLOSURE.md](docs/archives/BASELINE_LOOP_CLOSURE.md). The newer
276
+ knowledge and replay tracker is complete in
277
+ [docs/archives/BASELINE_KNOWLEDGE_REPLAY_PLAN.md](docs/archives/BASELINE_KNOWLEDGE_REPLAY_PLAN.md),
278
+ with current health and follow-ups summarized in
279
+ [docs/archives/WORK_AUDIT_2026-07-08.md](docs/archives/WORK_AUDIT_2026-07-08.md).
280
+
281
+ Useful health checks:
282
+
283
+ ```powershell
284
+ python .\tools\agent_archive.py baseline lint --dry-run
285
+ python .\tools\agent_archive.py baseline eval --dry-run
286
+ python .\tools\agent_archive.py baseline handoffs audit --dry-run
287
+ python .\tools\agent_archive.py baseline replay select --dry-run
288
+ ```
289
+
290
+ ## Engineering Baseline
291
+
292
+ Create or refresh the baseline scaffold:
293
+
294
+ ```powershell
295
+ python .\tools\agent_archive.py baseline scaffold
296
+ ```
297
+
298
+ Expected output: missing baseline folders and templates are created under
299
+ `baseline/`, including calibration examples and proposal scaffolding. Existing
300
+ files are preserved.
301
+
302
+ Generate reviewable candidate predictions from the archive:
303
+
304
+ ```powershell
305
+ python .\tools\agent_archive.py baseline suggest
306
+ ```
307
+
308
+ Expected output: a dated candidate report appears under `baseline/candidates/`,
309
+ with a matching `.predictions.json` sidecar, and the prediction ledger under
310
+ `baseline/metacognition/` is updated. Candidate reports are suggestions with
311
+ provenance and calibration hooks. Copy
312
+ `baseline/calibration/feedback.example.toml` to
313
+ `baseline/calibration/feedback.toml` to mark predictions as accepted, edited, or
314
+ rejected before the next run.
315
+
316
+ Summarize calibration feedback against the latest prediction sidecar:
317
+
318
+ ```powershell
319
+ python .\tools\agent_archive.py baseline calibrate --feedback baseline\calibration\feedback.toml
320
+ ```
321
+
322
+ Create a local evidence bundle for an authorized AI agent to draft proposals:
323
+
324
+ ```powershell
325
+ python .\tools\agent_archive.py baseline bundle --focus badminton-highlight-indexer
326
+ ```
327
+
328
+ ## Compose Stack
329
+
330
+ This repo owns durable export and baseline generation. Search, Claude-specific
331
+ browsing, live capture, and runtime memory are delegated to external tools where
332
+ they are already stronger. See [docs/COMPOSE_STACK.md](docs/COMPOSE_STACK.md).
333
+
334
+ Daily export automation is documented in [docs/AUTOMATION.md](docs/AUTOMATION.md).
335
+ Multi-machine indexing is documented in [docs/MULTI_MACHINE.md](docs/MULTI_MACHINE.md).
336
+
337
+ ## Reusable Plugins
338
+
339
+ This repo also hosts a Claude Code plugin marketplace (`agent-sessions-tools`).
340
+ Install the `pr-review-loop` PR-reviewer plugin from any session:
341
+
342
+ ```shell
343
+ /plugin marketplace add avidullu/agent-sessions
344
+ /plugin install pr-review-loop@agent-sessions-tools
345
+ ```
346
+
347
+ See [plugins/pr-review-loop/README.md](plugins/pr-review-loop/README.md).
348
+
349
+ ## Other Machines
350
+
351
+ Clone this private repo on another machine, follow
352
+ [docs/NEW_MACHINE_SETUP.md](docs/NEW_MACHINE_SETUP.md), commit the new `archive/`
353
+ Markdown/PDF files, and push.
354
+ The archive index is merge-aware, so records from other machines remain in the
355
+ unified view when one machine exports only the local sources it can see.
356
+
357
+ If a machine has different usernames, WSL distribution names, or custom storage
358
+ paths, copy `sources.example.toml` to `sources.toml` and edit the roots. The
359
+ local `sources.toml` is ignored by Git.
360
+
361
+ ## Roadmap
362
+
363
+ See [docs/ROADMAP.md](docs/ROADMAP.md) for optional future importers and archive
364
+ automation ideas.
365
+
366
+ The engineering-baseline idea is sketched in
367
+ [docs/ENGINEERING_BASELINE.md](docs/ENGINEERING_BASELINE.md).
368
+ The current implementation plan is tracked in
369
+ [docs/BASELINE_PLANNING.md](docs/BASELINE_PLANNING.md).
@@ -0,0 +1,42 @@
1
+ agent_session_hub-0.2.0.dist-info/licenses/LICENSE,sha256=vtuM-zgNEgJZK9YBrPB0lGLOhyvgin1YoFae0ojhBxY,1066
2
+ agent_sessions/__init__.py,sha256=gxTEpI5z6kIQFaRSorTrplKBnonXVlvhfWCPKOfW-bM,100
3
+ agent_sessions/archive.py,sha256=-hGXihqUbf8kuTNHRUSDnILntSUUlpPmee0PUZNUow0,21101
4
+ agent_sessions/archive_status.py,sha256=xHjZUMBzfjvh55QlK4AP91SqKrj0fbZ57Tll9QcA8CQ,7578
5
+ agent_sessions/baseline.py,sha256=74Nrb9--ijb1vK-DRZTlXC_lIwMvqXh2F17Hk2gC5Is,11965
6
+ agent_sessions/baseline_agent.py,sha256=sMwC6aPIQafFy4JBqB3K12G5JfS4yknVKkZD0_kUQAk,8477
7
+ agent_sessions/baseline_calibration.py,sha256=sphxzkDaZJ3HPXx21aLPLxWPD6AaEtrq69muj_Mgnzs,5312
8
+ agent_sessions/baseline_eval.py,sha256=OXe76ERWMySmpwtoGeZ0Jq1WxvJU9FbMLP3lt39DPeA,15884
9
+ agent_sessions/baseline_handoffs.py,sha256=1SKm2GUy2SDNoGeZ-jlabF1Toy33RAojmM-O65CVXrQ,30353
10
+ agent_sessions/baseline_ingest.py,sha256=c2tS__5NfPkVycP_t5pjuKmjZMHzwUg8CgC-mCfr1-4,10386
11
+ agent_sessions/baseline_lint.py,sha256=sVDePqenVH3jWzMJQv7gkkSLfdLrAQn9fub0W_Hpiuc,11502
12
+ agent_sessions/baseline_predictions.py,sha256=zDWkcPxV04g5IGM7fBbMpXnNRvB9crbCo-cfPhe0P2w,12975
13
+ agent_sessions/baseline_promote.py,sha256=REb6eydsWn8B3AyoF-bQMQNLvFn8qcX6aatVgM1FRJo,9927
14
+ agent_sessions/baseline_publish.py,sha256=eZp6hSESBFHk2jUVYsMlUA1uOQFUCkL-ru-syjA0pJ0,5855
15
+ agent_sessions/baseline_redaction.py,sha256=xouzuXDuaB3W0FEPMdz3TqOEzrsUDGj9_biHjw7eZyw,10926
16
+ agent_sessions/baseline_replay.py,sha256=PlBY2MTw5cRS9om3Bxo5UskiYDquRRFWGazBQRQkiI0,24092
17
+ agent_sessions/baseline_replay_ingest.py,sha256=znbLZ2KpWvPLd52CDHn6g6BAHID08ZeBcpi6agBbfOw,11438
18
+ agent_sessions/baseline_report.py,sha256=VUZ_CQ6JCebM8AdIVID8gL9IdIawqQMfgBNFhuYuplA,6135
19
+ agent_sessions/baseline_settings.py,sha256=JAxFFEU3Rb58_3Vlagsm9HCLY3QgIXhUrjX_mdsyevQ,17840
20
+ agent_sessions/baseline_types.py,sha256=eofgijh3qAlwm48xtnxRATYfD5ZFdP3EU24ol6vuJ3M,2132
21
+ agent_sessions/cli.py,sha256=v3DEjBUPsW8JAbV18m3WWPHxHupekjsJpJPxRdJB_Ik,22587
22
+ agent_sessions/config.py,sha256=NFx48nGB9sGVpQHp95LwPOj7KGkzcJzMqXZ_YFB59AE,2330
23
+ agent_sessions/models.py,sha256=Gtdvrt5YhoUYrgDIYKx-GOtXRPlIeldpNnWQXsgWV8o,512
24
+ agent_sessions/path_templates.py,sha256=vHUAJNXj9_apYOIZUV_a4aBxGL33assneit23YBPQsk,3088
25
+ agent_sessions/portable_paths.py,sha256=ZYrF_aiJiG0UeJNZSzjxGbeFTOUmAFw8kwfjVqr5E1s,6403
26
+ agent_sessions/render.py,sha256=MIHnr8oNDWzD9CCYM-kEFGNrR3E8nK2chpvMbKoeazo,3119
27
+ agent_sessions/rule_clusterer.py,sha256=aFiZvsF5JCbDC_biFDAT7ppQ2uxYKxNELh1tHurDiW0,10873
28
+ agent_sessions/rule_extractor.py,sha256=QdeJTefjhQP5NFu8KJrv679fegU-9bqhhXJyQNm6EiY,6504
29
+ agent_sessions/rule_ledger.py,sha256=qbjpXaRrCKARZXTb5j552cLdNWWhuXHDrWhQoDtISJU,7788
30
+ agent_sessions/utils.py,sha256=sjs9yBjefO4JZDlCqLDul_gw6MyqgVrz14h9T35ixkk,8314
31
+ agent_sessions/sources/__init__.py,sha256=HQjVcf07vYtXtdpmo1f-Cy3o2jTyswkCVABFJWJ4SW8,160
32
+ agent_sessions/sources/claude.py,sha256=ZKY7gN9Tr6hpeJgJJ49coHSu4qNSm7dwX3ySKBG-Aso,1246
33
+ agent_sessions/sources/codex.py,sha256=colipZGwo7gz0Vs3hNU7Fy0Xt3q-1eessfPdPoHQ-e0,1409
34
+ agent_sessions/sources/deepseek.py,sha256=xYwZOwW3nUu92-W1D8_1HsnXC58fX8oXpfEQ0seaCDk,571
35
+ agent_sessions/sources/gemini.py,sha256=oPKoZcU15Ff4tU_WyPVU-rNEfx3BSNdQZhpclitrXy8,925
36
+ agent_sessions/sources/grok.py,sha256=uXeW__iRXpaImusha1uv9zdFn4Oz92Fa5qus7zRtYJI,814
37
+ agent_sessions/sources/registry.py,sha256=LeZG_OwvZxv_KdcX3fhc_0pPMUzJnA3zcak5RsxZ5_A,736
38
+ agent_session_hub-0.2.0.dist-info/METADATA,sha256=FYH1Ks9wJ6-z5wrbFHzfqpovQZssxxZZtdxwTnFH2tg,14513
39
+ agent_session_hub-0.2.0.dist-info/WHEEL,sha256=K260EYznzXsJYBQGqmI8VTxEdiZYNvDZwW9cBh9-_MA,91
40
+ agent_session_hub-0.2.0.dist-info/entry_points.txt,sha256=GAIrWbFrponDzaqGGbrbCS1Kfp6-5z0WNp-SnVG8TkI,58
41
+ agent_session_hub-0.2.0.dist-info/top_level.txt,sha256=4NJTVw3PGIMldnsAmaGteKLuqLr7OUMnkmnNyWVCerc,15
42
+ agent_session_hub-0.2.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (83.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ agent-archive = agent_sessions.cli:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Avi Dullu
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ agent_sessions
@@ -0,0 +1,5 @@
1
+ """Local coding-agent session archive tooling."""
2
+
3
+ __all__ = ["__version__"]
4
+
5
+ __version__ = "0.2.0"