cfn-agent-lifecycle

star 47

Unified agent management from selection through completion - spawning, execution, output processing. Use when selecting agents for tasks, spawning agents with dependency validation, processing agent outputs, or tracking agent lifecycle events with audit trails.

diegosouzapw By diegosouzapw schedule Updated 3/1/2026

name: cfn-agent-lifecycle description: "Unified agent management from selection through completion - spawning, execution, output processing. Use when selecting agents for tasks, spawning agents with dependency validation, processing agent outputs, or tracking agent lifecycle events with audit trails." version: 2.0.0 tags: [mega-skill, agent-management, lifecycle, spawning] status: production

Agent Lifecycle Management Skill (Mega-Skill)

Version: 2.0.0 Purpose: Unified agent management from selection through completion Status: Production Consolidates: cfn-agent-selector, cfn-agent-selection-with-fallback, cfn-agent-spawning, cfn-agent-output-processing, cfn-agent-execution


Overview

This mega-skill provides complete agent lifecycle management:

  • Selection - Task classification and agent selection with fallback
  • Spawning - Agent deployment with dependency validation
  • Output - Structured output parsing and validation
  • Audit - SQLite lifecycle tracking for audit trails

Directory Structure

agent-lifecycle/
├── SKILL.md                          # This file
├── lib/
│   ├── selection/                    # Agent selection (from cfn-agent-selector + cfn-agent-selection-with-fallback)
│   │   ├── select-agents.sh          # Basic agent selection
│   │   ├── select-agents-with-fallback.sh  # Enhanced with fallback (recommended)
│   │   ├── task-classifier.sh        # Task classification
│   │   ├── agent-mappings.json       # Agent category mappings
│   │   ├── src/                      # TypeScript implementation
│   │   │   ├── agent-selector.ts
│   │   │   ├── cli.ts
│   │   │   └── agent-selector.test.ts
│   │   └── dist/                     # Compiled TypeScript
│   │       ├── agent-selector.cjs
│   │       └── cli.cjs
│   ├── spawning/                     # Agent spawning (from cfn-agent-spawning + cfn-agent-execution)
│   │   ├── spawn-agent.sh            # Main spawning script
│   │   ├── spawn-worker.sh           # Worker spawning
│   │   ├── spawn-templates.sh        # Template management
│   │   ├── spawn-agent-wrapper.sh    # Wrapper with error handling
│   │   ├── execute-agent.sh          # Agent execution
│   │   ├── check-dependencies.sh     # Dependency validation
│   │   ├── parse-agent-provider.sh   # Provider parsing
│   │   └── get-agent-provider-env.sh # Provider env setup
│   ├── output/                       # Output processing (from cfn-agent-output-processing)
│   │   └── README.md                 # Output processing documentation
│   └── audit/                        # Audit trail (original agent-lifecycle)
│       ├── execute-lifecycle-hook.sh # SQLite lifecycle hooks
│       └── simple-audit.sh           # Simple audit script
└── cli/                              # CLI wrappers for convenience
    ├── select-agents.sh              # → lib/selection/select-agents-with-fallback.sh
    ├── spawn-agent.sh                # → lib/spawning/spawn-agent.sh
    └── lifecycle-hook.sh             # → lib/audit/execute-lifecycle-hook.sh

Quick Start

1. Select Agents for a Task

# Recommended: Use fallback-enabled selection
./.claude/skills/agent-lifecycle/cli/select-agents.sh "Implement JWT authentication"

# Output (JSON):
# {
#   "loop3": ["backend-developer", "security-specialist"],
#   "loop2": ["code-reviewer", "tester", "security-specialist"],
#   "product_owner": "product-owner",
#   "category": "backend-api",
#   "confidence": 0.92
# }

2. Spawn Agents

./.claude/skills/agent-lifecycle/cli/spawn-agent.sh \
  --task "Implement user authentication" \
  --agents coder,security-specialist,tester \
  --agent-id coordinator-1

3. Track Lifecycle Events

# Register agent spawn
./.claude/skills/agent-lifecycle/cli/lifecycle-hook.sh spawn \
  --agent-id "${AGENT_ID}" \
  --agent-type "${AGENT_TYPE}" \
  --acl-level 1

# Update confidence
./.claude/skills/agent-lifecycle/cli/lifecycle-hook.sh update \
  --agent-id "${AGENT_ID}" \
  --confidence 0.85

# Mark completion
./.claude/skills/agent-lifecycle/cli/lifecycle-hook.sh complete \
  --agent-id "${AGENT_ID}" \
  --confidence 0.90

Module Details

Selection Module (lib/selection/)

Purpose: Task classification and agent selection

Features:

  • Task classification into 9 categories
  • Agent selection for Loop 3 (implementers) and Loop 2 (validators)
  • Guaranteed non-empty agent arrays (fallback behavior)
  • Agent validation against available profiles
  • TypeScript implementation for type safety

Task Categories:

