Atomic can create prompt templates. Ask it to build one for your workflow.
Prompt Templates
Prompt templates are Markdown snippets that expand into full prompts. Type/name in the editor to invoke a template, where name is the filename without .md.
Prerequisites: Atomic installed and running in a project. See the Quickstart. No code or build step is required.
Use prompt templates when you repeat the same instructions and want a slash command for them. They are Atomic’s lightest customization option. Use a skill if the agent should decide when to load the instructions, or an extension if you need to run code.
Locations
Atomic loads prompt templates from:- Global:
~/.atomic/agent/prompts/*.md(legacy~/.pi/agent/prompts/*.md) - Project:
.atomic/prompts/*.md(legacy.pi/prompts/*.md, only after the project is trusted) - Packages:
prompts/directories,atomic.prompts, or legacypi.promptsentries inpackage.json - Settings:
promptsarray with files or directories - CLI:
--prompt-template <path>(repeatable)
--no-prompt-templates.
Format
- The filename becomes the command name.
review.mdbecomes/review. descriptionis optional. If missing, the first non-empty line is used.argument-hintis optional. When set, the hint is displayed before the description in the autocomplete dropdown.- Invalid YAML frontmatter (for example an unquoted
description: Broken: value) skips only that template and reports a warning naming the file and the parse position; valid sibling templates still load.
Argument Hints
Useargument-hint in frontmatter to show expected arguments in autocomplete. Use <angle brackets> for required arguments and [square brackets] for optional ones:
Usage
Type/ followed by the template name in the editor. Autocomplete shows available templates with descriptions.
Arguments
Templates support positional arguments, defaults, and simple slicing:$1,$2, … positional args$@or$ARGUMENTSfor all args joined${1:-default}uses arg 1 when present/non-empty, otherwisedefault${@:-default}or${ARGUMENTS:-default}uses all arguments when present/non-empty, otherwisedefault${@:N}for args from the Nth position (1-indexed)${@:N:L}forLargs starting at N
/component Button "onClick handler" "disabled support"
Use "" or '' to pass an empty argument without shifting later positions. For a template containing Review $2. Focus: ${1:-correctness}., /review "" src/index.ts expands to Review src/index.ts. Focus: correctness.
Loading Rules
- Template discovery in
prompts/is non-recursive. - If you want templates in subdirectories, add them explicitly via
promptssettings or a package manifest.
Next steps
- Skills — instructions the agent loads on its own when a task matches, instead of on an explicit slash command.
- Subagents — delegate a focused, bounded task to a child agent.
- Atomic packages — bundle your prompt templates with skills, themes, and extensions and share them.
- Build with Atomic — compare every customization mechanism.