pisesh 0.1.5 → 0.1.6

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 (2) hide show
  1. package/README.md +5 -42
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -45,7 +45,7 @@ Pi accumulates sessions across many working directories — your home, several p
45
45
  - You re-open the wrong session and pollute it with unrelated context
46
46
  - You waste time searching by timestamp guessing
47
47
 
48
- pisesh is a **single-file Node script** (no dependencies, ~600 LoC) that gives you everything `pi --resume` doesn't.
48
+ pisesh is a **single-file Node script** (no dependencies, ~900 LoC) that gives you everything `pi --resume` doesn't.
49
49
 
50
50
  ### Value at a glance
51
51
 
@@ -55,7 +55,7 @@ pisesh is a **single-file Node script** (no dependencies, ~600 LoC) that gives y
55
55
  | Give a thread a real name | `e` sets a custom title (marked `✎`); overrides the first-prompt label |
56
56
  | See only the current project's sessions | `Here` tab filters to sessions whose cwd matches where you launched pisesh |
57
57
  | Fix where a session resumes | `p` opens an arrow-key directory browser; sets the cwd pi `cd`s into |
58
- | Find a session by what you said | `/` searches id + project + first user prompt |
58
+ | Find a session by what you said | `/` searches id + project + first user prompt + custom title |
59
59
  | Know which session you're attached to | `[NOW]` badge on the live session (passed from pi via env var) |
60
60
  | Keep your terminal clean | Alt-screen buffer — exit restores your terminal byte-for-byte (like vim) |
61
61
  | Read Korean / Chinese / Japanese prompts | Display-width-aware truncation; columns never blow up on CJK |
@@ -101,11 +101,11 @@ Pi-extension side: drop `extensions/sesh.ts` into `~/.pi/agent/extensions/` and
101
101
  | `↑` `↓` / `j` `k` | move cursor |
102
102
  | `Tab` / `h` / `l` | switch tab (`★ Favorites` → `Today` → `Here` → `All`) |
103
103
  | `f` / `Space` | star / unstar the selected session |
104
- | `Enter` | resume — spawns `pi --session <id> --session-dir <dir>` |
104
+ | `Enter` | resume — spawns `pi --session <id>` in the session's (or overridden) cwd |
105
105
  | `e` | edit name — set a custom display title (marked `✎` in list) |
106
106
  | `p` | edit cwd — arrow-key directory browser; sets resume / `Here` dir |
107
107
  | `d` | session details (full prompt, file, byte size, timestamps) |
108
- | `/` | search by id / project / first user prompt |
108
+ | `/` | search by id / project / first user prompt / custom title |
109
109
  | `Esc` | clear search first, then quit |
110
110
  | `q` / `Ctrl-C` | quit (terminal restored) |
111
111
  | `r` | rescan session files (after pi starts a new session) |
@@ -136,7 +136,7 @@ pisesh --help
136
136
  | Input | Node's `readline.emitKeypressEvents` in raw mode |
137
137
  | Width calculation | UAX #11 East Asian Width ranges, compressed to ~10 inline range checks |
138
138
  | Pi extension | TypeScript factory using `@earendil-works/pi-coding-agent` extension API (`ui.custom`, `tui.stop`) |
139
- | Storage | Single JSON file at `~/.pi/agent/favorites.json` (`{ ids: [...], updated: "iso" }`) |
139
+ | Storage | Two JSON files: `~/.pi/agent/favorites.json` (starred ids) + `~/.pi/agent/pisesh-meta.json` (per-session title / cwd overrides) |
140
140
  | Session discovery | Direct filesystem scan of `~/.pi/agent/sessions/<projectSlug>/*.jsonl`; first 96 KB parsed |
141
141
  | Process model | Slash command pauses pi's TUI, spawns pisesh with inherited stdio, restarts pi on exit |
142
142
 
@@ -147,27 +147,6 @@ pisesh --help
147
147
  - No network calls, no telemetry, no analytics
148
148
  - No daemon / background process
149
149
 
150
- ## How resume works
151
-
152
- ```text
153
- pi (session A) ── /sesh ──▶ ui.custom + tui.stop()
154
-
155
- └─▶ spawn pisesh (PISESH_CURRENT_SESSION=A)
156
- │ ↑↓ Tab f / Enter on session B
157
-
158
- └─▶ spawn pi --session B --session-dir <dir>
159
-
160
- │ user works in B …
161
- │ user types q / ^D
162
-
163
- ◀─── inner pi exits, pisesh exits
164
-
165
- ◀─── tui.start() + requestRender(true)
166
- pi (session A) continues exactly where it was
167
- ```
168
-
169
- The current pi session is paused, not lost. When you finish with the resumed session, you pop back to A with full state intact.
170
-
171
150
  ## Storage
172
151
 
173
152
  | What | Where |
@@ -211,22 +190,6 @@ Korean / Chinese / Japanese / fullwidth characters render **2 cells wide** in te
211
190
  - Linux: **GNOME Terminal**, **Konsole**, **xterm**, **Alacritty**, **Kitty** ✅
212
191
  - [`pi`](https://www.npmjs.com/package/@earendil-works/pi-coding-agent) on `$PATH` for the `Enter`-to-resume action
213
192
 
214
- ## Roadmap
215
-
216
- | Status | Item |
217
- | ------ | ------------------------------------------------------------------------------- |
218
- | ✅ | Tabs, star/unstar, search, alt-screen, CJK width, `[NOW]` badge, pi `/sesh` |
219
- | ✅ | `Here` tab — filter to sessions matching the launch directory |
220
- | ✅ | Inline rename (`e`) — custom display title that overrides the first prompt |
221
- | ✅ | Edit cwd (`p`) — arrow-key directory browser sets the resume / `Here` dir |
222
- | 🚧 | `n` / `N` jump to next / previous search match (less-style) |
223
- | 🚧 | Highlight matched substring in yellow |
224
- | 🚧 | Filter by `today/yesterday/this-week` |
225
- | 🧠 | Optional summarize first-N user prompts via local model for richer titles |
226
- | 🧠 | Export starred sessions as a single bundle (share / archive) |
227
-
228
- PRs welcome for anything in the 🚧 lane.
229
-
230
193
  ## Contributing
231
194
 
232
195
  ```bash
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pisesh",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "Bookmark, search, and resume pi coding-agent sessions with a fast keyboard-driven TUI.",
5
5
  "keywords": [
6
6
  "pi-package",