Skip to main content

linear

Manage Linear issues with automatic team routing, labels, and status updates. Use when "create issue", "create ticket", "Linear task", "update issue status", "list teams", "track task in Linear", "project management", "attach to project", or "create Linear project".

Informations de source

Dépôt
Umbral-Bot/umbral-agent-stack
Dernière activité de la source
23 mars 2026 à 23:30
Langue détectée de SKILL.md
espagnol
Étoiles
0
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
linear
description
Manage Linear issues with automatic team routing, labels, and status updates. Use when "create issue", "create ticket", "Linear task", "update issue status", "list teams", "track task in Linear", "project management", "attach to project", or "create Linear project".
metadata
{"openclaw":{"emoji":"📋","requires":{"env":"[Truncated]"}}}
# Linear Skill Rick puede gestionar issues en Linear con routing automático de equipos Umbral, labels inteligentes y actualizaciones de estado. ## Requisitos - `LINEAR_API_KEY`: API key de Linear (Settings → API → Personal API keys). ## Tasks disponibles ### 1. Crear issue Task: `linear.create_issue` ```json { "title": "Revisar landing page de Marketing", "description": "Actualizar copy y CTAs según brief Q2.", "team_key": "marketing", "priority": 2 } ``` #### Parámetros | Parámetro | Tipo | Requerido | Descripción | |-----------|------|-----------|-------------| | `title` | str | sí | Título del issue | | `description` | str | no | Descripción detallada | | `team_key` | str | no | Clave del equipo Umbral (ej. `"marketing"`, `"asesoria"`). Se infiere del título si se omite | | `team_id` | str | no | UUID del equipo en Linear. Si no se pasa, se resuelve por `team_name` | | `team_name` | str | no | Nombre del equipo en Linear (default: `"Umbral"`) | | `priority` | int | no | `0` Sin prioridad, `1` Urgente, `2` Alta, `3` Media, `4` Baja | | `add_team_labels` | bool | no | Adjuntar labels del equipo (default: `true`) | #### Respuesta ```json { "ok": true, "id": "uuid-123", "identifier": "UMB-5", "title": "Revisar landing page de Marketing", "url": "https://linear.app/umbral/issue/UMB-5", "routing": { "team_key": "marketing", "labels_applied": ["Marketing", "Marketing Supervisor"], "supervisor": "Marketing Supervisor", "inferred": false, "linear_team_id": "uuid-team" } } ``` ### 2. Listar equipos Task: `linear.list_teams` ```json {} ``` Devuelve la lista de equipos configurados en Linear. #### Respuesta ```json { "ok": true, "teams": [ {"id": "uuid-team", "name": "Umbral"} ] } ``` ### 3. Actualizar estado de issue Task: `linear.update_issue_status` ```json { "issue_id": "uuid-123", "state_name": "Done", "comment": "Tarea completada correctamente.", "team_id": "uuid-team" } ``` #### Parámetros | Parámetro | Tipo | Requerido | Descripción | |-----------|------|-----------|-------------| | `issue_id` | str | sí | UUID del issue en Linear | | `state_name` | str | no | Nombre del workflow state (ej. `"Done"`, `"Cancelled"`, `"In Progress"`) | | `comment` | str | no | Comentario a agregar al issue | | `team_id` | str | no | Necesario para resolver `state_name` → `state_id` | ### 4. Listar proyectos Task: `linear.list_projects` ```json { "query": "Proyecto Embudo", "limit": 20 } ``` Devuelve proyectos de Linear filtrables por nombre. ### 5. Crear proyecto Task: `linear.create_project` ```json { "name": "Proyecto Embudo Ventas", "team_name": "Umbral", "description": "Proyecto operativo para el embudo de ventas." } ``` Notas: - Si `if_exists_return=true` (default), retorna el proyecto existente por nombre en vez de duplicarlo. - Requiere un `team_id` o un `team_name` resoluble. - Antes de crear un proyecto canonico de Agent Stack, reutilizar el alias historico si ya existe y preferir `LINEAR_AGENT_STACK_PROJECT_ID` en produccion. ### 6. Asociar issue a proyecto Task: `linear.attach_issue_to_project` ```json { "issue_id": "uuid-del-issue", "project_name": "Proyecto Embudo Ventas", "create_project_if_missing": true, "team_name": "Umbral" } ``` Notas: - Permite corregir issues que existan pero hayan quedado fuera del project view. - Si se usa `project_name` y no existe, puede crear el proyecto automáticamente. ### 7. Listar issues de un proyecto Task: `linear.list_project_issues` ```json { "project_name": "Proyecto Embudo Ventas", "limit": 50 } ``` Devuelve las issues actualmente asociadas a un proyecto. ### 7b. Publicar update de proyecto Task: `linear.create_project_update` ```json { "project_name": "Proyecto Embudo Ventas", "title": "Cierre de slice CTA", "body": "Se cerro la definicion provisional de CTA y queda pendiente validar captura.", "health": "onTrack" } ``` Usala para dejar trazabilidad ejecutiva en el proyecto de Linear sin abrir una issue nueva. ### 8. Publicar follow-up interno de Agent Stack Task: `linear.publish_agent_stack_followup` Usar esta task cuando el pendiente venga de: - auditorias del repo - drift operativo - deuda tecnica u operativa del propio stack - follow-ups de monitoreo o analisis sobre Worker, Dispatcher, OpenClaw, Redis, Notion, Linear, VPS o VM Ejemplo: ```json { "title": "Unificar dispatcher vivo en VPS", "summary": "Se detectaron dos procesos dispatcher.service activos.", "evidence": "ps aux mostro dos procesos Python del dispatcher; systemctl no reflejaba ese estado.", "impact": "Riesgo de doble consumo y drift operativo silencioso.", "next_action": "Dejar un solo metodo de arranque y matar el duplicado.", "kind": "operational_debt", "designated_agent": "codex" } ``` Notas: - publica siempre en el proyecto canónico `Mejora Continua Agent Stack` - no debe usarse para proyectos externos ni entregables de cliente ### 9. Tomar una issue de Agent Stack Task: `linear.claim_agent_stack_issue` Ejemplo: ```json { "identifier": "UMB-123", "agent_name": "rick", "comment": "Voy a tomar el slice de deploy y dejar trazabilidad." } ``` Notas: - agrega una label `Agente: <Nombre>` - puede mover la issue a `In Progress` - solo acepta issues del proyecto canónico de Agent Stack ### 10. Listar cola interna de Agent Stack Task: `linear.list_agent_stack_issues` Ejemplo: ```json { "only_unclaimed": true, "limit": 20 } ``` Sirve para que Rick u otros agentes derivados de OpenClaw vean qué pendientes internos del stack todavía no tienen owner operativo. ## Notas - El routing automático infiere el equipo Umbral a partir del título y descripción usando keyword scoring. - Los labels del equipo se crean automáticamente en Linear si no existen. - La config de equipos está en `config/teams.yaml`. - Todas las tasks se encolan vía el Dispatcher a Redis y las ejecuta el Worker. - Para proyectos oficiales, no basta con crear la issue: hay que dejarla asociada al project correcto en Linear. - Para deuda y mejora interna del repo, usar el proyecto canónico `Mejora Continua Agent Stack`.
Voir sur GitHub