gzmo-pi
GZMO curated memory for Pi — local MCP vault + optional living stack (Redis, Neo4j, Qdrant)
Package details
Install gzmo-pi from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:gzmo-pi- Package
gzmo-pi- Version
0.1.0- Published
- Jul 18, 2026
- Downloads
- 174/mo · 22/wk
- Author
- maddogs
- License
- MIT
- Types
- extension, skill
- Size
- 15.9 KB
- Dependencies
- 1 dependency · 4 peers
Pi manifest JSON
{
"extensions": [
"extensions/gzmo.ts",
"node_modules/pi-mcp-adapter/index.ts"
],
"skills": [
"./skills"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
gzmo-pi
GZMO curated memory for Pi — Pi extension + MCP (via bundled pi-mcp-adapter).
Local-first by default (~/.gzmo SQLite vault). Optional living stack (Redis, Neo4j, Qdrant) documented below for operator hosts.
Gallery / install:
pi install npm:gzmo-pi
# or from git before npm publish:
# pi install git:github.com/maximilianwruhs-cyber/gzmo-pi
Then in Pi:
/gzmo setup
/reload
Call gzmo_memory_status / gzmo_memory_search.
What you get
| Piece | Role |
|---|---|
| This package | Pi extension (/gzmo …) + skill + wires gzmo-memory into MCP config |
| pi-mcp-adapter (bundled) | Lazy MCP tools so context stays small |
| GZMO binary | Product MCP server (gzmo mcp-serve) + local vault |
Product tools: gzmo_memory_status, gzmo_memory_search, gzmo_memory_turn_start, gzmo_memory_recall_pull, gzmo_memory_chain, gzmo_memory_profile, gzmo_wiki_search.
Quick start (laptop / product)
- Install GZMO binary + init vault:
curl -fsSL https://raw.githubusercontent.com/maximilianwruhs-cyber/GZMO/main/scripts/install-gzmo.sh | bash
- Install this Pi package:
pi install npm:gzmo-pi
- Wire MCP + verify:
/gzmo setup
/gzmo status
Restart Pi or /reload, then use gzmo_memory_status.
Manual MCP shape (if you prefer editing files):
{
"mcpServers": {
"gzmo-memory": {
"command": "/home/YOU/.local/bin/gzmo",
"args": ["mcp-serve"],
"env": {
"GZMO_CONFIG": "/home/YOU/.gzmo/gzmo.toml",
"GZMO_ALLOW_LAB_VAULT": "1",
"GZMO_PRODUCT": "1"
}
}
}
}
Written to ~/.config/mcp/mcp.json and ~/.pi/agent/mcp.json by /gzmo setup.
Living stack (Redis · Neo4j · Qdrant)
The product path above is intentionally minimal: SQLite vault, embeddings off, no LAN services.
For the full curated-memory topology (operator / multi-host — honeypot at scale, graph, vectors):
| Service | Typical role in GZMO |
|---|---|
| SQLite | Durable vault + FTS (always) |
| Redis | Hot session / cache plane |
| Neo4j | Graph / relationship memory MCP |
| Qdrant | Vector recall (when embeddings enabled) |
Suggested operator path
- Use the full repo: maximilianwruhs-cyber/GZMO
- Read:
- docs/PRODUCT_MCP.md — product vs ops tools
- Living / CT101 deploy docs in that repo (
docs/CT101_DEPLOY.md,docs/PI_GZMO_MEMORY_INTEGRATION.md)
- Deploy Redis + Neo4j + Qdrant next to your living
gzmo.toml - On the operator machine, prefer
scripts/install-shared-mcp.sh(LANgzmo-memory+ Neo4j) instead of the laptop product fragment - Keep this
gzmo-pipackage on workstations for the SQLite product vault; keep living MCP on the host that owns Redis/Neo4j/Qdrant
In Pi: /gzmo living prints the short pointer.
Commands
| Command | Action |
|---|---|
/gzmo setup |
Init ~/.gzmo if needed; merge gzmo-memory into Pi/shared MCP |
/gzmo status |
Binary, config, MCP wiring checklist |
/gzmo living |
Pointer to full Redis/Neo4j/Qdrant stack docs |
Develop
git clone https://github.com/maximilianwruhs-cyber/gzmo-pi.git
cd gzmo-pi
npm install
pi install .
Publish (maintainers):
npm login # interactive; or: npm config set //registry.npmjs.org/:_authToken=…
npm pack --dry-run # expect ~tens of KB, not tens of MB
npm publish --access public
# then: https://pi.dev/packages/gzmo-pi
pi-mcp-adapter is a normal dependency (installed by pi install / npm install), not bundledDependencies — bundling it pulled ~57MB of transitive SDK tree into the tarball.
Links
- Product binary / vault: GZMO
- Pi packages: pi.dev/packages
- MCP adapter: pi-mcp-adapter