Setting Up Jujutsu Repositories and Tool Integration

Automate Jujutsu repository setup and Vite/Vitest tool integration.

78|6|Updated May 19, 2017
One-click install
npx skills add https://github.com/edmundmiller/dotfiles --skill setting-up-jujutsu-repositories-and-tool-integration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Setting Up Jujutsu Repositories and Tool Integration
Source: https://github.com/edmundmiller/dotfiles/tree/main/config/claude/plugins/jj/skills/jj-repository-setup
Command: npx skills add https://github.com/edmundmiller/dotfiles --skill setting-up-jujutsu-repositories-and-tool-integration

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill guides setting up jj repositories, choosing between colocated vs pure jj layouts, and integrating with development tools like Vite/Vitest.

Core Features & Use Cases

  • Colocation decisions: Decide whether to colocate jj with git in one workspace.
  • Tool integration guidance: Configure Vite/Vitest to ignore jj directories and improve DX.
  • Programmatic access: Consider library vs CLI for building jj-based tooling and integrations.

Quick Start

If starting a new repo, consider colocating jj with git and add a basic Vite project; then apply the recommended ignore rules for .jj and node_modules.

Frequently Asked Questions about Setting Up Jujutsu Repositories and Tool Integration

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

FAQPage Schema
How do I set up a Jujutsu repository with tool integration for Vite and Vitest?

Set up a Jujutsu repository by deciding whether to colocate jj with git in one workspace, then configure Vite and Vitest to ignore the .jj directory. Apply ignore rules to improve developer experience and prevent tool conflicts with version control metadata.

Should I colocate Jujutsu and Git in the same repository?

Colocation places jj and git in one workspace for unified version control. Choose colocated layouts when integrating jj into existing git-based projects; use pure jj layouts when starting fresh without git dependencies.

How do I configure Vite to ignore the .jj directory?

Add .jj to Vite's watcher ignore rules to prevent file system events from triggering rebuilds. This configuration applies the same pattern to Vitest, eliminating redundant tool restarts caused by jj's internal directory changes.

When should I use the Jujutsu library versus the CLI for tool integrations?

Use the Jujutsu library when building programmatic integrations that require direct API access and tighter coupling with jj internals. Use the CLI for orchestration and scripting when loose coupling and portability matter more than performance.

What problems does ignoring .jj in file watchers solve?

Ignoring .jj prevents development tools like Vite and Vitest from watching jj's internal metadata, reducing unnecessary rebuilds and improving build performance during jj operations like commit workflows.

Can I validate that my Jujutsu and development tool integration is configured correctly?

Validate integration by confirming .jj is excluded from file watcher rules, testing that jj operations do not trigger unexpected tool rebuilds, and verifying programmatic access points work as expected for your chosen library or CLI approach.