.claude/skills/capacity-planning/SKILL.md
Gestión completa de capacidades del equipo - consulta, cálculo y alertas
npx skillsauth add gonzalezpazmonica/pm-workspace capacity-planningInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Gestión completa de capacidades del equipo: consulta, cálculo y alertas de sobre-asignación.
Prerequisito: Leer primero .claude/skills/azure-devops-queries/SKILL.md
TEAM_HOURS_PER_DAY=8 # horas de trabajo por día
TEAM_FOCUS_FACTOR=0.75 # 75% del tiempo es productivo
OVERLOAD_THRESHOLD=1.0 # > 100% = sobre-cargado
WARNING_THRESHOLD=0.85 # > 85% = al límite
ITERATIONS_API="$ORG_URL/$PROJECT/$TEAM/_apis/work/teamsettings/iterations"
PAT=$(cat $AZURE_DEVOPS_PAT_FILE)
AUTH="Authorization: Basic $(echo -n ":$PAT" | base64)"
ITER_RESPONSE=$(curl -s "$ITERATIONS_API?\$timeframe=current&api-version=7.1" \
-H "$AUTH" -H "Content-Type: application/json")
ITER_ID=$(echo $ITER_RESPONSE | jq -r '.value[0].id')
ITER_NAME=$(echo $ITER_RESPONSE | jq -r '.value[0].name')
CAPACITIES=$(curl -s "$ITERATIONS_API/$ITER_ID/capacities?api-version=7.1" -H "$AUTH")
echo $CAPACITIES | jq '.value[] | {persona: .teamMember.displayName, capacidadDia: .activities[0].capacityPerDay}'
Formato esperado: {displayName, uniqueName, activities[], daysOff[]}
TEAM_DAYS_OFF=$(curl -s "$ITERATIONS_API/$ITER_ID/teamdaysoff?api-version=7.1" -H "$AUTH")
echo $TEAM_DAYS_OFF | jq '.daysOff[] | {start, end}'
Detalle: @references/capacity-formula.md
Algoritmo:
Fórmula: horas_disponibles = (dias_habiles - dias_off) * horas_dia * factor_foco
Obtener RemainingWork por persona desde WIQL y cruzar con capacidad calculada:
Utilización = sum(RemainingWork por persona) / horas_disponibles_por_persona
Umbrales:
curl -s -X PATCH "$ITERATIONS_API/$ITER_ID/capacities/$TEAM_MEMBER_ID?api-version=7.1" \
-H "$AUTH" -H "Content-Type: application/json" \
-d '{"activities": [{"name": "Development", "capacityPerDay": 6}], "daysOff": []}'
⚠️ Confirmar con usuario antes de ejecutar.
| Error | Solución |
|-------|----------|
| 404 en capacities | Usar team ID en lugar de nombre |
| Capacidades vacías | Activar sprint en Team Settings |
| Festivos ignorados | Añadir manualmente via API o UI |
references/capacity-formula.md — Fórmulas de cálculoreferences/capacity-api.md — Estructura respuesta API../sprint-management/SKILL.md/report-capacitytesting
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
tools
Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
tools
Sistema proactivo de bienestar individual
development
Search the web to resolve context gaps — documentation, versions, CVEs, best practices. Auto-starts SearxNG Docker if available, falls back to WebSearch.