fix: OAuth token refresh failure returns undefined instead of throwing

When OAuth refresh fails during model discovery, getApiKey() now returns
undefined instead of throwing. This allows the app to start and fall back
to other providers, so the user can /login to re-authenticate.

fixes #498

feat(coding-agent): support searching/resuming sessions by ID

- Session picker (pi -r) now searches session IDs in addition to message content
- --session flag accepts UUID prefix (e.g., pi --session a8ec1c2a)
- Documented in README.md

fixes #495
This commit is contained in:
Mario Zechner 2026-01-06 21:08:55 +01:00
parent d2f3b42deb
commit 512ae4b4c0
2 changed files with 7 additions and 0 deletions

View file

@ -2,6 +2,10 @@
## [Unreleased]
### Added
- Session picker (`pi -r`) and `--session` flag now support searching/resuming by session ID (UUID prefix) ([#495](https://github.com/badlogic/pi-mono/issues/495) by [@arunsathiya](https://github.com/arunsathiya))
### Fixed
- Queued steering/follow-up messages no longer wipe unsent editor input ([#503](https://github.com/badlogic/pi-mono/pull/503) by [@tmustier](https://github.com/tmustier))

View file

@ -459,8 +459,11 @@ pi -r # Short form
pi --no-session # Ephemeral mode (don't save)
pi --session /path/to/file.jsonl # Use specific session file
pi --session a8ec1c2a # Resume by session ID (partial UUID)
```
**Resuming by session ID:** The `--session` flag accepts a session UUID (or prefix). Session IDs are visible in filenames under `~/.pi/agent/sessions/<project>/` (e.g., `2025-12-13T17-47-46-817Z_a8ec1c2a-5a5f-4699-88cb-03e7d3cb9292.jsonl`). The UUID is the part after the underscore. You can also search by session ID in the `pi -r` picker.
### Context Compaction
Long sessions can exhaust context windows. Compaction summarizes older messages while keeping recent ones.