Global Workflows, Commands, and Scripts
Workflows placed in ~/.archon/workflows/, commands in ~/.archon/commands/, and scripts in ~/.archon/scripts/ are loaded globally — they appear in every project and can be invoked from any repository. Workflows and commands carry the source: 'global' label in the Web UI node palette; scripts resolve under the same repo-wins-over-home precedence.
~/.archon/workflows/~/.archon/commands/~/.archon/scripts/Or, if you have set ARCHON_HOME:
$ARCHON_HOME/workflows/$ARCHON_HOME/commands/$ARCHON_HOME/scripts/Create the directories if they do not exist:
mkdir -p ~/.archon/workflows ~/.archon/commands ~/.archon/scriptsNote on location. These are direct children of
~/.archon/— same level asworkspaces/,archon.db, andconfig.yaml. Earlier Archon versions stored global workflows at~/.archon/.archon/workflows/; see Migrating from the old path below.
Subfolders (1 level deep)
Section titled “Subfolders (1 level deep)”Each directory supports one level of subfolders for grouping, matching the existing defaults/ convention. Deeper nesting is ignored silently.
~/.archon/workflows/├── my-review.yaml # ✅ top-level file├── triage/ # ✅ 1-level subfolder (grouping)│ └── weekly-cleanup.yaml # ✅ resolvable as `weekly-cleanup`└── team/personal/too-deep.yaml # ❌ ignored — 2 levels downResolution is by filename without extension (for commands) or exact filename (for workflows), regardless of which subfolder the file lives in. Duplicate basenames within the same scope are a user error — keep each name unique within ~/.archon/commands/ (or <repoRoot>/.archon/commands/), across whatever subfolders you use.
Load Priority
Section titled “Load Priority”- Bundled defaults (lowest priority) — the
archon-*workflows/commands embedded in the Archon binary. - Global / home-scoped —
~/.archon/workflows/,~/.archon/commands/,~/.archon/scripts/(override bundled by filename). - Repo-specific —
<repoRoot>/.archon/workflows/,<repoRoot>/.archon/commands/,<repoRoot>/.archon/scripts/(override global by filename).
Same-named files at a higher scope win. A repo can override a personal helper by dropping a file with the same name in its own .archon/workflows/, .archon/commands/, or .archon/scripts/.
Practical Examples
Section titled “Practical Examples”Personal Code Review
Section titled “Personal Code Review”A workflow that runs your preferred review checklist on every project:
name: my-reviewdescription: Personal code review with my standardsmodel: sonnet
nodes: - id: review prompt: | Review the changes on this branch against main. Check for: error handling, test coverage, naming conventions, and unnecessary complexity. Be direct and specific.Custom Linting or Formatting Check
Section titled “Custom Linting or Formatting Check”A workflow that runs project-agnostic checks:
name: lint-checkdescription: Check for common code quality issues across any project
nodes: - id: check prompt: | Scan this codebase for: 1. Functions longer than 50 lines 2. Deeply nested conditionals (>3 levels) 3. TODO/FIXME comments without issue references Report findings as a prioritized list.Quick Explain
Section titled “Quick Explain”A simple workflow for understanding unfamiliar codebases:
name: explaindescription: Quick explanation of a codebase or modulemodel: haiku
nodes: - id: explain prompt: | Give a concise explanation of this codebase. Focus on: what it does, key entry points, and how the main pieces connect. Keep it under 500 words. Topic: $ARGUMENTSPersonal Command Helpers
Section titled “Personal Command Helpers”Commands placed in ~/.archon/commands/ are available to every workflow on the machine. Useful for prompts you reuse across projects.
Review the uncommitted changes in the current worktree.Check for:- Error handling gaps- Missing tests- Surprising API shapes- Unnecessary clevernessBe terse. Report findings grouped by file.A workflow in any repo can then reference it:
nodes: - id: review command: review-checklistSyncing with Dotfiles
Section titled “Syncing with Dotfiles”If you manage your configuration with a dotfiles repository, you can include your global content:
# In your dotfiles repodotfiles/└── archon/ ├── workflows/ │ ├── my-review.yaml │ └── explain.yaml └── commands/ └── review-checklist.mdThen symlink during dotfiles setup:
ln -sf ~/dotfiles/archon/workflows ~/.archon/workflowsln -sf ~/dotfiles/archon/commands ~/.archon/commandsOr copy them as part of your dotfiles install script:
mkdir -p ~/.archon/workflows ~/.archon/commandscp ~/dotfiles/archon/workflows/*.yaml ~/.archon/workflows/cp ~/dotfiles/archon/commands/*.md ~/.archon/commands/This way your personal workflows and commands travel with you across machines.
CLI and Web Support
Section titled “CLI and Web Support”Both the CLI, the server, and the Web UI discover home-scoped content automatically — no flag, no config option.
# Lists bundled + global + repo-specific workflowsarchon workflow list
# Run a global workflow from any repoarchon workflow run my-reviewIn the Web UI workflow builder, commands from ~/.archon/commands/ appear under a Global (~/.archon/commands/) section in the node palette, distinct from project and bundled entries.
Migrating from the old path
Section titled “Migrating from the old path”Pre-refactor versions of Archon stored global workflows at ~/.archon/.archon/workflows/ (with an extra nested .archon/). That location is no longer read. If you have workflows there, Archon emits a one-time deprecation warning on first use telling you the exact migration command:
mv ~/.archon/.archon/workflows ~/.archon/workflows && rmdir ~/.archon/.archonRun it once; the warning stops firing on subsequent invocations. There was no prior home-scoped commands location, so ~/.archon/commands/ is new capability — nothing to migrate.
Troubleshooting
Section titled “Troubleshooting”Workflow Not Appearing in List
Section titled “Workflow Not Appearing in List”-
Check the path — The directory must be exactly
~/.archon/workflows/(a direct child of~/.archon/, not the old double-nested~/.archon/.archon/workflows/).Terminal window ls ~/.archon/workflows/ -
Check file extension — Workflow files must end in
.yamlor.yml. -
Check YAML validity — A syntax error in the YAML will cause the workflow to appear in the errors list rather than the workflow list. Run:
Terminal window archon validate workflows my-workflow -
Check for name conflicts — If a repo-specific workflow has the same filename, it overrides the global one. The global version will not appear when you are in that repo.
-
Check ARCHON_HOME — If you have set
ARCHON_HOMEto a custom path, global workflows must be at$ARCHON_HOME/workflows/, not~/.archon/workflows/.