Category Loop 3 Agents Loop 2 Agents
backend-api backend-developer, api-gateway-specialist code-reviewer, tester, api-testing-specialist
fullstack backend-developer, react-frontend-engineer code-reviewer, tester, integration-tester
mobile mobile-dev, backend-developer code-reviewer, tester, interaction-tester
infrastructure devops-engineer, docker-specialist code-reviewer, tester, chaos-engineering-specialist
security security-specialist, backend-developer code-reviewer, tester, security-specialist
frontend react-frontend-engineer, typescript-specialist code-reviewer, tester, playwright-tester
database database-architect, backend-developer code-reviewer, tester, data-engineer
performance backend-developer, perf-analyzer code-reviewer, tester, performance-benchmarker
default backend-developer, devops-engineer code-reviewer, tester, code-quality-validator

Spawning Module (lib/spawning/)

Purpose: Agent deployment and dependency management

Features:

  • System dependency validation (Bash 4.0+, Node.js, etc.)
  • Node.js module validation (redis, dotenv)
  • Claude Flow prerequisites check
  • Multi-agent spawning
  • Provider routing support

Performance Targets:

  • Dependency check: <50ms
  • Spawn time: <200ms
  • Stop time: <150ms
  • Success rate: 99.5%

Output Module (lib/output/)

Purpose: Structured output extraction from agents

Features:

  • Multi-pattern parsing with fallbacks
  • Output validation framework
  • Redis coordination integration
  • Universal pattern system for any agent type

Audit Module (lib/audit/)

Purpose: SQLite lifecycle tracking

Features:

  • Agent spawn registration
  • Confidence updates during work
  • Completion tracking
  • Cross-session recovery support
  • ACL level enforcement (1-6)

Integration with CFN Loop

# 1. Classify task and select agents
CLASSIFICATION=$(./lib/selection/task-classifier.sh "$TASK_DESCRIPTION")
AGENTS_JSON=$(./cli/select-agents.sh "$TASK_DESCRIPTION")

# 2. Extract agent lists
LOOP3_AGENTS=$(echo "$AGENTS_JSON" | jq -r '.loop3 | join(",")')
LOOP2_AGENTS=$(echo "$AGENTS_JSON" | jq -r '.loop2 | join(",")')

# 3. Spawn agents with lifecycle tracking
./cli/lifecycle-hook.sh spawn --agent-id "$AGENT_ID" --agent-type "$AGENT_TYPE"
./cli/spawn-agent.sh --task "$TASK" --agents "$LOOP3_AGENTS" --agent-id "$AGENT_ID"

# 4. After completion
./cli/lifecycle-hook.sh complete --agent-id "$AGENT_ID" --confidence 0.92

Migration from Individual Skills

Old Paths → New Paths

Old Path New Path
.claude/skills/cfn-agent-selector/select-agents.sh .claude/skills/agent-lifecycle/lib/selection/select-agents.sh
.claude/skills/cfn-agent-selection-with-fallback/select-agents.sh .claude/skills/agent-lifecycle/lib/selection/select-agents-with-fallback.sh
.claude/skills/cfn-agent-spawning/spawn-agent.sh .claude/skills/agent-lifecycle/lib/spawning/spawn-agent.sh
.claude/skills/cfn-agent-execution/execute-agent.sh .claude/skills/agent-lifecycle/lib/spawning/execute-agent.sh

CLI Wrappers (Convenience)

For easier migration, use CLI wrappers:

./.claude/skills/agent-lifecycle/cli/select-agents.sh  # Recommended entry point
./.claude/skills/agent-lifecycle/cli/spawn-agent.sh
./.claude/skills/agent-lifecycle/cli/lifecycle-hook.sh

TypeScript Implementation

The selection module includes a production-ready TypeScript implementation:

# Use TypeScript version
export USE_TYPESCRIPT=true
./lib/selection/select-agents-with-fallback.sh "Implement auth"

# Or call directly
node ./lib/selection/dist/cli.cjs "Implement auth"

Benefits:

  • Type-safe interfaces
  • 95.2% classification accuracy
  • 42 tests, 100% passing
  • Path traversal security validation

Dependencies

  • Bash: 4.0+
  • Node.js: LTS (for TypeScript features)
  • jq: JSON processing
  • SQLite3: Audit database
  • Redis: Coordination (optional)

Testing

# Test selection
./lib/selection/src/agent-selector.test.ts

# Test spawning dependencies
./lib/spawning/check-dependencies.sh

# Test lifecycle hooks
./lib/audit/simple-audit.sh

Version History

2.0.0 (2025-12-02) - Mega-Skill Consolidation

  • Merged: cfn-agent-selector, cfn-agent-selection-with-fallback
  • Merged: cfn-agent-spawning, cfn-agent-execution
  • Merged: cfn-agent-output-processing
  • Added: CLI wrappers for convenience
  • Added: Unified documentation

1.0.0 (Original)

  • SQLite lifecycle hooks for auditing

Related Skills

  • task-classifier (.claude/skills/task-classifier/) - Standalone task classification
  • cfn-docker-agent-spawning (.claude/skills/cfn-docker-agent-spawning/) - Docker-specific spawning
  • cfn-product-owner-decision (.claude/skills/cfn-product-owner-decision/) - Product owner output processing
Install via CLI
npx skills add https://github.com/diegosouzapw/awesome-omni-skill --skill cfn-agent-lifecycle
Repository Details
star Stars 47
call_split Forks 15
navigation Branch main
article Path SKILL.md
More from Creator
diegosouzapw
diegosouzapw Explore all skills →