| Shortcut | Action |
|---|---|
| Alt+P | Summon or dismiss Pluma from anywhere |
| Enter | Submit query or command |
| Tab | Toggle the chat panel (Whisper) open/closed |
| Escape | Dismiss window (keeps agent running if active) |
| Shift+Enter | New line in chat input |
Pluma has three layers:
| Layer | Description |
|---|---|
| Command bar | The main input — always visible when open. Type queries or slash commands here. |
| Whisper panel | Full chat history. Opens with Tab or when a chat response arrives. Has its own send field for follow-ups. |
| Settings | Click the ⚙ icon to set your OpenRouter API key and model. |
Type a slash command in the command bar. All commands act on clipboard content unless you provide a direct argument.
| Command | What it does |
|---|---|
| /polite | Rewrites clipboard text as professional and warm |
| /concise | Removes fluff, shortens while preserving meaning |
| /tldr | Summarises to exactly 3 bullet points |
| /bash | Translates description to a PowerShell command |
| /regex | Converts plain English to a regex pattern |
| /explain | Explains code or text in simple terms |
| /doc | Generates docstrings/comments for code |
| /translate [lang] | Translates to the specified language (default: English) |
Every time Pluma opens, it reads your clipboard. That content is shown as a "ctx" strip in the chat panel and automatically included in all requests as context. You don't need to paste or mention it.
Agent mode activates automatically when your query contains action keywords:
You can also trigger it explicitly from the Whisper chat panel — same keywords apply.
| Tool | Description |
|---|---|
| take_screenshot | Captures the screen. Agent calls this before clicking anything. |
| mouse_click(x,y) | Clicks at absolute pixel coordinates. Shows targeting reticle. |
| double_click(x,y) | Double-click at coordinates. |
| type_text(text) | Types at the current cursor position. |
| key_press(key) | Presses a key or combo: enter, ctrl+c, ctrl+v, alt+tab, win, f5… |
| scroll(x,y,amount) | Scrolls at coordinates. Positive = down. |
| run_terminal(cmd) | Runs a PowerShell command. Returns stdout, stderr, exit code. |
| read_file(path) | Returns full text content of a file. |
| write_file(path, content) | Creates or overwrites a file. |
| list_directory(path) | Lists files and folders at the given path. |
| recall(query) | Searches conversation memory for relevant past context. |
When performing UI tasks, the agent always takes a screenshot first, identifies pixel coordinates of the target element, then acts. A cyan targeting reticle appears at every click location.
start chrome "url" via PowerShell. Make sure Chrome is installed.Pluma uses OpenRouter for all AI calls. Get a free key at openrouter.ai/keys — many models are free-tier. Your key is stored in the OS keychain (Windows Credential Manager), never in plain text.
All conversations are saved to a local SQLite database in your AppData folder. The session resets automatically at midnight each day. The agent can search this memory using the recall tool.
%APPDATA%\com.pluma.app\pluma.db.