Hey Pepper

Your AI chief of staffDocs

Hey Pepper
Help

Frequently asked questions

Can Pepper send messages for me?

No. Pepper never writes to the chats it reads. Pepper reaches your chats through Beeper Desktop, and the token that gives it access is created with "Allow sensitive actions" off, so Beeper itself refuses every attempt to send, edit or delete a message or mark one as read. npm run check also scans Pepper's code for anything that would write and refuses it; the scan catches ordinary mistakes, and the read-only token is the real wall. When Pepper drafts a reply, you copy it into your own app and send it. The only exception is a routine, a scheduled program you write and install yourself, which declares what it sends.

Will it mark my messages as read?

No. Marking as read changes the chat, and Pepper's token can't change anything. Your unread counts stay as they were.

Where is my data kept?

On the Mac that runs Pepper, in one data folder (./data by default): a database file, a few small memory files, and the settings for the phone line, if you gave Pepper one (it can take calls; see Giving Pepper a phone line). Pepper makes no automatic backup copies. npm run backup creates a local copy, normally in ~/pepper-backups. If you use Time Machine and it includes the data folder, the data is in that backup too.

What leaves the Mac?

Message text goes to Anthropic, the company behind the Claude models Pepper runs on, as model input when Pepper reads new messages, writes a brief (the summary it sends you three times a day) or answers a question, and Anthropic's retention terms apply. Voice notes are turned into text on the Mac by default, and nowhere else. Briefs and answers go to your Telegram chat. If you turn on exact meeting quotes, a question about a meeting also goes to Tactiq. Details are in How Pepper keeps your data safe.

Can a message in my chats trick Pepper?

People will try, and no assistant is fully immune. Pepper's main protection is that, apart from a routine you install yourself, it has no way to send anything to anyone but you, whatever a message says. On top of that, chat text is always treated as something to read, never as instructions; one-time codes and links that carry a secret are masked, though ordinary links are left as they are; only your own words can close something you owe, a reply or a promise Pepper is tracking for you; and a fact drawn from someone else's words, something Pepper learned about a person, waits for your OK. Messages you forward to your Telegram bot are never run as commands. See the threat model.

Which chats does it read?

The chats you connect through Beeper Desktop, such as Telegram, Signal, WhatsApp or iMessage. Chats you don't add to Beeper, Pepper never sees. On Telegram, /chats lists your chats with their ids; /mute <chat_id> makes one summary-only, and /ignore <chat_id> keeps it out of briefs, answers and search, though its messages still land in the archive on the Mac. Email and calendars are not connected yet.

What does it cost to run?

Pepper is free. You pay for model use on your own Anthropic API key. Spending is capped at $8 a day and $150 a month by default, with $1 a day kept back for briefs. Every brief shows how much you've spent today and this month, and /cost shows it any time. If you choose OpenAI for speech-to-text, that is billed on your OpenAI key, outside these caps.

Can I use another model?

Not yet. Pepper runs on Anthropic's Claude models today: Opus for the brief and judgment calls, Sonnet for reading chats and looking things up, and the code sets which model handles each job. Other models are on the list, with no code written yet: OpenAI-compatible APIs, which would also cover OpenRouter, and local models through Ollama or LM Studio. For speech-to-text you can already choose OpenAI instead of the local model with PEPPER_STT=openai.

Does it need the internet?

Yes. It needs Anthropic for the model and Telegram to reach you. Speech-to-text runs on the Mac unless you choose OpenAI. Pepper's voice on calls is made on the Mac, and so is search by meaning.

Can I try it on my laptop?

Yes. Setup is the same. A laptop sleeps when idle, so briefs and calls stop while it sleeps. For daily use, put Pepper on a Mac that stays on; see Setting up the Mac that runs Pepper.

Can other people use my Pepper?

No. The Telegram bot answers only you, matched by your numeric Telegram user id, in one private chat, and ignores everyone else without a reply. The dashboard, Pepper's web pages, opens only over Tailscale, a private network between your own devices, and only for the logins you list in PEPPER_DASH_USERS. Pepper trusts the login Tailscale attaches, so a program running on the Mac itself could pass itself off as one of those logins; the Mac has to be yours alone.

What do people hear if they call my Pepper?

Contacts you list and strangers hear that they are talking to an assistant, and can leave a message. The message reaches you on Telegram. Calling Pepper never gives them access to your data. See Talking to Pepper by phone.

What is the phone passphrase?

A phrase you say aloud when you call Pepper from your own number, so you can get at your data on that call. Your number alone unlocks nothing. Set it on the Mac with npm run phone -- passphrase; the input is hidden and only a scrambled version of it, called a hash, is stored. After two failed calls in an hour it locks for an hour. Never say it where it can be recorded, and don't reuse it anywhere. See your passphrase.

What happens when the Mac sleeps or loses power?

Pepper stops until the Mac wakes. When it starts again, it catches up on messages, and a brief up to 90 minutes late is still sent. Pepper records each brief it sends, so a late one is not sent again; a crash in the second between sending and recording is the one way to get a repeat. To keep it running, set the Mac to never sleep and to start after a power cut, and stay logged in: Pepper runs in your login session, and with FileVault on, someone has to unlock the Mac after a restart. See Setting up the Mac that runs Pepper.

How do I pause Pepper?

Send /halt on Telegram. Pepper stops sending scheduled briefs and nudges (the messages it sends when a task you gave it is due), stops looking through new messages, refuses questions, and tells phone callers it is paused. New messages still arrive in the archive on the Mac, and the local search index keeps up with them, but Pepper itself sends nothing to Anthropic. Your routines keep running; pause each one separately, since a routine is your own program and can do what it likes. Send /resume to turn Pepper back on.

How do I stop it completely?

Stop the background service and remove it:

launchctl bootout gui/$(id -u)/com.pepper.agent
rm ~/Library/LaunchAgents/com.pepper.agent.plist

Routines you installed have schedules of their own, so run npm run routines -- uninstall <name> for each.

One step only you can do. You: revoke the Beeper token in Beeper Desktop, the Telegram bot token with @BotFather /revoke, and the API key at platform.claude.com if you no longer need them.

How do I delete what it knows about someone?

Send /forget with the person's name, such as /forget Amber Liu. Pepper shows exactly what would go and asks you to confirm. It deletes their messages, your direct chat with them, the items and facts built on their messages, and the briefs and conversations that mention them. Their messages are not imported again. There is no undo. Copies stay in your actual apps, in Telegram, and in backups until those expire; restoring an older backup brings them back. In a recorded meeting they were in with other people, their name is removed but the transcript stays.

How do I delete everything?

Stop Pepper as above, then delete the data folder and any data.before-restore-* folders a restore left beside it. Delete ~/pepper-backups as well (or your PEPPER_BACKUP_DIR), and .env if you want your keys gone too. If you set up the phone line, its bridge files are in ~/pepper-phone (or your PEPPER_PHONE_HOME), and routines kept outside the data folder are in your PEPPER_ROUTINES_DIR. That removes everything Pepper kept on the Mac. Old backups are only cleared while Pepper is running or when you take a new one, so a stopped Pepper won't clear them for you. Copies in a Time Machine backup stay until that backup expires, and copies in your chat apps and Telegram stay.