Repository navigation
Conversation
When the island hides, the window shrinks to a 240x6 wake strip and the cursor poll thread parks. The poll tick that was running at that moment could still see the cursor away from the island and turn click-through (WS_EX_TRANSPARENT) back on. set_collapsed() clears the flag on the main thread, but the poll thread's setter is queued to the event loop and lands afterwards, so the strip ended up click-through: the mouse passed straight through it and the island could only be woken by Claude Code events, never by hovering the top of the screen. The poll thread now clears click-through itself when it parks. Its setters go through the same queue, so this one always lands after any flag the last tick set.
The Cargo workspace root is windows/, so target/ sits inside Vite's root. During `tauri dev`, Vite's watcher tried to watch .pdb files cargo still held open and crashed with EBUSY, which made Tauri abort the beforeDevCommand. Ignore target/, src-tauri/ and hook/ in the dev server watcher.
Pins both to the patch release instead of a bare "^2", and syncs the lockfile with the 0.1.1 version already set in package.json.
The completed-step label sat at its static position after the shimmering one, so any label wider than the row wrapped it onto a second line: once a step completed, its text dropped right on top of the current one. Both layers are now stacked absolutely on the same 22 px line, each a single ellipsized line, with the full text in the row's tooltip. - Shell steps drop the `cd <project> &&` / `cd <project>;` prefix Claude puts in front of most commands (the card already names the project) and collapse whitespace, instead of a blind 40-character cut. - The frame loop stays alive while the ticker is mid-scroll: it used to stop as soon as nothing else was moving, freezing two rows half-overlapped. - dev/ticker-preview: a harness that feeds the ticker fake steps, bursts and a stalled loop, like dev/upload-preview does for the drop sequence.
When a dragged file left the island, the island stayed open on purpose — the file might come back — but nothing noticed when the drag was over. Dragging a file in and then dropping it elsewhere (or pressing Escape) left the drop zone up until the auto-close fired, up to 30 s later. - The Rust cursor poll emits `mouse-button` whenever the left button changes, checked before the "cursor hasn't moved" skip: an abandoned drag usually ends with the mouse standing still. - The island remembers where it was when a file first reached it. Once the file is out and the button is up, after a 250 ms grace so a late drop still wins, it goes back there: hidden (compact if the cursor is still over it), the view it was showing — a pending approval included — or compact. Leaving and coming back with the button held keeps the island open as before, and a drop on the island still runs the normal upload sequence.
GitHub - The card now follows the CI of the branch of the last Claude Code session (read from its .git folder, worktrees included), the reviews asked of you, and your open pull requests with their review state. Pull requests idle for 30 days are left out. Stars and repositories remain as the fallback overview. - One GraphQL query per minute. Mochi speaks up when a CI run it watched finishes, on a new review of your pull requests, and on a new review request. Google Calendar (new pill) - Signs in with the user's own Desktop OAuth client: PKCE via Windows CNG, one-shot loopback listener, refresh token in the Credential Manager, Cancel for Google error pages that never redirect back. Read-only scopes: events and the calendar list. - Reads every calendar shown in Google Calendar, not just the primary one; rows take their calendar's colour, with Join for the meeting that's on. - Reminders ring when Google Calendar would: the event's own reminders, else its calendar's defaults, else the primary calendar's, else five minutes. They open a card with the event, time and place and Join / Open / OK, or wait as a badge when the island is busy. Also: attention events (amber badge), shared date helpers in time.rs, dev/integrations-preview.html to check the cards with fake data, and the privacy policy, README and INTEGRATIONS.md updated.
web_search_20260209 allows programmatic tool calling by default, which Haiku doesn't support, so the API rejected every chat request made with Haiku selected. Restrict the tool to direct calls for Haiku models only; Opus and Sonnet requests are unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…endar (WIP) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in the 54 commits from the original repository (iPhone app, GitHub pulse, keyboard shortcuts, wardrobe, desktop Mochi, chat providers, …). GitHub on macOS now builds on the original's pulse instead of a second implementation: the branch of the last Claude Code session (read from its .git folder, GitHubBranchCI.swift) rides along with the pulse query, takes the CI row of the card when there is one, and is listed first in the CI detail. New reviews on your PRs and runs finishing on that branch raise the same badge and sound as the other GitHub events. The original's GitHubActivity (contribution calendar) keeps its name. Google Calendar, the reminder card, the Claude desktop app sessions, the abandoned file drag and the ticker's `cd … &&` cleanup are carried over onto the new code (PillCatalog, sidebar Settings, Cursor/Codex routing, MusicPill). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
gcal.rs drew its random bytes and SHA-256 from Windows CNG, which doesn't exist on Linux, so the Tauri app stopped compiling there once the Calendar work met the Linux port. Linux now reads /dev/urandom and hashes with sha2 (already in the tree through Tauri); Windows keeps CNG. A test checks the RFC 7636 S256 example on whichever implementation the platform builds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…dar branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…dar branch 0.2.0 moved the Settings and island strings to the String Catalog. The GitHub token hint now uses upstream's key plus a CI sentence of its own, and the Google Calendar hint, "Google account not connected" and "Default branch CI" get catalog entries in the 10 languages. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…b CI / Google Calendar branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…/ Google Calendar branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ogle Calendar branch build.yml keeps both new test steps: Google Calendar and the Claude settings file. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…Google Calendar branch Main now gives the Claude desktop app its own pill, tagged from CLAUDE_CODE_ENTRYPOINT. This branch's bundle-ID check stays as the fallback for events without that tag, but routes them to the same agent_claude-desktop pill instead of the VS Code one, and its CHANGELOG line goes since main's entry covers the feature. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… CI / Google Calendar branch Main's Windows catch-up (Louis-CFM#307) brings its own GitHub card, and the Windows side of this work already lives in its own pull request (Louis-CFM#86). This branch now takes main's windows/ as is and stays the macOS part: the CHANGELOG entries and INTEGRATIONS section 8 no longer describe Windows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…dar branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…Google Calendar branch The Claude desktop app's bundle-ID fallback stays ahead of main's new terminal detection, so those sessions still reach the Claude Desktop pill. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ub CI / Google Calendar branch SpotifyPill moves to this branch's shared hover (isHovered / onHover from AgentPillsView), like MusicPill and AgentPill, so only one pill lights up at a time. The string catalog is merged key by key. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tHub CI / Google Calendar branch build.yml keeps both new test steps: Google Calendar and pill colours. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… GitHub CI / Google Calendar branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ogle Calendar branch Settings keeps both additions: the GitHub token's CI hint and the voice section. The island's new listening state joins petit and coucou in abandonDrag, so a file drag abandoned while Mochi listens folds the island instead of leaving the switch non-exhaustive.
… Google Calendar branch The string catalog is merged key by key.
…ub CI / Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
…Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
…/ Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
… CI / Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
…he GitHub CI / Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
…itHub CI / Google Calendar branch The Keychain key list keeps both additions: Google Calendar's OAuth client and refresh token, and the ElevenLabs API key. The string catalog is merged key by key; the project file is regenerated.
…e Calendar branch The string catalog is merged key by key; the project file is regenerated.
… Google Calendar branch A file dropped on the notch first ends this branch's drag tracking (cancelAbandon, dragOrigin), then goes into the voice email when one is in progress. The privacy page keeps the Google Calendar and Voice paragraphs. The string catalog is merged key by key; the project file is regenerated.
…tHub CI / Google Calendar branch
…ub CI / Google Calendar branch The privacy page keeps the Google Calendar paragraph next to main's updated Voice one; the project file is regenerated.
… Google Calendar branch The CHANGELOG's Unreleased section lists main's Android entries first, then this branch's.
…) into the GitHub CI / Google Calendar branch The CHANGELOG's Unreleased section keeps main's Android entry and this branch's four; main's Windows and Linux 0.4.0 section follows.
…e GitHub CI / Google Calendar branch The string catalog is merged key by key; the project file is regenerated.
… Google Calendar branch
…nto the GitHub CI / Google Calendar branch The integration card keeps this branch's serviceError next to main's mailHasData. Settings shows the Google Calendar block before the Crypto one, with main's single save button, which saves the Google keys too. The string catalog is merged key by key; the project file is regenerated.
…o the GitHub CI / Google Calendar branch The string catalog is merged key by key and written in Xcode's own format, so the diff against main is only this branch's entries. The project file is regenerated.
… GitHub CI / Google Calendar branch Main turned its Unreleased section into Android 0.2.0, so this branch's macOS entries move to their own Unreleased section above it.
…gle Calendar branch The CHANGELOG's Unreleased section lists main's Flow dictation entry, then this branch's. The project file is regenerated.
… / Google Calendar branch The CHANGELOG keeps main's updated Flow dictation entry, then this branch's.
… Google Calendar branch The project file is regenerated.
…/ Google Calendar branch The CHANGELOG's Unreleased section lists main's new entries, then this branch's. The project file is regenerated, with the FluidAudio package.
…le Calendar branch The project file is regenerated.
…alendar branch Main released its Unreleased section as 0.4.0, so this branch's entries move to a new Unreleased section above it. The README keeps main's new Flow and Parakeet rows and this branch's Google Calendar mention. The project file is regenerated.
… CI / Google Calendar branch This branch's Unreleased section stays on top, above main's Windows and Linux 0.5.0 section.
…he GitHub CI / Google Calendar branch The privacy page keeps this branch's GitHub and Google Calendar paragraphs next to main's Flow, Notetaker and Voice ones, in English and French.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The macOS side of #86: the GitHub card and the Google Calendar pill now work the same on the Mac as on Windows.
GitHub: CI of the branch you're on, reviews and pull requests
.gitfolder (GitHubActivity.swift, nogitprocess). It takes the CI row of the GitHub card (GitHub build) and the CI detail lists it first.IntegrationNews.swift).GithubPollerfollows the branch of whichever shown session spoke last.Google Calendar: a new pill
127.0.0.1), read-only scopes, refresh token in the Keychain. The App Store entitlements gainnetwork.serverfor that listener.reminderview) when Google Calendar would ring.Also
claude-desktoptag are recognized by the app's bundle ID and land on the same Claude Desktop pill; their permission prompts stay in the desktop app.cd <project> &&prefix.Testing
scripts/test-github-activity.shandscripts/test-google-calendar.shpass (69 Calendar checks), on the latestmainmerge.NotchBuddy) and App Store (CoucouAppStore) schemes.windows/as is. The Windows side of this work stays in Windows: GitHub CI and pull requests, Google Calendar with reminders #86.🤖 Generated with Claude Code