con un clic
con un clic
Supervise a set of slay tasks through planning, execution, and verification
Commit changes, mark the current task as done, and close its tab
Manage tasks, subtasks, tags, and templates via the slay CLI
Automatically title tasks based on conversation context
Full CLI reference for slay — orchestrates all slay domain skills
Interact with PTY terminal sessions via the slay CLI
| name | slay-artifacts |
| description | Manage task artifacts (files, folders) via the slay CLI |
| trigger | auto |
Artifacts are files attached to tasks, stored on disk at {data-dir}/artifacts/{taskId}/{artifactId}.ext. They can be text files, images, or any binary content. Use artifacts to attach specifications, screenshots, logs, or any reference material to a task.
The --task flag defaults to $SLAYZONE_TASK_ID for create, upload, and mkdir. Note: list requires an explicit task ID argument.
slay tasks artifacts list <taskId> [--json] [--tree] — list all artifacts for a task.
--tree shows an indented folder structureslay tasks artifacts read <artifactId> — output artifact content to stdout.
slay tasks artifacts search <query> [--task <id>] [--all-tasks] [--folder <id>] [--titles-only] [--content-only] [--regex] [--case-sensitive] [--limit <n>] [--max-matches <n>] [--json] — search artifact titles and file contents.
--task (or $SLAYZONE_TASK_ID) unless --all-tasks is set--regex treats query as a JS RegExp; invalid regex exits 1[{ artifactId, taskId, title, matches: [{ type, line?, snippet, contextBefore?, contextAfter? }] }]slay tasks artifacts create <title> [--task <id>] [--folder <id>] [--copy-from <path>] [--render-mode <mode>] [--json] — create a new artifact.
--copy-from[title](artifact:<artifact-id>)slay tasks artifacts upload <sourcePath> [--task <id>] [--title <name>] [--json] — upload a file from disk as an artifact.
slay tasks artifacts update <artifactId> [--title <name>] [--render-mode <mode>] [--json] — update artifact metadata.
slay tasks artifacts write <artifactId> [--mutate-version [ref]] — replace the artifact's content entirely from stdin (pipe required).
--mutate-version (bare): autosave to current version (auto-branches if locked)--mutate-version <ref>: bypass lock and mutate the target version in placeslay tasks artifacts append <artifactId> [--mutate-version [ref]] — append to the artifact's content from stdin (pipe required).
writeslay tasks artifacts delete <artifactId> — delete an artifact and its file.
slay tasks artifacts path <artifactId> — print the artifact's absolute file path on disk.
Artifacts can be organized into folders. Folder operations support cycle detection — you can't move a folder into its own child.
slay tasks artifacts mkdir <name> [--task <id>] [--parent <id>] [--json] — create a folder, optionally nested under a parent.slay tasks artifacts rmdir <folderId> [--json] — delete a folder.
slay tasks artifacts mvdir <folderId> --parent <id|"root"> [--json] — move a folder to a new parent.
"root" to move to top levelslay tasks artifacts mv <artifactId> --folder <id|"root"> [--json] — move an artifact into a folder.
"root" for top levelEvery artifact has immutable, content-addressed version history. Writes via write/append/create or the app UI create new versions automatically. Versions can be referenced by: integer (5), hash prefix (a1b2), name (milestone-1), relative (-1, -2), or HEAD~N.
slay tasks artifacts versions list <artifactId> [--limit <n>] [--offset <n>] [--json] — list version history, newest first.
slay tasks artifacts versions read <artifactId> <version> — print content of a specific version to stdout.
slay tasks artifacts versions diff <artifactId> <a> [b] [--no-color] [--json] — diff two versions.
b defaults to latestslay tasks artifacts versions current <artifactId> [--json] — print the current (HEAD) version.
slay tasks artifacts versions set-current <artifactId> <version> [--json] — set the current (HEAD) version.
slay tasks artifacts versions create <artifactId> [--name <name>] [--json] — create a version from the working copy (no-op if content unchanged).
slay tasks artifacts versions rename <artifactId> <version> [newName] [--clear] [--json] — set, change, or clear a version's name.
--clear or omit newName to clearpruneslay tasks artifacts versions prune <artifactId> [--keep-last <n>] [--no-keep-named] [--no-keep-current] [--dry-run] [--json] — remove old versions.
Download artifacts in various formats. Default type is raw (original file).
slay tasks artifacts download <artifactId> [--type raw|pdf|png|html] [--output <path>] [--json] — download a single artifact.slay tasks artifacts download --type zip [--task <id>] [--output <path>] [--json] — download all task artifacts as a ZIP archive (no artifactId needed).Available types by render mode:
| Type | Available for |
|---|---|
| raw | all files |
| markdown, code, html, svg, mermaid | |
| png | svg, mermaid |
| html | markdown, code, mermaid |
| zip | all (task-level) |
pdf, png, and html exports require the SlayZone app to be running. --output defaults to the current directory with an auto-generated filename.
echo "Meeting notes from standup" | slay tasks artifacts create "standup-notes.md"
cat report.csv | slay tasks artifacts write <artifactId>
curl -s https://example.com/data.json | slay tasks artifacts append <artifactId>