@jeffkafka/pi-nobody

Starter Pi package for building and publishing your own Pi agent

Package details

extension

Install @jeffkafka/pi-nobody from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@jeffkafka/pi-nobody
Package
@jeffkafka/pi-nobody
Version
0.1.0
Published
Apr 26, 2026
Downloads
68/mo · 68/wk
Author
jeffkafka
License
MIT
Types
extension
Size
3.7 KB
Dependencies
0 dependencies · 2 peers
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 Agent DIY Starter

This package is a minimal starter for shipping your own Pi package through npm.

Published package name: @jeffkafka/pi-nobody.

What is included

  • extensions/index.ts: a minimal extension that registers:
    • /diy-agent command so you can confirm the package loaded
    • diy_agent_profile tool so your agent can describe its own customization points

Local development

Test the package without publishing:

pi install /absolute/path/to/packages/pi-nobody

Or load the extension file directly:

pi -e /absolute/path/to/packages/pi-nobody/extensions/index.ts

After Pi starts:

  • Run /diy-agent
  • Ask the model to call diy_agent_profile

Customize it

Typical next edits:

  1. Add custom tools with pi.registerTool(...)
  2. Add guardrails with pi.on("tool_call", ...)
  3. Add custom slash commands with pi.registerCommand(...)
  4. Add skills/, prompts/, or themes/ and declare them in the pi manifest

Publish to npm

From this repository, publish only this workspace:

npm pack --dry-run -w packages/pi-nobody
npm publish -w packages/pi-nobody --access public

Do not use the repository root npm run publish unless you intend to publish every workspace package.

For the first public release of a scoped package, npm requires public access. Current npm guidance also recommends trusted publishing for CI releases.

Maintenance

  • Bump versions with semver: patch for fixes, minor for additive changes, major for breaking changes
  • Keep README.md and examples aligned with actual behavior
  • Prefer npm deprecate over unpublish for bad releases
  • If you add runtime dependencies, put them in dependencies, not only devDependencies
  • If you import Pi core packages in distributed code, keep them in peerDependencies