Invoke and resume YAML-defined pipelines by name — /pipeline auto-dev runs the full release pipeline
Scanned 9/12/2026
Install to Claude Code
npx -y skills add baekenough/second-brain --skill pipeline --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Pipeline?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/baekenough-pipeline-second-brain)More formats (shields.io, HTML) on the badges page.
---
name: pipeline
description: Invoke and resume YAML-defined pipelines by name — /pipeline auto-dev runs the full release pipeline
scope: harness
user-invocable: true
effort: high
argument-hint: "<pipeline-name> | resume | (no args to list available)"
source:
type: external
origin: github
url: https://github.com/baekenough/baekenough-skills
version: 1.0.0
---
# /pipeline — Pipeline Invocation
## Usage
```
/pipeline auto-dev # Run the auto-dev pipeline
/pipeline # List available pipelines
/pipeline resume # Resume a halted pipeline
```
## Behavior
### List Mode (no arguments or --list flag)
Execute these steps to display available pipelines:
1. **Scan built-in pipelines**: Use `Glob("workflows/*.yaml")` (NOT templates/) to find all pipeline definitions
2. **Extract metadata**: For each YAML file found, use `Bash` to extract name and description:
```bash
for f in workflows/*.yaml; do
name=$(grep -m1 '^name:' "$f" | sed 's/^name: *//' | tr -d '"')
desc=$(grep -m1 '^description:' "$f" | sed 's/^description: *//' | tr -d '"')
echo " $name — $desc"
done
```
3. **Scan template pipelines**: Use `Glob("templates/workflows/*.yaml")` for template examples
4. **Display formatted output**:
```
Available pipelines:
{name} — {description}
{name} — {description}
Template pipelines (in templates/workflows/):
{name} — {description}
```
5. If no pipelines found, display: "No pipelines found in workflows/ directory."
6. If YAML parsing fails for a file, skip it and show: ` {filename} — (parse error, skipped)`
### Run Mode (with pipeline name)
1. Validate pipeline exists: `workflows/{name}.yaml`
2. Load and validate YAML structure:
- Required fields: `name`, `description`, `steps[]`
- Each step has either `skill:` or `prompt:` (not both)
- Referenced skills exist in `.claude/skills/`
- Skill names must match `^[a-z0-9-]+$` (kebab-case only) — reject path traversal attempts
3. Announce: `[Pipeline] Starting {name} — {step_count} steps`
4. Execute steps top-to-bottom:
- **Skill steps** (`skill: name`): Invoke via Skill tool — `Skill(skill: "{name}")`
- **Prompt steps** (`prompt: text`): Execute the described action using appropriate agents/tools
- **Foreach steps** (`foreach: collection`): Iterate over collection from previous step output
5. Report completion or failure
### Resume Mode (/pipeline resume)
1. Scan `/tmp/.claude-pipeline-*-{PPID}.json` for state files
2. If none found: "No halted pipelines found."
3. If found: display pipeline name, failed step, error message
4. Options:
- **Retry** — Re-execute the failed step
- **Skip** — Mark failed step as skipped, continue to next
- **Abort** — Delete state file, cancel pipeline
5. On resume: execute from the failed step
## State Tracking
Track per-step state:
```json
{
"pipeline": "{name}",
"started": "ISO-8601",
"status": "running|completed|halted",
"current_step": 0,
"steps": [
{"name": "triage", "status": "completed", "duration_ms": 5000},
{"name": "plan", "status": "running"}
]
}
```
State saved to `/tmp/.claude-pipeline-{name}-{PPID}.json` on failure.
## Error Handling
- Pipeline not found → list available pipelines with suggestion
- YAML parse error → report with line number
- Step failure (error: halt-and-report) → stop execution, save state, report failure with context
- All file writes delegated to subagents per R010
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!