383cb46fe7
feat(pi-notifications): add standalone test-notify.ts and fix AppleScript sound bug
...
- Add packages/pi-notifications/src/test-notify.ts for isolated testing
- Run with: node --input-type=module -e "import {createJiti} from ..." ./packages/pi-notifications/src/test-notify.ts
- Decoupled from agent loop — verifies osascript in extension context
- Fix: 'default' is a reserved word in AppleScript, skip sound param when sound='default'
- Synced fix to auto-discovery extension path
2026-04-28 12:10:30 +01:00
45a13fd08c
feat(pi-notifications): add PI_NOTIFICATION_DEBUG mode with visible steer signal
...
- Add PI_NOTIFICATION_DEBUG=true env var
- When enabled, calls ctx.ui.steer() instead of desktop notification
- Lets you verify trigger logic in the agent loop without actual notifications
- Synced to both monorepo and auto-discovery extension paths
2026-04-28 12:09:06 +01:00
98e18643c5
pi-performance: Make Time to first token more accurate.
...
Summary of changes:
┌──────┬──────────────────────────────────────────────────────────────────┬──────────┐
│ Step │ Change │ Result │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 1 │ Removed duplicate llm-performance-metrics.test.ts │ 14 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 2 │ Added rawTimestamps assertions to toLogEntry test │ 14 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 3 │ Added rawTimestamps assertions to single-turn aggregate test │ 14 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 4 │ Added rawTimestamps assertions to multi-turn aggregate test │ 14 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 5 │ Added negative TTFT filtering test │ 15 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 6 │ Added "first turn missing TTFT, later turns have it" test │ 16 tests │
├──────┼──────────────────────────────────────────────────────────────────┼──────────┤
│ 7 │ Added sanity check tests (warn on >500 tok/s, no warn otherwise) │ 18 tests │
└──────┴──────────────────────────────────────────────────────────────────┴──────────┘
This is what it looks like now when I run `pi`
📊 Performance: llama.cpp/Qwen3.6-35B-A3B-MXFP4_MOE.gguf
Prefill: 15,460 tokens @ 20104.0 tok/s
Generation: 12,179 tokens @ 52.6 tok/s
Combined: 27,639 tokens @ 118.9 tok/s (3.9m total)
TTFT: 769ms
Turns: 36
2026-04-28 10:52:00 +01:00
a38c76c65e
move pi-llm-performance to monorepo, update README and add deno.json
2026-04-28 10:06:03 +01:00
0cf13ed54e
move pi-llm-performance to this repo
2026-04-28 10:00:45 +01:00
36b30c1f02
Create detailed readme for pi-turn-limit
2026-04-23 16:10:40 +01:00
a4181af13e
feat: unlimited turns + tests
2026-04-23 15:56:16 +01:00
191507785f
fix(pi-turn-limit): use turnCount for boundary check instead of event.turnIndex\n\nThe exceeded check used event.turnIndex which keeps incrementing from\nthe original session, causing false aborts after a boundary confirmation\nreset. Now turnCount is used consistently, and the dead exceeded check\nis removed since the boundary at turnCount === maxTurns handles all cases.
2026-04-21 12:48:14 +01:00
a7f9822fa0
feat(pi-turn-limit): add widget, /turn-limit command, and boundary confirmation
...
- Live widget showing Turns: {current}/{max}
- /turn-limit <N> command to change max turns mid-session
- Confirmation dialog at boundary turn (Yes resets counter, No aborts)
- Widget visible on session reload and fresh start
2026-04-21 12:34:09 +01:00
14282370ec
Added live widget for turn limit
2026-04-21 12:28:13 +01:00
ce325cfec9
plan for turn limit widget
2026-04-21 12:28:00 +01:00
68c7cb2daf
setup: workspace, dev deps, and project-local extension install
...
- Add pnpm-workspace.yaml for monorepo
- Add @mariozechner/pi-coding-agent as root devDependency (TS types)
- Create .pi/settings.json with local package reference
- Extension auto-loads and hot-reloads via /reload
2026-04-21 11:47:47 +01:00
57d238a1ea
feat: restructure as pnpm monorepo workspace
...
- Move limit-turns.ts into packages/pi-turn-limit/src/index.ts
- Add root package.json (private workspace manifest)
- Add pnpm-workspace.yaml
- Add shared tsconfig.json
- Add pi package manifest to extension (pi.extensions, pi-package keyword)
- Update AGENTS.md with monorepo workflow
2026-04-20 23:04:34 +01:00