Privacy
The point of the CLI is that Postlyra never sees your code. Here is exactly what goes where.
What stays on your machine
- Your repos, working trees, diffs and file contents.
- Full commit messages and bodies.
- Note contents.
- Repo paths and git remotes.
None of these are ever sent to Postlyra.
What goes to your AI provider
The prompt contains:
- Commit subjects (the first line only), with a short date and your repo label.
- The first couple of lines of each recent note in
0-inbox/. - Each bullet from
0-inbox/content-inbox.md. - Your brand's persona, voice guide and content pillars.
This goes to the claude CLI over stdin, or to the Anthropic API with your own key. It is a call you control, to a provider you already trust with your code. Postlyra is not involved and cannot see it.
It is still your commit subjects leaving your machine
If your commit subjects contain client names, credentials or anything else confidential, that text reaches your AI provider. Run postlyra mine --dry-run first and read the work log. That is the exact text that will be sent.
Use exclude to keep sensitive repos out entirely.
What goes to Postlyra
Three calls.
GET /teams, when a brand needs resolving. Sends your token.
GET /ideas/mining-context, before mining. Sends your token and brand. Receives the known refs, voice, pillars and persona.
POST /ideas/import, at the end. Sends, per idea:
| Field | Example |
|---|---|
headline | the queue timeout bug that cost a night of sleep |
angle | job timeout was under the retry window, so slow jobs ran twice |
pillar | D |
format | linkedin |
recording | Screen-recording notes, for reels |
source_refs | ["myrepo@a1b2c3d"] |
That is the whole payload.
About source refs
source_refs reaches Postlyra, and it contains your repo label and short commit SHAs, for example myrepo@a1b2c3d.
A short SHA on its own is not useful to anyone without your repository. But it is a real identifier, so it is worth knowing it is stored. The label is whatever your folder is called, not the full path.
If even that is too much, mine only from a notes vault (--no-vault inverted: set folders to [] and configure a vault). Note refs carry filenames, not SHAs.
Your token
Stored in ~/.config/postlyra/config.json, mode 600.
It is a full-access account token. Anyone who reads that file can act as you across every brand on your account. Revoke it from your profile, under API tokens, if a machine is lost.
Verify any of this yourself
The CLI is published with its source, has zero dependencies, and is small.
npm view @postlyra/cli
cat "$(npm root -g)/@postlyra/cli/src/api.js"src/api.js is every network call the tool makes to Postlyra. src/ai.js is every call to an AI provider. There are no others.