Skip to main content

Command Reference

Atomic provides a focused set of commands for managing repositories, recording changes, collaborating with remotes, and integrating with AI coding agents.

Every command listed here corresponds to a real subcommand in the atomic CLI binary. Run atomic <command> --help for full usage details.

Quick Reference​

CommandDescription
initInitialize a new Atomic repository
statusShow working copy status
addAdd files to be tracked
removeRemove files from tracking
moveMove or rename tracked files
recordRecord changes from the working copy
reviseRevise a change in-place
diffShow differences in the working copy
logShow change history
changeInspect a specific change
applyApply changes to a stack
resetReset working copy to last recorded state
splitCreate a new stack from an existing one
stackManage stacks (new, switch, list, delete)
stashTemporarily save uncommitted changes
tagManage tags (create, list, show, delete)
pushPush changes to a remote
pullPull changes from a remote
cloneClone a remote repository
remoteManage named remote repositories
identityManage user identities and signing keys
agentManage AI agent integration

Command Categories​

Working with Changes​

The core workflow — track files, record changes, review diffs:

atomic add src/main.rs           # Track a file
atomic status # See what changed
atomic diff # Review the diff
atomic record -m "Add main" # Record a change
atomic log # View history
  • add — Add files to be tracked
  • remove / rm — Remove files from tracking
  • move / mv — Move or rename tracked files
  • status — Show modified, added, deleted, and untracked files
  • diff — Show differences between working copy and last recorded state
  • record — Create a new change from tracked file modifications
  • revise — Modify a previously recorded change in-place
  • log — Display the history of changes on the current stack
  • change — Inspect details of a specific change by hash or sequence number

Repository Management​

Create, clone, and reset repositories:

atomic init myproject             # Create a new repo
atomic clone https://... # Clone from remote
atomic reset --force # Discard uncommitted changes
  • init — Initialize a new Atomic repository
  • clone — Clone an existing repository from a remote
  • reset — Reset the working copy to the last recorded state
  • split — Create a new stack from an existing one

Stacks​

Stacks are Atomic's equivalent of branches — but they're views of the same graph, not forks:

atomic stack new feature-auth     # Create a stack
atomic stack switch feature-auth # Switch to it
atomic stack list # List all stacks
atomic stack delete old-feature # Delete a stack
  • stack — Create, switch, list, and delete stacks
  • stash — Temporarily save uncommitted changes to an orphan stack

Remote Operations​

Synchronize with remote repositories:

atomic remote add origin https://api.atomic.dev/acme/project/code
atomic push # Push changes to default remote
atomic pull # Pull changes from default remote
  • push — Upload local changes to a remote
  • pull — Download and apply changes from a remote
  • clone — Create a new local repository from a remote
  • remote — Add, remove, list, and configure named remotes

Tags​

Named state snapshots for marking releases and sync points:

atomic tag create v1.0.0 -m "Release 1.0"
atomic tag list
atomic tag show v1.0.0
  • tag — Create, list, show, and delete tags

Identity​

Manage user identities for signing changes:

atomic identity new alice --email alice@example.com
atomic identity list
atomic identity whoami
  • identity — Create, list, show, and delete identities

AI Agent Integration​

Turn-level recording for AI coding agents with full provenance:

atomic agent enable --agent claude-code
atomic agent status --verbose
atomic agent explain <session-id> --all --save
  • agent — Enable, disable, and manage AI agent hooks for Claude Code, Gemini CLI, and OpenCode

Global Options​

These flags are available on every command:

FlagDescription
-v, --verboseEnable verbose output for debugging
--no-colorDisable colored output (useful for piping)
--versionPrint version information
--helpDisplay help for a command

Basic Workflow​

# 1. Initialize
atomic init myproject
cd myproject

# 2. Create and track files
echo 'fn main() {}' > src/main.rs
atomic add src/main.rs

# 3. Record
atomic record -m "Initial commit"

# 4. Create a stack for a feature
atomic stack new feature-auth --switch

# 5. Make changes, record, review
atomic status
atomic diff
atomic record -m "Add authentication module"

# 6. Push to remote
atomic remote add origin https://api.atomic.dev/acme/project/code
atomic push

AI-Assisted Workflow​

# 1. Enable agent hooks
atomic agent enable --agent claude-code

# 2. Work with your AI agent — turns are recorded automatically

# 3. Review what happened
atomic log
atomic agent status --verbose

# 4. Generate reasoning summaries
atomic agent explain <session-id> --all --save

# 5. Push everything (changes + provenance + session data)
atomic push

Getting Help​

# Top-level help
atomic --help

# Help for a specific command
atomic record --help
atomic stack --help
atomic agent enable --help