Skip to content

Commit d0a04c5

Browse files
committed
docs: rewrite changelog for release notes
1 parent 3a4122b commit d0a04c5

1 file changed

Lines changed: 49 additions & 45 deletions

File tree

CHANGELOG.md

Lines changed: 49 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,65 @@
11
# Changelog
22

3-
All notable changes to this project will be documented in this file.
3+
All notable user-facing changes, feature additions, and improvements to OpenClip are documented here.
44

5-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5+
---
76

8-
## [Unreleased]
7+
## v1.0.1 - 2026-08-22
98

10-
> Pre-release. OpenClip has not shipped a tagged release yet (the project began in
11-
> July 2026); the entries below summarize the current state of `main`.
9+
### Features & Improvements
10+
- **Rich Content & Formatted Text**: OpenClip captures and pastes rich text formatted with HTML and RTF, preserving text styles, headings, and links across supported applications.
11+
- **Mouse-Hold Trigger**: Added a configurable mouse-hold timer in General Preferences, allowing you to summon OpenClip simply by holding down the mouse click without dragging.
12+
- **Expanded Calendar Providers**: Added support for additional calendar services in event creation extensions.
13+
- **Normalized Popup Sizing**: Rebalanced proportions and typography across all 5 visual scale levels for crisp rendering on both Retina and standard displays.
1214

13-
### Added
15+
### Fixes & Stability
16+
- **Extension Trust Handling**: Fixed an issue where locally modified extensions could trigger unexpected trust warnings during editing.
17+
- **Browser Selection Reliability**: Resolved edge cases in Safari and Chromium-based browsers to ensure selections are captured instantly without lag.
1418

15-
- **Contextual popup bar** — select text in any app and a floating bar appears next to the selection with the actions that fit. The bar anchors to where the mouse is released and never covers the selected text.
16-
- **Action-search palette** — press <kbd>⌥⌘C</kbd> to turn the bar into a fuzzy search field over the *entire* action catalog, including disabled actions. Results are ranked by recency, then bar order.
17-
- **Clipboard fallback** — with no live selection the popup acts on the clipboard contents; Copy/Cut drop out automatically (`chrome.requiresLiveSelection`).
18-
- **Zero-config builtins** — Search, Copy, Cut, Paste, Services, Define, Calculate, Word Completion, and a Transform group (UPPERCASE, lowercase, Title Case, camelCase, Trim Whitespace, Format JSON).
19-
- **Extensions** — a unified `.openclipext` package format (JavaScript, AppleScript, shell, URL templates, key presses, Shortcuts, Services, and group sub-menus) with install from the built-in store or a file/folder, hot-reload of `~/.openclip/extensions`, and uninstall from Preferences.
20-
- **Extension Store** — browse, search, and install extensions from the catalog (`openclip-extensions` submodule) inside Preferences.
21-
- **Canvas content rendering**~~actions, AI results, long-press result cards, and previews render inside the popup panel via a content canvas instead of a separate floating panel; canvas extensions can author rich component trees~~ *(removed — see **Removed** below)*.
22-
- **AI Tools** — run selected text through Apple Intelligence, a local Ollama model, OpenAI, or Claude, or hand the query to your browser. AI presets are first-class, reorderable actions, and the AI Tools bar action opens a scoped palette.
23-
- **Custom action builder** — add web-search URL templates, text snippets, and shell scripts from the GUI without writing a manifest, backed by a 9,000+ SF Symbol picker plus Iconify, Font Awesome, Lucide, and Material Symbols icon search.
24-
- **Deep customization** — drag to reorder the bar, disable actions, override titles and icons, and pick a Classic or Glass theme (Liquid Glass on macOS 26+, frosted material on 14–15) in System, Light, or Dark.
25-
- **App Rules** — scope actions to apps with allow/deny rules, selection regexes, and required options that prompt when missing.
26-
- **Onboarding & permissions** — a 4-step first-launch onboarding and Accessibility permission management with a relaunch helper.
27-
- **Debug tooling** — an in-app debug-log store (ring buffer backed by OSLog) and a `--dump-logs` command-line flag.
28-
- **Start at login** — native `SMAppService` integration in Preferences.
19+
---
2920

30-
### Changed
21+
## v1.0.0 - 2026-08-21
3122

32-
- Subprocess actions run under a 30-second watchdog (GCD timer + process-group kill) and read child output via GCD readability handlers, so stuck scripts can't wedge the run loop.
33-
- Text retrieval is Accessibility-only; the clipboard-based `Cmd+C` and menu-copy fallbacks were removed so OpenClip never disturbs the clipboard while monitoring.
34-
- Preferences moved to a Raycast-style `NavigationSplitView` sidebar with a tightened, grouped General tab.
35-
- Group and AI bars open scoped palettes instead of floating panels; the hover "bubble" and the separate AI presets bar were removed.
36-
- The extension system was unified from several ad-hoc formats into a single `.openclipext` manifest package.
23+
The initial major release of OpenClip — the fast, native floating action bar for macOS that turns selected text into instant actions.
3724

38-
### Removed
25+
### Floating Action Bar
26+
- **Instant Contextual Trigger**: Select text in any macOS application, and a floating action bar appears right next to your cursor with relevant actions ready to use.
27+
- **Adaptive Positioning**: Anchors to where you release the mouse, automatically positioning itself above or below to avoid covering the text you are reading.
28+
- **Three Themes**: Choose between **Glass** (macOS Liquid Glass frosted blur), **Dark** (OLED black contrast), or **Light** (clean white), fully matching your system appearance.
29+
- **Instant Hover Feedback**: Seamless buttons with smooth hover animations and pagination for longer action lists.
30+
- **Clipboard Fallback**: When activated without an active text selection, OpenClip intelligently works with your current clipboard contents.
3931

