pi-studio 0.4.1 → 0.4.3

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 (4) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +9 -4
  3. package/index.ts +1371 -48
  4. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,34 @@
2
2
 
3
3
  All notable changes to `pi-studio` are documented here.
4
4
 
5
+ ## [0.4.3] — 2026-03-04
6
+
7
+ ### Added
8
+ - **Export right preview as PDF** action in Studio response controls, using server-side pandoc + LaTeX (`xelatex`) for high-quality math/typesetting output.
9
+ - Footer metadata now includes model **and thinking level** (e.g., `provider/model (xhigh)`) plus terminal/session label.
10
+ - Footer braille-dot activity spinner (`⠋⠙⠹…`) driven by existing websocket lifecycle state.
11
+
12
+ ### Changed
13
+ - Footer layout is now two-line and less crowded: status/meta on the left with shortcuts aligned to the right.
14
+ - Status text is now user-facing (removed `WS:` jargon and redundant `Ready` wording).
15
+
16
+ ## [0.4.2] — 2026-03-03
17
+
18
+ ### Added
19
+ - New editor action: **Load from pi editor** to pull the current terminal editor draft into Studio.
20
+ - Optional Studio debug tracing (`?debug=1`) with client/server lifecycle events for request/state/tool diagnostics.
21
+
22
+ ### Changed
23
+ - Footer busy status now reflects Studio-owned and terminal-owned activity phases more clearly (`running`, `tool`, `responding`).
24
+ - Tool activity labels are derived from tool calls/executions with improved command classification for shell workflows (including current/parent directory listings and listing-like `find` commands).
25
+ - Studio request ownership remains sticky during active/agent-busy phases to avoid confusing Studio → Terminal label flips mid-turn.
26
+ - Editor and response preview panes keep previous rendered content visible while a new render is in flight, using a subtle delayed **Updating** indicator instead of replacing content with a loading screen.
27
+ - Footer shortcut hint and run-button tooltip now explicitly document `Cmd/Ctrl+Enter` for **Run editor text**.
28
+
29
+ ### Fixed
30
+ - Studio requests are no longer cleared prematurely when assistant messages end with `stopReason: "toolUse"`.
31
+ - Embedded-script activity label normalization now preserves whitespace correctly (fixes corrupted labels caused by escaped regex mismatch).
32
+
5
33
  ## [0.4.1] — 2026-03-03
6
34
 
7
35
  ### Changed
package/README.md CHANGED
@@ -49,9 +49,9 @@ Experimental extension for [pi](https://github.com/badlogic/pi-mono) that opens
49
49
  - Response load helpers:
50
50
  - non-critique: **Load response into editor**
51
51
  - critique: **Load critique notes into editor** / **Load full critique into editor**
52
- - File actions: **Save editor as…**, **Save editor**, **Load file content**
52
+ - File/editor actions: **Save editor as…**, **Save editor**, **Load file content**, **Send to pi editor**, **Load from pi editor**
53
53
  - View toggles: panel header dropdowns for `Editor (Raw|Preview)` and `Response (Raw|Preview) | Editor (Preview)`
54
- - **Editor Preview in response pane**: side-by-side source/rendered view (Overleaf-style) — select `Right: Editor (Preview)` to render editor text in the right pane with live debounced updates
54
+ - **Editor Preview in response pane**: side-by-side source/rendered view (Overleaf-style) — select `Right: Editor (Preview)` to render editor text in the right pane with live updates
55
55
  - Preview mode supports MathML equations and Mermaid fenced diagrams
56
56
  - **Language-aware syntax highlighting** with selectable language mode:
57
57
  - Markdown (default): headings, links, code fences, lists, quotes, inline code
@@ -67,6 +67,10 @@ Experimental extension for [pi](https://github.com/badlogic/pi-mono) that opens
67
67
  - **Working directory**: "Set working dir" button for uploaded files — resolves relative image paths and enables "Save editor" for uploaded content
68
68
  - **Live theme sync**: changing the pi theme in the terminal updates the studio browser UI automatically (polled every 2 seconds)
69
69
  - Separate syntax highlight toggles for editor and response Raw views, with local preference persistence
70
+ - **PDF export**: export the current right-pane preview (`Response (Preview)` or `Editor (Preview)`) via pandoc + LaTeX (`xelatex`) for high-quality math/typesetting output
71
+ - Keyboard shortcuts: `Cmd/Ctrl+Enter` runs **Run editor text** when editor pane is active; `Cmd/Ctrl+Esc` / `F10` toggles focus mode; `Esc` exits focus mode
72
+ - Footer status reflects Studio/terminal activity phases (connecting, ready, submitting, terminal activity), with a braille-dot spinner during agent activity
73
+ - Footer metadata includes current model and terminal/session label for easier terminal tab switching
70
74
  - Theme-aware browser UI derived from current pi theme
71
75
  - View mode selectors integrated into panel headers for a cleaner layout
72
76
 
@@ -114,8 +118,9 @@ pi -e https://github.com/omaclaren/pi-studio
114
118
  - Mermaid fenced `mermaid` code blocks are rendered client-side in preview mode (Mermaid v11 loaded from jsDelivr), with palette-driven defaults for better theme fit.
115
119
  - If Mermaid cannot load or a diagram fails to render, preview shows an inline warning and keeps source text visible.
116
120
  - Preview rendering normalizes Obsidian wiki-image syntax (`![[path]]`, `![[path|alt]]`) into standard markdown images.
117
- - Install pandoc for full preview rendering (`brew install pandoc` on macOS).
118
- - If `pandoc` is unavailable, preview falls back to plain markdown text with an inline warning.
121
+ - Install pandoc for full preview rendering and PDF export (`brew install pandoc` on macOS).
122
+ - PDF export uses pandoc + LaTeX (`xelatex` by default; override with `PANDOC_PDF_ENGINE`). Install TeX Live/MacTeX for PDF generation.
123
+ - If `pandoc` is unavailable, preview falls back to plain markdown text with an inline warning, and PDF export returns an error.
119
124
 
120
125
  ## License
121
126