CLI Reference¶
This page is a command index for the top-level sase CLI. It is meant for discovery and
routing: use it to find the surface that owns a workflow, then follow the links to the
detailed command, flag, or subsystem reference.
For exhaustive flag tables, see the configuration reference.
Daily Operation¶
| Command | Purpose | Details |
|---|---|---|
sase ace |
Open ACE, the interactive control surface for Patches, live agents, notifications, and axe state. | ACE TUI |
sase run [PROMPT] |
Launch an agent or workflow from a prompt, an xprompt reference, a workflow reference, history, or an editor buffer. | XPrompts, workflows |
sase agent list |
List active and recent agents across projects. | ACE Agents tab |
sase agent show |
Render one agent's detail panel by name. | Agent attachments |
sase agent kill |
Terminate a running agent. | ACE TUI |
sase agent tribe |
Set, clear, or list user-defined agent tribes used for grouping. | Agent tribes |
sase agent archive |
Maintain dismissed-agent bundle summary indexes (rebuild-index, verify). |
ACE TUI |
sase agent artifacts |
Inspect and migrate physical agent artifact storage layout. | Configuration |
sase agent index |
Manage the persistent agent artifact SQLite index (status, rebuild, verify, gc, repair). |
ACE TUI |
sase agent names migrate-auto |
Backfill the permanent agent-name registry from legacy auto-generated names; pass --force to rerun. |
ACE TUI |
sase agent sync |
Import shared history, publish eligible hoods, and drain Referenced By write-backs; --check --refresh fetches fresh status, while --retry-quarantined and --drop-retired handle stopped publication requests. |
Agent hood synchronization |
sase chat list |
List recent chat transcripts with sync provenance; filter with -P/--provenance, -m/--machine, and -q/--query. |
Chat provenance |
sase chat show |
Show one chat transcript by agent name, path, or basename; use --format resume for flattened turns or --format response for the latest response only. |
Chat provenance |
sase prompt list |
List, search, and filter previously submitted prompts (pretty table or JSON). | Prompt history |
sase prompt show |
Print one prompt's exact text as raw, Markdown, or JSON. | Prompt history |
sase prompt run |
Replay a stored prompt by selector, optionally editing or re-prefixing it first. | Prompt history |
sase prompt save |
Save a stored prompt as a reusable xprompt, or export it to stdout or a local file. |
Prompt history, XPrompts |
sase prompt prune |
Curate the prompt-history store with delete, prune, and read-only doctor/stats. |
Prompt history |
sase stitch list |
Show a primary/linked timeline; --origin filters stitch/auto/manual, and --sdd opts into sidecar history. |
VCS |
sase gate create |
Create a durable command-backed gate from a schema-versioned JSON specification. | Notifications |
sase gate show |
Inspect a gate's branches, declared typed inputs, and repeatable actions without answering it. | Notifications |
sase gate answer |
Answer a gate headlessly, including per-option typed input and explicit resume/restart of a partially executed branch. | Notifications |
sase gate act |
Run one gate-declared repeatable action without settling the gate. | Notifications |
sase gate wait |
Wait mechanically for a command-backed gate and return its terminal result. | Notifications |
sase notify |
Shortcut for sase notify list. |
Notifications |
sase notify create |
Create a raw, non-privileged notification from JSON input. | Notifications |
sase notify list |
List recent notifications, optionally filtered by sender, tag, unread state, or query. | Notifications |
sase notify show |
Show one notification as Markdown or JSON. | Notifications |
sase proc |
Shortcut for sase proc list. |
ACE Procs tab |
sase proc list |
List durable procs; filter by session, project, tag, status, or query. | ACE Procs tab |
sase proc run -- COMMAND |
Run a durable command proc; --session none leaves it unattributed, and --wait streams it and returns its exit code. |
ACE Procs tab |
sase proc show ID |
Show one proc and its captured output; --follow streams until it finishes. |
ACE Procs tab |
sase proc kill ID |
Kill a running proc by id or unique prefix; an already-terminal proc is an unchanged no-op. | ACE Procs tab |
sase repro replay |
Replay an Agents-tab reproduction bundle through the headless TUI harness and emit a verdict. | ACE TUI |
sase repro capture agents-tab |
Capture a commit-safe out-of-band Agents-tab bundle from current filesystem state. | ACE TUI |
sase stitch list --origin ORIGIN accepts stitch, auto, or manual; repeat the
flag to OR multiple origins. sase stitch list --format json includes the same
canonical value as each commit's "origin" field.
sase run launches detached background agents that appear in the ACE Agents tab. It can
start from prompt text, xprompt or workflow references, the editor, or the
prompt-history picker, and multi-prompt input expands into sequential background
launches. ACE uses the same launch machinery when users start agents from the TUI.
sase agent list -j reports every live runner-slot waiter as status: "QUEUED",
whether its threshold comes from the global cap or an authored %wait(runners=N). Its
runner_slot_queue_position/runner_slot_queue_size rank the same waiters in the
capacity-aware display order used by ACE: eligible waiters first, then parked waiters by
nearest-opening threshold, with priority and request FIFO preserved inside each group.
sase proc operates on durable procs: rows in ~/.sase/procs/procs.jsonl with combined
output logs under ~/.sase/procs/logs/. New sase proc run submissions always create
command rows under a supervisor; --session only controls attribution, and
--session none records an unattributed command visible in every session scope.
Historical detached rows remain readable and controllable. sase task is still
accepted as a deprecated alias.
The supervisor is independent of the submitting shell or TUI, so command work survives
TUI restarts and runs with no TUI open. The compact list markers are ⌘ for command,
▣ for tui, and ◆ for historical detached rows; sase proc show spells out the
kind and ownership. Use sase proc kill ID to stop any active store-backed proc. JSON
output uses a procs array for list and a proc object for run, show, and
kill. Retention keeps every pending or running proc plus the newest
procs.history_limit finished ones. See the
ACE Procs tab for the full model and the in-TUI equivalents.
sase proc run -N/--shell NAME and sase proc list -N/--shell NAME address a proc by a
named proc shell instead of its id: a bare name is derived beneath the calling
sase-agent, while a fully qualified name (agent/name) is resolved exactly before
falling back to an exact proc id, then a unique id prefix. Active uniqueness is scoped
per project, and a name may be reused only after the proc holding it settles.
sase proc show REF accepts the same named proc shell, id, or id-prefix forms.
Command groups with an exact list child default to that list view when invoked bare,
including sase agent-cli, sase bead, sase chat, sase file, sase file-history,
sase file-hook, sase memory, sase notify, sase plugin, sase project,
sase prompt, sase proc, sase skill, sase stitch, sase telemetry, sase var,
sase workspace, and sase xprompt. Nested groups such as sase agent tribe,
sase axe chop, sase axe lumberjack, sase memory agent-docs, and sase plan links
follow the same rule.
The bare form is only the default view. When you need flags that belong to the list
command, keep the list subcommand explicit, for example sase notify list -j,
sase memory list -j, or sase workspace list --json.
Work Tracking And Planning¶
| Command | Purpose | Details |
|---|---|---|
sase patch current |
Render the Patch associated with the current workspace. | Patches |
sase patch ref |
List, attach, or detach durable artifact references on a Patch; the bare command defaults to ref list. |
Patch references |
sase patch migrate-extension |
Rename legacy .gp ProjectSpec files to the canonical .sase extension. |
ProjectSpec |
sase patch search |
Search and filter Patches with the query language. | Query language |
sase patch set-origin |
Mark a Patch's PR_ORIGIN (sase/external/unknown). |
PR_ORIGIN |
sase patch sync-deltas |
Recompute the DELTAS field for a Patch from VCS state. |
Patches |
sase patch sync-external |
Mirror remote PRs not created by SASE's tracked PR workflow into local Patches. | Axe external PR mirror |
sase init |
Check and initialize config, memory, repositories, and skills for the current project. | Initialization |
sase init --all --check |
Check every enabled main project without writing; report one aggregate status. | Initialization |
sase init --all --yes |
Initialize every enabled main project without generic prompts; sidecar creation still asks. | Initialization |
sase memory / sase memory list |
Show loaded, referenced, available, and missing memory files. | Memory |
sase memory agent-docs list |
Inventory project, home, and chezmoi AGENTS.md files plus nearby provider shims. |
Initialization |
sase memory read |
Agent-side read of one long-term memory file with an attributable audit event. | Memory |
sase memory write |
Agent-side proposal for human-reviewed long-term memory; --notify can add an inbox item. |
Memory |
sase memory review |
Human listing, inspection, approval, editing, or rejection of pending memory proposals. | Memory |
sase memory log |
Summarize audited memory reads; --include proposals also shows proposal and review events. |
Memory |
sase memory init |
Refresh home and SASE-managed project memory; copy existing AGENTS.md files to provider instructions. | Initialization |
sase init memory |
Alias for sase memory init. |
Initialization |
sase repo init |
Initialize configured sidecars, generated guides, config, and repository ignores. | Initialization |
sase init repo |
Alias for sase repo init. |
Initialization |
sase repo path REPO |
Print a primary or sidecar path; --ensure materializes the selected sidecar. |
SDD Storage |
sase plan links [list] |
Inspect prompt/plan artifact links; bare links defaults to list. |
SDD |
sase plan links repair |
Infer and optionally write missing bidirectional SDD links. | SDD |
sase plan links validate |
Validate SDD artifact links. | SDD |
sase plan search |
Search or browse tale, epic, prompt, and research artifacts. | SDD |
sase plan show [TARGET] |
Resolve any plan reference form and render its details, or JSON/raw output. | SDD |
sase plan validate PLAN_FILE |
Validate one plan against the schema selected by its authored tier; --explain prints authoring guidance. |
SDD |
sase bead onboard |
Print the bead quick-start guide. | Beads |
sase bead init |
Initialize bead storage for the current project. | Beads |
sase bead create |
Create plan, epic, phase, or standalone task issues. | Beads |
sase bead +1 |
Corroborate an existing task with one reporter's independent evidence. | Beads |
sase bead list |
List bead issues by status, type, tier, or creation date. | Beads |
sase bead search |
Search bead IDs, titles, notes, plan paths, metadata, and lifecycle fields; --regex enables regular expressions. |
Beads |
sase bead pages |
Refresh generated bead pages or print one bead's hosted page URL. | Beads |
sase bead ready |
Show task beads marked ready whose dependencies are closed. | Beads |
sase bead blocked |
Show issues blocked by active dependencies. | Beads |
sase bead show |
Show one issue. | Beads |
sase bead update / open / close / rm |
Mutate issue metadata or lifecycle state. | Beads |
sase bead dep add |
Add an issue dependency. | Beads |
sase bead sync |
Regenerate the JSONL projection from canonical events and stage bead state. | Beads |
sase bead stats / doctor |
Inspect project statistics or bead-store health. | Beads |
sase bead work |
Launch one or more plan, epic, or task targets in order. | Beads |
sase project list |
List enabled projects by default, or inspect disabled/internal backing records with --state. |
Project lifecycle |
sase project show |
Show lifecycle, workspace, launchability, and warning details for one project. | Project lifecycle |
sase project enable / disable |
Apply the normal user-facing PROJECT_STATE transitions under lock. |
Project lifecycle |
sase project set-state |
Set a lifecycle or internal backing state under the ProjectSpec lock. | Project lifecycle |
sase project alias |
List, add, remove, or clear PROJECT_ALIASES under the ProjectSpec lock. |
Project names |
sase plan / sase plan list |
Show pending proposals, recent approvals, and inferred rejected archived proposals. | XPrompt directives |
sase plan approve |
Approve one pending plan by ID or prefix; --kind chooses approve/commit/epic/tale. |
Plan approval pipeline |
sase plan propose |
Submit a plan file for approval from the plan skill path. | XPrompt directives |
sase plan reject |
Reject one pending plan by ID or prefix, then attempt planner cleanup when found. | XPrompt directives |
sase plan search |
Search resolved-store SDD plans and the machine-local plan archive by literal text and metadata. | SDD |
sase plan show |
Resolve a path, plan: reference, pending-approval selector, slug, or bead id to one plan and show it. |
SDD |
sase plan validate |
Validate one explicit plan path using its authored tale or epic tier, with human or JSON diagnostics. |
SDD |
sase launch request |
Register a launch gate; agent callers wait for a deterministic terminal JSON outcome. | Agent groups |
sase launch approve / reject |
Resolve a pending launch request by request id, notification id, or unique prefix. | Agent groups |
sase questions |
Ask structured user questions from the questions skill path. | XPrompt directives |
Patches are PR-sized review records. SDD stores durable prompt and planning artifacts. Beads add git-portable dependency tracking and executable epics on top of those artifacts.
sase project defaults to sase project list, and sase project list defaults to
enabled true projects. Use sase project list --state all --json to inspect disabled
projects and internal sibling backing records, sase project disable <project> to
hide a dormant project from default launch views, and sase project enable <project> to
make it launchable again. Disabling refuses projects with live RUNNING claims or
active artifact markers unless --force is passed. Legacy active/inactive values and
the deprecated lifecycle command aliases remain read-compatible. ACE's Projects tab
(in the SASE Admin Center, opened with #) provides the interactive counterpart,
including marking multiple projects, editing a ProjectSpec in $EDITOR, and deleting
obsolete SASE project directories after confirmation. There is no CLI delete subcommand;
full project-directory deletion is only available from ACE's Projects tab and removes
state under ~/.sase/projects/, not workspace checkouts.
sase project alias list [PROJECT] [-j|--json], add PROJECT ALIAS,
remove PROJECT ALIAS, and clear PROJECT manage ProjectSpec aliases. The ACE Projects
sub-tab (in the SASE Admin Center, opened with #) also displays aliases, includes them
in filtering, and opens an alias editor with A. Alias refs are accepted in
launch-bound VCS workspace tags, but prompt history, agent metadata, and artifacts use
the canonical directory-key project name. ProjectSpecs may also carry PROJECT_NAME as
the primary user-facing name. For example, the GitHub provider can create
PROJECT_NAME: foo and then PROJECT_NAME: foo_1 for distinct owner/foo repositories
while keeping stable canonical project records. Existing auto-aliased GitHub projects
remain valid and keep resolving through PROJECT_ALIASES.
Enabled-only true-project discovery is also the default for launch pickers, Patch
searches, project-local xprompt catalogs, broad mobile helper catalogs, and all-known
bead helper reads. Internal sibling backing records are hidden from those surfaces and
support configured linked repositories. Agents prepare one through /sase_repo; the
underlying audited open infers the host project and workspace from cwd. Agent-history
views that need older artifacts opt into all project states explicitly. An explicitly
typed known-project VCS ref is a launch-time exception: it re-enables a disabled project
before claiming a workspace. A checkout cwd or mobile project value is only
prompt-resolution context, not a workspace ref; without an explicit ref, a bare prompt
defaults to #git:home. Direct low-level claims against a disabled ProjectSpec remain
blocked until the project is enabled.
sase plan defaults to sase plan list. The dashboard has Proposed, Approved, and
Rejected sections; use repeatable -s/--status options to select sections, -n/--limit
to set each history section's size (0 is unlimited), and -t/--tier to filter by
plan-file tier. Proposed rows are never limited and are the actionable rows; each
includes an id_prefix, agent, project, provider/model, plan path, and response
directory. Pass that prefix to sase plan approve <prefix> or
sase plan reject <prefix>. If the selector is omitted, exactly one pending proposal
must exist. When --kind is omitted, approval follows the plan's authored tier; an
explicit kind overrides it. The Rejected section is inferred from archived proposal
files that are not represented by the proposed or approved state; it is a history aid,
not the selector source for new actions. The approval kind is the workflow choice:
approve runs the coder without asking the runner to commit an SDD plan, tale commits
the plan as an SDD tale and then runs the coder, epic commits the matching SDD tier
and launches the bead follow-up, and commit records the approved plan in SDD without
launching a coder. Use -m/--model to pick the follow-up agent's model. Use
-p/--prompt to add extra coder instructions for the approve and tale paths. Tale
and epic approvals validate against their target schema before writing a response; a
failure prints the diagnostics and expected schema and leaves the proposal pending for
retry. sase plan reject writes the rejection response first, then uses the same
durable cleanup path as the TUI no-feedback rejection action when the matching planner
row is still discoverable. If cleanup cannot find or kill the row, the CLI reports that
separately after the plan has already been rejected.
sase plan search [QUERY] searches plans in the resolved SDD store (the repo source)
and the machine-local ~/.sase/plans/ archive. Omit the query to browse with metadata
filters. Compact and Markdown output group SDD-store matches above local matches; JSON
and full output keep ranked result order with SDD-store matches prioritized over
otherwise-similar local matches. Useful filters include --kind, --status,
--source, --since, --until, --sort, and --format json|markdown for
agent-friendly output.
sase plan show [TARGET] resolves any way a user can name a plan to exactly one plan
and renders it. In -t auto (the default), TARGET is tried against five rungs in order
and the first definitive match wins: path (an existing file, absolute or
cwd-relative), ref (a plan: reference, a legacy marker path, or a month-drifted
reference, Rust resolved), proposal (a pending-approval notification id or unique
prefix), name (a corpus slug or <shard>/<slug> lookup, with or without .md), and
bead (a bead id whose design field points at a plan). Pass -t/--target to force
one rung with no fallthrough. Omit TARGET to show the sole visible pending plan
proposal, exactly as sase plan approve/reject treat an omitted selector. Every
ambiguity prints its candidates as re-runnable plan: references and every miss prints
close-match suggestions; neither guesses. -f/--format selects full (the default
section-structured detail view, matching the ACE TUI's PLAN lane), compact (the same
row sase plan search prints), json (a schema-versioned envelope), or raw (the plan
file's exact text, for piping). A plan that fails validation still renders in full with
its diagnostics shown and exits 0; only a missed, ambiguous, or unreadable target
exits 1. -w/--wrap controls goal/phase/diagnostics prose wrapping, and -c/--color
matches sase bead show.
sase plan validate PLAN_FILE reads the required tier: tale|epic property and
validates exactly one path without a project or agent context. It reports every schema
problem in one run and prints the expected tier schema plus a minimal valid example on
failure. Use -e/--explain for tier-specific authoring guidance, -j/--json for the
stable machine-readable envelope, or -q/--quiet to suppress the successful human
summary. The removed -t/--tier option is now invalid command usage. A valid plan exits
0, a validation failure exits 1, and invalid command usage exits 2.
Automation¶
| Command | Purpose | Details |
|---|---|---|
sase axe start |
Request running state and start the orchestrator and lumberjacks. | Axe |
sase axe stop |
Request stopped state and stop the orchestrator and lumberjacks. | Axe |
sase axe ensure |
Start a missing orchestrator unless axe was explicitly stopped. | Axe recovery |
sase axe ensure install |
Install and enable the optional user-systemd timer. | Axe recovery |
sase axe ensure uninstall |
Disable and remove the optional user-systemd timer. | Axe recovery |
sase axe status [--json] |
Inspect one read-only whole-system snapshot in human or JSON form. | Axe status |
sase axe chop list |
List configured chops with status; -a adds scripts. |
Axe chops |
sase axe chop doctor |
Diagnose configured/available chops and Telegram setup. | Axe chops |
sase axe chop run <name> |
Run one chop in the foreground. | Axe chops |
sase axe lumberjack list |
List configured lumberjacks. | Axe lumberjacks |
sase axe lumberjack run <name> |
Run one lumberjack in the foreground for debugging. | Axe lumberjacks |
sase axe lumberjack status |
Show lumberjack process status. | Axe |
sase axe maintenance enter |
Pause scheduled lumberjack ticks with a recorded reason. | Maintenance mode |
sase axe maintenance exit |
Resume scheduled lumberjack ticks. | Maintenance mode |
sase axe maintenance status |
Inspect the maintenance marker. | Maintenance mode |
Axe runs scheduled hooks, mentors, comment polling, workflow checks, %wait dependency
resolution, cleanup, and error digests. ACE starts axe automatically unless launched
with sase ace --no-axe.
| Command | Purpose | Details |
|---|---|---|
sase monitor start |
Hand a command to a detached supervisor and return; kills the caller. | Monitors |
sase monitor list |
List monitor family members, newest first; bare sase monitor defaults here. |
Monitors |
sase monitor show |
Show one monitor's detail and captured output; --follow streams it. |
Monitors |
sase monitor stop |
Stop a running monitor; no follow-up agent launches. | Monitors |
A long command (just check-full, a CI wait, a deploy) should run under a monitor
rather than blocking an agent turn — see the /sase_monitor skill.
Prompt And Workflow Authoring¶
| Command | Purpose | Details |
|---|---|---|
sase xprompt expand |
Expand xprompt references in prompt text, with optional trace output. | XPrompt reference syntax |
sase xprompt explain |
Dry-run a workflow and show the execution plan. | Workflows |
sase xprompt list |
Emit the structured xprompt catalog as JSON. | XPrompt catalog |
sase xprompt graph |
Generate a workflow DAG as Mermaid or text. | Workflow graphing |
sase xprompt catalog |
Render visible xprompts to a formatted PDF catalog. | XPrompt catalog |
sase xprompt show |
Show one xprompt definition with properties, provenance, and syntax highlighting. | XPrompt show |
sase lsp |
Start the xprompt language server over stdio. | Editor integration |
sase editor helper-bridge |
JSON helper operations for editor integrations. | Editor helper bridge |
sase file list |
Emit JSON filesystem completion candidates. | Editor completion commands |
sase file-history list |
Emit recently referenced files for editor completion. | Editor completion commands |
sase file-history delete |
Remove one path from the file-reference history. | Editor completion commands |
sase skill / sase skill list |
Inspect generated skill sources, provider targets, and deployed-file drift. | Initialization, bundled skills |
sase skill init |
Generate and deploy agent skill files from xprompt source templates. | Initialization, bundled skills |
sase skill log |
Summarize or inspect audited generated skill-use events. | Skill field |
sase skill use |
Agent-side audit event recording that a generated skill was used. | Skill field |
sase init skills |
Compatibility alias for sase skill init. |
Initialization |
Use #name(...) for inline xprompt expansion and #!workflow(...) for standalone
workflow references. Workspace references such as #git:<project> and plugin-provided
references are resolved before the prompt or workflow runs.
Review And Delivery¶
| Command | Purpose | Details |
|---|---|---|
sase stitch create |
Dispatch a commit, proposal, or PR through the configured VCS provider. | Commit workflows |
sase revert |
Revert a Patch by pruning its change and archiving its diff. | Commit workflows |
sase restore |
Restore a reverted Patch by reapplying its archived diff. | Commit workflows |
sase comments |
Preview mentor comments from JSON with syntax-highlighted code context. | Mentors |
Delivery commands delegate to the VCS and workspace provider layers, so the same command surface can support plain git, GitHub pull requests, and other provider plugins.
Operations And Diagnostics¶
| Command | Purpose | Details |
|---|---|---|
sase doctor |
Run read-only install, config, provider, project, and state diagnostics for support. -F previews and applies the opt-in ProjectSpec duplicate-block repair after confirmation. |
Doctor support reports |
sase config layers |
Show the configuration merge chain. | Configuration |
sase config show |
Dump the final merged configuration, optionally filtered by key. | Configuration |
sase config mentor-match |
Trace mentor profile matching for a Patch. | Mentors |
sase flag / flag list |
Inspect registered feature flags, resolved values, provenance, flag beads, and removal countdowns; flag new scaffolds a flag and its removal bead. |
Configuration, Beads |
sase file-hook / file-hook list |
List effective post-commit/artifact file hooks, filters, commands, and contributing config layers. | File hooks |
sase core health |
Check that the required sase_core_rs extension is loadable and working. |
Rust backend |
sase validate |
Run portable memory/repo/skills initialization checks plus SDD frontmatter and agents-sidecar prompt archive validation. | Initialization, SDD |
sase telemetry cleanup-test-data |
Preview or remove telemetry rows carrying known exact test labels; deletion requires -y. |
Telemetry |
sase telemetry health |
Run subsystem health assessment. | Telemetry |
sase telemetry list |
Display the debugging and health metric catalog. | Telemetry |
sase telemetry snapshot |
Query current metric values from the local store. | Telemetry |
sase telemetry status |
Show local telemetry store and flusher status. | Telemetry |
sase version |
Show the local sase, sase-core-rs, and installed plugin package inventory for this runtime. |
Runtime inventory |
sase plugin / plugin list |
Browse the plugin catalog, marking built-in, community, installed, latest, and ↑ update indicators. |
Plugin catalog |
sase plugin show |
Show one plugin's detail panel: install status, latest version, repository, topics, and metadata. | Plugin catalog |
sase plugin install |
Install a plugin into sase's own uv tool environment, resolving the name through the catalog. | Installing and updating plugins |
sase plugin update |
Upgrade one installed plugin (or every plugin with -a), leaving sase core pinned. |
Installing and updating plugins |
sase plugin uninstall |
Remove one installed plugin from sase's own uv tool environment, preserving core and other plugins. | Removing a plugin |
sase update |
Upgrade sase and all installed plugins together; registry packages via uv tool upgrade, editable/dev installs via git fast-forward. -n previews, -j emits JSON. |
Updating sase and plugins |
sase logs |
Collect and package agent run logs for a date range. | Configuration CLI flags |
sase revive-log |
Inspect the agent-revival audit log (start / success / failure events). | Agent revival audit log |
sase artifact / artifact list |
List indexed artifacts with kind, project, agent, --since, --unused, and query filters; bare sase artifact defaults to list. Aliased as sase artifact-file. ACE browses the same index under Artifacts → Files. |
File pane · Configuration CLI flags |
sase artifact create |
Copy an explicit file into persistent agent artifact storage and print its durable file: ref; agent-only (SASE_AGENT=1). |
Agent attachments |
sase artifact doctor |
Report artifact-index health, including VCS reference and provenance counts; -f backfills sha256/size_bytes/mime_type and -v re-hashes stored files and materializes VCS-backed rows. |
VCS-backed artifact files |
sase artifact open |
Resolve any artifact reference, including generated bead and agent pages, and open it with the viewer matching its kind and mime type. | Configuration CLI flags |
sase artifact path |
Print the single absolute filesystem path a reference resolves to, materializing VCS-backed rows on demand. | Configuration CLI flags |
sase artifact prune |
Plan retention with durable-reference and consumption protection; --apply moves selected automatic rows into restorable trash and refuses if a required protection source is unavailable. |
Store lifecycle |
sase artifact reclaim |
Plan conversion of stored automatic rows to verified VCS-backed identities; consumed and durably referenced rows stay protected, and mutation requires --apply. |
Store lifecycle |
sase artifact show |
Show one artifact reference's metadata, resolution report, and consumption summary, or a JSON envelope with -j. |
Configuration CLI flags |
sase artifact pane show |
Explain one Artifacts pane contract: every capability ON or OFF with the named rule, declared fact, and reason. -j prints the JSON payload. |
Artifacts pane contract |
sase artifact stats |
Report artifact-store economics, protection-source counts and availability, trash occupancy, and the default retention plan. | Store lifecycle |
sase artifact trash |
List, permanently purge, or restore entries in the restorable artifact trash. | Configuration CLI flags |
sase agent prompts |
Browse and validate the canonical agents-sidecar prompt archive. show prints the archived Markdown document, and migrate --write moves historical plans-sidecar prompts into prompts/<YYYYMM>/. |
Agent Hood Synchronization |
sase agent-cli / agent-cli list |
Inventory supported coding-agent CLIs with versions, install methods, and update markers. | Agent providers |
sase agent-cli update |
Update selected agent CLIs (or every safe candidate with -a); -n previews commands and skips. |
Agent providers |
sase agent-cli install |
Install agent CLIs from the install script their provider declares, after showing the URL, SHA-256 digest, command, and target; needs -y or an interactive confirmation, and -n previews without executing. |
Agent providers |
sase var / sase var list |
Discover unique output-variable keys and distinct typed values across indexed agent history. | XPrompt variables |
sase var get |
Show the current or quoted <agent_name> snapshot, or retrieve precise values with exact, global, hood, key-wildcard, and JSON-path selectors. |
XPrompt variables |
sase var set |
Attach named string or structured JSON output variables from assignments, literal text, files, or stdin. | XPrompt variables |
sase path |
Print well-known paths such as schemas and xprompt directories. | Configuration CLI flags |
sase repo list |
Show primary, sidecar, linked, and opened external repos; use --all or --json for cross-project and clone-matrix views. |
Configuration CLI flags |
sase repo log |
Summarize the durable repository-open audit log, with repo, agent, workspace, event-ID, and JSON filters. | Configuration CLI flags |
sase repo open |
Open an inventory repo, another SASE project, or gh:owner/repo external in the inferred workspace, then print its path. |
Configuration CLI flags |
sase workspace list |
List one project's registry or use --all for the cross-project workspace inventory. |
Workspace provider |
sase workspace path |
Print the checkout path for a workspace number. | Workspace provider |
sase workspace cleanup |
Remove stale unclaimed managed checkouts older than the configured TTL. | Workspace provider |
sase workspace repair |
Reconcile the workspace registry with the filesystem. | Workspace provider |
sase workspace migrate |
Opt-in move of adjacent checkouts to a managed root, with optional symlink transition and finalization. | Workspace provider |
sase mobile gateway start |
Start the workstation-hosted mobile gateway. | Mobile gateway |
sase mobile agent-bridge |
Fixed JSON bridge used by the mobile gateway for agent operations. | Mobile gateway |
sase mobile helper-bridge |
Fixed JSON bridge used by the mobile gateway for workflow helper operations. | Mobile gateway |
The sase artifact show, path, and open commands take a logical reference without a
leading @, for example sase artifact show file:default:<digest>. Add the sigil when
embedding the same reference in a launch prompt:
sase run "review @file:default:<digest>". This bare-CLI/@-in-prompts rule also
applies to document roles, chats, beads, agents, commits, and bugs. path accepts only
references with a filesystem identity; open can also open a bug in a browser but
rejects commits.
stats, prune, reclaim, and trash are the store's lifecycle commands, and they
are deliberately staged: stats only reports, prune and reclaim print a plan and
change nothing unless --apply is passed, and every removal either of them makes moves
the stored bytes and the complete index row into a restorable trash under
~/.sase/artifacts/trash/. sase artifact trash restore puts an entry back; only
sase artifact trash purge deletes permanently, and without -a/--all it purges only
entries older than artifacts.retention.trash_grace_days. Trashed bytes still occupy
disk until that purge runs. Explicit artifacts, artifacts a ProjectSpec, plan, bead, or
research document references, artifacts recorded in the consumption ledger, and the
newest capture of every label are never selected; if a required protection source cannot
be read, --apply refuses rather than under-protecting. See
Store Lifecycle.
sase artifact list inventories only the persistent artifact-file index; it is not a
catalog of every reference kind and it does not browse the agents-sidecar prompt
archive. Use sase agent prompts list/show/validate for archived prompts and their
published ARTIFACTS links. Use ACE's grouped @ completion to browse prompt
references, or its contextual Copy as… palette to copy a reference or pre-fill a new
agent prompt from the selected entry. See
Getting Started
for the handoff workflow and
prompt preprocessing for launch-time
resolution.
Operational commands are intentionally narrow. Helper bridges expose fixed JSON operations for editor and mobile clients; they are not general shell or filesystem APIs.
Doctor Support Reports¶
sase doctor is the first command to run when SASE behaves unexpectedly. It is
read-only by default: it does not launch agents, call LLM APIs, repair state, run tests,
or scan full artifact history. The human output is grouped by subsystem and puts
next-step commands beside warnings and errors.
Common forms:
sase doctor # compact human report
sase doctor -v # include every check plus bounded details
sase doctor -j # stable JSON report for scripts or support bundles
sase doctor -D # add slower read-only deep checks
sase doctor -C runtime # run one group
sase doctor -C llm.default # run one check
sase doctor -C project.junk_directories -C workspace.missing_checkouts
sase doctor -F # preview and confirm ProjectSpec duplicate-block repair
Exit codes are designed for support-first use. OK, WARN, and all-skipped reports
exit 0; ERROR exits 1. Use sase doctor -s / --strict when automation should
treat warnings as failures.
The JSON report uses schema_version: 1 and stable top-level fields such as status,
counts, selected_checks, and checks. Individual check data payloads stay bounded
and may gain additional keys over time, so scripts should key off check ids and statuses
rather than assuming every nested field is permanent.
project.junk_directories reports directories under ~/.sase/projects/ that have no
canonical ProjectSpec and gives a manual-review cleanup hint.
project.duplicate_patch_blocks reports duplicate raw Patch blocks in active and
archive ProjectSpec files. sase doctor -F / --fix-duplicate-blocks previews that
repair and, after confirmation or -y / --yes, keeps the newest block per Patch name
without changing the default read-only doctor behavior. workspace.missing_checkouts
scans enabled and disabled projects through the shared inventory, lists registered
checkout paths missing from disk, and suggests a per-project sase workspace repair -n
preview. Default doctor checks do not mutate state.
When asking for help, attach sase doctor -v for a readable report or sase doctor -j
for a machine-readable report.