d075291b08856e8aefa0709152512385855d0e59
When moving up/down through lines of varying lengths, the editor now remembers the original column position and restores it when reaching a line long enough to accommodate it. Example: cursor at column 10, move up to a shorter line (cursor clamps to end), move up again to a longer line - cursor returns to column 10. Implementation: - Add preferredVisualCol instance property (nullable) - Set it when moving to a shorter line during vertical navigation - Clear it when arriving at a line that fits the preferred column - Clear it on any horizontal movement or editing via setCursorCol() - Detect line rewrap by checking if cursor is in middle of line - When pressing right at end of prompt, set preferredVisualCol so subsequent up/down navigation uses that column position
Pi Monorepo
Looking for the pi coding agent? See packages/coding-agent for installation and usage.
Tools for building AI agents and managing LLM deployments.
Packages
| Package | Description |
|---|---|
| @mariozechner/pi-ai | Unified multi-provider LLM API (OpenAI, Anthropic, Google, etc.) |
| @mariozechner/pi-agent-core | Agent runtime with tool calling and state management |
| @mariozechner/pi-coding-agent | Interactive coding agent CLI |
| @mariozechner/pi-mom | Slack bot that delegates messages to the pi coding agent |
| @mariozechner/pi-tui | Terminal UI library with differential rendering |
| @mariozechner/pi-web-ui | Web components for AI chat interfaces |
| @mariozechner/pi-pods | CLI for managing vLLM deployments on GPU pods |
Contributing
See CONTRIBUTING.md for contribution guidelines and AGENTS.md for project-specific rules (for both humans and agents).
Development
npm install # Install all dependencies
npm run build # Build all packages
npm run check # Lint, format, and type check
./test.sh # Run tests (skips LLM-dependent tests without API keys)
./pi-test.sh # Run pi from sources (must be run from repo root)
Note:
npm run checkrequiresnpm run buildto be run first. The web-ui package usestscwhich needs compiled.d.tsfiles from dependencies.
License
MIT
Languages
TypeScript
93.4%
JavaScript
5.7%
CSS
0.4%
Shell
0.3%
C
0.1%