Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
bba88bb
feat(workflows): align workflow CLI with extension command surface
marcelsafin Jul 8, 2026
cc8143e
fix(workflows): preserve disabled state on update, guard corrupted re…
marcelsafin Jul 8, 2026
59a791b
fix(workflows): guard list against corrupted registry entries, re-rai…
marcelsafin Jul 8, 2026
52ab7ff
fix(workflows): escape rich markup in id-mismatch errors and validate…
marcelsafin Jul 9, 2026
4c356c4
fix(workflows): escape rich markup in list output and catalog install…
marcelsafin Jul 9, 2026
8409bca
fix(workflows): escape rich markup in --from download exception message
marcelsafin Jul 9, 2026
129362f
fix(workflows): catch OSError in per-workflow update loop and make re…
marcelsafin Jul 10, 2026
4ca50f5
fix(workflows): escape rich markup in search output
marcelsafin Jul 10, 2026
10f9770
fix: escape workflow validation errors before Rich output
marcelsafin Jul 10, 2026
91c7165
fix(workflows): escape remaining unescaped Rich markup paths
marcelsafin Jul 10, 2026
7100211
fix(workflows): escape workflow name/id in install success messages
marcelsafin Jul 10, 2026
a530725
fix(workflows): fail cleanly on unparseable catalog install URLs
marcelsafin Jul 10, 2026
560c7cd
fix(workflows): reject catalog updates whose downloaded version misma…
marcelsafin Jul 10, 2026
e44d214
fix(workflows): validate workflow ID in run command and document new …
marcelsafin Jul 10, 2026
8efa3c0
fix(workflows): enforce disabled state for direct paths to installed …
marcelsafin Jul 10, 2026
96d3b38
fix(workflows): reject explicit empty --from URL instead of catalog f…
marcelsafin Jul 10, 2026
f28e125
fix(workflows): registry rollback on save failure, consistent disable…
marcelsafin Jul 10, 2026
338f7ee
fix(workflows): guard non-string catalog URL and keep enable/disable …
marcelsafin Jul 10, 2026
82ecd05
fix(workflows): tolerate non-dict registry entries in add and clarify…
marcelsafin Jul 10, 2026
6b25c75
fix(workflows): atomic registry save and accurate mixed-target update…
marcelsafin Jul 10, 2026
eabce4e
fix(workflows): exclusive temp file for registry save and cwd-indepen…
marcelsafin Jul 10, 2026
cac5300
fix(workflows): symlink guards and shape validation in workflow regis…
marcelsafin Jul 10, 2026
a69bb18
fix(workflows): validate download redirects before following them
marcelsafin Jul 10, 2026
6a0c462
test(workflows): accept redirect_validator kwarg in step-add open_url…
marcelsafin Jul 10, 2026
3763e6f
fix(workflows): guard directory-shaped workflow.yml and unreadable re…
marcelsafin Jul 10, 2026
86de599
fix(workflow): rollback registry.remove() and guard OSError at CLI bo…
marcelsafin Jul 11, 2026
fb64ddd
fix(workflow): preserve prior catalog install on reinstall registry-s…
marcelsafin Jul 11, 2026
49f6fb6
fix(workflow): centralize catalog-install cleanup across all failure …
marcelsafin Jul 11, 2026
812050a
fix(workflow): restore registry entry verbatim on post-removal rmtree…
marcelsafin Jul 11, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 26 additions & 3 deletions docs/reference/workflows.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,30 @@ Lists workflows installed in the current project.
specify workflow add <source>
```

| Option | Description |
| --------------- | ------------------------------------------------------ |
| `--dev` | Install from a local workflow YAML file or directory |
| `--from <url>` | Install from a custom URL (`<source>` names the expected workflow ID) |

Installs a workflow from the catalog, a URL (HTTPS required), or a local file path.

## Update Workflows

```bash
specify workflow update [workflow_id]
```

Updates one installed catalog workflow — or all of them when no ID is given — to the latest catalog version. Prompts for confirmation and keeps the installed copy if a download or validation fails.

## Enable or Disable a Workflow

```bash
specify workflow enable <workflow_id>
specify workflow disable <workflow_id>
```

Disabled workflows stay installed and listed (marked `[disabled]`) but refuse to run until re-enabled.

## Remove a Workflow

```bash
Expand All @@ -102,9 +124,10 @@ Removes an installed workflow from the project.
specify workflow search [query]
```

| Option | Description |
| ------- | --------------- |
| `--tag` | Filter by tag |
| Option | Description |
| ---------- | ----------------- |
| `--tag` | Filter by tag |
| `--author` | Filter by author |

Searches all active catalogs for workflows matching the query.

Expand Down
Loading