Beta JJSourcery is in early access. Core workspace flows work; some features are still stabilizing.
Now accepting early users Agent-ready workspace

Source control
built for agents.

JJSourcery is a jj-powered workspace for code: queryable history, machine-readable APIs, and deterministic operations designed for agents and the humans who steer them. Import a GitHub repo to get started, or create repos directly.

Install the CLI in one line

Linux x86_64 today. macOS and Windows builds are on the way.

curl -fsSL https://jjsourcery.com/install.sh | sh
Free during beta No credit card Own your auth Your own storage
jjsourcery repo import https://github.com/awdemos/jjsourcery
$ jjsourcery login
Open https://jjsourcery.com/cli/login?device_code=XXXX-XXXX
✓ CLI authorized
$ jjsourcery repo import \
https://github.com/awdemos/jjsourcery
✓ Connected to GitHub API
✓ Fetched 12,847 commits, 38 branches, 142 tags
✓ Indexed into jj change graph
✓ Encrypted and stored in your object bucket
Import complete. Ready to browse.

Built for the agentic stack

jj Fly.io Pocket ID
Get the CLI

One command to get started

The JJSourcery CLI is a single static binary. Paste the installer into your terminal, authenticate with Pocket ID, and start building your workspace.

~
$ curl -fsSL https://jjsourcery.com/install.sh | sh
✓ jjsourcery installed to ~/.local/bin
$ jjsourcery login
Open https://jjsourcery.com/cli/login?device_code=XXXX-XXXX
$ jjsourcery repo import https://github.com/awdemos/jjsourcery
✓ Import queued
Read the CLI manual
Onboarding

Import from GitHub to get started

Bring your existing GitHub repositories into your workspace on day one. Files, commits, and diffs rendered by jj.

View source on GitHub
$ jjsourcery repo import https://github.com/awdemos/jjsourcery
✓ Fetched 12,847 commits
✓ Fetched 38 branches, 142 tags
✓ Indexed into jj change graph
$ jjsourcery repo list
awdemos/jjsourcery → ready
Capabilities

A workspace for your repositories

JJSourcery gives you a queryable, agent-ready workspace on jj. GitHub import is available when you want to onboard existing repos.

🛰️

Onboard from GitHub

Import public and private repositories with branches, tags, releases, and every commit preserved. Use it as an onboarding ramp to your agentic source control layer.

$ jjsourcery repo list
awdemos/jjsourcery → ready
awdemos/jj-cli → ready
awdemos/infra → ready
$ jjsourcery repo sync awdemos-jjsourcery
Sync queued. Track progress in /app/.
🔐

Private by design

Code lives in your object bucket. Metadata lives in your metadata database. You hold the keys, the backups, and the exit route.

jj-powered history

Browse files, commits, and diffs with jj as the VCS backend.

🤖

Agent-ready operations

Searchable history, typed APIs, and deterministic jj commands give agents a codebase they can understand and act on.

🌐

Edge-deployed

Runs on an edge worker and Fly.io for low-latency access, with no cold starts on the dashboard.

🔑

Own your identity

Secure OIDC sign-in with Pocket ID. Bring your own provider, enforce your own policies, and never outsource user trust.

FAQ

Common questions

The bottom-line answers technical teams need when building an agentic source-control workspace on jj.

🚀

Quick start

Import your first repository from the web UI or CLI. Full docs are coming soon; the README and source are available now.

Coming soon

CLI reference

Every jjsourcery command, flag, and exit code. Browse the CLI source on GitHub.

View CLI source
🤖

Workspace API

Structured, machine-readable endpoints for querying and acting on code.

Browse endpoints
🏰

Self-hosting roadmap

A self-hosted deployment option is on the roadmap. Join the discussion to follow progress and share requirements.

Follow the roadmap
Is JJSourcery source control?
Yes: a new source control layer built on jj. You can import a GitHub repo to seed your workspace, then browse, query, and automate on top of it. Social coding features like issues and PRs are out of scope for now; we focus on the code plane.
What happens to my git history?
Everything comes with you: commits, branches, tags, release metadata, and pull-request history. The import is read-only on the GitHub side, so the original stays untouched while your workspace gets a complete, queryable copy.
Why use jj as the VCS backend?
jj treats version control as a database of changes, not a chain of immutable snapshots. That means rebase-free workflows, first-class conflicts, and operations fast enough for automated tools to run at scale. Git compatibility is built in, so you can still push to any git remote.
Where does my code actually live?
In your object-storage bucket and metadata database by default. The hosted service only routes requests and never holds your repository contents. Prefer local storage? A self-hosted backend option is on the roadmap.
Can I self-host the whole stack?
Not yet. The hosted stack is the only option today. We are working toward a self-hosted deployment option and plan to publish deployment guides and configuration examples.
Do I have to move my whole team at once?
No. Import one repo, try the browser and API, then expand when you are ready. Because jj is git-compatible, you can keep pushing to GitHub as a mirror while you evaluate the new workflow.
What about CI/CD?
Keep your existing GitHub Actions while you evaluate JJSourcery. In 2026/2027 we plan to ship native event hooks so CI can pull from your JJSourcery plane directly, without forcing a workflow rewrite.
How do agents interact with repositories?
Through a typed, auditable API. Agents can query history, read files, propose changes, and run jj operations with deterministic outcomes instead of scraping GitHub pages or guessing at repository state.
jjsourcery login && jjsourcery repo import
$ jjsourcery login
✓ Device authorized via Pocket ID
$ jjsourcery repo import https://github.com/org/critical-service
✓ Fetched 4,182 commits
✓ Fetched 23 branches, 14 tags
✓ Indexed into jj change graph
Your workspace is ready.

Still have questions?

The codebase is open, the roadmap is public, and the maintainers are actively shipping. Open a GitHub issue, join the discussion, or read the architecture spec.

Pricing

Free during beta

JJSourcery is in early access. Build your workspace, browse history, and use the dashboard at no cost while we build toward paid plans.

Beta
$0 /mo

JJSourcery is in early access. Build your agentic source control workspace at no cost while we shape paid plans.

  • Unlimited repos
  • jj-powered history browser
  • Pocket ID sign-in
  • Community support
Start building

Paid plans will come later. Self-hosting is on the roadmap.

The JJSourcery Dispatch

Workspace tips, jj guides, and automation ideas. No spam.

Once a month, we share what we're learning about operating private code infrastructure, working with jj, and designing tools that can reason about repositories. Unsubscribe anytime.

We respect your inbox. No tracking pixels.