evolve-team
정보
`evolve-team` 스킬은 기존 팀 구성을 구성원 명단, 협업 패턴 또는 구조를 수정하여 업데이트합니다. 이 스킬은 현재 팀을 템플릿과 비교 평가하는 단계부터 설정 파일 변경 적용 및 버전 메타데이터 갱신까지 전체 워크플로를 처리합니다. 팀 구성원이 오래되었거나 협업 패턴 조정이 필요할 때, 사용자 피드백으로 워크플로 간극이 발견되었을 때, 또는 특수화된 팀 변형이 필요할 때 이 스킬을 사용하세요.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/evolve-teamClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
Evolucionar un Equipo Existente
Mejora, reestructura o crea una variante especializada de un equipo que fue creado originalmente con create-team. Este procedimiento cubre el lado de mantenimiento del ciclo de vida del equipo: evaluar brechas frente a la plantilla y los patrones de coordinación, aplicar mejoras específicas a la composición y el flujo de trabajo, actualizar versiones y mantener sincronizados el registro y las referencias cruzadas.
Cuándo Usar
- El roster de miembros de un equipo está desactualizado tras añadir, eliminar o evolucionar agentes
- Los comentarios de usuarios revelan cuellos de botella en el flujo de trabajo, traspasos poco claros o perspectivas faltantes
- El patrón de coordinación ya no encaja en el flujo de trabajo real del equipo (p.ej., hub-and-spoke debería ser parallel)
- Se necesita una variante especializada junto a la original (p.ej.,
r-package-reviewyr-package-review-security-focused) - Las responsabilidades de los miembros del equipo se superponen y necesitan límites más claros
- El bloque CONFIG está desincronizado con la descripción en prosa o la lista de miembros
- Un equipo necesita dividirse en dos equipos más pequeños o dos equipos necesitan fusionarse
Entradas
- Requerido: Ruta al archivo de equipo existente que se va a evolucionar (p.ej.,
teams/r-package-review.md) - Requerido: Disparador de evolución (comentario, nuevos agentes, desajuste de coordinación, solapamiento de alcance, problemas de rendimiento, evolución de agentes)
- Opcional: Magnitud objetivo del incremento de versión (parche, menor, mayor)
- Opcional: Si crear una variante especializada en lugar de refinar en el lugar (por defecto: refinar en el lugar)
Procedimiento
Paso 1: Evaluar el Equipo Actual
Leer el archivo de equipo existente y evaluar cada sección frente a la plantilla de equipo (teams/_template.md):
| Sección | Qué verificar | Problemas comunes |
|---|---|---|
| Frontmatter | Todos los campos requeridos (name, description, lead, version, author, coordination, members[]) | Falta tags, version obsoleta, coordination incorrecta |
| Purpose | Justificación clara de múltiples agentes (al menos dos especialidades distintas) | Podría manejarse por un solo agente |
| Team Composition | La tabla coincide con los miembros del frontmatter, sin responsabilidades superpuestas | Tabla obsoleta, áreas de enfoque duplicadas |
| Coordination Pattern | Coincide con el flujo de trabajo real, diagrama ASCII presente | Patrón incorrecto para el flujo de trabajo |
| Task Decomposition | Desglose por fases con tareas concretas por miembro | Tareas vagas, fases faltantes |
| CONFIG Block | YAML válido entre marcadores, coincide con frontmatter y prosa | Desincronizado, falta blocked_by, YAML inválido |
| Usage Scenarios | 2-3 prompts de activación realistas | Texto de marcador |
| Limitations | 3-5 restricciones honestas | Faltantes o demasiado genéricas |
| See Also | Enlaces válidos a agentes miembros, equipos relacionados, guías | Enlaces obsoletos |
# Leer el archivo del equipo
cat teams/<team-name>.md
# Verificar que todos los agentes miembros aún existen
grep "id:" teams/<team-name>.md | while read line; do
agent=$(echo "$line" | grep -oP '(?<=id: )[\w-]+')
grep "id: $agent" agents/_registry.yml || echo "MISSING: $agent"
done
# Comprobar si alguna guía referencia este equipo
grep -r "<team-name>" guides/*.md
Esperado: Una lista de brechas específicas, debilidades u oportunidades de mejora organizadas por sección.
En caso de fallo: Si el archivo del equipo no existe o no tiene frontmatter, esta habilidad no aplica — usar create-team en su lugar para crearlo desde cero.
Paso 2: Reunir los Requisitos de Evolución
Identificar y categorizar qué desencadenó la evolución:
| Disparador | Ejemplo | Alcance típico |
|---|---|---|
| Comentario del usuario | "Las revisiones tardan demasiado, los agentes duplican esfuerzo" | Afinar responsabilidades o cambiar patrón |
| Nuevo agente disponible | Se creó el agente api-security-analyst | Añadir miembro |
| Agente evolucionado | code-reviewer ganó nuevas habilidades | Actualizar responsabilidades del miembro |
| Agente eliminado | deprecated-agent fue retirado | Eliminar miembro, reasignar tareas |
| Desajuste de coordinación | Equipo secuencial tiene subtareas independientes | Cambiar a parallel |
| Expansión de alcance | El equipo necesita cubrir el despliegue, no solo la revisión | Añadir miembro o crear variante |
| Equipo demasiado grande | 6+ miembros causando sobrecarga de coordinación | Dividir en dos equipos |
| Equipo demasiado pequeño | Un solo miembro hace la mayor parte del trabajo | Fusionar con otro equipo o añadir miembros |
Documentar los cambios específicos necesarios antes de editar:
- Frontmatter: añadir nuevo miembro `api-security-analyst` con rol "API Security Reviewer"
- Team Composition: añadir fila a la tabla de composición
- Task Decomposition: añadir tareas de revisión de seguridad API a la fase de ejecución
- CONFIG block: añadir entradas de miembro y tareas
- See Also: añadir enlace al nuevo archivo de agente
Esperado: Una lista concreta de cambios, cada uno mapeado a una sección específica del archivo del equipo.
En caso de fallo: Si los cambios no están claros, consultar al usuario para aclaración antes de proceder. Los objetivos de evolución vagos producen mejoras vagas.
Paso 3: Elegir el Alcance de la Evolución
Usar esta matriz de decisión para determinar si refinar en el lugar o crear una variante:
| Criterios | Refinamiento (en el lugar) | Variante Especializada (nuevo equipo) |
|---|---|---|
| ID del equipo | Sin cambios | Nuevo ID: <team>-<specialty> |
| Ruta del archivo | Mismo archivo .md | Nuevo archivo en teams/ |
| Incremento de versión | Parche o menor | Comienza en 1.0.0 |
| Coordinación | Puede cambiar | Puede diferir del original |
| Registro | Actualizar entrada existente | Nueva entrada añadida |
| Equipo original | Modificado directamente | Intacto, gana referencia cruzada en Ver También |
Refinamiento: Elegir al ajustar miembros, afinar responsabilidades, corregir el bloque CONFIG o cambiar el patrón de coordinación. El equipo mantiene su identidad.
Variante: Elegir cuando la versión evolucionada serviría a un caso de uso sustancialmente diferente, requeriría un patrón de coordinación diferente o apuntaría a una audiencia diferente. El original permanece como está para su caso de uso existente.
Decisiones adicionales de alcance:
| Situación | Acción |
|---|---|
| El equipo tiene 6+ miembros y es lento | Dividir en dos equipos enfocados |
| Dos equipos de 2 cubren dominios adyacentes | Fusionar en un equipo de 3-4 |
| El patrón de coordinación del equipo es incorrecto | Refinamiento — cambiar patrón en el lugar |
| El equipo necesita un líder completamente diferente | Refinamiento si el líder existe; crear agente primero si no |
Esperado: Una decisión clara — refinamiento, variante, división o fusión — con justificación.
En caso de fallo: Si no estás seguro, por defecto optar por refinamiento. Dividir o fusionar equipos tiene mayor radio de impacto y debe confirmarse con el usuario.
Paso 4: Aplicar los Cambios al Archivo del Equipo
Para Refinamientos
Editar el archivo de equipo existente directamente. Mantener la consistencia en todas las secciones que hacen referencia a la composición del equipo:
members[]del frontmatter: Añadir, eliminar o actualizar entradas de miembros (cada uno conid,role,responsibilities)- Tabla de Team Composition: Debe coincidir exactamente con los miembros del frontmatter
- Coordination Pattern: Actualizar la prosa y el diagrama ASCII si el patrón cambia
- Task Decomposition: Revisar las fases y las tareas por miembro para reflejar la nueva composición
- Bloque CONFIG: Actualizar las listas de
membersytaskspara que coincidan (ver Paso 5) - Usage Scenarios: Revisar si los disparadores de activación del equipo cambiaron
- Limitations: Actualizar para reflejar nuevas restricciones o eliminar las resueltas
- See Also: Actualizar los enlaces de agentes y añadir referencias a nuevos equipos o guías relacionados
Seguir estas reglas de edición:
- Preservar todas las secciones existentes — añadir contenido, no eliminar secciones
- Al añadir un miembro, añadirlo a TODOS: frontmatter, tabla de composición, descomposición de tareas y bloque CONFIG
- Al eliminar un miembro, eliminarlo de TODOS esos lugares y reasignar sus tareas
- Verificar que cada agente miembro existe:
grep "id: agent-name" agents/_registry.yml - Mantener al líder en la lista de miembros — el líder siempre es un miembro
Para Variantes
# Copiar el original como punto de partida
cp teams/<team-name>.md teams/<team-name>-<specialty>.md
# Editar la variante:
# - Cambiar `name` a `<team-name>-<specialty>`
# - Actualizar `description` para reflejar el alcance especializado
# - Ajustar el patrón `coordination` si es necesario
# - Restablecer `version` a "1.0.0"
# - Modificar miembros, tareas y bloque CONFIG para el caso de uso especializado
# - Referenciar el original en Ver También como alternativa de propósito general
Esperado: El archivo del equipo (refinado o nueva variante) pasa la lista de verificación de evaluación del Paso 1, con todas las secciones internamente consistentes.
En caso de fallo: Si una edición rompe la consistencia interna (p.ej., el bloque CONFIG lista un miembro no en el frontmatter), comparar el members[] del frontmatter con la tabla de Team Composition, Task Decomposition y el bloque CONFIG para encontrar el desajuste.
Paso 4.5: Sincronizar Variantes Traducidas
Obligatorio cuando existen traducciones. Este paso se aplica tanto a autores humanos como a agentes de IA que siguen este procedimiento. No omitir — los valores obsoletos de
source_commithacen quenpm run validate:translationsinforme advertencias falsas de obsolescencia en todas las localizaciones.
Comprobar si existen traducciones para el equipo evolucionado y actualizarlas para reflejar el nuevo estado de la fuente:
# Comprobar las traducciones existentes
ls i18n/*/teams/<team-name>.md 2>/dev/null
Si existen traducciones
- Obtener el hash del commit de la fuente actual:
SOURCE_COMMIT=$(git rev-parse HEAD)
- Actualizar
source_commiten el frontmatter de cada archivo traducido:
for locale_file in i18n/*/teams/<team-name>.md; do
sed -i "s/^source_commit: .*/source_commit: $SOURCE_COMMIT/" "$locale_file"
done
- Marcar archivos para re-traducción incluyendo las localizaciones afectadas en el mensaje de commit:
evolve-team(<team-name>): <descripción de los cambios>
Translations flagged for re-sync: de, zh-CN, ja, es
Changed sections: <lista de secciones que cambiaron>
- Regenerar los archivos de estado de traducción:
npm run translation:status
Si no existen traducciones
No se requiere ninguna acción. Continuar al Paso 5.
Para Variantes
Aplazar la traducción de nuevas variantes hasta que la variante se estabilice (1-2 versiones). Traducir una variante v1.0 que puede cambiar sustancialmente para v1.2 desperdicia esfuerzo. Añadir traducciones después de que la variante haya sido refinada al menos una vez.
Esperado: Todos los archivos traducidos tienen source_commit actualizado al commit actual. El mensaje de commit indica qué localizaciones necesitan re-traducción y qué secciones cambiaron. npm run translation:status sale con 0.
En caso de fallo: Si sed no coincide con el campo del frontmatter, el archivo traducido puede tener un formato no estándar. Abrirlo manualmente y verificar que tiene source_commit en su frontmatter YAML. Si el campo falta, el archivo no se generó correctamente — regenerar con npm run translate:scaffold -- teams.
Paso 5: Actualizar el Bloque CONFIG
El bloque CONFIG entre <!-- CONFIG:START --> y <!-- CONFIG:END --> debe mantenerse sincronizado con las secciones en prosa. Tras cualquier cambio de miembro o tarea:
- Verificar que cada
agenten losmembersdel CONFIG coincide con un miembro en el frontmatter - Verificar que cada
assigneeen lastasksdel CONFIG coincide con un ID de agente miembro - Actualizar las dependencias
blocked_bysi el orden de las tareas cambió - Asegurar que la tarea de síntesis/final hace referencia a todas las tareas prerequisito
team:
name: <team-name>
lead: <lead-agent>
coordination: <pattern>
members:
- agent: <agent-id>
role: <role-title>
subagent_type: <agent-id>
tasks:
- name: <task-name>
assignee: <agent-id>
description: <one-line>
- name: synthesize-results
assignee: <lead-agent>
description: Collect and synthesize all member outputs
blocked_by: [<prior-task-names>]
Esperado: El YAML del CONFIG es válido, todos los agentes y tareas son consistentes con el resto del archivo, y blocked_by forma un DAG válido.
En caso de fallo: Analizar el YAML del bloque CONFIG por separado para encontrar errores de sintaxis. Verificar cada assignee frente a la lista de members.
Paso 6: Actualizar la Versión y los Metadatos
Incrementar el campo version en el frontmatter siguiendo el versionado semántico:
| Tipo de cambio | Incremento de versión | Ejemplo |
|---|---|---|
| Corrección de redacción, actualización de Ver También | Parche: 1.0.0 → 1.0.1 | Enlace de agente obsoleto corregido |
| Nuevo miembro añadido, tareas revisadas | Menor: 1.0.0 → 1.1.0 | Añadido miembro security-analyst |
| Patrón de coordinación cambiado, equipo reestructurado | Mayor: 1.0.0 → 2.0.0 | Cambiado de hub-and-spoke a parallel |
También actualizar:
- Fecha
updateda la fecha actual tagssi la cobertura de dominio del equipo cambiódescriptionsi el propósito del equipo es materialmente diferentecoordinationsi el patrón cambió
Esperado: version y updated del frontmatter reflejan la magnitud y fecha de los cambios. Las nuevas variantes comienzan en "1.0.0".
En caso de fallo: Si olvidas incrementar la versión, la próxima evolución no tendrá forma de distinguir el estado actual del anterior. Siempre incrementar antes de confirmar.
Paso 7: Actualizar el Registro y las Referencias Cruzadas
Para Refinamientos
Actualizar la entrada existente en teams/_registry.yml para que coincida con el frontmatter revisado:
# Encontrar la entrada del registro del equipo
grep -A 10 "id: <team-name>" teams/_registry.yml
Actualizar los campos description, lead, members y coordination para que coincidan con el archivo del equipo. No se necesita cambio de recuento.
Para Variantes
Añadir el nuevo equipo a teams/_registry.yml:
- id: <team-name>-<specialty>
path: <team-name>-<specialty>.md
lead: <lead-agent>
members: [agent-1, agent-2, agent-3]
coordination: <pattern>
description: One-line description of the specialized variant
Luego:
- Incrementar
total_teamsal inicio del registro - Añadir referencia cruzada Ver También en el equipo original apuntando a la variante
- Añadir referencia cruzada Ver También en la variante apuntando al original
Ejecutar la automatización de README:
npm run update-readmes
Esperado: La entrada del registro coincide con el frontmatter del archivo del equipo. npm run update-readmes termina con 0. Para variantes, total_teams es igual al número real de entradas de equipos.
En caso de fallo: Si el recuento del registro es incorrecto, contar entradas con grep -c "^ - id:" teams/_registry.yml y corregir el recuento. Si la automatización de README falla, verificar que package.json existe y js-yaml está instalado.
Paso 8: Validar el Equipo Evolucionado
Ejecutar la lista de verificación de validación completa:
- El archivo del equipo existe en la ruta esperada
- El frontmatter YAML se analiza sin errores
-
versionfue incrementada (refinamiento) o establecida en "1.0.0" (variante) - La fecha
updatedrefleja hoy - Todas las secciones requeridas presentes: Purpose, Team Composition, Coordination Pattern, Task Decomposition, Configuration, Usage Scenarios, Limitations, See Also
- El
members[]del frontmatter coincide con la tabla de Team Composition - Los miembros del bloque CONFIG coinciden con los miembros del frontmatter
- Las tareas del bloque CONFIG tienen asignados válidos y referencias
blocked_by - Todos los IDs de agentes miembros existen en
agents/_registry.yml - El agente líder aparece en la lista de miembros
- Ningún dos miembros comparten la misma responsabilidad principal
- La entrada del registro existe y coincide con el frontmatter
- Para variantes: el recuento
total_teamscoincide con el recuento real en disco - Las referencias cruzadas son bidireccionales (original ↔ variante)
-
git diffno muestra eliminaciones accidentales del contenido original
# Verificar frontmatter
head -25 teams/<team-name>.md
# Verificar que todos los agentes miembros existen
for agent in agent-a agent-b agent-c; do
grep "id: $agent" agents/_registry.yml
done
# Contar equipos en disco vs registro
ls teams/*.md | grep -v template | wc -l
grep total_teams teams/_registry.yml
# Revisar todos los cambios
git diff
Esperado: Todos los elementos de la lista de verificación pasan. El equipo evolucionado está listo para confirmar.
En caso de fallo: Abordar cada elemento fallido individualmente. Los problemas más comunes tras la evolución son la desviación del bloque CONFIG (miembros o tareas que no coinciden con la prosa) y una fecha updated olvidada.
Validación
- El archivo del equipo existe y tiene frontmatter YAML válido
- El campo
versionrefleja los cambios realizados - La fecha
updatedes actual - Todas las secciones presentes e internamente consistentes
- El
members[]del frontmatter, la tabla de Team Composition y el bloque CONFIG están sincronizados - Todos los IDs de agentes miembros existen en
agents/_registry.yml - El agente líder está en la lista de miembros
- El YAML del bloque CONFIG es válido y analizable
- La entrada del registro coincide con el archivo del equipo
- Para variantes: nueva entrada en
teams/_registry.ymlcon la ruta correcta - Para variantes: recuento
total_teamsactualizado - Las referencias cruzadas son válidas (sin enlaces rotos en Ver También)
-
git diffconfirma que no se eliminó contenido accidentalmente
Errores Comunes
- Desviación del bloque CONFIG: El bloque CONFIG, el frontmatter y las secciones en prosa deben coincidir en miembros y tareas. Actualizar uno sin los demás es el error más común de evolución de equipos. Tras cada cambio, verificar los tres.
- Olvidar incrementar la versión: Sin incrementos de versión, no hay forma de rastrear qué cambió o cuándo. Siempre actualizar
versionyupdateden el frontmatter antes de confirmar. - Referencias de miembro huérfanas: Al eliminar un miembro, sus tareas en Task Decomposition y el bloque CONFIG deben reasignarse o eliminarse. Dejar asignados huérfanos causa fallos de activación.
- Patrón de coordinación incorrecto tras la evolución: Añadir miembros con capacidad parallel a un equipo secuencial, o hacer un equipo hub-and-spoke donde los agentes necesitan la salida de los demás. Reevaluar la decisión de patrón de
create-teamPaso 4 tras cualquier cambio estructural. - Equipo demasiado grande tras añadir miembros: Los equipos con más de 5 miembros se vuelven difíciles de coordinar. Si la evolución empuja al equipo más allá de 5, considerar dividirlo en dos equipos enfocados en su lugar.
- Ver También obsoleto tras la creación de variante: Al crear una variante, tanto el original como la variante necesitan referenciarse mutuamente. Las referencias unidireccionales dejan el grafo incompleto.
Habilidades Relacionadas
create-team— base para la creación de nuevos equipos; evolve-team asume que esto se siguió originalmenteevolve-skill— el procedimiento paralelo para evolucionar archivos SKILL.mdevolve-agent— el procedimiento paralelo para evolucionar definiciones de agentescommit-changes— confirmar el equipo evolucionado con un mensaje descriptivo
GitHub 저장소
연관 스킬
executing-plans
디자인executing-plans 스킬은 검토 체크포인트가 포함된 통제된 배치로 실행할 완전한 구현 계획이 있을 때 사용합니다. 이 스킬은 계획을 불러와 비판적으로 검토한 후, 소규모 배치(기본값 3개 작업)로 작업을 실행하면서 각 배치 사이에 진행 상황을 아키텍트 검토를 위해 보고합니다. 이를 통해 내재된 품질 관리 체크포인트를 갖춘 체계적인 구현이 보장됩니다.
requesting-code-review
디자인이 스킬은 코드 변경 사항을 요구 사항에 따라 분석하기 위해 코드 리뷰어 하위 에이전트를 호출합니다. 작업 완료 후, 주요 기능 구현 후, 또는 메인 브랜치에 병합하기 전에 사용해야 합니다. 이 리뷰는 현재 구현체와 원래 계획을 비교하여 문제를 조기에 발견하는 데 도움이 됩니다.
connect-mcp-server
디자인이 스킬은 개발자들이 HTTP, stdio 또는 SSE 전송 방식을 통해 MCP 서버를 Claude Code에 연결하는 포괄적인 가이드를 제공합니다. GitHub, Notion 및 사용자 정의 API와 같은 외부 서비스를 통합하기 위한 설치, 구성, 인증 및 보안을 다룹니다. MCP 통합 설정, 외부 도구 구성 또는 Claude의 모델 컨텍스트 프로토콜 작업 시 활용하세요.
web-cli-teleport
디자인이 스킬은 작업 분석을 기반으로 개발자가 Claude Code 웹 인터페이스와 CLI 인터페이스 중 선택할 수 있도록 돕고, 두 환경 간 원활한 세션 텔레포트를 가능하게 합니다. 웹, CLI 또는 모바일 환경 전환 시 세션 상태와 컨텍스트를 관리하여 워크플로를 최적화합니다. 다양한 단계에서 서로 다른 도구가 필요한 복잡한 프로젝트에 사용하세요.
