pi-export-config

Pi extension to export, import, SSH-transfer, and GitHub-sync pi configuration including extension secrets.

Package details

extension

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

$ pi install npm:pi-export-config
Package
pi-export-config
Version
1.0.0
Published
May 5, 2026
Downloads
not available
Author
faithless
License
MIT
Types
extension
Size
26.1 KB
Dependencies
0 dependencies · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./extensions"
  ]
}

Security note

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

README

pi-export-config

Pi package that adds commands for backing up and restoring ~/.pi/agent configuration, including extensions, themes, skills, auth files, MCP config, and extension secrets/state.

Security: this extension intentionally handles secrets. Review archives and keep private repositories private.

Install

pi install npm:pi-export-config

Then run /reload if pi is already open.

Commands

Local encrypted export/import

/export-config [output-path]
/import-config <archive-path> <password>

/export-config creates a password-protected archive and prints a generated 12-character lowercase alphanumeric password.

SSH import

/import-config user@host

Tries SSH public-key auth first. If it fails, prompts for a password and uses sshpass if available. Remote exports are stored on the remote machine under ~/.pi/agent/export-config/ and are unencrypted because transport is protected by SSH.

GitHub sync

/export-config-github [owner/repo|repo]
/import-config-github [owner/repo|repo]

Uses the GitHub CLI (gh) and creates/uses a private repository. Default repo name is pi-config-backup.

Clean import

Import flows can perform a clean import: the current config is backed up, then current ~/.pi/agent is reset except for sessions/ and backups/, then the selected config is applied.

Requirements

  • tar
  • openssl for local encrypted archives
  • ssh for SSH import
  • sshpass only for SSH password fallback
  • gh and git for GitHub sync