AgentHero AI - Hierarchical multi-agent orchestration system with PM coordination, file-based state management, and interactive menu interface. Use when managing complex multi-agent workflows, coordinating parallel sub-agents, or organizing large project tasks with multiple specialists. All created agents use aghero- prefix.
Scanned 2/12/2026
Install to Claude Code
npx -y skills add Interstellar-code/claud-skills --skill agenthero-ai --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Agenthero Ai?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/interstellar-code-agenthero-ai)More formats (shields.io, HTML) on the badges page.
---
name: agenthero-ai
description: AgentHero AI - Hierarchical multi-agent orchestration system with PM coordination, file-based state management, and interactive menu interface. Use when managing complex multi-agent workflows, coordinating parallel sub-agents, or organizing large project tasks with multiple specialists. All created agents use aghero- prefix.
version: 2.0.0
---
# AgentHero AI Skill (V2.0)
Comprehensive orchestration utilities for managing hierarchical multi-agent systems with PM coordination, state management, and topic-based organization.
## Overview
This skill provides Python-based utilities for:
- **State Management**: Create, read, update state files for orchestration (V2.0)
- **Topic Lifecycle**: Initialize, resume, archive project topics
- **Task Coordination**: Manage sub-agent tasks and dependencies
- **Token Tracking**: Monitor and report token usage across agents
- **SessionStart Hook**: Display active topics on Claude Code startup
## When Claude Should Use This Skill
Auto-activate when:
- PM orchestrator needs to manage state files
- Creating or updating topic metadata
- Initializing sub-agent task states
- Archiving completed topics
- Reading orchestration state for resume
## Directory Structure (V2.0)
```
.claude/
├── agents/
│ ├── agenthero-ai/ # PM agent
│ │ ├── agent.md
│ │ └── orchestrated-sub-agent-template.md
│ └── state/ # Runtime state
│ └── agenthero-ai/ # V2.0 namespace
│ ├── topics.json # ✅ Single source of truth
│ ├── topics/ # Topic directories
│ │ └── {topic-slug}/
│ │ ├── task-{id}-{name}.json
│ │ └── messages.json
│ └── archive/ # Completed topics
│
└── skills/
└── agenthero-ai/
├── skill.md # This file
├── scripts/ # Python utilities (V2.0)
│ ├── topic_manager.py # Topic lifecycle
│ ├── state_manager.py # State CRUD operations
│ ├── utils.py # Shared utilities
│ ├── setup_project_structure.py # Directory setup
│ ├── finalize_topic.py # Topic completion
│ ├── check_topics_file.py # Validation
│ └── get_topics_quiet.sh # SessionStart hook
└── templates/
└── state-templates.json # State file schemas
```
## Python Utilities (V2.0)
### 1. Topic Manager (`scripts/topic_manager.py`)
**Purpose**: Manage topic lifecycle (V2.0 - uses topics.json)
**Commands**:
- `create_topic <title>` - Initialize new topic in topics.json
- `list_active_topics` - List non-completed topics
- `list_completed_topics` - List completed topics
- `get_topic_status <slug>` - Get topic progress and metrics
- `touch_topic <slug>` - Update last active time
- `update_topic_progress <slug>` - Recalculate progress from tasks
- `archive_topic <slug>` - Move topic to archive directory
- `resume_topic <slug>` - Update last active and return status
- `get_active_topics_summary` - Get summary for SessionStart hook
- `complete_topic <slug>` - Mark as completed and archive
- `delete_topic <slug>` - Delete topic (use with caution)
**Usage Examples**:
```bash
# Create new topic (V2.0)
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
create_topic \
"Add JWT authentication" \
--description "Implement JWT-based auth with tokens and middleware"
# List active topics
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
list_active_topics
# Get topic status (reads from topics.json)
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
get_topic_status \
"auth-system-jwt"
# Archive completed topic
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
archive_topic \
"auth-system-jwt"
# Get active topics summary (SessionStart hook)
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
get_active_topics_summary
```
### 2. State Manager (`scripts/state_manager.py`)
**Purpose**: CRUD operations for state files (V2.0)
**Commands**:
- `create_state_file <path> <template>` - Initialize state file from template
- `read_state <path> <field>` - Read specific field from state
- `update_state <path> <field> <value>` - Update state field
- `append_log <path> <level> <message>` - Append log entry
- `set_task_status <path> <status>` - Update task status
- `track_file_change <path> <file> <change_type>` - Track file change
- `update_progress <path> <progress>` - Update progress (0-100)
- `validate_state <path>` - Validate JSON structure
- `set_blocking_question <path> <question>` - Set blocking question
- `answer_question <path> <answer>` - Answer blocking question
- `set_task_result <path> <result>` - Set task completion result
**Usage Examples**:
```bash
# Create new task state
python .claude/skills/agenthero-ai/scripts/state_manager.py \
create_state_file \
".claude/agents/state/agenthero-ai/topics/auth-system/task-001-backend.json" \
"task-state"
# Append log entry
python .claude/skills/agenthero-ai/scripts/state_manager.py \
append_log \
".claude/agents/state/agenthero-ai/topics/auth-system/task-001-backend.json" \
"info" \
"Starting database schema design"
# Read current status
python .claude/skills/agenthero-ai/scripts/state_manager.py \
read_state \
".claude/agents/state/agenthero-ai/topics/auth-system/task-001-backend.json" \
"status"
# Update progress
python .claude/skills/agenthero-ai/scripts/state_manager.py \
update_progress \
".claude/agents/state/agenthero-ai/topics/auth-system/task-001-backend.json" \
50
```
### 3. Utility Functions (`scripts/utils.py`)
**Purpose**: Shared helper functions
**Functions**:
- `find_project_root()` - Find project root by locating .claude directory
- `slugify(text)` - Convert text to URL-safe slug
- `generate_task_id(topic_slug)` - Generate unique task ID
- `timestamp_iso()` - Get ISO 8601 timestamp with timezone
- `atomic_write(path, content)` - Atomic file write (supports dict/list/str)
- `ensure_directory(path)` - Create directory if needed
- `read_json_file(path)` - Read and parse JSON file
- `read_json_field(path, field)` - Read specific JSON field
- `update_json_field(path, field, value)` - Update JSON field
- `append_json_array(path, field, value)` - Append to JSON array
- `validate_json(path)` - Validate JSON structure
**Usage** (imported by other scripts):
```python
from utils import (
find_project_root, slugify, timestamp_iso,
atomic_write, read_json_file
)
# Generate slug
slug = slugify("Add JWT Authentication")
# Returns: "add-jwt-authentication"
# Atomic write (prevents corruption)
atomic_write("state.json", {"status": "completed"})
# Find project root
project_root = find_project_root()
# Returns: Path to directory containing .claude/
```
### 4. Setup Project Structure (`scripts/setup_project_structure.py`)
**Purpose**: Create initial directory structure for topics
**Usage**:
```bash
# Create Project-tasks/{slug}/ structure
python .claude/skills/agenthero-ai/scripts/setup_project_structure.py \
"landing-page-builder"
# Creates:
# - Project-tasks/landing-page-builder/
# - Project-tasks/landing-page-builder/spec/
# - Project-tasks/landing-page-builder/deliverables/
```
### 5. Finalize Topic (`scripts/finalize_topic.py`)
**Purpose**: Mark topic as completed and archive
**Usage**:
```bash
# Finalize topic (V2.0)
python .claude/skills/agenthero-ai/scripts/finalize_topic.py \
"landing-page-builder"
# Actions:
# 1. Marks status as "completed" in topics.json
# 2. Sets completedAt timestamp
# 3. Archives topic directory
```
### 6. Check Topics File (`scripts/check_topics_file.py`)
**Purpose**: Validate topics.json structure
**Usage**:
```bash
# Validate topics registry (V2.0)
python .claude/skills/agenthero-ai/scripts/check_topics_file.py --summary
# Returns summary of topics.json health
```
### 7. SessionStart Hook (`scripts/get_topics_quiet.sh`)
**Purpose**: Display active topics on Claude Code startup
**Usage** (configured in `.claude/settings.local.json`):
```bash
bash .claude/skills/agenthero-ai/scripts/get_topics_quiet.sh
# Output (if topics exist):
# Found 2 active topic(s):
# • Landing Page Builder (45% complete, 3/5 tasks)
# • API Integration (20% complete, 1/4 tasks)
# Output (if no topics):
# No pending topics - ready for new work!
```
## State File Templates (V2.0)
Templates are stored in `templates/state-templates.json`:
### Task State Template
```json
{
"taskId": "",
"focusArea": "",
"agentName": "",
"status": "pending",
"assignedAt": "",
"startedAt": null,
"completedAt": null,
"progress": 0,
"currentOperation": null,
"logs": [],
"filesCreated": [],
"filesModified": [],
"blockingQuestion": null,
"result": null,
"error": null,
"tokenUsage": {
"total": 0,
"operations": []
}
}
```
## Integration with PM Orchestrator
The PM agent (`agenthero-ai`) uses these utilities for:
### 1. Topic Initialization
```bash
# PM creates new topic (V2.0)
python .claude/skills/agenthero-ai/scripts/topic_manager.py \
create_topic "User login feature" \
--description "Create login with validation"
# Returns: user-login-feature (slug)
```
### 2. Directory Setup
```bash
# PM creates Project-tasks structure
python .claude/skills/agenthero-ai/scripts/setup_project_structure.py \
"user-login-feature"
```
### 3. Task State Management
```bash
# PM initializes sub-agent task
python .claude/skills/agenthero-ai/scripts/state_manager.py \
create_state_file \
".claude/agents/state/agenthero-ai/topics/login-feature/task-001-frontend.json" \
"task-state"
```
### 4. Progress Monitoring
```bash
# PM reads task status
python .claude/skills/agenthero-ai/scripts/state_manager.py \
read_state \
".claude/agents/state/agenthero-ai/topics/login-feature/task-001-frontend.json" \
"status"
```
### 5. Topic Completion
```bash
# PM finalizes topic (V2.0)
python .claude/skills/agenthero-ai/scripts/finalize_topic.py \
"login-feature"
```
## Integration with Sub-Agents
Sub-agents use state_manager for logging and updates:
```bash
# Sub-agent logs progress
python .claude/skills/agenthero-ai/scripts/state_manager.py \
append_log \
"$STATE_FILE" \
"info" \
"Creating LoginForm component"
# Sub-agent updates progress
python .claude/skills/agenthero-ai/scripts/state_manager.py \
update_progress \
"$STATE_FILE" \
40
# Sub-agent tracks file changes
python .claude/skills/agenthero-ai/scripts/state_manager.py \
track_file_change \
"$STATE_FILE" \
"src/components/LoginForm.tsx" \
"created"
```
## Best Practices
1. **Always validate JSON** before writing (automatic in atomic_write)
2. **Use atomic writes** to prevent corruption (built-in)
3. **Log regularly** (every 30-60 seconds minimum)
4. **Update progress milestones** (25%, 50%, 75%, 100%)
5. **Track file changes** in state files
6. **Archive completed topics** for history (automatic via finalize_topic.py)
## Error Handling
All scripts include error handling:
- Validate input parameters
- Check file existence
- Verify JSON structure (automatic validation)
- Return meaningful error codes (0 = success, 1 = error)
- Log errors to stderr (colored output)
## Performance
State operations are optimized:
- Atomic writes prevent corruption
- Minimal file I/O
- Path resolution caches project root
- JSON validation only when needed
## Security
State files may contain sensitive data:
- Gitignored by default (`.claude/agents/state/`)
- File permissions: 644 (owner read/write)
- No credentials stored in state
- Audit trail via logs array
## Troubleshooting
**Invalid JSON error:**
```bash
# Validate state file
python .claude/skills/agenthero-ai/scripts/state_manager.py \
validate_state \
".claude/agents/state/agenthero-ai/topics/my-topic/task-001.json"
```
**State file not found:**
```bash
# Check topics registry
cat .claude/agents/state/agenthero-ai/topics.json | python -m json.tool
```
**Wrong directory created:**
```bash
# Ensure scripts run from project root OR
# Use absolute paths (scripts auto-detect project root via find_project_root())
```
## Version
**Version**: 2.0.0
**Created**: 2025-10-22
**Updated**: 2025-10-24 (Python migration complete)
## Migration Notes (V1 → V2)
**Key Changes**:
- ✅ Bash scripts → Python scripts
- ✅ Individual topic.json files → Single topics.json registry
- ✅ Relative paths → Absolute path resolution
- ✅ Manual JSON handling → Atomic write with validation
- ✅ List support added to atomic_write()
## Support
For issues:
1. Check JSON validity: `python -m json.tool < file.json`
2. Validate topics.json: `check_topics_file.py --summary`
3. Review state structure: See `STATE-STRUCTURE-V2.md`
4. Verify directory structure exists
5. Check file permissions
---
**Part of**: Hierarchical Multi-Agent Orchestration System V2.0
**Related**: agenthero-ai agent, orchestrated-sub-agent-template
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!