What stays local
Storage
Global config, daemon token, and every workspace live under
~/.pmb/.The read path
Recall runs locally - no LLM call, no network request.
The dashboard
Binds to
127.0.0.1 only; never exposed to the network.No telemetry
There is no PMB server to phone home, by design.
Secret redaction
Before an event is written, PMB scans its text for credentials and replaces each with a[REDACTED:<kind>] marker, so secrets aren’t stored:
- API keys: Anthropic, OpenAI, Google, Stripe, AWS.
- Tokens: GitHub, Slack, JWTs, bearer /
Authorizationheaders. - PEM private key blocks.
KEY=valuelines forAPI_KEY,SECRET,PASSWORD,TOKEN,DATABASE_URL.
Memory poisoning & procedural lessons
Local storage keeps PMB private, but it doesn’t make every remembered fact authoritative. PMB surfaces lessons as rules before an agent acts, so a low-trust memory could become a future instruction if recorded without review.- Treat recalled lessons as evidence with provenance, not invisible policy -
check source, confidence, freshness, and
surface_idbefore a risky action. - Review durable rules with
pmb lessonsand the broader view withpmb audit. - Be more conservative with automatic writes than explicit
learn/remember; archive suspect ones withpmb forget-auto. - Keep imported third-party histories in a separate workspace until trusted.