Live data from Hacker News

VisualJJ – Jujutsu in Visual Studio Code

visualjj.com

71–80 of 90 posts

Re: VisualJJ – Jujutsu in Visual Studio Code

#71
post #33

Earlier quoted context omitted.

Claude Code has zero issue using jj, for what it’s worth.

I noticed it get a lot better with the 4.5 models specifically. Before then, I would have to tell Claude "do a web search for the docs for jj, then do XYZ." Now I just tell it to "do XYZ using jj"

do you use it with git worktrees? or how do you handle multiple claudes?

Re: VisualJJ – Jujutsu in Visual Studio Code

#75
post #47
post #40

Earlier quoted context omitted.

If it helps, this was all I needed in my CLAUDE.md to make it use jj perfectly: # Version Control - IMPORTANT: YOU MUST assume we use Jujutsu ("jj") for version control. Check by running `jj root` (or look for a `.jj/` directory) to confirm. - If I say "commit", "branch", "squash", etc., assume jj equivalents first. - You can ignore any `git add` command, since jj always auto-adds. - Use `jj` commands instead of `git…

You can set jj to auto update stale workspaces btw

I actually asked about that on the GH discussions a couple weeks ago, but based on this (https://github.com/jj-vcs/jj/issues/7229), I'm not sure it's 100% foolproof to turn on auto-updates.

It might be ok for human use, but I have definitely seen agents in one workspace start encroaching on another workspace's turf. (Rare, but it's a huge pain to fix when it happens.)

Re: VisualJJ – Jujutsu in Visual Studio Code

#76
post #28

Earlier quoted context omitted.

jjk caused a lot of problems for me when using multiple agents. It's running some sort of jj command that snap-shotted stuff and caused divergence (might have benefited from `--ignore-working-copy`). Not sure what the precise details were, but I gave up and uninstalled it after a week.

Multiple agents is definitely tempting fate. Concurrent modification of the same git repo by multiple entities? At that point you should use multiple repos so they can merge & resolve. EDIT: of course, if a single agent uses git to modify a repo instead of jj, jj may have trouble understanding what's happened. You could compare it to using an app that uses an sqlite db, and then also editing that db by hand.

Sibling comment from gcr has the right details.

This doesn't involve git use at all.

Even with multiple workspaces (like git worktrees), once you use something like jjk, both the agent and jjk in the associated VS Code are operating on the same workspace, so that doesn't isolate enough. I don't think jjk uses `--ignore-working-copy` for read-only status updates, so it's snapshotting every time it checks the repo status while the agent is editing.

On top of that, throw in whatever Claude does if you "rewind" a conversation that also "reverts" the code, and agents wrongly deciding to work on code outside their focus area.

It's possible watchman helps (I need to look into that), but I'm so rarely using jj in VS Code (all I really want is inline blame), that it was easier to remove jjk than try to debug it all.

Divergence won't hide or lose any work, but it's an annoying time-suck to straighten out.

Re: VisualJJ – Jujutsu in Visual Studio Code

#77

Earlier quoted context omitted.

While the primary maintainer is a Google employee, the majority of commits and committers are not. It's decidedly not a Google project.

I mean the Google CLA kind of says otherwise.

Fair point, I thought it had been eliminated, but apparently that is pending the adoption of the project by a foundation such as Apache or the Linux foundation.

Re: VisualJJ – Jujutsu in Visual Studio Code

#80
post #28

Earlier quoted context omitted.

jjk caused a lot of problems for me when using multiple agents. It's running some sort of jj command that snap-shotted stuff and caused divergence (might have benefited from `--ignore-working-copy`). Not sure what the precise details were, but I gave up and uninstalled it after a week.

Multiple agents is definitely tempting fate. Concurrent modification of the same git repo by multiple entities? At that point you should use multiple repos so they can merge & resolve. EDIT: of course, if a single agent uses git to modify a repo instead of jj, jj may have trouble understanding what's happened. You could compare it to using an app that uses an sqlite db, and then also editing that db by hand.

The point of jj is that it supports lockless concurrent writes to the same repo out of the box. It is what makes it a lot more suitable than git for agent workflows
Post reply on HN