Skip to content

mekedron/ClipSlop

Repository files navigation

ClipSlop icon

ClipSlop

Select text. Press a hotkey. Grammar fixed.
AI-powered text transformations for macOS — fix grammar, translate, rewrite, format — without leaving your app.
Free and open-source.

Download  ·  Buy Me a Coffee ☕


ClipSlop is a free, open-source AI writing tool for macOS that works in any app. Fix grammar, translate text, rewrite in different tones, format as email or Markdown — all with a keyboard shortcut. Use it as a simple AI grammar checker with a single hotkey, or chain multiple AI prompts into a full text transformation pipeline. Supports ChatGPT (free sign-in), OpenAI API, Anthropic Claude, Ollama (local models), and any OpenAI-compatible provider.

Table of Contents


Why ClipSlop?

Most AI writing tools make you copy text, switch to a browser, paste, wait, copy the result, switch back, paste. ClipSlop does it with a hotkey — right where you're already typing.

Fix grammar without thinking about it:

select text → ⌃⌘G → grammar is fixed in place. Done.

That's Inline Run — assign any prompt to a global hotkey, and it runs inline: captures the selected text, transforms it, pastes the result back. You never leave your app.

Need more than one step? Chain transformations into a pipeline:

⌃⌘C → RB → TE → FE → done.

Each key picks a prompt from a navigable tree — RB Rewrite → Business, TE Translate → English, FE Format → Email. Every step is saved, arrow keys to go back, branch from any point. No browser, no copy-paste, no tab switching.

Free, open-source, works with any AI provider — ChatGPT, Claude, Ollama, or your own API.


ClipSlop — AI text transformations for macOS with prompt tree, Inline Run, transformation history, and search

Demos

Unedited screen recordings of the released app.

Run inline anywhere  ·  Inline Run  ·  ⌃⌘G · ⌃⌘T · ⌃⌘/

Three lines, three global shortcuts. Select the first line — Fix Grammar. Select the second — Translate → English. Select the third (prefixed with //) — Run Custom Prompt with the instruction typed inline after //. Every result pastes back where the cursor is.

Inline.Run.Demo.mp4

More on this mode in the docs: Inline Run.

Chain prompts across providers  ·  Full pipeline  ·  ⌃⌘C → R B → T F

A rough draft typed straight into Gmail: trigger ClipSlop, rewrite for business tone, translate to Finnish, paste back into the same message. Every step is saved as a history node — branch off if you want a different turn.

Prompt.Chaining.mp4

More on this mode in the docs: The full pipeline.

Analyze any selection on the web  ·  Run in Editor  ·  ⌃⌘⌥T → A S

Open a Finnish news article, highlight a paragraph, translate to English with Run in Editor, then condense it into a short summary with Analyze → Summary. The full pipeline goes anywhere you can highlight text.

Analyze.any.text.mp4

More on this mode in the docs: Run in Editor.

OCR images, then keep going  ·  Screen OCR  ·  ⇧⌘2 → T E → A S

Capture a region of the screen. Apple Vision recognises the text on-device, drops it into the panel, and you can keep chaining — translate, then summarise, then copy. Useful when the source is an image, a PDF, or an app that won't let you ⌘C its text.

OCR.mp4

More on this mode in the docs: Screen OCR.

How it works

Inline Run (fastest)

Select text → ⌃⌘G → grammar fixed in place

Assign any prompt to a global hotkey. ClipSlop captures the text, runs the prompt, pastes the result — all in the background.

Full pipeline

Select text → ⌃⌘C → Navigate prompts with keys → Chain transformations → Copy result
  1. Trigger — Select text anywhere, press ⌃⌘C. Text appears in a floating panel.
  2. Navigate — Prompt tree with single-key mnemonics: T → Translate, R → Rewrite, F → Format. Drill into folders, pick a prompt — one keypress each.
  3. Chain — Result becomes input for the next prompt. Translate → Elaborate → Format as Email. Each step saved.
  4. History — Arrow keys navigate the full transformation chain. Jump to any step, branch off.
  5. Use — Copy (⌘C), edit (⌘E), save (⌘S), or keep chaining.

Prompt Assistant

An always-on-top chat window where an AI assistant edits your prompt library for you — so you don't have to dig through Settings.

⌃⌘⌥P → "the grammar prompt doesn't handle passive voice — fix it" → Approve

Open it with ⌃⌘⌥P (reconfigurable in Settings → General → Keyboard Shortcuts) or the Prompt Assistant item in the menu-bar menu. Ask in plain language — "make a Legal folder and move the contract prompts into it" — and the assistant finds the prompt, folder, or setting and proposes the edit.

  • Nothing changes without your say-so. Every proposed change is an Approve/Reject card, applied only after you confirm. Deletes show an extra warning (with a descendant count for non-empty folders).
  • Full library control — create / edit / delete prompts, create / rename / delete folders, move prompts between folders, assign or clear the two per-prompt global shortcut slots (Inline Run, Run in Editor), and set per-prompt display mode, the "select all before capture" option, and provider.
  • Works with tool-calling providers — OpenAI (API key), OpenAI (Sign In / ChatGPT), Anthropic, Ollama, and OpenAI-compatible. The CLI Tool provider isn't supported; the window shows a notice to switch. A provider switcher in the header lets you pick one and jump to Provider Settings.
  • Frosted, always-on-top panel. The chat input reuses the ⌘K quick-instruction field (Enter sends, Shift+Enter for a newline, Esc closes). Fully localized into all 17 supported languages.

Features

  • Inline Run — Assign a global hotkey to any prompt. Captures selected text, runs the prompt, pastes the result inline — you never leave your app
  • Run in Editor — Like Inline Run, but opens ClipSlop and auto-runs the prompt so you can review, edit, or keep chaining
  • Prompt Assistant — A floating chat window (⌃⌘⌥P) where an AI assistant edits your prompt library for you via tool calling; ask in plain language, approve each change before it applies
  • Prompt shortcuts — Configure per-prompt in Settings → Prompts; shortcuts appear in the menu bar organized by folder
  • Keyboard-first — Single-key mnemonics for prompt navigation, all actions have shortcuts
  • Full pipeline — Chain unlimited transformations, navigate history with arrow keys, branch from any step
  • Multi-provider — OpenAI (sign in with ChatGPT or API key), Anthropic, Ollama, CLI tools, any OpenAI-compatible API
  • Nested prompt tree — Organize prompts in folders, each with a mnemonic key
  • Built-in prompts — Translate (18 languages), Rewrite (7 tones), Format (7 tools), Dev (6 tools), Analyze (4), Convert
  • Manual editing — Edit any result inline (⌘E), saved as a history step
  • Find in text⌘F search with highlighting across all display modes
  • Screen OCR — Capture and recognize text from any screen region with OCR (⇧⌘2)
  • Blank editor — Open an empty editor (⌃⌘N), write text, run prompts on it
  • Generate prompts with AI — Describe what you want, AI writes the system prompt
  • Per-prompt settings — Override provider, display mode per prompt
  • Import/Export — Share prompt configurations as JSON
  • iCloud Sync — Prompts sync across Macs
  • Temperature & reasoning — Per-provider temperature control, reasoning effort for ChatGPT models
  • Multiple display modes — Plain text, Markdown (native or HTML renderer), HTML
  • Adjustable UI — Opacity, size, theme, launch at login

Built-in prompts

[⌘/] // Your prompt — type // followed by your instruction to run a one-off custom prompt
[T]  Translate   → English, Finnish, Russian, Spanish, French, German, + 12 more
[R]  Rewrite     → Elaborate, Neutral, Professional, Warm, Business, Playful, Biblical
[F]  Format      → Fix Grammar, Clean Up, Beautify Code, Reformat, Email, Markdownify, HTMLify
[D]  Dev         → Add Comments, Beautify Code, Clean Logs, Explain Code, Explain Stack Trace, Naming
[A]  Analyze     → Summary, Explain Simply, TL;DR, Condense 20%
[C]  Convert     → HTML, Markdown

Some prompts ship with default global keyboard shortcuts (Inline Run pastes the result inline, Run in Editor opens ClipSlop):

Shortcut Prompt Mode
⌃⌘/ // Your prompt Inline Run
⌃⌘⌥/ // Your prompt Run in Editor
⌃⌘G Fix Grammar Inline Run
⌃⌘F Reformat Inline Run
⌃⌘T Translate → English Inline Run
⌃⌘⌥T Translate → English Run in Editor
⌃⌘⌥A Explain Simply Run in Editor

Fully customizable — add your own prompts, folders, mnemonics, and global shortcuts in Settings → Prompts.

Keyboard shortcuts

Shortcut Action
⌃⌘C Trigger ClipSlop (selected text)
⌃⌘V Process from clipboard
⌃⌘N Blank editor
⇧⌘2 Screen capture (OCR)
⌃⌘⌥P Prompt Assistant
⌘E Edit mode
⌘F Find in text
⌘S Save to file
⌘O Open in TextEdit
⌘D Cycle display mode
⌘, Settings
↑↓ Navigate history (↑ newer step, ↓ older step)
Space Page down
⇧Space Page up
Esc Close / Back

Comparison with other AI writing tools

ClipSlop RewriteBar WritingTools Cai ClipboardAI WritersBrew Elephas Fixkey ShortcutAI Raycast AI PopClip ChatGPT (web)
Prompt chaining ✅ Unlimited chaining, full history ⚠️ Sequential action flow, no history ❌ One action ❌ One action ❌ One action ❌ One action ❌ One action ❌ One action ❌ One action ⚠️ Limited, no true pipeline ❌ One action ❌ Manual workflow
Keyboard-first ✅ Single-key mnemonics, full pipeline navigation, global shortcuts for text fields (Inline Run, Run in Editor) and on-screen text (OCR) ⚠️ Shortcut + action picker ⚠️ Hotkey + action picker ⚠️ ⌥C hotkey + action list ⚠️ Per-prompt shortcuts ⚠️ Shortcut + menu ⚠️ Super Command shortcut ⚠️ Custom shortcuts ⚠️ Shortcuts + // text commands ⚠️ Launcher, menu-based AI ❌ Mouse-driven ❌ Browser UI
Prompt organization ✅ Nested folders with mnemonics ⚠️ Flat action list ⚠️ Fixed presets + custom instructions ⚠️ Flat action list ⚠️ Flat list ⚠️ Flat preset list ⚠️ Flat snippets ⚠️ Flat list ⚠️ Flat list ⚠️ Flat command list ⚠️ Flat list ❌ Chat history
Step history ✅ Navigate back/forward, branch from any step ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ⚠️ Scroll up
Branching history ✅ Branch from any intermediate step ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No ❌ No
Provider freedom ✅ ChatGPT sign-in (free), API keys, Ollama (local), CLI tools ✅ 37+ providers, local models, Apple Intelligence ✅ Gemini (free), OpenAI, Anthropic, Ollama, MLX local ✅ Built-in local, Ollama, LM Studio, Apple Intelligence, cloud APIs ⚠️ BYO key (OpenAI, OpenRouter) ⚠️ BYO OpenAI key only ⚠️ Built-in + BYO keys (OpenAI, Anthropic, Gemini) ❌ Built-in only (provider unclear) ❌ Managed API only (no BYO keys) ⚠️ Multiple, not fully open BYO ⚠️ OpenAI API ❌ OpenAI only
Screen OCR ✅ Capture any screen region (⇧⌘2) ❌ No ⚠️ Image processing via AI vision ✅ Screenshot text extraction ❌ No ✅ OCR to Text AI ❌ No ❌ No ❌ No ❌ No ❌ No ⚠️ Image uploads only
Platform ⚠️ macOS (native, works in any app) ⚠️ macOS (native, works in any app) ✅ macOS + Windows + Linux ⚠️ macOS (native, works in any app) ✅ macOS + Windows (native, works in any app) ⚠️ macOS (native, works in any app) ⚠️ macOS + iOS ⚠️ macOS ❌ Chrome extension only (browser text fields) ⚠️ macOS ⚠️ macOS ✅ Web (any platform)
Price ✅ Free, open-source ⚠️ $29 one-time (BYO key) or $5/mo ✅ Free, open-source ✅ Free, open-source ⚠️ €29 one-time (7-day trial) ⚠️ $24–$49 one-time + API costs ❌ $9.99–$39.99/mo ❌ $48/year ⚠️ Free (limited) / $5.90–$19.90/mo ⚠️ Free tier + Pro ~$8/mo ⚠️ $30 one-time + API costs ❌ $20/mo

Install

Homebrew

brew tap mekedron/tap
brew install --cask clipslop

Download

Grab the latest .dmg from Releases. Drag to Applications.

Opening the app

Drag ClipSlop.app to Applications and double-click. That's it — no Gatekeeper warning, no "Open Anyway" dance.

ClipSlop is signed with an Apple Developer ID and notarised by Apple, so macOS opens it like any other app.

The app is safe, and you don't have to take my word for it. The source is fully open, and every release is built and signed automatically by GitHub Actions straight from this repository — nothing is added to the binary that isn't here. You can check the signature yourself:

spctl -a -vvv -t exec /Applications/ClipSlop.app
# ClipSlop.app: accepted
# source=Notarized Developer ID

Upgrading from v1.x? Those releases were unsigned (v2.0.0 was the first signed one). macOS ties Accessibility and Screen Recording permissions to the app's signature, so the first signed version you install may need those granted once more: System Settings → Privacy & Security → Accessibility, remove any stale ClipSlop entry with , then re-add ClipSlop.app with +. Repeat under Screen Recording if you use OCR. Your prompts, providers, and settings are untouched — and this is a one-time migration, not a per-update chore.

Build from source

git clone https://github.com/mekedron/ClipSlop.git
cd ClipSlop
swift build
# Or open Package.swift in Xcode → Run

Requires macOS 14+ and Xcode with Swift 6.0+.

Requirements

  • macOS 14.0+
  • An AI provider: sign in with ChatGPT (free), API key (Anthropic, OpenAI), local Ollama, or CLI tools

Contributing

Pre-commit hooks (required)

ClipSlop ships with a pre-commit hook that blocks commits when any localization key is missing in any of the 16 translated languages. Install it once after cloning.git/hooks/ is not versioned, so the hook is not active out of the box:

./Scripts/install-hooks.sh

What the hook does:

  • Runs only when a *.lproj/Localizable.strings file is in the commit.
  • Compares every key in en.lproj/Localizable.strings against the other 16 languages.
  • Blocks the commit if any translation is missing, and prints the offending keys per language.

To check translations manually at any time:

./Scripts/check-localizations.sh

Re-run ./Scripts/install-hooks.sh whenever the contents of Scripts/hooks/ change. Bypassing the hook with --no-verify is strongly discouraged — missing translations break the UI for users of those languages.

Acknowledgements

ClipSlop is built with these open-source libraries:

  • KeyboardShortcuts by Sindre Sorhus — customizable global keyboard shortcuts
  • LaunchAtLogin by Sindre Sorhus — launch at login support
  • Sparkle — software update framework for macOS
  • swift-markdown by Apple / Swift Project — Markdown parsing and rendering
  • Textual by Guillermo Gonzalez — native SwiftUI Markdown rendering
  • swift-rich-html-editor by Infomaniak — WYSIWYG rich HTML editor
  • Lobe Icons by LobeHub — provider icons for OpenAI, Anthropic, Ollama, Claude, Codex

License

MIT License — see LICENSE.

Support

If ClipSlop saves you time, consider buying me a coffee ☕

About

AI writing tool for macOS — fix grammar, translate, rewrite, format text with a hotkey. Chain prompts into pipelines. Works with ChatGPT, Anthropic, Ollama. Free and open-source.

Topics

Resources

License

Stars

21 stars

Watchers

1 watching

Forks

Sponsor this project

  •  

Packages

 
 
 

Contributors