Refinify refines your messages with AI before you send them. It's available for both Windows and macOS platforms.
- Windows: Uses AutoHotkey v2 for system-wide keyboard shortcuts
- macOS: Uses Hammerspoon for system-wide keyboard shortcuts
Both platforms provide identical functionality with platform-appropriate keyboard shortcuts.
Refinify takes the text from the currently active edit box in any application—such as Slack, Gmail, Notepad, etc. It sends your text to an AI model, receives a refined version, and appends it to the end of your original text. This way, you can compare both versions and choose which message to use.
Download the latest release for your platform from the GitHub Releases page.
- Download
refinify-windows-X.X.X-installer.msifrom the latest release - Run the installer:
- Double-click the MSI file
- If AutoHotkey v2 is not installed, the installer will offer to download and install it
- Choose installation options:
- ✅ Create desktop shortcut
- ✅ Run on startup
- Click "Install"
- Configure API Key:
- After installation, Refinify will start automatically
- Press
Ctrl+Alt+Kto open the configuration dialog - Enter your OpenAI API key and settings
- Click "SAVE"
- Download
refinify-windows-X.X.X.zipfrom the latest release - Extract the zip file to your preferred location
- Install AutoHotkey v2 from https://www.autohotkey.com/download/ahk-v2.exe
- Run Refinify: Double-click
refinify/refinify-ahk/refinify.ahk - Configure: Press
Ctrl+Alt+Kto set up your API key
- Download
refinify-mac-X.X.X-installer.dmgfrom the latest release - Install the app:
- Open the DMG file
- Drag Refinify.app to Applications folder
- Launch Refinify from Applications
- First run setup:
- The app will check for Hammerspoon and offer to install it if needed
- It will automatically create the necessary symlinks and configuration
- Grant accessibility permissions when prompted
- Configure API Key:
- Press
⌘⌥Kto open the configuration dialog - Enter your OpenAI API key and settings
- Click "Save"
- Press
- Download
refinify-mac-X.X.X.zipfrom the latest release - Extract to your home directory (
~/) - Install Hammerspoon:
brew install --cask hammerspoon - Set up manually:
mkdir -p ~/.hammerspoon ln -s ~/refinify/refinify-hammerspoon/refinify.lua ~/.hammerspoon/refinify.lua echo 'require("refinify")' >> ~/.hammerspoon/init.lua
- Configure: Launch Hammerspoon and press
⌘⌥K
- Place your cursor in the edit box with the text you want to refine. Slack, Gmail, etc.
- Right before sending the message press one of the keystrokes below to refine your text.
Ctrl+Alt+P(⌘⌥Pon mac) will replace the original message with the refined message.Ctrl+Alt+R(⌘⌥Ron mac) will append the refined message to the original message.Ctrl+Alt+K(⌘⌥Kon mac) will show the configuration dialog to update API settings.
- Wait for 5 seconds and see the refined text appended to your original message.
Note: If your configuration is missing or incomplete (no API key set), the configuration dialog will automatically appear instead of performing the refinement action. Configure your API key and other settings first, then try the refinement again.
Configuration dialog now allows editing all parameters (API key, endpoint, model, etc.) on both Windows and macOS. The dialog validates numeric fields and creates a backup of your previous configuration.
Suppose you write a message in Slack:
helo, all, do you aware abiout this isue happend yesterda,?After Ctrl-Alt-P your edit box will contain:
Hello everyone, are you aware of the issue that happened yesterday?After Ctrl-Alt-R your edit box will contain:
helo, all, do you aware abiout this isue happend yesterda,?
Hello everyone, are you aware of the issue that happened yesterday?- ✅ Uses AI to make your messages clearer and more professional
- ✅ Works in any application with an editable text box
- ✅ Keeps your original text—compare with the refined version side-by-side
- ✅ Cross-platform support for Windows and macOS
- ✅ Single file installation for macOS (Hammerspoon)
- ✅ Preserves clipboard and restores original content
- ✅ Visual feedback with notifications (macOS)
- ✅ Error handling and user feedback
- ✅ Easy updates via git pull (macOS)
Both platforms require an API key configuration file and provide configuration templates for easy setup.
The project includes pre-configured templates for different OpenAI setups. Simply copy the appropriate template to .env-secrets and fill in your credentials:
For Standard OpenAI:
# Copy the standard OpenAI template
cp .env-secrets-openai.template .env-secrets
# Edit .env-secrets and add your API keyFor Corporate/Enterprise OpenAI:
# Copy the corporate OpenAI template (includes preview models)
cp .env-secrets-corporate.template .env-secrets
# Edit .env-secrets and add your corporate OpenAI credentialsBoth platforms include a comprehensive configuration dialog accessible via Ctrl+Alt+K (Windows) or ⌘⌥K (macOS). This dialog allows you to edit all configuration parameters (API key, endpoint, model, etc.), validates numeric fields, and automatically creates a backup of your previous configuration. This is the recommended method as it ensures your .env-secrets file is always properly formatted and up to date.
| Parameter | Description | Private OpenAI | Corporate/Enterprise OpenAI |
|---|---|---|---|
OPENAI_API_KEY |
Your API key | sk-abc123... |
corp-abc123... |
OPENAI_ENDPOINT |
API endpoint URL | https://api.openai.com |
https://company.openai.azure.com |
OPENAI_API_VERSION |
API version | (leave empty) | 2025-01-01-preview |
OPENAI_MODEL |
Model to use | gpt-4.1 |
gpt-4.1 |
Security Note: Never commit the .env-secrets file to version control. It's already included in .gitignore.
- Script not running: Check if green "H" icon is in system tray
- No response: Verify API key is correctly set in
.env-secretsin the project root - Permission errors: Run AutoHotkey as administrator if needed
- Configuration dialog appears: If the configuration dialog shows up instead of performing refinement, it means your
.env-secretsfile is missing or the API key is empty. Configure it first, then try again.
- No response: Check that your API key is correctly set in
~/refinify/.env-secrets - Accessibility errors: Make sure Hammerspoon has accessibility permissions in System Preferences
- Module not found: Ensure
refinify.luais linked and your init.lua includesrequire("refinify") - API errors: Check the Hammerspoon console for detailed error messages. If the OpenAI API call fails, a detailed error message will be shown, including your current configuration (API key, endpoint, version, and model) to help with troubleshooting.
- Configuration dialog appears: If the configuration dialog shows up instead of performing refinement, it means your
.env-secretsfile is missing or the API key is empty. Configure it first, then try again.
refinify/
├── README.md # This file - installation and usage guide
├── .env-secrets-openai.template # Standard OpenAI configuration template
├── .env-secrets-corporate.template # Corporate OpenAI configuration template
├── refinify-ahk/ # Windows implementation
│ ├── _JXON.ahk # JSON library for AutoHotkey
│ ├── refinify-generic.ahk # Core implementation
│ └── refinify.ahk # Main entry point
└── refinify-hammerspoon/ # macOS implementation
└── refinify.lua # Complete Hammerspoon implementation