Llm box
Skill jeremylongshore/claude-code-plugins-plus-skills/plugins/community/llm-box/skills/llm-box
425 plugins, 2,810 skills, 200 agents for Claude Code. Open-source marketplace at tonsofskills.com with the ccpi CLI package manager.
npx -y skills add jeremylongshore/claude-code-plugins-plus-skills --skill llm-boxAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Generate and execute terminal workflows using llm-box. Use when the user wants to automate multi-step terminal tasks, chain commands, fetch URLs, process data, create reusable pipelines, or build CI/CD-like automation locally.
SKILL.md
5.2 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
llm-box Workflow Skill
When to Use
Use this skill when the user wants to:
- Automate multi-step terminal tasks — fetching data, processing it, saving results
- Create reusable pipelines — workflows that can be run repeatedly
- Chain commands — where output of one step feeds into the next
- Batch process data — transform, filter, combine multiple data sources
- Integrate LLMs into automation — use Ollama, DeepSeek, or OpenAI-compatible models
- Replace fragile bash scripts — with structured, auditable YAML workflows
How llm-box Works
Plain English description → YAML workflow → Execute with progress
llm-box generates a YAML workflow file from a natural language description. The workflow is deterministic and reproducible — same workflow always produces the same result. Users can edit the YAML by hand if they want to tweak things.
Quick Reference
CLI Commands
# Generate a workflow from plain English
llm-box create "<description>"
# Run a workflow file
llm-box run <workflow.yaml>
# List all available nodes
llm-box list
# Validate a workflow file without running
llm-box validate <workflow.yaml>
# Run in safe mode (disables execute node)
llm-box --safe-mode run <workflow.yaml>
# Dry run (show steps without executing)
llm-box --dry-run run <workflow.yaml>
Available Nodes
Utility Nodes:
| Node | Description |
|---|---|
fetch_url | Fetch content from a URL (with SSRF protection) |
http_request | Full HTTP client — any method, headers, body |
file_read | Read file contents |
file_write | Write content to a file |
execute | Run shell commands (configurable allowlist) |
json_parse | Extract fields from JSON using dot notation |
template_render | Render Go templates with variables |
transform | Transform text (uppercase, lowercase, trim, replace, regex) |
combine | Merge multiple inputs into one |
notify | Print or send notifications |
LLM Nodes:
| Node | Provider |
|---|---|
ollama | Local models via Ollama |
deepseek | DeepSeek API |
openai | OpenAI-compatible |
qwen | Alibaba Qwen |
glm | Zhipu GLM |
kimi | Moonshot Kimi |
mistral | Mistral AI |
yi | 01.AI Yi |
Control Nodes:
| Node | Description |
|---|---|
condition | Conditional execution based on expression |
call | Call another workflow file (nested) |
YAML Workflow Structure
name: my-workflow
description: What this workflow does
vars:
api_key: "your-api-key"
steps:
- node: fetch_url
params:
url: "https://api.example.com/data"
- node: json_parse
params:
path: "result.items.[0].name"
- node: file_write
params:
path: "output.txt"
- node: notify
condition: "{{.output}} != ''"
params:
message: "Done!"
Step Features
condition: Go template expression, step runs only if trueretry: Number of retries on failuredelay: Delay between retries (e.g., "2s", "1m")parallel: Run multiple steps concurrently_timeout: Per-step timeout (e.g., "30s")
Workflow Generation Guidelines
When generating a workflow for the user:
- Identify the steps — break the task into discrete operations
- Choose the right nodes — prefer specific nodes over
executewhen possible - Chain with variables — use
{{.steps[N].output}}to reference previous outputs - Add error handling — use
conditionandretrywhere appropriate - Keep it readable — add a
descriptionfield, use meaningful step names
Common Patterns
Fetch and Save:
steps:
- node: fetch_url
params:
url: "https://example.com/data"
- node: file_write
params:
path: "data.txt"
Fetch, Parse, and Summarize:
steps:
- node: fetch_url
params:
url: "https://example.com/article"
- node: ollama
params:
model: "llama3"
prompt: "Summarize: {{.steps[0].output}}"
- node: file_write
params:
path: "summary.md"
Multi-source Aggregation:
steps:
- parallel:
- node: fetch_url
params:
url: "https://api1.example.com"
- node: fetch_url
params:
url: "https://api2.example.com"
- node: combine
params:
separator: "\n"
- node: ollama
params:
model: "llama3"
prompt: "Analyze: {{.steps[1].output}}"
Security Notes
- Built-in SSRF protection (URL validation, DNS rebinding checks)
- Path traversal protection (sandboxed paths, symlink resolution)
- Command injection prevention (shell metachar filtering, optional allowlist)
- Resource limits (file size, response body, step count, timeouts)
- Safe mode disables the
executenode entirely
Installation
# Linux/macOS
curl -sL https://raw.githubusercontent.com/alib8b8/llm-box/main/install.sh -o install.sh
bash install.sh
# Or via Go
go install github.com/alib8b8/llm-box/cmd/llm-box@latest