Devkit Overview

Development toolkit

AIWG Development Kit Overview

The AIWG Development Kit provides tools for creating, extending, and customizing the AIWG framework ecosystem.

Prerequisites: Install aiwg-dev

Before using any devkit tools, install the contributor addon:

aiwg use aiwg-dev

This deploys:

  • Rules — `skill-placement`, `no-circular-skill-calls`, `component-completeness`, `addon-boundaries`
  • Skills — `validate-component`, `validate-addon`, `dev-doctor`, and all `devkit-*` commands

`aiwg-dev` is deliberately excluded from `aiwg use all` — it targets AIWG contributors, not end users. The exclusion is enforced by `"devOnly": true` in `aiwg-dev`'s `manifest.json`; `discoverAddons()` skips any addon with that flag. `aiwg use aiwg-dev` still works explicitly. See the aiwg-dev overview for details.

Three-Tier Plugin Taxonomy

AIWG uses a three-tier structure for extensibility:

TypeScaleStandaloneLocationExample
FrameworkLarge (50+ agents)Yes`agentic/code/frameworks/`sdlc-complete, media-marketing-kit
ExtensionMedium (5-20 agents)No (requires parent)`frameworks/{id}/extensions/`gdpr, hipaa, sox
AddonSmall (1-10 agents)Yes`agentic/code/addons/`aiwg-utils, voice-framework

When to Use Each

  • Create a Framework when building a complete lifecycle solution with many interdependent agents, templates, and workflows (e.g., full software development lifecycle)
  • Create an Extension when adding domain-specific capabilities to an existing framework (e.g., HIPAA compliance for SDLC, FTC guidelines for marketing)
  • Create an Addon when building standalone utilities that work anywhere, with or without frameworks (e.g., voice profiles, validation tools)

Available Tools

CLI Commands (Outside Sessions)

Scaffolding for quick package creation:

# Create new packages
aiwg scaffold-addon <name> [--description "..."] [--dry-run]
aiwg scaffold-extension <name> --for <framework> [--description "..."] [--dry-run]
aiwg scaffold-framework <name> [--description "..."] [--dry-run]

# Add components to existing packages
aiwg add-agent <name> --to <target> [--template simple|complex|orchestrator] [--dry-run]
aiwg add-command <name> --to <target> [--template utility|transformation|orchestration] [--dry-run]
aiwg add-skill <name> --to <target> [--dry-run]
aiwg add-template <name> --to <target> [--type document|checklist|matrix|form] [--category <subdir>] [--dry-run]

# Validate packages
aiwg validate <path> [--fix] [--verbose]

In-Session Commands (Within Claude Code)

Interactive, AI-guided creation:

# Create packages with guidance
/devkit-create-addon <name> [--interactive]
/devkit-create-extension <name> --for <framework> [--interactive]
/devkit-create-framework <name> [--interactive]

# Add components with templates
/devkit-create-agent <name> --to <target> [--template simple|complex|orchestrator]
/devkit-create-command <name> --to <target> [--template utility|transformation|orchestration]

# Validate and fix packages
/devkit-validate <path> [--fix] [--verbose]

Quick Start

Creating an Addon

# CLI approach (quick scaffolding)
aiwg scaffold-addon my-utils --description "My custom utilities"

# Result:
# agentic/code/addons/my-utils/
# ├── manifest.json
# ├── README.md
# ├── agents/
# ├── commands/
# └── skills/

# Add components
aiwg add-agent code-helper --to my-utils --template simple
aiwg add-command run-analysis --to my-utils --template utility
# In-session approach (interactive guidance)
/devkit-create-addon my-utils --interactive
# Claude guides you through purpose, capabilities, target audience

/devkit-create-agent code-helper --to my-utils --template complex
# Claude helps define expertise, tools, responsibilities

Creating an Extension

# CLI approach
aiwg scaffold-extension hipaa --for sdlc-complete --description "HIPAA compliance templates"

# Result:
# agentic/code/frameworks/sdlc-complete/extensions/hipaa/
# ├── manifest.json (with "requires": ["sdlc-complete"])
# ├── README.md
# ├── templates/
# └── checklists/

# Add compliance templates
aiwg add-template phi-audit --to sdlc-complete/extensions/hipaa --type checklist

Creating a Framework

# Framework creation is complex - use interactive mode
/devkit-create-framework fintech-lifecycle --interactive
# Claude helps design phase structure, agent roster, template organization

Agent Templates

When adding agents with `--template`:

TemplateModelToolsUse Case
`simple`sonnetRead, Write, BashSingle-responsibility agents
`complex`sonnetRead, Write, Bash, Glob, Grep, WebFetchMulti-step analysis agents
`orchestrator`opusAll + Task toolAgents that coordinate other agents

Command Templates

When adding commands with `--template`:

TemplateStructureUse Case
`utility`Single actionQuick operations, lookups
`transformation`Input → Process → OutputFile conversion, formatting
`orchestration`Multi-agent workflowComplex workflows with agent coordination

Template Types

When adding templates with `--type`:

TypeFormatUse Case
`document`Markdown with sectionsArchitecture docs, guides
`checklist`Markdown with checkboxesAudit lists, review checklists
`matrix`Markdown tableDecision matrices, RACI charts
`form`YAML frontmatter + MarkdownIntake forms, questionnaires

Manifest Schema

All packages require a `manifest.json`:

{
  "id": "package-id",
  "type": "addon|framework|extension",
  "name": "Human Readable Name",
  "version": "1.0.0",
  "description": "What this package does",
  "author": "Author Name",
  "license": "MIT",
  "requires": ["parent-framework"],  // Extensions only
  "core": false,                      // Auto-install with any framework?
  "autoInstall": false,
  "entry": {
    "agents": "agents",
    "commands": "commands",
    "skills": "skills",
    "templates": "templates"
  },
  "agents": ["agent-one", "agent-two"],
  "commands": ["command-one", "command-two"],
  "skills": ["skill-one"],
  "templates": ["template-one"]
}

Validation

The `aiwg validate` command checks:

  • Manifest schema compliance
  • Required fields present
  • Component files exist for all manifest entries
  • Directory structure matches type conventions
  • Extension parent framework exists

With `--fix`:

  • Creates missing directories
  • Adds missing components to manifest
  • Removes orphaned manifest entries

Documentation

Detailed guides: