Volver

19. Práctica OpenClaw: Construir un Agent de colaboración en equipo

Este artículo demuestra cómo usar OpenClaw para construir un Agent de colaboración en equipo, incluyendo acceso multicanal, base de conocimiento del equipo, asignación de tareas, coordinación de reuniones y más funciones para ayudar a los equipos a mejorar su eficiencia de colaboración.

Aplica a OpenClaw v2026.2 | Requiere un workspace de Slack o Discord del equipo con permisos de administrador.

TL;DR: Configuración multicanal: "channels": {"slack": {...}, "discord": {...}}. Gestión de miembros: "team": {"members": [...]}. Sincronización de base de conocimiento: skill notion-sync. Asignación de tareas: el Agent asigna tareas según habilidades. Actas de reunión: registro automático y generación de resúmenes estructurados. Informe matutino diario con Cron: "schedule": "0 8 * * 1-5".

Objetivo práctico

Construir un Agent de colaboración en equipo capaz de:

  1. Comunicación multicanal del equipo
  2. Gestión de base de conocimiento del equipo
  3. Asignación y seguimiento de tareas
  4. Coordinación de reuniones
  5. Flujos de trabajo automatizados

Diseño de arquitectura

[Slack] [Discord] [Teams] [Email]
         ↓           ↓          ↓
         [Gateway + Agent Router]
                    ↓
    ┌───────────────┼───────────────┐
    ↓               ↓               ↓
[Agent equipo] [Agent proyecto] [Agent asistente]
    ↓               ↓               ↓
[Base de          [Sistema de    [Calendario]
 conocimiento]     tareas]

Configuración multicanal

Configuración de Slack

{
  "channels": {
    "slack": {
      "botToken": "${SLACK_BOT_TOKEN}",
      "appToken": "${SLACK_APP_TOKEN}",
      "dmPolicy": "open",
      "groups": {
        "C12345678": {
          "name": "engineering",
          "requireMention": false
        },
        "C87654321": {
          "name": "general",
          "requireMention": true
        }
      }
    }
  }
}

Configuración de Discord

{
  "channels": {
    "discord": {
      "token": "${DISCORD_TOKEN}",
      "guilds": {
        "123456789": {
          "name": "team-workspace",
          "channels": {
            "general": { "requireMention": true },
            "dev-team": { "requireMention": false }
          }
        }
      }
    }
  }
}

Gestión de miembros del equipo

{
  "team": {
    "members": [
      {
        "id": "U001",
        "name": "Zhang San",
        "role": "Desarrollador frontend",
        "slack": "U123456",
        "discord": "123456789",
        "skills": ["react", "typescript", "css"]
      },
      {
        "id": "U002",
        "name": "Li Si",
        "role": "Desarrollador backend",
        "slack": "U234567",
        "discord": "234567890",
        "skills": ["python", "django", "postgresql"]
      }
    ]
  }
}

Base de conocimiento del equipo

Estructura de la base de conocimiento

Base de conocimiento del equipo/
├── Proyectos/
│   ├── Proyecto A/
│   │   ├── Documento de requisitos.md
│   │   ├── Solución técnica.md
│   │   └── Actas de reunión/
│   └── Proyecto B/
├── Procesos/
│   ├── Estándares de revisión de código.md
│   ├── Proceso de publicación.md
│   └── Onboarding de nuevos empleados.md
├── Stack tecnológico/
│   ├── Frontend.md
│   ├── Backend.md
│   └── DevOps.md
└── Preguntas frecuentes/
    ├── Problemas de despliegue.md
    └── Optimización de rendimiento.md

Consulta de base de conocimiento

Usuario (Slack): @team-bot ¿Cuál es nuestro stack tecnológico del backend?

Agent: Según la base de conocimiento del equipo, nuestro stack tecnológico del backend es:

## Stack tecnológico del backend

### Framework principal
- **Framework**: Django 4.2
- **Lenguaje**: Python 3.11
- **Base de datos**: PostgreSQL 15

### Infraestructura
- **Caché**: Redis
- **Cola**: Celery
- **Búsqueda**: Elasticsearch

### Despliegue
- **Contenedores**: Docker
- **Orquestación**: Kubernetes
- **CI/CD**: GitHub Actions

Documentación detallada: [Stack tecnológico backend](enlace a la base de conocimiento)

¿Necesitas más detalles?

Actualización de conocimiento

Usuario (Discord): Actualiza la base de conocimiento: hemos añadido Elasticsearch

Agent: De acuerdo, voy a actualizar el documento del stack tecnológico del backend...

[Actualizando base de conocimiento]

Documento actualizado:
- Archivo: Stack tecnológico/Backend.md
- Cambio: Añadido Elasticsearch a la sección de infraestructura

El cambio ha sido enviado a la base de conocimiento del equipo, los miembros relevantes recibirán notificación.

Gestión de tareas

