Skip to content

Repository files navigation

nddev-pi-app

Portable setup manager for the current Pi Coding Agent.

This module manages only explicit caller-selected targets. It does not read or modify the owner's live ~/.pi, provider credentials, project trust store, or global package installation.

Current Pi Identity

The package identity, version pin, registry provenance, and runtime constraints are machine-owned by build/version.json, references/pi-baseline.json, and config/nddev-contract.json. Official Pi documentation is at https://pi.dev/docs/latest.

Usage

python3 cli-tools/nddev_pi.py list
python3 cli-tools/nddev_pi.py plan --target /absolute/pi-target
python3 cli-tools/nddev_pi.py install --profile full-auto --target /absolute/pi-target
python3 cli-tools/nddev_pi.py status --target /absolute/pi-target
python3 cli-tools/nddev_pi.py switch --profile safe --target /absolute/pi-target
python3 cli-tools/nddev_pi.py restore --backup 0 --target /absolute/pi-target
python3 cli-tools/nddev_pi.py remove --target /absolute/pi-target
python3 cli-tools/nddev_pi.py software-plan --target /absolute/pi-target
python3 cli-tools/nddev_pi.py software-status --target /absolute/pi-target
python3 cli-tools/nddev_pi.py software-install --target /absolute/pi-target
python3 cli-tools/nddev_pi.py software-update --target /absolute/pi-target
python3 cli-tools/nddev_pi.py launch --target /absolute/pi-target [--workspace /absolute/project] -- --help

software-install uses Pi's reproducible npm package channel in an isolated staging directory. The exact package pin, npm argv, integrity, staged layout, and consumer lifecycle-script policy are owned by the public machine contract files named above.

launch starts the target-owned <target>/bin/pi wrapper with target-local HOME, XDG_*, TMPDIR, PATH, PI_CODING_AGENT_DIR, PI_CODING_AGENT_SESSION_DIR, and PI_PACKAGE_DIR. Source-proven provider credential environment variables may be inherited by the child process only; they are not copied into target files. The target is not the project workspace: when --workspace is omitted, launch captures the caller's current working directory once and passes it as the child process cwd. An explicit --workspace must be an absolute existing directory whose final component is not a symlink. Pi 0.82.1 does not expose a native workspace, project, or cwd flag, so the manager does not inject one and rejects forwarded scope overrides.

Setup And Profiles

The only content setup id is nddev-builder. full-auto is the default runtime profile. safe is a reduced-tool future profile. These profiles are Pi permission/runtime settings, not content setups and not OS security boundaries. Switching to the already-current setup/profile succeeds as a no-op with changed: [] and backup_slot: null; valid pending cleanup may be drained first and is reported separately.

Pi does not document built-in permission prompts, sub-agents, or plan mode. The manager records that reality instead of inventing unsupported contracts.

nddev-builder

nddev-builder is default-on through documented native Pi resource surfaces:

  • settings.skills
  • settings.packages
  • local package manifest pi.skills

No external Pi package catalog entry or marketplace plugin is claimed by this module.

About

NDDev Pi setup module skeleton

Resources

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages