Keyboard-first, local-first workspace for notes, prompts, snippets, project scratchpads, files, timers and lightweight automation on Windows.
One global hotkey brings the same workspace back from anywhere. Your text and project data stay local; optional integrations only run when you configure them.
Download the latest portable EXE · Wiki · Issues
Guides: English · Русский · Deutsch · Eesti · 日本語
Main workspace: project list, scratchpad editor, toolbar actions, inline image pills and file tools in one window.
FastPrompter is a persistent desktop scratch workspace for the material that normally ends up scattered across text files, chat drafts, terminals, temporary notes and browser tabs.
Press the global hotkey, work in the same project, then hide it again. Text is auto-saved. Projects keep their own silos, snippets, archive and files. The app is portable, keyboard-heavy and deliberately local-first.
Typical uses:
- prompts and agent instructions;
- project notes and TODO scratchpads;
- commands and reusable snippets;
- temporary research notes;
- small per-project file collections;
- AI usage-limit monitoring;
- alarms, interval reminders and productivity timers;
- sound cues and voice countdowns;
- local automation that sends queued text into a target application you explicitly arm.
- Global summon hotkey —
Alt+X/F15by default, with two configurable slots per action. - Project workspace — up to 100 project tabs with independent silos, snippets, archive and file containers.
- Hierarchical silos — nested scratchpads with pins, completion marks, recency tinting, multi-select and undoable operations.
- Auto-save — changed text is saved automatically; there is no save button you have to remember.
- Markdown-aware editor — headings, checkboxes, code fences, line numbers, folding, live preview and inline image/file interactions.
- Per-silo files — drag files into a normal folder-backed container and open them outside FastPrompter whenever you want.
- AI usage limits — optional multi-account quota views for configured Codex, Claude, Antigravity, ZCode and Freebuff sources, including reset-time visibility and per-window notifications where available.
- Timers — alarms, periodic notifications, one-off countdowns, productivity cycles and calendar events.
- Sound system — per-event sounds, presets, playback rules, voice countdowns, ambience and per-event gain control.
- 33 interface languages — live UI language selection with flag indicators.
- Portable recovery — SQLite +
.bak+ Markdown snapshots + optional mirror + persisted undo + trash. - Optional watcher — local, explicitly armed prompt delivery into a selected target app.
The screenshots below are grouped by workflow instead of being a random wall of windows. The main README keeps the useful views visible and pushes the deep configuration screens into collapsible sections.
Quick quota overlay. Multiple accounts and providers, remaining percentages and reset timing in one glance. |
Reset queue. Soonest upcoming automatic quota resets across configured accounts. |
AI limits: full settings gallery
More settings: localization, Problip and shortcut help
Live localization example: the settings UI in Estonian. |
Problip: optional randomized short cues with interval, sound-pool and playback controls. |
Built-in shortcut reference for global and in-app actions.
Per-event routing. Choose sounds, enable/disable events, tune gain and normalize individual actions.
Sound presets, playback, voice countdown and ambience
- Download
FastPrompter.exefrom Releases. - Run it. No installer and no administrator rights are required.
- Press
Alt+Xto summon or hide the workspace. - Keep the
data/folder beside the EXE if you want a fully portable setup.
Python 3.11+ is recommended.
git clone https://github.com/vacterro/FastPrompter.git
cd FastPrompter
uv sync
uv run python FastPrompter.pywBuild the portable EXE with the repository build pipeline:
uv run python tools/build.pyA project is the top-level workspace unit. Each project owns its own silos, snippets, archive and file containers. Projects can be created, renamed, reordered and switched from the keyboard or mouse.
A silo is an auto-saved scratchpad. Silos can be nested, pinned, marked complete, tinted by recency, moved and multi-selected. The same project can therefore hold temporary notes, durable reference material and active task scratchpads without requiring separate windows.
Reusable text blocks can be assigned to F1–F10 or Ctrl+Shift+1–0, including placeholder-style content for prompts and commands.
Each silo can own a plain folder on disk. Dropped files remain normal files and can be opened in Explorer. Image files can be previewed from the UI without turning the database into an opaque binary store.
The editor is based on QPlainTextEdit and adds FastPrompter-specific behavior on top:
- Markdown-aware live highlighting;
- clickable checkboxes;
- heading/divider helpers;
- code fences and copy actions;
- optional line numbers, line marks and zebra stripes;
- section folding;
- live preview / source-style modes;
- inline image pills and file-drop actions;
- word-wrap and monospace-code options;
- undo that covers text plus key silo operations.
AI Limits is an optional monitoring surface. When a provider source is configured and available, FastPrompter can display quota windows, account labels, remaining percentages and reset timing without turning those values into the editor's own state.
Current source adapters cover combinations of Codex, Claude, Antigravity, ZCode and Freebuff depending on what is installed, authenticated and exposed by each provider.
The UI includes:
- a compact top-bar summary;
- a detailed hover overlay;
- account filtering and ordering;
- quota bars;
- reset-time queue;
- per-window threshold/reset notifications;
- provider-aware colors.
Provider values are treated as observed data, not estimates. If a provider cannot be queried, FastPrompter should report that state instead of inventing a number.
FastPrompter includes several local reminder surfaces:
- scheduled alarms;
- periodic and clock-boundary notifications;
- temporary countdown timers;
- productivity work/break cycles;
- calendar events;
- optional Problip randomized cues.
The sound engine can attach different sounds to UI events and reminders, with per-event gain, presets, global playback policy, countdown voice packs, ambience rules and an emergency STOP ALL SOUND control.
Primary application state is stored in SQLite. The default portable setup keeps data beside the executable; when that location is not writable, FastPrompter can fall back to the user-local application data directory.
Recovery is layered rather than pretending one backup mechanism can solve every failure mode:
- Transactional database saves using SQLite WAL;
- startup / throttled
.bakcopy after real changes; - daily Markdown snapshots that remain readable without FastPrompter;
- optional one-way Markdown mirror to another folder;
- persisted undo snapshots across restarts;
- trash instead of immediate destruction for silo/file removal.
Your notes, project files and settings are local by default. Optional features such as provider-usage probes or the watcher may communicate with a configured external target/provider because that is their explicit job; they are not required for normal notes/projects use.
The watcher can queue text from a silo and deliver it into a target application you explicitly arm for the current session.
Its behavior is intentionally bounded:
DISARMED → ARMED → WATCHING → SENDING
It waits for the target to appear idle, sends one item at a time, enforces gaps and failure cutoffs, and does not persist an armed state across restarts.
Target adapters live under core/watcher/ and can use Win32 or Chromium/CDP-style transports depending on the target.
Representative defaults:
Alt+X/F15— toggle FastPrompter;Shift+Alt+X— pie menu;Alt+E— lock window position;Alt+S— always on top;Alt+D— sidebar;Alt+A— hide on click-out;Ctrl+Q— snap window to screen zones;Ctrl+Plus/Ctrl+Minus— UI scale;F1–F10— snippets;Ctrl+Alt+Shift+Q— quit.
Most hotkeys are rebindable from the UI, with two slots per action where supported.
FastPrompter ships with multiple built-in themes including the dark/golden default, OLED, Dracula, Nord and Solarized-style variants, plus detailed color customization.
The interface ships with 33 language packs. Language switching is designed to update the running UI rather than requiring a second install or separate executable.
uv sync --group dev
uv run python -m compileall -q src FastPrompter.pyw
uv run ruff check src/ tests/ tests_smoke/
uv run bandit -q -r src/fastprompter -ll
uv run pytest tests/ tests_smoke/ -qCI runs on Windows and is expected to gate compilation, linting, Bandit Medium+ findings and the repository test suites. The authoritative test total belongs to the exact revision being tested; do not copy an old test count forward as release evidence.
- English guide
- Русское руководство
- Deutsche Anleitung
- Eesti juhend
- 日本語ガイド
- CHANGELOG
- GitHub Wiki
- Watcher Engine architecture
The README and the current source tree are the primary truth for current behavior. Wiki pages may describe an earlier v0.8.x state if a subsystem changed later.
The canonical version is stored in VERSION and synchronized with the project/release metadata by repository tooling. Releases are tagged v<version> at the exact accepted source commit and published through the repository release pipeline.
Do not infer release identity from a filename alone. For reproducible release work, use the release commit, executable hash and provenance records produced by the release tooling.
- Autosave still has a finite interval; a hard process kill can lose the most recent unsaved seconds of typing.
- A
.bakfile is a rollback point, not a complete backup history. - Daily snapshots are intentionally pruned rather than retained forever.
- Optional provider integrations depend on what each provider exposes and on the local authentication state.
- Watcher target-idle detection is best-effort and should only be armed against a target you intend to automate.
MIT — see LICENSE.
Built with Python, PyQt6 and an unreasonable amount of attention to tiny workflow annoyances by vacterro.
This repository is part of the broader SAIPEN / vacterro project ecosystem.
Author hub · SAIPEN HQ · SAIPEN Core · ZAICODE · FastPrompter · SAIPEN Community
For reproducible bugs and durable feature requests, use this repository's GitHub Issues. Use Discord for quick discussion, screenshots and cross-project feedback.























