Repository navigation
feat(launch): choose the host and worktree base - #10
Open
alessandrocornacchia wants to merge 3 commits into
Open
alessandrocornacchia wants to merge 3 commits into
alessandrocornacchia wants to merge 3 commits into
Conversation
- Newer Paseo apps ship a Lucide set without brand icons, so the plugin failed to load with "Unknown Lucide icon: Github" - Use GitBranch for the sidebar item, settings screen, command and timeline row Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- The multi-host client API (useHosts, getPaseoClient) is not in the 0.8 typings Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Add a host chip to the launch dialog when more than one host is connected; other hosts are reached with getPaseoClient and matched by project key, falling back gracefully on Paseo before 0.9.0 - Move workspace and agent creation into shared launchCard, used by the daemon handler and by the dialog for remote hosts - Add a base chip for new worktrees: a branch read from GitHub, or a pull request's own branch checked out by the daemon - Request the base as a remote-tracking ref so it is fetched first; on the board's host, fetch it from the remote for the card's repo - Remember the last host, and the last base per repository - Document both in the README and CHANGELOG Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
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.
What this changes
The send dialog can now launch the agent on any connected Paseo host, not only the board's own, and a New worktree can start from a chosen branch or, for a pull request, from the PR's own branch. The last host, and the last base per repository, are remembered. It also fixes the plugin failing to load on current Paseo apps (
Unknown Lucide icon: Github).board.send-to-chat. Any other online host is reached withgetPaseoClient(serverId), and the project there is the one whose key is the card's repository. Workspace, agent and timeline-row creation moved intoshared/launch.ts(launchCard), which both paths use. After launch,openAgentgets theserverId.gh, default first, then the 100 most recently committed), plus "PR #N branch" on pull requests. That option sendsaction: "checkout"with achange_requestcheckout source. A branch is sent asrefs/remotes/<remote>/<branch>, which the daemon fetches before branching, so the agent starts at the remote tip rather than at a stale local default branch. On the board's own host, the plugin picks the remote that points at the card's repository (a fork'supstream) and fetches the branch first. On a remote host that remote isorigin, which is what Paseo derives the project key from.hostIdjoins the launch defaults. Bases are stored per repository insettings.jsonunderbases, keyed separately for pull requests (…#pr) and for issues and discussions.originmust be the card's repository, and the base branch must have been fetched there at least once. Otherwise the dialog says to rungit fetch.Checks
npm run typecheckpassesnpm run lintpasses, including the project rules inscripts/npm testpasses (61 tests; newshared/launch.test.ts)paseo plugin reload github-integrationloads cleanly against a real daemon (0.11.1)The server pieces were also exercised against real GitHub and git: branch listing, picking
upstreamand fetching an unseen branch in a fork-style clone, and saving and reading back remembered bases. Workspace creation with the newaction/refName/checkoutSourceoptions was checked against the 0.11.1 daemon source and unit tests, not with a live send.UI
Not checked visually yet. The host and base chips sit in the dialog's first control row, next to the isolation chip, and reuse
ControlChipandChoicePopover.Paseo version
useHosts/getPaseoClientfirst appear in Paseo 0.9.0. They are read off the SDK module object, so on 0.8 the chip is absent and everything else works.paseo-plugin.jsonstays at>=0.8.0.action,refNameandcheckoutSourcefields are already in the 0.8.0 protocol.@getpaseo/*0.11.1 for the typings.🤖 Generated with Claude Code