Create, update, list, and manage artifacts. Artifacts store documents such as specs, ADRs,
RFCs, and notes alongside your project.
Usage
gest artifact <COMMAND> [OPTIONS]
Subcommands
| Command | Description |
|---|
create | Create a new artifact |
list | List artifacts with optional filters |
show | Display an artifact's full details |
update | Update an artifact's fields |
tag | Add tags to an artifact |
untag | Remove tags from an artifact |
archive | Archive an artifact |
meta | Read or write metadata fields |
artifact create
Create a new artifact from inline text, a source file, an editor, or stdin.
gest artifact create [OPTIONS]
Options
| Flag | Description |
|---|
-t, --title <TITLE> | Artifact title (auto-extracted from first # heading if omitted) |
-b, --body <BODY> | Body content as an inline string (skips editor and stdin) |
-k, --type <KIND> | Artifact type (e.g. spec, adr, rfc, note) |
-m, --metadata <METADATA> | Key=value metadata pairs (repeatable) |
-s, --source <SOURCE> | Read body content from a file path |
--tags <TAGS> | Comma-separated list of tags |
Examples
gest artifact create -t "Auth Spec" -k spec -b "## Overview\nAuth flow details..."
gest artifact create -k adr -s docs/decisions/001-storage.md
gest artifact create -k rfc --tags "backend,v2"
artifact list
List artifacts, optionally filtered by type, tag, or archive status.
gest artifact list [OPTIONS]
Options
| Flag | Description |
|---|
-a, --all | Include archived artifacts alongside active ones |
--archived | Show only archived artifacts |
-j, --json | Output as JSON |
-k, --type <KIND> | Filter by artifact type (e.g. spec, adr, rfc) |
--tag <TAG> | Filter by tag |
Examples
gest artifact list
gest artifact list -k spec
gest artifact list --all
artifact show
Display an artifact's full details and rendered body.
gest artifact show [OPTIONS] <ID>
Arguments
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
Options
| Flag | Description |
|---|
-j, --json | Output as JSON instead of formatted detail |
Examples
gest artifact show abc123
gest artifact show abc123 --json
artifact update
Update an artifact's title, body, type, or tags.
gest artifact update [OPTIONS] <ID>
Arguments
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
Options
| Flag | Description |
|---|
-b, --body <BODY> | Replace the body content |
-k, --type <KIND> | Artifact type (e.g. spec, adr, rfc, note) |
--tags <TAGS> | Replace all tags with this comma-separated list |
-t, --title <TITLE> | New title |
Examples
gest artifact update abc123 -t "Updated Title"
gest artifact update abc123 -k adr --tags "approved,backend"
artifact tag
Add tags to an artifact.
gest artifact tag <ID> [TAGS]...
Arguments
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
[TAGS]... | Tags to add (space-separated) |
Examples
gest artifact tag abc123 approved reviewed
artifact untag
Remove tags from an artifact.
gest artifact untag <ID> [TAGS]...
Arguments
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
[TAGS]... | Tags to remove (space-separated) |
Examples
gest artifact untag abc123 draft
artifact archive
Move an artifact to the archive by setting its archived_at timestamp.
gest artifact archive <ID>
Arguments
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
Examples
gest artifact archive abc123
Read or write artifact metadata fields. Metadata uses dot-delimited key paths for nested values.
gest artifact meta <COMMAND>
Retrieve a single metadata value.
gest artifact meta get <ID> <PATH>
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
<PATH> | Dot-delimited key path (e.g. outer.inner) |
Set a metadata value. Strings, numbers, booleans, and null are auto-detected.
gest artifact meta set <ID> <PATH> <VALUE>
| Argument | Description |
|---|
<ID> | Artifact ID or unique prefix |
<PATH> | Dot-delimited key path (e.g. config.timeout) |
<VALUE> | Value to set |
Examples
gest artifact meta set abc123 status "approved"
gest artifact meta get abc123 status