Skip to content

Commands

Initialize a new Dojo repository in the current directory.

Terminal window
dojo init

Creates a .dojo directory and registers the repository with the remote server.

Clone an existing repository.

Terminal window
dojo clone <repository-url>

Example:

Terminal window
dojo clone https://dojo.ninja/api/repos/mies/my-project

Show the current state of the working copy.

Terminal window
dojo status

Displays modified, added, and deleted files, current bookmark, and working copy change ID.


Describe the current working copy and create a new empty change on top.

Terminal window
dojo commit -m "Your commit message"

Options:

FlagDescription
-m, --messageCommit message
--intent-goalWhat this commit aims to achieve
--intent-planSteps taken
--intent-confidenceConfidence level: low, medium, high

Example with intent metadata:

Terminal window
dojo commit -m "Add user model" \
--intent-goal "Create database schema" \
--intent-plan "Define types, create Drizzle schema" \
--intent-confidence high

Change the message of an existing commit without creating a new one.

Terminal window
dojo describe -m "Updated message" <commit>

Move the working copy to an existing commit for editing.

Terminal window
dojo edit <commit>

Accepts @ (current), @- (parent), @-- (grandparent), bookmark names, or commit/change IDs.

Create a new empty change on top of a parent.

Terminal window
dojo new --parent <commit> --message "description"

Show the commit history graph.

Terminal window
dojo log

Options:

FlagDescription
-n <count>Limit number of entries

Show details of a specific commit.

Terminal window
dojo show <commit>
dojo show @ # current working copy
dojo show @- # parent

Show changes in the working copy vs its parent.

Terminal window
dojo diff

Show how a change evolved through rewrites and snapshots.

Terminal window
dojo evolution <commit>

Push local commits to the remote server.

Terminal window
dojo sync push

Pull new changes from the remote server.

Terminal window
dojo sync pull

Show the remote server URL.

Terminal window
dojo remote

Submit commits as a stack for code review.

Terminal window
dojo stack submit --title "Stack title"

List all stacks.

Terminal window
dojo stack list
dojo stack list --status review # filter by status
dojo stack list --status merged

Show details of a specific stack.

Terminal window
dojo stack show <number>

List stacks awaiting your review.

Terminal window
dojo review list

View changes in a stack.

Terminal window
dojo review diff --number <stack-number>
dojo review diff --number 42 --delta # only changes since last review
dojo review diff --number 42 --commit <id> # specific commit

Approve a stack.

Terminal window
dojo review approve --number 42

Request changes on a stack.

Terminal window
dojo review reject --number 42 --message "Missing error handling"

Leave a comment on a stack.

Terminal window
dojo review comment --number 42 --message "Consider using a Map here"

View comments on a stack.

Terminal window
dojo review comments --number 42
dojo review comments --number 42 --unresolved # only unresolved

Split a commit into multiple commits by file groups.

Terminal window
dojo rewrite split <commit> --specs "file1.ts,file2.ts:First part" "file3.ts:Second part"

Reorder commits in a chain.

Terminal window
dojo rewrite reorder <commit-id-1> <commit-id-2> <commit-id-3>

Undo the last operation.

Terminal window
dojo undo

Show the operation log.

Terminal window
dojo ops log

Workspaces are remote sandboxes for agents (or any automation) to work in isolation.

Terminal window
dojo workspace create --name "feature-name" --agent "agent-name"
Terminal window
dojo workspace list
Terminal window
dojo workspace show <workspace-id>

Write a local file to the workspace.

Terminal window
dojo workspace write <workspace-id> <local-file> [remote-path]

Read a file from the workspace.

Terminal window
dojo workspace read <workspace-id> <path>

Show changed files in the workspace.

Terminal window
dojo workspace status <workspace-id>

Commit workspace changes.

Terminal window
dojo workspace commit <workspace-id> -m "Commit message"

Submit workspace as a stack for review.

Terminal window
dojo workspace submit <workspace-id> -t "Stack title"

Check for conflicts with other workspaces.

Terminal window
dojo workspace check-conflicts <workspace-id>

Delete a workspace (committed changes are preserved).

Terminal window
dojo workspace delete <workspace-id>

Sign in to the Dojo server.

Terminal window
dojo auth login

Credentials are stored in ~/.dojo/credentials.json.