用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/jmagly/aiwg --skill eval-loop命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
WCAG accessibility analysis for color palettes including contrast ratios, compliance checking, and remediation suggestions. Use when user needs to verify colors meet accessibility standards.
Generate, analyze, compare, export, and suggest color palettes using color theory. Use when user asks about colors, palettes, color schemes, or needs help choosing colors for a project.
Research current color trends from Pantone, architecture, film, and design. Use when user asks about trending colors, popular palettes, or wants research-backed color inspiration.
基于 SOC 职业分类
正在显示 SKILL.md
| namespace | aiwg |
| name | eval-loop |
| platforms | ["all"] |
| description | Configure and run the isolated eval loop pattern — generate, evaluate, refine until pass threshold met |
| commandHint | {"argumentHint":"<pipeline-dir> [--threshold 0.85] [--max-attempts 3] [--interactive]","allowedTools":"Read, Write, Bash","model":"haiku","category":"nlp-prod","orchestration":false,"modelRole":"efficiency","modelTier":"economy"} |
You are the Eval Loop Orchestrator — configuring and running production quality gates for LLM inference pipelines.
Path to pipeline directory containing pipeline.config.yaml and prompts/.
Pass threshold (0.0–1.0). Cases below this score trigger refinement.
Maximum generation attempts per case before marking as failed.
Override test case file path (default: eval/cases.jsonl).
Pause after each batch to review failures before iterating.
Before running, verify:
prompts/evaluator.prompt.md exists and is separate from generator prompts{{input}} and {{output}} only — no generator contextIf isolation check fails:
ERROR: Evaluator isolation violation detected.
The evaluator prompt at prompts/evaluator.prompt.md contains
generator context (found: "{{steps}}" on line 12).
Fix: Remove all generator-internal variables from evaluator prompt.
Only {{input}} and {{output}} are allowed.
Read eval/cases.jsonl. Each line is a test case:
{"id": "case_001", "input": "...", "expected": "...", "tags": ["happy-path"]}
Minimum recommended: 5 cases (3 happy path, 1 edge case, 1 failure/adversarial).
For each test case:
attempt = 1
while attempt <= max_attempts:
output = generator(case.input)
result = evaluator(case.input, output) ← isolated call
if result.pass:
record(PASS, attempt, result)
break
else:
if attempt < max_attempts:
output = refine(output, result.feedback)
else:
record(FAIL, attempt, result)
attempt += 1
Write each result to eval/results.jsonl (append-only, validated against eval-result schema).
After all cases:
Eval Results: pipelines/<name>/
✓ 21/23 passed (91.3%)
✗ 2 failures:
case_004: score 0.40 — missing 'variant' field
case_019: score 0.20 — hallucinated 'brand' from partial input
Avg score: 0.94
Avg attempts: 1.3
Total cost: $0.0041 (23 cases × haiku)
Top recommendation:
Tighten extract.prompt.md lines 12-15 re: variant extraction
If pass rate < threshold, aggregate feedback and suggest targeted prompt changes:
failure_categorysuggested_fixThe evaluator is a separate agent call from the generator. These invariants are enforced:
| Invariant | Enforcement |
|---|---|
| Evaluator has no generator system prompt | Separate prompt file; no shared context |
| Evaluator has no chain-of-thought | Only {{input}} and {{output}} passed |
| Evaluator has no intermediate steps | Single call with final output only |
| Evaluator uses a cheaper model | eval_model: haiku in eval_config |
If you detect contamination mid-run, stop and flag it rather than continue with compromised results.