40-
- **Canvas feature** — the `type: "canvas"` manifest kind, the JS `openclip.showContent()`/`h()` bridge, the canvas engine and `CanvasSession*` UI, the hover preview strip, and the CalculateAction long-press result card were removed. The `menuPreview` manifest key is gone (`menuRelevance` remains); a `showResult` after-behavior now degrades to a plain leaf result, and a `type: "canvas"` manifest is rejected at validation. AI results render in a native SwiftUI result card (`AIResultCardView`) with Replace/Copy buttons and back-chevron/Esc exit.
32+
### Built-in Productivity Actions
33+
- **Smart Web Search**: Instantly search Google, DuckDuckGo, Wikipedia, or your preferred search engine, automatically formatted and encoded.
34+
- **Inline Calculator**: Highlight mathematical equations (e.g. `45 * 12 + 8%`) to calculate answers inline.
35+
- **Dictionary & Definitions**: Look up instant word definitions powered by macOS system dictionaries without opening another app.
36+
- **Word Completion & Spelling**: Automatic word completion and spelling suggestions for incomplete words.
37+
- **Text Transformations**: One-click formatting tools including **UPPERCASE**, **lowercase**, **Title Case**, **camelCase**, **JSON Pretty Print**, and **Trim Whitespace**.
38+
- **macOS Services & Sharing**: Directly access system Share extensions and Services menu items for selected text.
4139

42-
### Fixed
40+
### Action Search Palette
41+
- **Global Search Shortcut (Option+Command+C)**: Open a quick search palette over your entire action library using a customizable hotkey.
42+
- **Recent Action Ranking**: Quickly find actions with keyboard navigation, ranked by your recent usage.
4343

44-
- `validate_extension.sh` no longer rejects `service` actions that only declare `serviceName` (matches the app's `ManifestValidator`).
45-
- Extension catalog: fixed logic, transport, and delivery bugs across 25 extensions (Logseq capture endpoint, Apple Music transport, counter toasts swallowing results, unicode case transforms, trailing-newline artifacts, URL/hashtag extraction, Wayback Machine gating); released as per-extension patch/minor versions.
46-
- Paste no longer destroys rich text; SearchAction URLs are percent-encoded correctly.
47-
- Extension installs no longer double-nest zips, uninstall matches by manifest identifier, and downloaded packages are checked for Zip-Slip paths.
48-
- Concurrent extension-directory reloads are coalesced.
49-
- Popup shadows no longer clip at the panel edge.
50-
- Search-palette shadow clipping fixed via `.glassEffect(.clear)` + material frost.
51-
- Deterministic snippet action IDs and stale-action unregistration on extension reload.
44+
### AI Assistants & Streaming Results
45+
- **Multiple AI Providers**: Connect OpenClip to Apple Intelligence, local Ollama models, OpenAI (ChatGPT), or Anthropic (Claude).
46+
- **Streaming Live Previews**: Watch AI responses stream in real time inside native result cards.
47+
- **One-Click Insert & Replace**: Paste generated AI results directly over your selected text, copy to clipboard, or expand in the preview card.
5248

53-
### Security
49+
### Extensions & Custom Actions
50+
- **In-App Extension Store**: Browse, search, install, and update community extensions with a single click.
51+
- **Universal Custom Action Builder**: Create custom web searches, text snippets, and scripts without writing code.
52+
- **9,000+ Icon Library**: Customize actions using native SF Symbols or search popular icon collections including Lucide, Font Awesome, and Material Symbols.
53+
- **Supported Runtimes**: Extensions support JavaScript, AppleScript, Shell scripts, URL templates, and macOS Shortcuts.
5454

55-
- Remote extension installs require HTTPS and validate archives against Zip-Slip traversal.
56-
- AI provider API keys are stored in the Keychain, never in plain preferences.
57-
- Gemini authentication uses the `x-goog-api-key` header only; credentials are never placed in URLs.
58-
- OpenClip reads selections via Accessibility APIs and logs or stores nothing about them; text and extension data stay default-private in logs.
55+
### App Rules & Customization
56+
- **Action Reordering**: Rearrange actions in Preferences to build your ideal workflow.
57+
- **Per-App Rules**: Configure OpenClip to behave differently in specific apps — enable auto-paste, restrict to hotkey-only, or disable completely in games and full-screen tools.
58+
- **Preferences Interface**: Clean settings interface organized into General, Actions, App Rules, AI Services, and Extensions tabs.
5959

60-
[keep-a-changelog]: https://keepachangelog.com/en/1.1.0/
61-
[SemVer]: https://semver.org/spec/v2.0.0.html
60+
### Privacy & Performance
61+
- **100% Local & Private**: No analytics, no tracking, and no external telemetry.
62+
- **Direct Accessibility Integration**: Reads selected text directly via macOS Accessibility APIs with zero background battery drain.
63+
- **Secure Keychain Storage**: API keys and credentials are encrypted securely in the macOS Keychain.
64+
- **Subprocess Safety**: Scripts run in isolated process groups with automated timeouts to prevent hanging.
65+
- **Start at Login**: Built-in macOS Login Items integration for seamless system startup.

0 commit comments

Comments
 (0)