agent-loop-ext
Crash-resilient external agent loop with state persistence and CI/CD integration
Create a new extension package inside an existing framework's extensions/ directory. Use when authoring an expansion (extension) for AIWG.
$ npx -y skills add jmagly/aiwg --skill scaffold-extension --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/scaffold-extensionContext preview
The summary Claude sees to decide when to auto-load this skill.
Create a new extension package inside an existing framework's extensions/ directory. Use when authoring an expansion (extension) for AIWG.
namespace: aiwg name: scaffold-extension platforms: [all] description: Create a new extension package inside an existing framework's extensions/ directory. Use when authoring an expansion (extension) for AIWG. triggers: - author an expansion - build an extension - create an extension package - expansion authoring - scaffold extension - new expansion
Create a new extension package inside an existing framework's `extensions/` directory.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
| Pattern | Example | Action | |---------|---------|--------| | Named scaffold | "scaffold extension python --to sdlc-complete" | Scaffold directly | | Language extension | "add Go support to sdlc-complete" | Derive name=`go`, confirm | | Interactive | "scaffold extension --interactive --to sdlc-complete" | Guided design mode | | Target omitted | "scaffold extension typescript" | Ask which framework |
Extensions are language- or ecosystem-specific capability packages nested inside a framework. They augment framework agents and rules with toolchain-specific knowledge. Examples:
| Extension | Framework | Provides | |-----------|-----------|---------| | `python/` | `sdlc-complete` | Python testing patterns, type hint rules, pip/poetry guidance | | `javascript/` | `sdlc-complete` | npm/pnpm workflows, ESLint integration, Jest patterns | | `github/` | `sdlc-complete` | GitHub Actions, PR review workflows, release automation | | `terraform/` | `sdlc-complete` | IaC patterns, state management, plan review agents |
Extensions differ from addons:
Extensions cannot contain skills (skills require standalone functionality). They contain agents, rules, and templates scoped to their ecosystem.
Extract from `$ARGUMENTS`:
If either `<name>` or `--to` is missing, ask before proceeding.
Confirm the parent framework exists:
ls agentic/code/frameworks/<framework>/
Check if an `extensions/` directory exists; if not, it will be created.
Check for name conflicts:
ls agentic/code/frameworks/<framework>/extensions/ 2>/dev/null
Ask before generating:
1. **Ecosystem**: What language, platform, or ecosystem does this extension target? 2. **Capabilities**: What ecosystem-specific capabilities does it add? (linting rules, test patterns, deployment agents) 3. **Agents**: What specialist agents should be scaffolded? (e.g., `python-test-engineer`, `go-module-auditor`) 4. **Rules**: What ecosystem-specific rules should be defined? (e.g., type safety, package management) 5. **Templates**: What ecosystem-specific document templates are needed?
aiwg scaffold-extension <name> --to <framework> [--description "..."]
**manifest.json** — The extension's registry entry:
{
"name": "<name>",
"version": "1.0.0",
"description": "<ecosystem-specific capabilities>",
"parentFramework": "<framework>",
"agents": [],
"rules": [],
"templates": []
}**README.md** — Document the ecosystem targeted, capabilities provided, and activation conditions.
After scaffold:
# Add ecosystem-specific agent aiwg add-agent <name>-specialist --to <framework>/extensions/<name> # Note: --to path traversal not yet supported; create agent file directly # Create agent file # <framework>/extensions/<name>/agents/<role>.md # Create rules # <framework>/extensions/<name>/rules/<rule-id>.md # Create templates # <framework>/extensions/<name>/templates/<template>-template.md
Ensure the parent framework's manifest references the extension:
{
"extensions": ["existing-extension", "<name>"]
}The CLI tool handles this automatically.
agentic/code/frameworks/<framework>/extensions/<name>/ ├── README.md # Extension documentation ├── manifest.json # Extension configuration ├── agents/ # Ecosystem-specific agent definitions ├── rules/ # Ecosystem-specific rule files └── templates/ # Ecosystem-specific document templates
Parent framework manifest updated: `agentic/code/frameworks/<framework>/manifest.json`
Extension Created: <name> ───────────────────────── Location: agentic/code/frameworks/<framework>/extensions/<name>/ Parent: <framework> Created: ✓ README.md ✓ manifest.json ✓ agents/ ✓ rules/ ✓ templates/ Parent manifest updated: <framework>/manifest.json Next Steps: 1. Edit README.md with ecosystem description 2. Add ecosystem agents: create agents/<role>.md 3. Add ecosystem rules: create rules/<rule-id>.md 4. Add templates: create templates/<name>-template.md 5. Deploy parent: aiwg use <framework>
**User**: "scaffold extension python --to sdlc-complete"
**Action**:
aiwg scaffold-extension python --to sdlc-complete
**Result**: `agentic/code/f
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