agent-loop-ext
Crash-resilient external agent loop with state persistence and CI/CD integration
Scaffold a new agent definition file inside an existing addon or framework
$ npx -y skills add jmagly/aiwg --skill add-agent --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/add-agentContext preview
The summary Claude sees to decide when to auto-load this skill.
Scaffold a new agent definition file inside an existing addon or framework
namespace: aiwg name: add-agent platforms: [all] description: Scaffold a new agent definition file inside an existing addon or framework
Scaffold a new agent definition file inside an existing addon or framework.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
| Pattern | Example | Action | |---------|---------|--------| | Named add | "add agent security-auditor --to sdlc-complete" | Scaffold directly | | Role description | "create an agent that reviews PRs" | Derive name, scaffold | | Interactive | "add agent --interactive" | Guided mode, ask for name/target/template | | Target omitted | "add agent code-reviewer" | Ask which addon or framework |
Extract from `$ARGUMENTS`:
If either `<name>` or `--to` is missing, ask before proceeding.
Confirm the target addon or framework exists:
# Check addons ls agentic/code/addons/<target>/ # Check frameworks ls agentic/code/frameworks/<target>/
If not found, report available targets and stop.
Ask the following before generating:
1. **Role**: What is this agent's primary role? 2. **Expertise**: What domains or technologies does it specialize in? 3. **Responsibilities**: What are its 3-5 key responsibilities? 4. **Tools needed**: Which tools does it require? (Read, Write, Bash, Grep, WebFetch, Task) 5. **Model tier**: haiku (fast/utility), sonnet (balanced), opus (reasoning-heavy) 6. **Output format**: What structured output should it produce?
| Template | Use When | Default Model | Tools | |----------|----------|---------------|-------| | `simple` | Single-purpose utility agent | haiku | Read, Write | | `complex` | Domain expert, reviewer, analyst | sonnet | Read, Write, Grep | | `orchestrator` | Coordinates other agents | opus | Task | | `validator` | Read-only quality/compliance gate | haiku | Read, Grep |
aiwg add-agent <name> --to <target> --template <type>
This generates `<target>/agents/<name>.md` with the appropriate frontmatter and section stubs.
The generated agent file requires population of these sections:
--- name: <name> description: <one-sentence purpose> model: <claude-haiku-4-5|claude-sonnet-4-6|claude-opus-4-7> # Pin specific variant; bare aliases (`sonnet`) inherit the parent session's 1M-context attributes and hit the usage-credit gate on subagent dispatch. See #1442. tools: <comma-separated tool list> category: <phase or domain> --- # Agent Title [Role description] ## Expertise [Domain knowledge and skills] ## Responsibilities [Numbered list of what this agent does] ## Workflow [How it approaches tasks — research, draft, validate, output] ## Output Format [Expected structure of deliverables]
After creation, run the agent linter:
aiwg lint agents <target>/agents/<name>.md --verbose
Key checks:
The CLI tool updates `<target>/manifest.json` automatically. Verify:
{
"agents": ["existing-agent", "<name>"]
}<target>/agents/<name>.md
Manifest updated: `<target>/manifest.json`
Agent Created: <name> ───────────────────── Location: <target>/agents/<name>.md Template: <type> Model: <model> Created: ✓ <target>/agents/<name>.md ✓ manifest.json updated Validation: ✓ Single responsibility ✓ Tool count within limit ✓ I/O contract defined Next Steps: 1. Edit Expertise section with domain knowledge 2. Define Responsibilities (3-5 items) 3. Specify Output Format structure 4. Run: aiwg lint agents <target>/agents/<name>.md
**User**: "add agent dependency-auditor --to aiwg-utils"
**Action**:
aiwg add-agent dependency-auditor --to aiwg-utils
**Result**: `agentic/code/addons/aiwg-utils/agents/dependency-auditor.md` scaffolded with simple template (haiku, Read + Grep tools).
**User**: "create a threat modeling agent for sdlc-complete"
**Extraction**: name=`threat-modeler`, target=`sdlc-complete`, template=`complex`
**Action**:
aiwg add-agent threat-modeler --to sdlc-complete --template complex
**Result**: `agentic/code/frameworks/sdlc-complete/agents/threat-modeler.md` scaffolded with sonnet model, Read/Write/Grep tools.
**User**: "add agent --interactive --to sdlc-complete"
**Process**: Guided questions gather role, expertise, responsibilities, tools, and model tier before scaffolding.
Reusable project context and specialist workflows for the AI tools you already use. Plan software, coordinate specialist reviews, prepare campaigns, investigate incidents, organize research, curate media, and maintain operational knowledge.
Repo: jmagly/aiwg
Crash-resilient external agent loop with state persistence and CI/CD integration
Detect requests for iterative autonomous agent loops and route to the appropriate loop executor
Automatically execute tests when code-generating agents modify source files, enforcing the execute-before-return pattern
Enable agent loops to learn from similar past tasks and share patterns across loops
Query and manage the executable feedback debug memory
Execute tests on generated code and iterate until passing