Luigit
repositories / pi-ext

pi-ext

bugabingas pi extensions

owned by admin

extensions/open/README.md

Raw
Rendered preview

open

Open mentioned files in an editor beside Pi.

Install / load

Loaded through the root pi-ext package. See root README.

Commands / tools / settings

Commands:

  • /open PATH opens an existing file directly.
  • /open opens the sole recent file or a fuzzy picker for multiple files.

Tools: none.

Hooks:

  • session_start reports a missing editor or supported host context.

Settings: none.

Behavior

/open reads the current session branch when invoked. It ranks existing file mentions by source: user, assistant, edit, then write. Paths are deduplicated and limited to 20. The picker keeps paths prominent and shows the source as its description.

The selected file opens through $EDITOR using the first available host:

  • WezTerm opens a new right-hand split using 69 percent of Pi's pane.
  • Termux starts a new foreground terminal session through its RUN_COMMAND intent.

The editor starts in the project root and receives an absolute file path. Launch is asynchronous; the pane or session closes when the editor exits. Termux requires allow-external-apps = true in ~/.termux/termux.properties.

Debugging

Opt-in metadata-only tracing follows debug contract. Safe events: session.start, session.shutdown, open.launch.start, open.launch.finish, open.launch.error.

# open

Open mentioned files in an editor beside Pi.

## Install / load

Loaded through the root `pi-ext` package.
See [root README](../../README.md).

## Commands / tools / settings

Commands:

- `/open PATH` opens an existing file directly.
- `/open` opens the sole recent file or a fuzzy picker for multiple files.

Tools:
none.

Hooks:

- `session_start` reports a missing editor or supported host context.

Settings:
none.

## Behavior

`/open` reads the current session branch when invoked.
It ranks existing file mentions by source: user, assistant, edit, then write.
Paths are deduplicated and limited to 20.
The picker keeps paths prominent and shows the source as its description.

The selected file opens through `$EDITOR` using the first available host:

- WezTerm opens a new right-hand split using 69 percent of Pi's pane.
- Termux starts a new foreground terminal session through its `RUN_COMMAND` intent.

The editor starts in the project root and receives an absolute file path.
Launch is asynchronous; the pane or session closes when the editor exits.
Termux requires `allow-external-apps = true` in `~/.termux/termux.properties`.

## Debugging

Opt-in metadata-only tracing follows [debug contract](../DEBUG.md).
Safe events: `session.start`, `session.shutdown`, `open.launch.start`, `open.launch.finish`, `open.launch.error`.