Asignación de tareas

Usuario: @team-bot Crea una tarea: Optimizar velocidad de carga de la página principal, asignar a @Zhang San

Agent: ¡Tarea creada!

## Tarea #123

**Título**: Optimizar velocidad de carga de la página principal
**Responsable**: Zhang San
**Prioridad**: Media
**Estado**: Pendiente
**Creada**: 2026-02-26 10:30

**Descripción**:
Optimizar la velocidad de carga de la página principal para mejorar la experiencia del usuario.

**Pasos sugeridos**:
1. Analizar tiempo de carga actual
2. Identificar cuellos de botella de rendimiento
3. Optimizar ruta de renderizado crítica
4. Implementar solución de optimización
5. Verificar resultados

**Fecha límite sugerida**: 3 días laborables

@Zhang San has recibido la notificación de tarea. ¿Necesitas que añada más detalles?

Seguimiento de tareas

{
  "taskManagement": {
    "integration": "jira",
    "sync": true,
    "notifications": {
      "created": true,
      "updated": true,
      "completed": true,
      "overdue": true
    }
  }
}

Recordatorio diario de tareas

{
  "cron": [
    {
      "id": "daily-task-reminder",
      "schedule": "0 9 * * 1-5",
      "message": "¡Buenos días! Aquí están las tareas de hoy:\n1. Tareas pendientes\n2. Tareas próximas a vencer\n3. Reuniones de hoy"
    }
  ]
}
Agent: ¡Buenos días! @Zhang San @Li Si @Wang Wu

## Resumen de tareas de hoy

### Tareas pendientes
- @Zhang San: Optimizar velocidad de carga de la página principal (prioridad: media)
- @Li Si: Actualización de documentación API (prioridad: baja)
- @Wang Wu: Cobertura de pruebas unitarias (prioridad: alta)

### Próximas a vencer
- @Zhang San: Función de búsqueda de usuarios - vence mañana
- @Li Si: Informe de optimización de rendimiento - vence pasado mañana

### Reuniones de hoy
- 10:00 Revisión de producto
- 14:00 Sesión técnica
- 16:00 1v1 con Zhang San

¡Les deseo a todos un día productivo!

Coordinación de reuniones

Creación de reuniones

Usuario: @team-bot Programa una reunión de revisión de código, mañana a las 2 PM, invita al equipo frontend

Agent: Programando reunión...

## Reunión creada

**Tema**: Reunión de revisión de código
**Hora**: 2026-02-27 14:00-15:00
**Participantes**: Zhang San, Li Si, Wang Wu
**Lugar**: Sala de reuniones A / Zoom

**Agenda sugerida**:
1. Revisión de código de optimización de página principal
2. Revisión de código de nueva funcionalidad
3. Discusión de estándares de código

**Invitaciones enviadas**:
- ✅ Zhang San
- ✅ Li Si
- ✅ Wang Wu

Las invitaciones de calendario han sido enviadas al correo de los participantes. ¿Necesitas que añada un enlace de reunión?

Actas de reunión

Usuario: @team-bot Comienza a registrar la reunión

Agent: Comenzando registro de reunión...

[Reunión en curso...]

Usuario: @team-bot Termina la reunión, genera el acta

Agent: Acta de reunión generada:

## Acta de reunión de revisión de código

**Fecha**: 2026-02-26 14:00-15:00
**Participantes**: Zhang San, Li Si, Wang Wu

### Contenido de la revisión

**PR #123 de optimización de página principal**
- ✅ Estructura de código clara
- ⚠️ Se sugiere añadir pruebas unitarias
- ⚠️ Necesita optimización de rendimiento
- Resolución: Aprobado, requiere completar optimizaciones antes de fusionar

**PR #124 de búsqueda de usuarios**
- ✅ Implementación de algoritmo correcta
- ✅ Buena cobertura de pruebas
- Resolución: Aprobado, puede fusionarse

### Elementos de acción

| Responsable | Tarea | Fecha límite |
|-------|------|------|
| Zhang San | Añadir pruebas unitarias | 02-27 |
| Li Si | Optimización de rendimiento | 02-28 |

**Próxima reunión**: 2026-03-05 14:00

El acta ha sido enviada al canal #engineering.

Flujos de trabajo automatizados

Flujo de revisión de PR

{
  "webhooks": [
    {
      "id": "pr-review",
      "path": "/webhook/github",
      "message": "Nuevo PR detectado: {{data.title}}\nRama: {{data.branch}}\nAutor: {{data.author}}\n\nRequiere revisión: @Zhang San @Li Si"
    }
  ]
}

Notificación de despliegue

Agent: 🚀 Notificación de despliegue

**Proyecto**: Aplicación frontend
**Entorno**: Production
**Versión**: v1.2.3
**Rama**: main
**Commit**: abc1234 - Corregir problema de búsqueda de usuarios

