Gaps
Every finding on an open id, by area or ranked: decisions only Nate can make, then the fix queue agents work through without asking.
Needs Nate
A teammate's offline channel
#607When the owner's Mac is asleep, a teammate sees "nate16-1 is offline" with no history and a Send button disabled with no reason. Keep a read-only copy of history on teammates' Macs and queue sends, or just say why and show nothing? Caching is the bigger change: it means a second copy of a channel's messages outside pi-durable.
-
The directory is served by one Mac, so when it sleeps, everyone's directory goes down (since #644 the error names that Mac). A Mac that chose another directory never finds this one, even though the setup dialog says teammates find it on the tailnet. Keep one serving Mac and word it honestly, or move the directory to a shared service (Cloudflare, Fly)?
-
How should a teammate's shared project show before it has a channel (in the picker and All Projects, marked "shared by <owner>"?), and how does
ace project accessname a teammate's folder project, which has no GitHub owner/name? Both fix-train workers skipped it as needing this decision. -
Since #662 a teammate's channel offers no Terminal and says terminals open on its host, for its owner only; since #660 a teammate's browser on your host is told whose host it is. Should teammates get a terminal on your channel, and should another person's host page do more than refuse?
Lost shares look offline
#631When the directory stops, its shares are deleted (the warning now names them), but teammates see the owner's host as Offline. A reachable host that withholds a channel needs its own listing state, or the channel drops with a "no longer shared with you" notice.
Join requests while Ace is quit
#632^120 partialWith only Ace Helper running, the owner isn't told someone asked to join. A notice from the helper itself is new desktop and infra work.
-
Hosted channels still show a globe and a cloud, and both icons appear in any demo that has old channels.
Phone layout pass
Q250#581 fixed the overflow at 390px. You said to expect a broader pass, so its scope and look are yours.
-
^533 tested
Only a sliver of Stop shows during a run on a phone. This belongs with the phone pass if phone is in the demos.
All Projects beyond Channels
#617^611 visualSwitching from All Projects to Dashboard, Issues or PRs falls back to the last single project. Should those views aggregate too, or should All Projects be a Channels-only mode?
Whether
#625runningmeans a channel with live workace lscalls a channel whose worker is up with no runrunning. docs/terms.md defines only Dormant and avoids "idle"; it needs to name that state before the CLI can stop saying running.Binary and large-folder rows in the Diff
#620^688 testedThe Binary and large untracked-folder rows are inert. A preview or file list for them is a product choice.
Window buttons in the collapsed rail
#626^652 testedThe yellow and green buttons report disabled; Window → Minimize and Zoom now exist (#656). Showing working buttons in the collapsed rail is a layout choice.
-
Subagent and
ace chatwork is invisible in the app. Back button and keyboard shortcuts
Back leaves the app, tabs have no keys and there's no shortcut list (#656 added a Window menu). Pick which ones are worth building.
-
^598 missing
Agents run every tool without asking. A product stance question, not a demo blocker.
-
^558 tested
-
^473 tested
-
^567 missing
Notifications outside the desktop app
^624 untestedRename or reorder projects
^339 missing-
^787 untested
Warn before Restart
#626^17 testedRestart closes open terminals and interrupts runs (they resume). Always ask first, or only when runs or terminals are active? Workers can't test it without restarting the real Ace Helper.
Where to say the GitHub CLI is missing
#540^742 visualWithout
gha teammate silently sees none of the team's private projects and no avatars; Issues and PRs already say so when opened. A banner, a Settings badge, or a line on the sidebar's empty state?Worker restarts mid-run
#442^595 testedace killand Stop are now recorded and told to the agent (#664, #675). A worker restart isn't: writing a marker into a run that's still going could split a tool call from its result. Where should "the run resumed after a restart" live: in the run, on the next turn, or only in the UI?
Fix queue
Default model by provider, and the last-used model
#618Settings → Default model groups models by provider and marks ones without a key; the Dashboard composer names the model; a new channel starts on the last-used model.
Not ranked
Gaps that are coverage notes or too minor to queue: ^3 ^5 ^7 ^13 ^14 ^15 ^664 ^18 ^663 ^305 ^311 ^313 ^332 ^333 ^343 ^346 ^348 ^349 ^351 ^354 ^361 ^362 ^377 ^379 ^386 ^387 ^389 ^395 ^415 ^418 ^421 ^425 ^427 ^432 ^437 ^486 ^492 ^511 ^525 ^526 ^534 ^559 ^561 ^577 ^903 ^587 ^588 ^592 ^601 ^602 ^616 ^617 ^619 ^622 ^633 ^638 ^646 ^648 ^650 ^651 ^655 ^656 ^657 ^658 ^660 ^661 ^684 ^692 ^706 ^708 ^710 ^713 ^718 ^728 ^732 ^735 ^738 ^753 ^757 ^765 ^768 ^776 ^100 ^101 ^105 ^106 ^111 ^116 ^118 ^119 ^122 ^123 ^124 ^125 ^126 ^48 ^49 ^50 ^51 ^52 ^53 ^58 ^59 ^60 ^61 ^62 ^64 ^65 ^66 ^781 ^785 ^790 ^792 ^830 ^833 ^837 ^840 ^845 ^853 ^856 ^858 ^862 ^867 ^870 ^871 ^875 ^878 ^879 ^881 ^882 ^883 ^897
Install and first run
- ^3 tested Open Ace and let Ace Helper start
3 Tested on Canary 0.0.51.85 (2026-10-22 study), with Ace Helper already running, so not a true first launch.
- ^5 visual First run
4 First run appears only on a host with no projects, and nothing reopens it; the 2026-10-22 study's hosts had projects, so ^6–^11 need a fresh host.
- ^7 partial Add a model key
5 Not saved in this pass: the smoke host has no Keychain of its own to write to without a prompt.
- ^13 tested Check for updates
6 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^14 untested Install a downloaded update
7 Blocked in the 2026-10-22 study: needs a newer Canary build to install.
- ^15 tested Turn automatic checks on or off
8 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^664 untested Resume Ace Helper after a failed update
9 Blocked in the 2026-10-22 study: needs an update that fails.
- ^17 tested Start, restart or stop Ace Helper
10 Restart doesn't warn about running work (rest of githubnext/ace#626).
- ^18 tested Show Ace Helper's log
11 Canary 0.0.51.85: reveals the log in Finder; Ace has no viewer.
- ^663 tested Allow Ace Helper in Login Items
12 Tested on Canary 0.0.51.85 (2026-10-22 study).
Projects
- ^305 untested Open while Ace Helper is unreachable
1 Cmd+O returns silently while disconnected, with no message saying why (
apps/app/src/app.tsx:553).2 Blocked in the 2026-10-22 study: needs a Mac where Ace Helper can be stopped.
- ^311 tested See the Initialize Git card
3 A folder that already has
.gitbut no commits still readsInitialize a Git repository to get started(left by githubnext/ace#646). - ^313 tested Initialize a folder that already has a .gitignore
4 The card gives no commands to copy.
- ^332 tested Set up while starting a channel
5 Pair study, Canary 0.0.53.88: it never asked for a name and started
keen-deltain Ace mode onAutomaticrather than Settings' default model. Re-check, Canary 0.0.54.93:+still madehazy-ladderwith no name prompt. - ^333 tested See a folder project on another host
6 Sits in your own Projects group as
<project> · <host>, with nothing saying who shared it.7 Pair study, Canary 0.0.53.88: the Dashboard says to
Open a checkout on this hostbut offers no way to, and the project has no Channels header, + or ⋯. - ^339 missing Rename or reorder a project
8 Nothing renames a project or changes its order; the label is always the folder or repository name.
- ^343 tested Collapse a project
9 All Projects orders Hello-World among the folders, while the picker puts it last under
octocat(not re-checked). - ^346 tested Remove a project
10 Projects that appear only through CLI channels never offer it (not re-checked).
- ^348 tested Remove a project from the picker
11 Each row's × shows beside the name as soon as the picker opens, so a stray click opens Remove (rest of githubnext/ace#616).
- ^349 tested Only the host's owner removes its projects
12 Pair study, Canary 0.0.53.88: a teammate's project has no Remove in the picker, the All Projects header or the channel menu, and nothing says why, so the gateway's owner-only check (githubnext/ace#571) can't be reached from the app.
- ^351 tested Open Share project
13 Not on the Dashboard or in All Projects, and absent until a folder has a commit, since the ⋯ menu and header aren't shown before.
14 Mac A's list named Sam by a stale GitHub login (githubnext/ace#610).
- ^354 tested Unshare, or turn off team sharing
15 The person losing access gets no notice: the project and its channels just disappear (githubnext/ace#606).
- ^355 partial See a project you can't share
16 Pair study, Canary 0.0.53.88: a teammate's folder project has no Channels header or ⋯, so there's no Share entry and this sentence never shows in the app; only
ace project accessprints it. - ^361 partial See who can access a project
17 Pair study, Canary 0.0.53.88: a teammate's folder project can't be named (
b-sandbox is neither a project, a folder here, nor a GitHub owner/name), andsamechocolixir/b-sandboxis looked up on GitHub and lists everyone, owner included, asno access. - ^362 tested Share with the team or a person
18 Without a directory it fails with
Join a team directory to share projects.; an unknown login saysNo one on the team is rivera yet; their Ace must be running.
Channels
- ^377 tested Create with the command line
1
--model nope/model, which names no provider at all, gets the sameAdd its provider key first. - ^378 partial Choose the model at creation
2 No create entry point in the app asks for a model; it can only be picked afterwards in the composer.
3 New channels don't start on the last-used model (left by githubnext/ace#640).
- ^379 tested Start from an issue or pull request
4 Starts a paid run at once, with no chance to edit the prompt.
- ^386 tested See an unread channel
5 Pair study saw the mention count live (
1 direct mention); the plain unread dot went unseen because each tester turn used a fresh browser profile, which also forgets mentions across reloads. - ^387 tested See a channel that needs you
6 A browser profile only counts runs that end after its first visit: a question already waiting when a new profile opened read
Busyin the palette until another question was asked. - ^389 tested See a teammate's section
7 Pair study, Canary 0.0.53.88: in All Projects a shared section reads
pair-sandbox · natembp · iamnbutler, truncated and sorted last, with noShared with youheading; Archived and Inactive weren't seen. - ^391 partial See a hosted, cloud or PR channel
8 A hosted channel shows a globe in the sidebar but a cloud in the header chip (
apps/app/src/channel-access.tsx:53).9 Canary 0.0.51.85: a renamed cloud channel kept its old name in the sidebar until opened, and a PR channel shows no PR mark.
- ^395 tested Unpin
10 Pins live in one browser's localStorage, so another device or the desktop app doesn't share them.
- ^415 tested Read an archived channel
11 In All Projects an archived channel has no row anywhere, yet still says to unarchive it from the sidebar; All Projects also shows only the 10 most recent channels per project (
apps/app/src/app.tsx:130,apps/app/src/app.tsx:455). - ^418 visual Archive inactive channels
12 Runs at once with no preview; the 2026-10-22 study had no inactive channel to archive.
- ^421 tested Delete an archived channel
13 A live channel's menu has no Delete at all; the
Delete channel — Archive firsthint in the code is never shown (packages/ui/src/components/session-item/session-item-actions.tsx:323,session-item.tsx:217). - ^425 partial Choose a destination
14 Canary 0.0.51.85: only Move to cloud workspace is offered, and a cloud channel can't move back.
- ^427 tested Stop or start compute
15 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^432 tested Turn agent access off
16 Nothing in the channel tells teammates; a guest only sees the composer lose Ace mode.
- ^437 tested Set it with the command line
17
offprints nothing, whileonconfirms. - ^449 tested List this host's channels
18 Channels whose worker is up with no run still read
running; the word waits on a docs/terms.md decision.
Conversation
- ^486 tested Type @ in the Dashboard composer
1 Not reproduced here:
@, Backspace, then typing did not leave the popup armed, and Enter still sent, in headless Chromium on both the Dashboard and the channel composer. The reported dead Enter may be WebKit-only. - ^492 tested Format with shortcuts
2 Markdown typing converts `
code,-lists and`fences, but~~strike~~andbold` stay literal. - ^511 visual Record a message by voice
3 Canary 0.0.51.85: both macOS prompts and the level meter worked; with the Mac muted nothing was transcribed, and silence gave no feedback.
- ^525 visual See a failed run
4 Unverified in the 2026-10-22 study: it couldn't cause a whole-run failure; a stopped run and a failed tool showed no run-level failure.
- ^526 visual Retry a failed run
5 Unverified in the 2026-10-22 study: no run failed, and a stopped run offers no Retry.
- ^533 tested Stop the run
6 Stop sits mostly behind Send and only slides out on hover or focus (by design); on touch there is no hover, so only a sliver shows.
- ^534 tested Get queued messages back after Stop
7 The
Returned … as a draftline was gone after a reload; onlyStopped.remained. - ^558 tested See that a message was edited
8 An edited message in the middle of a group looked unedited until hovered, and the hover shows a bare time with no
editedlabel. - ^559 tested Delete a message
9 Re-check, Canary 0.0.54.93:
Message deletedappeared at once on both Macs. Its hover toolbar still offers an enabled More whose only item, Delete, is disabled. - ^561 tested Add a reaction
10 Pills show no count, and the emoji picker's search text is unreadable on its black field (githubnext/ace#619).
- ^577 visual See Needs you on the Dashboard
11 Not shown when nothing needs you; the 2026-10-22 study had only a finished run, and testers looked for a Needs you heading.
- ^903 tested See where new messages start
12 Re-check, Canary 0.0.54.93: the divider and mention tint worked within one browser session, but unread state lives in the browser: after a fresh sign-in only mention counts remained, with no divider (githubnext/ace#677).
13 Messages grouped under one header still show only the last one's time (rest of githubnext/ace#602).
- ^587 tested See a teammate invoke @ace
14 The chat's cost isn't split by who asked.
15 Re-check, Canary 0.0.54.93: the byline worked on both Macs (
asked by samechocolixir · ran on your natembp with your key;asked by you · ran on iamnbutler's natembp with their key), but in the owner's browser nothing outside the channel said a teammate had used the agent (the desktop notification wasn't observable), and a teammate's channel showed the owner'sCannot access ANTHROPIC_API_KEY in the keychain…without saying it was on the owner's Mac. - ^588 tested Be a teammate without agent access
16 The composer was Chat only with no @ace, but
@ace what branch is this repo on?typed by hand posted as a greenacechip and was ignored, with no notice to either side.17 Pair study, Canary 0.0.53.88: a typed
@aceis now refused withAgent access is off… Remove @ace to send this as a message.and the text kept;ace askrefuses withOnly the owner can invoke agents here, naming neither agent access nor the owner. - ^592 tested Ask the agent
18 A failed run prints
(run ended)and exits 0, so a script can't tell it failed. - ^595 tested Stop a run
19
ace killand worker restarts aren't recorded or told to the agent, and a resumed run doesn't say it resumed (rest of githubnext/ace#442).
Workspace
- ^601 visual Open Dashboard, Channels, Issues or PRs from the rail
1 While projects load, the account avatar still shows a placeholder
A(left by githubnext/ace#639). - ^602 partial Switch views with ⌘1–⌘4
2 ⌘3 and ⌘4 do nothing in a project without GitHub, with no hint.
- ^607 missing Go back to the previous view
3 Views and channel picks never touch browser history (no
pushStateanywhere in apps/app/src), so Back leaves the app instead of going back a view. - ^611 visual See every project at once
4 All Projects only applies to Channels: switching to Dashboard, Issues or PRs shows the last single project (proj) again.
- ^616 tested See your open PRs and assigned issues
7 Only the empty state was seen; the host's GitHub account had no open PRs or assigned issues in githubnext/ace.
- ^617 tested Start a channel from a PR or issue
8 Continue is missed when the channel works the PR under another local branch: after Open in a channel on githubnext/ace-testbed#2, its lane
glad-orbit/add-moonpushed toadd-moon, and the dashboard still offered Open #2 in a channel, inviting a second channel. Continue on #6 opened mars-greeting as expected. - ^619 tested See what teammates are doing
9 Re-check, Canary 0.0.54.93: Hello-World's pulse credited the teammate (
samechocolixir / #b-hello / Finished in #pair-hello-2), but entries carry no time or description, and theFinished inline vanished on a reload before the owner opened the channel. - ^622 partial See the window glow
10 With the window focused the study saw no glow; coming back from another tab showed a brief green tint.
- ^624 untested Get a desktop notification
11 Only the desktop app notifies; a browser or phone gets no notification.
- ^633 tested Get a Diff tab when changes appear
12 Still logged after #587: React error #185 (
Maximum update depth exceeded) fired once about 0.2 s after sending an Ace message in a channel with a Diff tab open; the page kept working. Three Chat-mode sends in a channel without a Diff tab logged none.13 Closed while changes remained, it stayed closed through two new changes, as designed; testers expected it back.
- ^635 missing Open, close or cycle tabs from the keyboard
14 No tab shortcuts exist: the only window-level keys are ⌘1–4, ⌘B, ⌘⇧B, ⌘K, ⌘O and ⌘, (navigation.tsx:152, palette.tsx:103).
- ^638 tested Fill a blank pane
15 Chat in a blank pane closes the blank when the chat is already open, without saying so.
- ^646 tested Open the palette
16 ⌘K in the composer adds a link and in a terminal clears it, so the palette needs focus elsewhere first.
- ^648 tested Run a window action
17 New Channel in <project>, Clone from URL… and Check for Updates… weren't run from the palette in this pass.
- ^650 tested Open a new window
18 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^651 tested Keep each window's own view
19 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^652 tested Zoom the window from the title bar
20 Canary 0.0.51.85: the green and yellow buttons report disabled; only double-clicking the top strip zooms.
- ^653 missing Close or minimize a window from the keyboard
21 The desktop menu has no Window menu and no Close or Minimize items (apps/desktop/src/index.ts:175); traced only, not tried in the app.
- ^655 tested Ace menu
22 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^656 tested File menu
23 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^657 tested Edit menu
24 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^658 partial View menu
25 Canary 0.0.51.85: Issues (⌘3) did nothing in a project without GitHub; 0.0.53 hides it (githubnext/ace#591).
- ^660 partial Window shortcuts
26 The keys work, but nothing lists them: no shortcut page, ⌘/ does nothing, and only palette entries show keys.
- ^661 visual Tab and pane keys
27 The 2026-10-22 study found no keys for new tab, close, split or pane focus (⌘T, ⌘W, ⌘\), and nothing lists the tab-list keys.
- ^662 missing See all shortcuts in one place
28 Shortcuts only show as hints in the rail tooltips and the palette; nothing lists tab and pane keys.
Changes and review
- ^684 tested Read the header and the changed files
1 It refreshes every 2 s, but only while the tab is visible and the window is focused (apps/app/src/panels/diff.tsx:95).
2 With the details sidebar open at 1280px, the header's totals run under the toolbar: the lane name scrolls away and Untracked's
+1 -0overlaps Rebase. - ^688 tested See binary files and large untracked folders
3 The Binary and folder rows are inert: no preview or file list.
- ^692 partial Read the summary, changes, branch and pull request
4 The summary is cut at four lines with no way to expand.
- ^706 visual See Rebase when the base moves ahead
5 Blocked in the 2026-10-22 study: needs a base on origin that moves ahead, such as a teammate's push.
- ^708 visual Push a lane
6 With uncommitted and untracked work in the lane,
lane pushrefused, and the agent rangit add -Aand committed everything (a binary and a 150-file folder) asLane contextto push, without asking. - ^710 visual Open a pull request
7 Create PR is offered only when the project's origin is on GitHub (
channel.repo); a local or other remote shows no PR row at all (apps/app/src/channel.tsx:227).8 After the PR was closed on GitHub the sidebar kept offering Merge PR for 25 s; a reload showed Create PR.
- ^713 tested Create a draft PR
9 The UI kit's menu also has Manually create PR, but the app never passes
onManualCreatePr, so it never shows (apps/app/src/panels/diff.tsx:200). - ^718 tested Address review
10 No review state or Address review control; the agent addressed the reviews only when asked.
- ^728 partial Switch project
11 All Projects from Issues jumps to Channels without saying why.
- ^732 partial Refresh from GitHub
12 The first Refresh missed an issue created seconds before, and nothing shows when the list was loaded.
- ^735 partial See a project without a GitHub remote
13 Switching to a project without a remote drops you on Channels with no message.
- ^738 tested Continue a pull request in a channel
14 The PR channel's sidebar says
No pull requestand offers Create PR. - ^742 visual See whether GitHub is signed in
15 Without a signed-in
gh, private projects' access checks, avatars and Issues/PRs still fail only when used (rest of githubnext/ace#540).
Terminal
- ^753 tested Run commands
1 The font stack is fixed (
terminal.tsx:150: ui-monospace, SFMono, Menlo…), so Nerd Font prompt glyphs show as boxes; Nate's Ghostty uses LilexNerdFontMono and his prompt renders □ in every shot here. - ^757 partial Copy and paste
2 A copied screen pasted as many commands and ran each line, with no multi-line paste warning; the headless clipboard couldn't be read.
- ^769 tested Use a terminal at phone width
3 Tried in Playwright's mobile emulation at 390×844 with a hardware-style keyboard; a real phone's on-screen keyboard is untested.
4 With three tabs (chat, Diff, Terminal) the Terminal title is cut to
Terminaunder the machine icon. - ^765 partial Jump to a terminal from the palette
5 The palette lists only tabs not on screen, and ⌘K in a focused terminal clears it instead.
- ^768 tested Reload or reopen the window
6 Tabs are saved in each browser's localStorage (
ace:channel-layout:<id>), so a terminal opened in one browser or device isn't listed in another, although its shell keeps running on the host. - ^776 tested Archive, kill or delete the channel
7 Archive kills running terminals without asking (left by githubnext/ace#651).
- ^779 tested Open a terminal on a teammate's or cloud channel
8 Re-check, Canary 0.0.54.93: a teammate's channel's New tab menu offers only Chat and Diff, with nothing saying why; no old Terminal tab was left to check its message.
Team
- ^100 partial See your team
1 Pair study 2026-10-22 (two Macs on Canary 0.0.51.85): people, presence and teammates' channels worked across Macs; a peer's stale GitHub login and offline channels fell short.
- ^101 tested See people on the tailnet
2 Mac A kept naming nate16-1 by its owner's previous GitHub login, in People, message authors and the share list, until A's Ace Helper restarted:
namedin peers.ts keeps a hello sent beforeghresolved and stops re-greeting once a directory is chosen.3 Pair study, Canary 0.0.53.88: no stale login after githubnext/ace#611, but People said Sam
Onlinewhile the sidebar saidsamechocolixir · Offline, and with no directory and Sam's helper stopped Sam vanished from People instead of showing Offline. - ^103 tested See teammates' channels while their host is online
4 Pair study, Canary 0.0.53.88: a teammate's shared folder project vanished from the picker without a word each time this Mac left the directory or it stopped, and a teammate's channel in a repository you also have is listed inside your own project.
- ^104 partial Open a channel whose host is offline
5 Shows
nate16-1 is offline — b-chan runs on that Mac.with none of the history already read; Send is disabled with no reason and nothing queued; the project picker has no offline mark.6 Pair study, Canary 0.0.53.88: while Sam was online but the share was gone (directory stopped), b-sandbox read
samechocolixir · Offline/Offline: nate16-1 is unreachable, so lost access looks like the host being offline. - ^105 visual Create the team's directory
7 Pair study 2026-10-22: creating it on This Mac took two clicks; the teammate already on another directory had to paste the URL by hand.
- ^106 tested Start from the sidebar card
8 Re-check, Canary 0.0.54.93: after leaving, the card read
nate16-1 serves your team's directory. This Mac isn't in it…with Join and Change…, but it stayed after rejoining through Ask to join until a reload. - ^109 untested Teammates' hosts join on their own
9 Pair study: the teammate's Mac was already on another, failing directory, so it never adopted this one while the creation dialog said
There's nothing to send.andJoins now. The never-chosen case is still untested.10 Blocked in the 2026-10-22 pair study: no host that has never chosen a directory; both Macs had chosen and left one, and resetting that means editing Ace's stored settings.
11 Pair study, Canary 0.0.53.88: the creation dialog again said
Joins nowfor a Mac that had left the directory; it stayed onNone yetafter Refresh and had to join by hand. - ^111 partial Manage the directory
12 Pair study 2026-10-22: nothing on the serving Mac shows that a teammate joined.
- ^112 tested See the directory's state
13 Re-check, Canary 0.0.54.93: with the serving Mac's helper stopped it read
Sync failed at 6:58:24 PM: nate16-1, which serves the directory, is offline. Channels stay listed as they were., but says nothing of what to do, a member Mac names the server only in that error, andIn the directorykept old sync times with no down mark. - ^113 tested Stop serving it
14 Teammates who lose a share when it stops still see the owner's host as Offline (rest of githubnext/ace#631, ^104).
- ^116 missing See team services
15 Pair study, Canary 0.0.53.88: nothing in Settings, Team setup or the CLI mentions team services, not even
nonefor a tailnet directory. - ^118 tested Join with a URL or invite link
16 Both join forms still ask for an invite link, which a tailnet directory can't make (rest of githubnext/ace#635).
- ^119 untested Open an invite link
17 Blocked in the 2026-10-22 pair study: a tailnet directory makes no invite link (
There's nothing to send.), and opening one hands off to the desktop app, which was off limits.18 Pair study, Canary 0.0.53.88:
Join your teamasks forthe invite link they sent youthough a tailnet directory has none to send. - ^120 partial Ask a teammate's host to let you in
19 Reachable again through Team setup in the sidebar and Settings → Team (githubnext/ace#578). Asking itself needs a teammate's host that is already in a team.
20 Re-check, Canary 0.0.54.93: the owner's dialog arrived live (
…The request lapses at 7:08 PM.) and Approve confirmedLet iamnbutler in; the asker sawWaiting…with the lapse time, but on approval Team setup just closed with nolet you intoast, and a fully quit Ace still can't tell the owner (githubnext/ace#632). - ^122 untested Deploy to Cloudflare from the app
21 Team setup → Get your team started → Hosted directory reaches Deploy to Cloudflare again (githubnext/ace#578); no deploy has been run from it.
22 Canary 0.0.51.85: reached the dialog and Show the command (
bun services/deploy.ts cloudflare); not deployed over the existing directory. - ^123 missing Deploy to Fly.io from the app
23 Reaches the Fly.io command again (githubnext/ace#578); no deploy has been run from it.
24 Canary 0.0.51.85: the app only shows
bun services/deploy.ts flyto run from an Ace checkout, then a join form. - ^124 untested Invite a teammate
25 Canary 0.0.51.85: with a Mac-served directory, Add a teammate shows the tailnet steps and download link, no invite link.
- ^125 untested Save or remove the team secret
26 Canary 0.0.51.85: Remove… and Directory → Change… reached their confirms; the secret row itself has no Change.
- ^126 untested Deploy from a checkout
27 Blocked in the 2026-10-22 study: needs an Ace checkout.
Settings
- ^46 partial Set the default model for new chats
1 The list doesn't mark providers without a key, and the Dashboard composer shows no model.
- ^48 partial Add a key
2 Form opened; not saved in this pass (no Keychain write without a prompt on the smoke host).
- ^49 untested Replace a key
3 Canary 0.0.51.85: reached the form and Cancel; nothing saved, since the rig keeps the real keys.
- ^50 untested Remove a key
4 Canary 0.0.51.85: reached the confirmation and Cancel; nothing removed.
- ^51 tested Check a connection
5 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^52 visual See an environment override
6 Blocked in the 2026-10-22 study: needs Ace Helper started with a provider key in its environment.
- ^53 partial Refresh after unlocking Keychain
7 A key the provider rejects still reads
Saved in Keychain(rest of githubnext/ace#626). - ^58 tested See Ace Helper's status and stop it
8 Canary 0.0.51.85, desktop app:
Running. Starts at login.with Restart and Stop… (Stop reached its warning). The browser's Settings → Host has none of this and doesn't say so. - ^59 tested Read Ace Helper's log
9 Canary 0.0.51.85, desktop app: Log → Show reveals
helper.login Finder. The browser's Host page has no log. - ^60 tested Open Ace on your phone
10 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^61 tested Check tools
11 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^62 tested Install or remove the command line tool
12 Canary 0.0.51.85, desktop app: Install put
~/.local/bin/ace-canaryin place with a Remove button. The browser's Host page doesn't offer it. - ^64 tested See whether agents can use this Mac
13 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^65 untested Grant macOS permissions
14 Blocked in the 2026-10-22 study: needs a Mac with a permission not yet granted.
- ^66 tested See clipboard access
15 Tested on Canary 0.0.51.85 (2026-10-22 study).
Phone and web
- ^781 visual Find the phone address
1 Not re-checked after #581 (HTTP address and QR when tailnet HTTPS is off): it needs a host on the tailnet, and this pass ran loopback only.
- ^785 visual Open the plain HTTP address
2 Not re-checked after #581 (
Voice input needs HTTPStoast): a loopback host refuses any other Host name (Forbidden), so an insecure origin needs a tailnet host. - ^787 untested Add the HTTPS page to the home screen
3 The manifest and Apple meta tags are served (
/manifest.webmanifestreturns 200 on the HTTPS listener), but there is no service worker, so a home-screen Ace has no offline page when the host is unreachable. - ^790 visual Open a link that names the host
4 The 2026-10-22 study's headless browser never connected (no local-network prompt), and nothing documents the
#host=link. - ^792 tested Let the host accept the web app
5 Done here with
ACE_WEB_APPon a second host and the app served over the tailnet certificate;ace webitself is covered under Command line.6 Only
ace webshows or sets it; the app has no web-app row. - ^798 tested A teammate's browser is refused
7 Re-check, Canary 0.0.54.93: Sam's browser on Nate's host read
This is iamnbutler@gmail.com's host. Open Ace from your own host.It shows the owner's full email to anyone on the tailnet and offers no link to your own host. - ^800 partial Switch areas with the bottom tab bar
8 While the Channels drawer is open the bottom bar can't be tapped.
- ^804 tested Open a Terminal tab
9 With three tabs (chat, Diff, Terminal) the Terminal title is still cut to
Terminaand runs under the machine icon at 390px.10 On-screen keyboard input to the terminal is untested.
Command line
- ^830 visual Add teammates' channels
1 It needs the running host; with the host on a non-default port it says
Open Ace or start this host with ace serve firstunless--portorACE_PORTis given, and help lists--portonly fortabs,serveandopen. - ^833 tested Show a teammate's channel
2 Pair study, Canary 0.0.53.88: the JSON doesn't name the host, and the owner is an email (
same.chocolixir@gmail.com) where the app sayssamechocolixir. - ^837 tested Start a sibling channel
3 Cloud compute channels are refused:
Cloud compute channels can't be forked yet: their lanes are in the container.(apps/host/src/manage.ts:96) - ^840 tested Rename a tab
4 The chat tab can't be renamed (
The Chat tab follows the channel name and cannot be renamed); names over 80 characters and closed tabs are refused. - ^845 visual Restore into another project
5 Restore errors are raw
ENOENT/EEXIST, and the restored channel can't be named (rest of githubnext/ace#624). - ^853 tested Pick the model for one ask
6
ace chat --model anthropic/…was accepted, then ran on gpt-6-astra: the rig's CLI had no Anthropic key. - ^856 tested Open another chat
7 Chat IDs aren't sequential: a channel with one chat got chats 10 and then 15.
- ^858 tested Use a teammate's channel
8 Pair study, Canary 0.0.53.88:
sayprints nothing, and a refusedasksaysOnly the owner can invoke agents herewithout naming agent access.9 Pair study, Canary 0.0.53.88:
watchreplays the whole history with no mark where live output begins;chatandstopweren't tried. - ^862 untested Bring a hosted channel back to this host
10 Only the refusals were checked: a local channel gives
The channel is already on this host, and no flag or both flags print the usage.11 Canary 0.0.51.85: a cloud compute channel refuses with
A cloud compute channel's workspace is its container, so it cannot move; needs a hosted directory to try. - ^867 tested Turn desktop tools on or off
12 Like
ace agents, any word butonturns it off silently.13 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^869 partial See who can see a project
14 Pair study, Canary 0.0.53.88: a teammate's folder project can't be named, and its owner/name form lists everyone, owner included, as
no access. - ^870 tested Share a project with the team
15 Without a team directory both share and unshare refuse with
Join a team directory to share projects. - ^871 tested Share a project with one person
16 Pair study, Canary 0.0.53.88:
project unshare <project> <login>wasn't tried. - ^875 tested Set the default model
17 An unknown model on a provider that has a key gives
This model is unavailable. Add its provider key first.(openai/does-not-existwith an OpenAI key set). - ^878 tested Store a key in the keychain
18 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^879 tested Remove a key
19 Tested on Canary 0.0.51.85 (2026-10-22 study).
- ^881 tested Show the directory
20 Pair study, Canary 0.0.53.88: it never says this Mac is the one serving it, or whether the last sync worked.
- ^882 tested Join a directory
21 An unreachable URL gives
Could not reach https://example.invalid. Check the URL and your connection.and saves nothing.22 Pair study, Canary 0.0.53.88: it echoes the URL with no
joined, and an open Settings → Team shows it only after Refresh. - ^883 tested Leave the directory
23 Pair study, Canary 0.0.53.88: an open Settings → Team kept the URL,
Synced…and Leave… until a reload. - ^897 tested Open this host's app
24 After an Ace Helper restart a reload sticks on
Disconnected from your host. Reconnecting…(WebSocket 401) with nothing saying to sign in again.25
ace openprints nothing (left by githubnext/ace#652).