Loading video...

Video Failed to Load

Go Home

we landed on a pretty good workflow for doing parallel work in OpenCode this demo is with git worktrees but i also preview an alternative we're working on at the end this will be in 1.6.0

290,877 views • 4 months ago •via X (Twitter)

48 Comments

kache's profile picture
kache4 months ago

your wife kicked you out to the garage 🫵😂

dax's profile picture
dax4 months ago

damn it i meant 1.16.0 i suck at versions

dax's profile picture
dax4 months ago

nice raadish

David Hill's profile picture
David Hill4 months ago

@alan__rice nice alt logo at the end

Kevin's profile picture
Kevin4 months ago

Wow nice one

Micky Thompson's profile picture
Micky Thompson4 months ago

I use opencode from ~/GitHub folder and that contains multiple repos (packages, monorepos, and open-source projects). I do this because I often reference repos to emulate patterns in a project. Does that mean worktrees and more will not be available unless I switch to working from 1 repo? Is not working from a repo a bad practice in opencode?

dax's profile picture
dax4 months ago

yeah but we have a new project references feature that should help your case soon so you can open it in the right folder but easily reference other directories

Fernando's profile picture
Fernando4 months ago

For the curious on a walkthrough of the implementation with references

Max Katz's profile picture
Max Katz4 months ago

been having such command in my pi agent, super useful also I like the option to move and create worktree, integrated it with worktrunk

Layton Gott's profile picture
Layton Gott4 months ago

Believe it or not this is the first time I've ever seen you and heard your voice...

Code With Antonio's profile picture
Code With Antonio4 months ago

this is quite handy, is it a mix of plugin + custom agent? or can it be done through custom agent directly?

dax's profile picture
dax4 months ago

exclamation point

Code With Antonio's profile picture
Code With Antonio4 months ago

Oh thats brilliant! Thank you!

Daniel 🦔's profile picture
Daniel 🦔4 months ago

@chriszeuch Your face is everywhere btw

Aardvark Erickson's profile picture
Aardvark Erickson4 months ago

Is this replacing or complementary to "warp"? Confused when I would use which command.

dax's profile picture
dax4 months ago

replacing warp

Lucas Martins 🇧🇷🇺🇸's profile picture
Lucas Martins 🇧🇷🇺🇸4 months ago

Great feature, the keybinding is bad, everyone knows ctrl+w is for closing tabs.

dax's profile picture
dax4 months ago

think we're changing to ctrl+m

Elhaam's profile picture
Elhaam4 months ago

Since this all is session centric, I would want session switching to be easier: 1. A sidebar that shows active sessions that are either recent or "pinned" by the user with their status 2. A tmux like numbered way to switch between them 3. Switch to last session with a shortcut

Anthony Poschen's profile picture
Anthony Poschen4 months ago

how are you closing out the worktree's and merging back locally?

viktorg's profile picture
viktorg4 months ago

Can you hire someone to deal with your GitHub issue backlog? It's essentially worthless at this point with the amount of spam on it.

Dee's profile picture
Dee4 months ago

super cool work dax! we need open alternatives. i've been using claude code exclusively for the last 9 months for everything. but it looks like i need to check out opencode again. btw how well does opencode work on smaller screens? i'm prototyping a dedicated small coding device on the go. everything out there seems to be built for desktop experience, not mobile.

dax's profile picture
dax4 months ago

we're working on some better space efficient designs our webapp looks decent on mobile

Dee's profile picture
Dee4 months ago

oh cool. we should have the first batch of prototypes done in a few weeks. happy to send you a prototype unit with opencode installed to code on it it in exchange for feedback.

Luke Diebold's profile picture
Luke Diebold4 months ago

@thdxr Why not just use your phone? I'm clearly missing something here 😅

Dee's profile picture
Dee4 months ago

we want to prove steve jobs was wrong 😂 just kidding. the goal here is to design a dedicated coding device. just like kinde. why not read books on the phone? kindle is optimized for mobile reading. we think coding will be woven in every fabric of everyday life moving forward. literally everything. it’s so easy for everyone to vibe code now and build tools and services they need to manage their life and businesses. like reading, coding is the new writing. so there is a need for a dedicated coding device.

