JesseMarkowitz
b41634d892
fix: load .env in doctor command; handle JWE tokens gracefully
...
Doctor was reading env vars before loading .env, so tokens set in .env
were invisible. ChatGPT now uses JWE (encrypted JWT) tokens which
PyJWT cannot decode without the server key — treat decode failure as
"token set, expiry unknown" rather than a FAIL.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:34:54 -05:00
JesseMarkowitz
8e9ca36b57
docs: add README
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:14:37 -05:00
JesseMarkowitz
726905cc09
test: add unit tests and fixtures
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:13:15 -05:00
JesseMarkowitz
389732fd9e
feat: add CLI
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:10:31 -05:00
JesseMarkowitz
d1cac3ce04
feat: add markdown and JSON exporters
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:03:58 -05:00
JesseMarkowitz
f4ef937aa1
feat: add cache module
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 23:01:15 -05:00
JesseMarkowitz
3adb2d2b48
feat: add ChatGPT and Claude providers
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:59:06 -05:00
JesseMarkowitz
6073034789
feat: add provider base class
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:56:07 -05:00
JesseMarkowitz
6a32e127fd
feat: add config loader with validation
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:54:37 -05:00
JesseMarkowitz
1f347b581f
feat: add utils module
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:53:07 -05:00
JesseMarkowitz
3efc4f3045
feat: add logging config
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:49:17 -05:00
JesseMarkowitz
62445c7c0c
chore: initialize project scaffold
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 22:45:46 -05:00