**Changelog**:
- Corregir paginación de resultados de búsqueda
- Optimizar velocidad de carga de la página principal
- Actualizar estilos de interfaz de usuario

**Hora de despliegue**: 2026-02-26 16:30:45
**Estado**: ✅ Exitoso

Dirección de monitoreo: https://monitor.example.com/frontend

@Equipo por favor atentos a la situación post-lanzamiento.

Recordatorio de guardia

{
  "cron": [
    {
      "id": "oncall-reminder",
      "schedule": "0 9 * * 1-5",
      "message": "Guardia de hoy: {{oncall}}, por favor asegúrate de estar en línea y responder a problemas urgentes."
    }
  ]
}

Análisis del equipo

Estadísticas de trabajo

Usuario: @team-bot Estadísticas de trabajo de esta semana

Agent: Generando estadísticas de trabajo de esta semana...

## Estadísticas de trabajo semanal (02/19 - 02/25)

### Tareas completadas
- Total de tareas: 23
- Completadas: 18 (78%)
- En progreso: 3 (13%)
- Pendientes: 2 (9%)

### Contribuciones de código
| Miembro | Commits | PRs | Reviews |
|-----|---------|-----|---------|
| Zhang San | 12 | 3 | 5 |
| Li Si | 8 | 2 | 8 |
| Wang Wu | 15 | 4 | 3 |

### Tiempo en reuniones
- Total de reuniones: 6
- Duración total: 8.5 horas
- Promedio por persona: 2.8 horas

### Tiempo de respuesta
- Primera respuesta promedio: 15 minutos
- Tasa de respuesta en Slack: 95%
- Tasa de completado de tareas a tiempo: 85%

### Sugerencias
- 💡 Se sugiere reducir el tiempo en reuniones para aumentar el tiempo de concentración
- 💡 Miércoles por la tarde es un período de alta eficiencia, ideal para trabajo profundo
- 💡 La tasa de retraso en tareas ha subido ligeramente, se sugiere mejorar las estimaciones

¿Necesitas un informe detallado?

Análisis de sentimiento del equipo

Usuario: @team-bot Analiza el estado emocional del equipo últimamente

Agent: Analizando el sentimiento del equipo...

[Analizando registros de comunicación recientes]
[Identificando palabras clave emocionales]
[Generando informe de sentimiento]

## Análisis de sentimiento del equipo

### Sentimiento general
- Índice de sentimiento esta semana: 7.2/10
- Semana pasada: 7.5/10
- Cambio: -0.3 (ligera disminución)

### Distribución emocional
- Vocabulario positivo: 65% (completado, logrado, genial, ánimo)
- Vocabulario neutro: 30% (en progreso, pendiente, discutir)
- Vocabulario negativo: 5% (retrasado, problema, presión)

### Requiere atención
- Zhang San: Ha estado trabajando horas extra últimamente, se sugiere programar descanso
- Li Si: Carga de trabajo pesada, considerar redistribuir tareas

### Sugerencias
- 🌟 Programar actividad de equipo este viernes por la tarde
- 🌟 Reducir reuniones no esenciales
- 🌟 Fomentar dar retroalimentación positiva en las revisiones de código

¿Necesitas que envíe un mensaje de apoyo al equipo?

Mejores prácticas

1. División de canales

Canal Uso Regla de mención
#general Notificaciones a todo el equipo Requiere @
#engineering Discusiones técnicas No requiere @
#alerts Alertas del sistema Notificación automática
#random Chat informal No requiere @

2. Estándares de respuesta

{
  "responseRules": {
    "urgent": {
      "keywords": ["urgente", "urgent", "problema en producción"],
      "response": "Respuesta inmediata",
      "escalation": "Si no hay respuesta en 5 minutos, escalar"
    },
    "normal": {
      "keywords": [],
      "response": "Respuesta dentro de 2 horas"
    }
  }
}

3. Política de notificaciones

{
  "notifications": {
    "quietHours": {
      "start": "22:00",
      "end": "08:00"
    },
    "channels": {
      "slack": {
        "urgent": "always",
        "normal": "workingHours"
      },
      "discord": {
        "urgent": "always",
        "normal": "quiet"
      }
    }
  }
}

Resumen

Al construir un Agent de colaboración en equipo con OpenClaw:

  • Integración multicanal: Acceso unificado a Slack, Discord, Teams
  • Gestión de base de conocimiento: Compartir y consultar conocimiento del equipo
  • Seguimiento de tareas: Asignación automática, recordatorios, estadísticas
  • Coordinación de reuniones: Crear, registrar, generar actas
  • Flujos de trabajo automatizados: Notificaciones de PR, alertas de despliegue, recordatorios de guardia
  • Análisis del equipo: Estadísticas de trabajo, análisis de sentimiento

Registro de actualizaciones:

  • 2026-02-26: Publicación inicial

Navegación de la serie: