CommunityProgramación y desarrollogithub.com

Jinchen-Yang/diansai-skill

Agente de diseño de control electrónico para coches NUEDC · Pipeline de compuertas «Leer problema → Seleccionar → Esquema de cableado → Firmware» impulsada por Claude Code

¿Qué es diansai-skill?

Este skill implementa un sistema de tablero de tareas (board) para coordinar múltiples lanes de trabajo (líder, hardware, control, algoritmos) en un proyecto de diseño de control electrónico para coches de competición (NUEDC). Usa un enfoque pull-driven sobre un repositorio Git compartido: cada lane extrae las tareas listas para sí mismo (dependencias cumplidas), las ejecuta (invocando otros skills o guiando al usuario), marca como completadas (disparando automáticamente nuevas tareas a lanes aguas abajo según un DAG fijo) y sube los cambios. Es útil para equipos multi-lane sin comunicación directa, proporcionando una auditoría clara y evitando conflictos Git. Funciona con cualquier modelo que soporte Claude Code, ejecutando la lógica determinista en Python (`tools/board.py`). También ofrece opciones de sondeo casi en tiempo real mediante `/loop` o un script shell.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add Jinchen-Yang/diansai-skill

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

board —— Tablero de tareas y traspaso automático

lane: Todos (cada sesión de lane se ejecuta por su cuenta) · Motor: tools/board.py (determinista, cualquier modelo puede usarlo)

Tres lanes no pueden comunicarse directamente; solo pueden coordinarse mediante repositorio Git + archivos de tarea board/. Este skill te permite: obtener → ver las tareas listas asignadas a ti → realizarlas → marcarlas como completadas (asignando automáticamente tareas al lane aguas abajo) → subir los cambios.

Primero, determina el lane local

Lee el archivo .elec-lane en la raíz del repositorio (archivo no rastreado). Si no existe, pregunta al usuario qué lane es esta máquina (líder/hardware/control/algoritmo), escribe .elec-lane (una línea, por ejemplo control). Usa eso en lo sucesivo.

Acciones cada vez que se invoca

  1. git pull --rebase (obtén el progreso de otros y las nuevas tareas asignadas).
  2. python tools/board.py list --lane <lane_local> — lista las tareas listas asignadas a mí, cuyas dependencias están todas completadas.
  3. Si no hay tareas listas: python tools/board.py status para una vista global, dile al usuario qué está esperando (dependencias bloqueantes), termina.
  4. Si las hay:
    • Tareas tipo skill → invoca el skill indicado por su hint (por ejemplo /interconnect) y ejecuta esa pipeline.
    • Tareas tipo manual (cableado/ajuste) → presenta al usuario la lista/productos indicados por el hint para que los realice.
  5. Una vez completada una: python tools/board.py done <id> --by <lane_local>. Esto automáticamente asigna nuevas tareas a los lanes aguas abajo según el DAG (escribe nuevos archivos board/).
  6. git add board/ <tu_directorio_de_productos> && git commit -m "board: done <id>" && git push.
  7. Informa al usuario: qué se completó, qué tareas se asignaron automáticamente a qué lanes, y si hay más tareas listas para este lane.

Casi en tiempo real (opcional)

Haz que la sesión de este lane realice sondeos para ver nuevas tareas asignadas automáticamente:

  • Nativo de Claude: /loop 5m /board (cada 5 minutos hace pull + revisa el tablero).
  • Terminal puro: sh tools/watch.sh <lane_local> 300.

Notas

  • Solo modifica tu directorio de productos de lane + board/ (la propiedad de directorios se define en CLAUDE.md), para evitar conflictos Git.
  • El tablero de tareas es colaborativo: hace que el traspaso sea explícito y auditable; pero entre máquinas es pull-driven, otros deben hacer git pull para ver las tareas que asignaste (de ahí el sondeo).
  • El DAG de la pipeline está fijo en tools/board.py (read-problem → … → integración del vehículo completo); para cambiar relaciones de traspaso, modifícalo allí (mantenido por el líder).

Skills relacionados