pi-voxtype

Voxtype bridge for pi with direct session-scoped voice submission

Package details

extension

Install pi-voxtype from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-voxtype
Package
pi-voxtype
Version
0.1.0
Published
Mar 24, 2026
Downloads
19/mo · 2/wk
Author
arthurbragaa
License
MIT
Types
extension
Size
17.5 KB
Dependencies
0 dependencies · 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-voxtype

pi-voxtype connects voxtype to pi so spoken input is submitted to the active pi session as normal user messages.

What it does

  • start/stop recording from inside pi
  • send transcripts into pi with pi.sendUserMessage()
  • show a minimal footer icon while active
  • isolate transcripts per pi session by default
  • queue spoken input as followUp or steer while pi is busy

Requirements

  • Linux
  • pi
  • voxtype installed and working
  • voxtype daemon running

Recommended voxtype setup that worked well here:

  • model: base.en
  • GPU acceleration enabled
  • language: en
  • state_file = "auto"

Useful commands:

voxtype setup model --set base.en --restart
sudo voxtype setup gpu --enable
voxtype config
voxtype status --format json --extended

Install

pi install npm:pi-voxtype
# or
pi install git:github.com/arthurbragaa/pi-voxtype

Default usage

  • Alt+Space once → start recording
  • Alt+Space again → stop, transcribe, submit

The shortcut auto-enables the bridge for the current session.

Commands

  • /voice status
  • /voice toggle
  • /voice on
  • /voice off
  • /voice steer
  • /voice followup
  • /voice doctor

Default busy behavior: followUp.

Environment

  • PI_VOXTYPE_SHORTCUT — override shortcut
  • PI_VOXTYPE_INBOX — override inbox path

Examples:

PI_VOXTYPE_SHORTCUT=f6 pi
PI_VOXTYPE_SHORTCUT=off pi
PI_VOXTYPE_INBOX=/tmp/pi-voxtype-inbox.txt pi

Inbox behavior

Default inbox path:

${XDG_RUNTIME_DIR}/pi-voxtype/<session-hash>.inbox.txt

Each pi session gets its own inbox by default, so one recording is not sent to every open pi session.

Troubleshooting

Shortcut does nothing

Try another key:

PI_VOXTYPE_SHORTCUT=f6 pi

Recording works but nothing reaches pi

Run:

/voice doctor
/voice status

Check:

  • voxtype is on PATH
  • the voxtype daemon is running
  • the inbox path is writable
  • pi and voxtype are using the same inbox path

Status icon never changes

Make sure voxtype has:

state_file = "auto"