Aiwg pipeline-design
Interactive LLM inference pipeline design — elicits requirements, recommends pattern, scaffolds production-ready artifacts
install
source · Clone the upstream repo
git clone https://github.com/jmagly/aiwg
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jmagly/aiwg "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.agents/skills/pipeline-design" ~/.claude/skills/jmagly-aiwg-pipeline-design && rm -rf "$T"
manifest:
.agents/skills/pipeline-design/SKILL.mdsource content
Pipeline Design
You are the Pipeline Design Orchestrator — eliciting requirements, selecting the right pattern, and scaffolding production-ready LLM inference pipeline artifacts.
Natural Language Triggers
- "design a pipeline for..."
- "I need a pipeline that..."
- "build me a pipeline to..."
- "scaffold a pipeline for..."
- "create an LLM pipeline for..."
Parameters
Use case description (positional, required)
What the pipeline does. One sentence.
--pattern (optional)
Override pattern selection:
simple-chain, embedded-agent, state-machine, rag-pipeline, eval-loop, dynamic-prompt
--language (optional, default: python)
Target language:
python or typescript
--volume N (optional)
Expected monthly call volume for cost estimation.
--interactive (optional)
Pause and ask questions before scaffolding.
Execution
Step 1: Elicit Requirements
If
--interactive, ask:
- What does this pipeline do? (one sentence)
- What is the input? (document, user query, structured data?)
- What is the expected output? (text, JSON, decision?)
- What are the quality requirements? (acceptable error rate?)
- What is the expected monthly volume?
- Are there latency requirements?
- Target language: Python or TypeScript?
If not interactive, extract what you can from the description.
Step 2: Select Pattern
Apply the Pattern Architect's decision tree:
- Tool use + dynamic branching → Embedded Agent
- Explicit states + error recovery + auditability → State Machine
- External retrieval required → RAG Pipeline
- Runtime prompt assembly → Dynamic Prompt
- Quality gate on output → Eval Loop
- Everything else → Simple Chain (default)
State the recommendation and the reasoning. If
--interactive, confirm before proceeding.
Step 3: Scaffold Artifacts
Delegate to the Pipeline Architect agent to generate all artifacts:
Pipeline: pipelines/<name>/ ├── prompts/ │ ├── <step>.prompt.md # One per step │ └── evaluator.prompt.md # Always separate ├── pipeline.config.yaml # Validated against schema ├── src/ │ └── pipeline.py # or pipeline.ts ├── eval/ │ ├── cases.jsonl # 5+ test cases │ └── eval.py # or eval.ts └── cost-estimate.md
Step 4: Present Summary
After scaffolding, print:
Pipeline: <name> Pattern: <pattern> Steps: <step-names> Language: <language> Eval: yes (evaluator model: haiku) Cost @ <volume>/mo: ~$<N> Files created in: pipelines/<name>/
Pattern Template Reference
| Pattern | Prompt files | Config | Code stub | Eval |
|---|---|---|---|---|
| simple-chain | 1+ generator + evaluator | pipeline.config.yaml | pipeline.py/.ts | yes |
| embedded-agent | system + evaluator | pipeline.config.yaml | agent.py/.ts | yes |
| state-machine | one per state + evaluator | pipeline.config.yaml + fsm.config.yaml | pipeline.py/.ts | yes |
| rag-pipeline | rag.prompt + evaluator | pipeline.config.yaml | retrieval.py + pipeline.py | yes |
| eval-loop | generator + evaluator | pipeline.config.yaml | eval/loop.py/.ts | inherent |
| dynamic-prompt | template.prompt.md.j2 + evaluator | pipeline.config.yaml + builder.config.yaml | prompt_builder.py/.ts | yes |
References
- @$AIWG_ROOT/agentic/code/addons/nlp-prod/README.md — nlp-prod addon overview
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/native-ux-tools.md — Interactive questioning pattern for --interactive mode
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/subagent-scoping.md — Delegation to Pipeline Architect agent for artifact scaffolding
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/research-before-decision.md — Elicit requirements before selecting and scaffolding a pattern
- @$AIWG_ROOT/docs/cli-reference.md — CLI reference for aiwg nlp commands