Repository navigation
Releases: missuo/wisp
Releases · missuo/wisp
Release list
Wisp 0.1.5
Changed
- A
stateover the line budget (400 lines by default) no longer hides everything below the cut. After the
omission note it lists the landmarks down there (a paginationnav, adialog, aform, thefooter) with up
to six of their enabled controls each, the first ones and the last two, with their real indices. On an Amazon
results page the "Go to next page" button is now oneclick --elaway instead of needing--queryor a
scripted scroll; the skill explains the section.
Wisp 0.1.4
Fixed
- Chrome extension: a command no longer fails, or silently falls back to the separate Wisp Chrome ("Chrome DevTools
is not reachable on port 9222"), when the extension's service worker restarts in the middle of it. The bridge
now waits up to 10 s for the extension to reconnect and sends the request again; and while the extension is
connected (or was within the last minute) a failed tab listing is reported as an extension error instead of
being papered over with the Wisp Chrome's. Marks (deliverable/handoff) of the user's tabs are kept across
such a restart instead of being forgotten because a listing came back empty. - Chrome extension: fewer round trips per command. A tab addressed by its exact id skips the tab listing, and the
seven DevTools domain enables of a tab's firststatego out concurrently instead of one after the other
(each round trip through the service worker was 0.3 to 0.8 s on a busy Mac). wisp end --tab Tno longer closes a tab markeddeliverableorhandoff; it only detaches from it.
Wisp 0.1.3
Fixed
- Chrome extension: the native messaging host is now registered as a
#!/bin/shlauncher script
(~/Library/Application Support/Wisp/native-host.sh, which execswisp native-host) instead of thewispbinary
itself. Chrome starts hosts withposix_spawn, and on some macOS/Chrome combinations (seen with Chrome 152 on
macOS 26) a Mach-O started that way dies before it runs, so the extension only ever reported "Native host has
exited" and never connected; the same binary exec'd from a shell script works.wisp chrome extension status
flags manifests from older installs that still point at the binary as stale; re-runwisp chrome extension installto fix them.
Wisp 0.1.2
Added
- Chrome extension: Wisp can now work in your own Chrome (or Brave, Edge, Chromium, Arc, Vivaldi), the way the
Codex desktop app does, instead of only in a separate DevTools instance.wisp chrome extension installcopies the
extension to~/Library/Application Support/Wisp/chrome-extensionand registers the native messaging host
(wisp native-host); load the folder once onchrome://extensions(Developer mode, Load unpacked). With the
extension connected,wisp chrome tabslists your tabs first (tagged[user], the active one[user, active]),
--tab activeis the tab you are looking at, andwisp chrome new URLopens in your browser (--browser wisp
keeps using the separate Wisp Chrome). Wisp attaches Chrome's debugger to a tab only while it acts there and
detaches atwisp end.wisp chrome extension statusandwisp chrome statusreport the connection; the MCP
wisp_chrometool gained theextensioncommand and thebrowseroption. The extension ships insideWisp.app
and aswisp-chrome-extension-X.Y.Z.zipwith each release.
Changed
- The agent cursor is rebuilt to match the Codex cursor: the same arrow shape and glow, spring-driven motion with the
scoot animation (rotation and squash along the travel direction) for long moves and an arc for short ones, a tilt
and stretch on press, a wobble on arrival, and a blur-and-scale entrance. The old ring pulse on click is gone.
Added
- The MCP server now mirrors the CLI one to one. New tools:
wisp_windows,wisp_activate,wisp_move,
wisp_mouse_down,wisp_mouse_up,wisp_status,wisp_doctor,wisp_instructions(list/show),
wisp_policy(get/set with achangesobject),wisp_approvals(list/clear, per app or all) andwisp_log. - Every action tool accepts the shared CLI options:
observe,space,cursor,activate,hid, and the state
options (full,query,screenshot,bounds,menus,maxLines,instructions) for the state returned
after the action. - Claude Code plugin in
integrations/claude-plugin: one install for the skill, aStophook that ends the
session (cursor, banner, scratch Chrome tabs) when a turn finishes or the user interrupts, and aPreToolUse
hook that refuses the skill when thewispcommand is missing instead of loading it to find out. The repository
doubles as the marketplace (.claude-plugin/marketplace.json), so the plugin installs straight from here:
/plugin marketplace add missuo/wispthen/plugin install wisp@wisp.
Changed
- The agent skill moved from
skills/wisp/tointegrations/claude-plugin/skills/wisp/; its only content change
is a line about the plugin's Stop hook.
Wisp 0.1.1
Added
- The MCP server now mirrors the CLI one to one. New tools:
wisp_windows,wisp_activate,wisp_move,
wisp_mouse_down,wisp_mouse_up,wisp_status,wisp_doctor,wisp_instructions(list/show),
wisp_policy(get/set with achangesobject),wisp_approvals(list/clear, per app or all) andwisp_log. - Every action tool accepts the shared CLI options:
observe,space,cursor,activate,hid, and the state
options (full,query,screenshot,bounds,menus,maxLines,instructions) for the state returned
after the action. - Claude Code plugin in
integrations/claude-plugin: one install for the skill, aStophook that ends the
session (cursor, banner, scratch Chrome tabs) when a turn finishes or the user interrupts, and aPreToolUse
hook that refuses the skill when thewispcommand is missing instead of loading it to find out. The repository
doubles as the marketplace (.claude-plugin/marketplace.json), so the plugin installs straight from here:
/plugin marketplace add missuo/wispthen/plugin install wisp@wisp.
Changed
- The agent skill moved from
skills/wisp/tointegrations/claude-plugin/skills/wisp/; its only content change
is a line about the plugin's Stop hook.
Wisp 0.1.0
Feature parity release with the Codex desktop app's Computer Use, based on an audit of what it ships.
Added
- Per-app instructions: the first state of an app now starts with app-specific guidance, like Codex's
AppInstructions. 19 built-in files (Slack, Notion, Spotify, iPhone Mirroring, Music, Numbers, Clock, Finder,
Safari, Mail, Notes, Messages, Calendar, Terminal, Xcode, System Settings, Chrome, a generic browser block for any
app that handles http links, and Chrome DevTools tabs). Guidance is keyed by bundle id, bundle name or app name,
concatenated, delivered once per session (--instructionsrepeats it,--no-instructionssuppresses it), and
can be overridden or extended with~/.config/wisp/instructions/<bundle id>.md(instructionsMode
merge|replace|off).wisp instructions list|show --app Xexplains what applies. - Model guidance parity in the skill: tool choice, observation discipline, blockers, app resolution, newline
hazards in composers, interruption phrasing, and a four-tier confirmation policy in
skills/wisp/references/confirmations.md. - Per-app approval with risk tiers: high-risk apps (System Settings, Terminal, Keychain, Passwords, Mail,
Messages, Finder) prompt "Allow Wisp to control X?" with once / session / always / deny; a forbidden set
(login window, SecurityAgent, Wisp itself) can never be allowed; grants persist in
~/.config/wisp/approvals.json(wisp approvals list|clear); URL hosts can be blocked
(wisp policy set --block-url host). - An observing lens indicator with activity states (idle, observing, acting, paused) that shows while Wisp reads
a window even when the cursor is hidden; the menu bar and banner say whether Wisp is reading or acting. - Lock-screen monitor: locking the screen cancels the running action, hides the overlays, and invalidates state
so the next read is a full tree;wisp statusreportsscreenLockedandactivity. - Chrome over DevTools: file uploads without a native panel (
wisp chrome upload), JavaScript alert/confirm/
prompt handling (wisp chrome dialog), agent-tab lifecycle with deliverable/handoff marks
(wisp chrome mark; a barewisp endcloses unmarked agent tabs), and hidden-by-default launch with
wisp chrome show|hideandwisp chrome launch --visible. - Background launch parity:
wisp launchand the MCPwisp_launchstart apps in the background
(--activateopts in) and wait for a real window;wisp_turn_endMCP tool; MCP cancellation notifications
cancel the running action; interruption errors read as plain sentences. - Settle detection waits for visible progress indicators; banner text and hint are configurable
(wisp policy set --banner-text,--banner-hint,--lens on|off).
Fixed
wisp apps --runningno longer lists multi-process apps (Chrome, Electron) more than once.wisp launchrefuses to start an app while the screen is locked instead of leaving a windowless process behind.
Changed
- Policy defaults: Terminal, Keychain Access and Passwords moved from the deny list to the high-risk approval
tier; the login window and SecurityAgent are forbidden outright. Password managers stay denied.
Wisp 0.0.4
Changed
- Wisp now operates apps in place. It no longer raises the target window or steals focus; a synthetic app-activation
event makes the app accept input while staying in the background, so you can keep working. Pass--activateto
bring an app forward for the rare one that ignores background input.
Added
- Vision fallback: when a window exposes no actionable accessibility elements (custom-drawn apps, canvases, games),
the state includes a window screenshot so an agent can look and click by pixel coordinates. Request one any time
with--screenshot.
Wisp 0.0.3
Added
- The
wispcommand-line tool now ships insideWisp.app, so the Homebrew cask installs the app and the CLI
together and the CLI always finds its bundled daemon. - Release notes are now driven by this changelog: each release shows its section in the Sparkle update dialog.
- Install instructions in the README: Homebrew cask (
brew install --cask owo-network/brew/wisp), the Claude Code
skill, and the MCP server. The skill now checks thatwispis installed and tells the user how to install it.
Wisp 0.0.2
Wisp 0.0.1
Full Changelog: https://github.com/missuo/wisp/commits/v0.0.1