Skip to main content

Using Atomic

This page collects day-to-day usage details that do not fit on the quickstart page.

Interactive Mode

Interactive Mode

The interface has four main areas:
  • Startup header - shortcuts, loaded context files, prompt templates, skills, and extensions
  • Messages - user messages, assistant responses, tool calls, tool results, notifications, errors, and extension UI
  • Editor - where you type; border color indicates the current thinking level
  • Footer - working directory, session name, token/cache usage, cost, context usage, and current model
The editor can be replaced temporarily by built-in UI such as /settings or by custom extension UI.

Editor Features

See Keybindings for all shortcuts and customization.

Slash Commands

Type / in the editor to open command completion. Extensions can register custom commands, skills are available as /skill:name, and prompt templates expand via /templatename.

Message Queue

You can submit messages while the agent is still working:
  • Enter queues a steering message, delivered after the current assistant turn finishes executing its tool calls.
  • ALT+Enter queues a follow-up message, delivered after the agent finishes all work.
  • Escape or Ctrl+C aborts the running agent and restores queued messages to the editor. When idle, Ctrl+C clears the editor (press twice to exit).
  • ALT+Up retrieves queued messages back to the editor.
On Windows Terminal, ALT+Enter is fullscreen by default. Remap it as described in Terminal setup if you want Atomic to receive the shortcut. Configure delivery in Settings with steeringMode and followUpMode.

Sessions

Sessions are saved automatically to ~/.atomic/agent/sessions/, organized by working directory.
When --session-id does not match an exact session in the current project, Atomic warns that no session was found and then creates the requested new session. Reusing an existing exact ID opens it without that warning. Useful session commands:
  • /session shows the current session file and ID.
  • /tree navigates the in-file session tree and can summarize abandoned branches.
  • /fork creates a new session from an earlier user message.
  • /clone duplicates the current active branch into a new session file.
  • /compact uses verbatim line compaction: the model selects one-based numbered ranges to delete, Atomic validates them, and retained text is reconstructed mechanically with (filtered N lines) markers. Exactly the configured number of newest context-visible messages remains ordinary; the default is two and zero preserves none.
See Sessions and Compaction for details.

Context Files

Atomic loads AGENTS.md or CLAUDE.md at startup from:
  • ~/.atomic/agent/AGENTS.md for global instructions
  • parent directories, walking up from the current working directory
  • the current directory
Use context files for project conventions, commands, safety rules, and preferences. Disable loading with --no-context-files or -nc.

System Prompt Files

Replace the default system prompt with:
  • .atomic/SYSTEM.md for a project
  • ~/.atomic/agent/SYSTEM.md globally
Append to the default prompt without replacing it with APPEND_SYSTEM.md in either location.

Exporting and Sharing Sessions

Use /export [file] to write a session to HTML. Use /share to upload a private GitHub gist with a shareable HTML link. Treat exported and shared sessions as sensitive: transcripts can contain source code, file paths, credentials, and other private data from your session. Review a session before sharing it, and only upload transcripts you are comfortable making accessible to anyone with the link.

CLI Reference

Package Commands

These commands manage Atomic packages and atomic update can update the Atomic CLI installation. To uninstall Atomic itself, see Quickstart. atomic config and project package commands accept --approve/--no-approve to trust or ignore project-local settings for one command. atomic update never prompts for project trust. See Atomic Packages for package sources and security notes.

Modes

In print mode, Atomic also reads piped stdin and merges it into the initial prompt:
When a print-mode turn correctly finishes by calling an opt-in terminating structured-output tool created with createStructuredOutputTool (for example from an extension, SDK caller, or workflow item with a schema), Atomic ends after that tool result without an extra follow-up assistant turn. Print-mode stdout contains the terminating structured JSON payload, so atomic -p remains script-friendly while the same value is also available through the SDK capture sink, tool details, a configured file sink, workflow result.structured, or subagent result.structuredOutput. This also works for custom factory names such as final_decision. Non-terminating or unrelated tool results are not printed as the final response.

Model Options

Session Options

Tool Options

Default built-in tools: read, bash, edit, write, find, search, ask_user_question, todo. find.paths accepts directories, files, or glob paths such as *.ts and honors timeout; search accepts pattern, optional paths, i, gitignore, and skip for regex content-search pagination. Use --exclude-tools to disable one or more tools while leaving the rest available, for example atomic --exclude-tools ask_user_question.

Project Trust Options

Project trust gates .atomic/legacy .pi project resources, project package settings, project-local context files, and .agents/skills discovered from the project tree. Saved trust decisions can be managed with /trust; see Security.

Resource Options

Combine --no-* with explicit flags to load exactly what you need, ignoring settings. Example:

Other Options

File Arguments

Prefix files with @ to include them in the message:

Examples

Environment Variables

PI_* aliases are also supported for app-specific ATOMIC_* variables for legacy compatibility. For example, Intercom honors PI_CODING_AGENT_DIR when ATOMIC_CODING_AGENT_DIR is unset and still reads legacy ~/.pi/agent/intercom/config.json when the Atomic config is absent. PI_CACHE_RETENTION is not one of those aliases and has no ATOMIC_* equivalent. Use PI_CACHE_RETENTION=long when configuring prompt-cache retention for providers/upstreams that support long-lived caches. Intercom’s default broker starter works across Node-based installs, Bun source checkouts, and standalone Atomic binaries without requiring npx, tsx, or bun to be present on PATH; custom broker commands remain explicit opt-in overrides.

Design Principles

Atomic keeps the core CLI small, while this distribution bundles first-party package extensions for workflows, subagents, MCP, web access, and intercom. Other workflows can still be installed as extensions or packages, or handled externally with tools such as containers and tmux. For the full rationale, read the blog post.