@firstpick/pi-extension-fish-user-bash

Use fish shell backend for Pi user bash commands (! and !!).

Packages

Package details

extension

Install @firstpick/pi-extension-fish-user-bash from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@firstpick/pi-extension-fish-user-bash
Package
@firstpick/pi-extension-fish-user-bash
Version
0.2.0
Published
Jun 8, 2026
Downloads
552/mo · 216/wk
Author
firstpick
License
MIT
Types
extension
Size
5 KB
Dependencies
1 dependency · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-extension-fish-user-bash

Use fish (or a custom shell) for Pi ! and !! command execution.

What it does

  • Overrides Pi user_bash operations to use your preferred shell.
  • Prefers explicit shell configuration via env var.
  • Auto-detects fish if not configured.
  • Falls back to $SHELL (if valid), then bash.
  • Uses cross-platform shell resolution (PATH-aware; supports Windows .exe lookups).

Install

pi install npm:@firstpick/pi-extension-fish-user-bash

Configuration

  • PI_USER_BASH_SHELL_PATH
    • absolute path (example: /usr/bin/fish), or
    • executable name resolvable on PATH (example: fish or bash)
    • if unset: tries fish automatically, then $SHELL (if valid), then bash

Commands

  • /user-bash-shell — print the currently resolved shell path.

Tools

None.

Example view

/user-bash-shell
Using shell for !/!! commands:
/usr/bin/fish

!echo $version
3.7.1

Use this when your normal shell setup lives in Fish and you want Pi bang commands to behave like your own terminal.