Luke Diebold's profile picture
Luke Diebold4 months ago

@thdxr Interesting, I respectfully disagree but would happily be wrong! The only reason I think kindle makes sense - which it doesn't for me - is that the screen looks more like paper and has less glare What makes a coding device better than a phone?

Dee's profile picture
Dee4 months ago

@thdxr yeah you could totally be right! we find that with hardware it’s better to ship an actual prototype and let people use it than debating. then we’ll find out for sure if people actually want it. that’s how we operate at @autonomous_labs. we are betting on the physical keyboard!

am.will's profile picture
am.will4 months ago

This happens to me all the time. Great idea

Greg Val's profile picture
Greg Val4 months ago

the disk is the easy part to split. what decides whether parallel actually works is shared dependencies, two agents in separate trees are fine until both need the same schema or config, and that's the one file a worktree can't isolate. curious what the alternative does there

Barrett's profile picture
Barrett4 months ago

how do you enjoy those garage lights? they look cool i wonder how hard they are to swap out if they burn out?

Dan van der Merwe's profile picture
Dan van der Merwe4 months ago

if i'm in a tmux window with neovim and opencode in separate panes, do I still need to cd into the new worktree dir in the neovim pane?

dax's profile picture
dax4 months ago

we have a copy dir command in ctrl+p but yeah thart part is annoying thats why we added a diff view built in so you could see stuff without going to your editor

Dan van der Merwe's profile picture
Dan van der Merwe4 months ago

hmm yeah, sometimes that's enough but not always. For me that's the big struggle with worktrees - I want the environment cloned, I want to be able to run neovim in there, I want to be able to run the app with branch-specific env vars. I've had to build my own tmux + worktrunk workflows for this, it'd be nice if it can be solved at this level though

Fabian Schuh's profile picture
Fabian Schuh4 months ago

i am excited about native worktree integration!

Rodri Mora aka Bullerwins's profile picture
Rodri Mora aka Bullerwins4 months ago

I see you are a fellow Vimium user in chrome. Wtf is even a mouse?

Betty 🐦's profile picture
Betty 🐦4 months ago

painpoint I have with worktrees is around having multiple environments (ports/dbs etc) to be able to debug the app. i've been enjoying using gitbutler which maintains multiple branches + a merged version for you to test on. In theory you'd be able to do similar with this?

cyotee's profile picture
cyotee4 months ago

Awesome, I had built a plugin to do that.

CXCarroll's profile picture
CXCarroll4 months ago

Not related to your post but is your garage air conditioned?

Leonard Meagher's profile picture
Leonard Meagher4 months ago

Just yesterday when I had a tool I was developing and a different project that integrates and tests that tool. I wanted to continue the conversation I was having with the development context for integration but had to get a document made instead. Can't wait!

Dawid Laszuk's profile picture
Dawid Laszuk4 months ago

`/diff` ? And I was, like a caveman, opening up a separate tty panel to quickly do `lazygit`. Handy.

L2.'s profile picture
L2.4 months ago

Why don’t u just split open code to 4 instances using tmux to live on one window, each on work trees

K.O.O's profile picture
K.O.O4 months ago

Neat.

Carlos Souza's profile picture
Carlos Souza4 months ago

Read my mind. I’ve been running into this same situation re worktrees

Izak Filmalter's profile picture
Izak Filmalter4 months ago

@jayair Does this let me move the session to another machine? Eg maybe my dev box in the cloud?

Cooper's profile picture
Cooper4 months ago

sick update on the parallel workflow for 1.6.0! what’s the biggest win the alternative preview has over the git worktree approach?

Cooper's profile picture
Cooper4 months ago

this 1.16.0 parallel workflow update for OpenCode is so clutch, can't wait to test it. i've run into so many snags with git worktrees, so curious what the alt preview handles better?

koko soko DiLoCo's profile picture
koko soko DiLoCo4 months ago

its like if stash didnt suck. nice

Related Videos