jujutsu

Manage jj working-copy operations and revisions with Git-compatible workflows.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/asimihsan/dotfiles --skill jujutsu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jujutsu
Source: https://github.com/asimihsan/dotfiles/tree/main/chezmoi/dot_claude/skills/jujutsu
Command: npx skills add https://github.com/asimihsan/dotfiles --skill jujutsu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jujutsu.

What problem does it solve?

This Skill simplifies complex version control tasks by leveraging Jujutsu (jj), a Git-compatible VCS designed for intuitive history editing. It eliminates the need for a staging area and streamlines operations like splitting, squashing, and rebasing commits, making your development workflow more efficient and less error-prone.

Core Features & Use Cases

  • Mutable History Editing: Easily create, split, squash, and edit historical commits with stable change IDs, simplifying complex refactoring.
  • Working Copy as Commit: Your filesystem is always the current commit, eliminating the need for a staging area and simplifying commit creation.
  • Flexible Branch Management: Use bookmarks as named pointers to revisions, offering a more flexible alternative to traditional Git branches.
  • Git Compatibility: Seamlessly fetch from and push to Git remotes, integrating smoothly into existing Git-based projects.
  • Use Case: You've made several changes in your working directory and want to split them into two logical commits. Use jj split interactively to separate the changes, then jj describe each new commit, and finally jj new to prepare for the next task, all without leaving your terminal.

Quick Start

Show me the current status of the Jujutsu repository, including any uncommitted changes or conflicts.

Frequently Asked Questions about jujutsu

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a commit into multiple logical changes with Jujutsu?

Jujutsu's `jj split` command lets you interactively separate changes in your working directory into distinct commits with stable change IDs. Each split commit retains its own identity, making it easy to organize related work without rebasing or manual staging.

What's the difference between Jujutsu and Git for version control?

Jujutsu eliminates the staging area—your filesystem is always the current commit—and treats history as mutable with stable change IDs. It offers Git compatibility for pushing and fetching from Git remotes while providing streamlined rebasing, squashing, and commit editing without Git's complexity.

Can I use Jujutsu to rebase and edit commits without losing work?

Yes. Jujutsu's mutable history design with stable change IDs lets you rebase, edit, and reorganize commits safely. Commands like `jj rebase`, `jj describe`, and `jj edit` preserve your work through automatic snapshots, making complex history rewrites straightforward and reversible with `jj undo`.

How do I manage branches in Jujutsu?

Jujutsu uses bookmarks as named pointers to revisions instead of traditional branches. Manage them with `jj bookmark` commands to track lines of work flexibly, and push them to Git remotes using `jj git push` for seamless integration with Git-based projects.

Do I need to understand Git to use Jujutsu?

Jujutsu is Git-compatible and works in repositories with a `.jj` directory, but its core workflow—no staging area, mutable commits, automatic snapshots—differs from Git. If you're familiar with version control concepts, Jujutsu's approach is intuitive; it's designed to simplify common tasks Git makes complex.

What happens if I make mistakes with Jujutsu commits or rebases?

Jujutsu automatically snapshots your working directory and maintains stable change IDs across edits. Use `jj undo` to reverse operations safely, and consult `jj log` with revsets to inspect your history at any point, ensuring you can recover from mistakes without data loss.