audio-generation
Guide to audio generation and understanding in MassGen. Covers text-to-speech, music, sound…
Guide for using MassGen to develop and improve itself. This skill should be used when agents need to run MassGen experiments programmatically (using automation mode) OR analyze terminal UI/UX quality (using visual evaluation tools). These are mutually exclusive workflows for
$ npx -y skills add massgen/massgen --skill massgen-develops-massgen --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/massgen-develops-massgenContext preview
The summary Claude sees to decide when to auto-load this skill.
Guide for using MassGen to develop and improve itself. This skill should be used when agents need to run MassGen experiments programmatically (using automation mode) OR analyze terminal UI/UX quality (using visual evaluation tools). These are mutually exclusive workflows for
name: massgen-develops-massgen description: Guide for using MassGen to develop and improve itself. This skill should be used when agents need to run MassGen experiments programmatically (using automation mode) OR analyze terminal UI/UX quality (using visual evaluation tools). These are mutually exclusive workflows for different improvement goals.
This skill provides guidance for using MassGen to develop and improve itself. Choose the appropriate workflow based on what you're testing.
1. **Automation Mode** - Test backend functionality, coordination logic, agent responses 2. **Visual Evaluation** - Test terminal display, colors, layout, UX
---
Use this to test functionality without visual inspection. Ideal for programmatic testing.
Run MassGen in the background (exact mechanism depends on your tooling):
uv run massgen --automation --config massgen/configs/basic/multi/two_agents_gemini.yaml "What is 2+2?"
**For MassGen agents**: Use `custom_tool__start_background_tool` targeting `mcp__command_line__execute_command`, then poll with `custom_tool__get_background_tool_status` / `custom_tool__get_background_tool_result`. **For Claude Code**: Use Bash tool's `run_in_background` parameter.
| Feature | Benefit | |---------|---------| | Clean output | ~10 parseable lines vs 3,000+ ANSI codes | | LOG_DIR printed | First line shows log directory path | | status.json | Real-time monitoring file | | Exit codes | 0=success, 1=config, 2=execution, 3=timeout, 4=interrupted | | Workspace isolation | Safe parallel execution |
LOG_DIR: .massgen/massgen_logs/log_20251120_143022_123456 STATUS: .massgen/massgen_logs/log_20251120_143022_123456/status.json 🤖 Multi-Agent Mode Agents: gemini-2.5-pro1, gemini-2.5-pro2 Question: What is 2+2? ============================================================ QUESTION: What is 2+2? [Coordination in progress - monitor status.json for real-time updates] WINNER: gemini-2.5-pro1 DURATION: 33.4s ANSWER_PREVIEW: The answer is 4. COMPLETED: 2 agents, 35.2s total
Parse `LOG_DIR` from the first line to find the log directory.
Read the status.json file (updated every 2 seconds):
cat .massgen/massgen_logs/log_20251120_143022_123456/status.json
**Key fields:**
{
"coordination": {
"completion_percentage": 65,
"phase": "enforcement"
},
"results": {
"winner": null // null = running, "agent_id" = done
},
"agents": {
"agent_a": {
"status": "streaming",
"error": null
}
}
}**Agent status values:** `waiting`, `streaming`, `answered`, `voted`, `completed`, `error`
After completion (exit code 0):
# Read final answer cat [log_dir]/final/[winner]/answer.txt
You can create multiple background monitoring tasks that run independently alongside the main MassGen process. Each monitor can track different aspects and write to separate log files for later inspection.
Create small Python scripts that run in background shells. Each script:
**Token Usage Monitor** (`token_monitor.py`):
import json, time, sys
from pathlib import Path
log_dir = Path(sys.argv[1]) # Pass LOG_DIR as argument
while True:
if (log_dir / "status.json").exists():
with open(log_dir / "status.json") as f:
data = json.load(f)
with open("token_monitor.log", "a") as log:
log.write(f"=== {time.strftime('%H:%M:%S')} ===\n")
log.write(f"Tokens: {data.get('total_tokens_used', 0)}\n")
log.write(f"Cost: ${data.get('total_cost', 0):.4f}\n\n")
time.sleep(5)**Error Monitor** (`error_monitor.py`):
import time, sys
from pathlib import Path
log_dir = Path(sys.argv[1])
while True:
if log_dir.exists():
with open("error_monitor.log", "a") as log:
log.write(f"=== {time.strftime('%H:%M:%S')} ===\n")
errors = []
for logfile in log_dir.glob("*.log"):
with open(logfile) as f:
for line in f:
if any(x in line.lower() for x in ['error', 'warning', 'failed']):
errors.append(line.strip())
log.write('\n'.join(errors[-5:]) if errors else "No errors\n")
log.write("\n")
time.sleep(5)**Progress Monitor** (`progress_monitor.py`):
import json, time, sys
from pathlib import Path
log_dir = Path(sys.argv[1])
while True:
if (log_dir / "status.json").exists():
with open(log_dir / "status.json") as f:
data = json.load(f)
with open("progress_monitor.log", "a") as log:
log.write(f"=== {time.strftime('%H:%M:%S')} ===\n")
progress = data.get('completion_percentage', 0)
active = sum(1 for a in data.get('agents', {}).values()
if a.get('status') == 'active')
log.write(f"Progress: {progress}% Active agents: {active}\n\n")
time.sleep(5)**Coordination Monitor** (`coordination_monitor.py`):
import json, time, sys
from pathlib import Path
log_dir = Path(sys.argv[1])
while True:
if (log_dir / "status.json").exists():
with open(log_dir / "status.json") as f:
data = json.load(f)
coord = data.get('coordination', {})
with open("🚀 MassGen is an open-source multi-agent scaling system that runs in your terminal, autonomously orchestrating frontier models and agents to collaborate, reason, and produce high-quality results. | Join us on Discord: discord.massgen.ai
Guide to audio generation and understanding in MassGen. Covers text-to-speech, music, sound…
Complete guide for integrating a new LLM backend into MassGen. Use when adding a new provider…
Guide for creating evolving skills - detailed workflow plans that capture what you'll do,…
This skill should be used when agents need to search codebases for text patterns or…
Guide to image generation and editing in MassGen. Use when creating images, editing existing…
Guide for creating properly structured YAML configuration files for MassGen. This skill…