Ir al contenido principal

Plugins de Claude Cowork: cómo instalar, personalizar y crear el tuyo propio

Tutorial práctico de plugins de Claude Cowork: instala el plugin Data de Anthropic, conecta un almacén y ejecuta un comando de barra, personaliza el plugin para tus tablas y crea un plugin completo de informe semanal desde cero con todos los archivos mostrados.
Actualizado 6 oct 2026  · 15 min leer

Explora con IA

ChatGPTClaudePerplexity

Cada lunes, alguien abre Claude, pega las mismas 40 líneas de contexto sobre el almacén de datos y pide los mismos números semanales. El martes, ese contexto ya no está, y la siguiente persona pega una versión ligeramente distinta. Un plugin ayuda a que estas tareas sean consistentes y verificables.

Al final de este tutorial, habrás instalado un plugin en Claude Cowork, lo habrás adaptado a tus propias tablas y habrás creado uno funcional desde cero.

Necesitas 2 cosas: un plan de pago de Claude (Pro, Max, Team o Enterprise) y la app de escritorio de Claude para macOS o Windows, que es lo que verás en las capturas. No necesitas terminal ni Python. Mencionaré la vía por línea de comandos para quien la prefiera, pero es opcional.

Antes de empezar, un aviso. El 16 de septiembre de 2026, Anthropic empezó a unificar Chat y Cowork en un único Claude para cuentas Pro y Max, así que puede que tu caja de mensajes ya no muestre una opción separada de Cowork. La página de Personalizar, donde viven los plugins, es la misma en ambos casos, y te iré indicando las etiquetas exactas de los menús.

Si prefieres practicar estos pasos con ejercicios guiados, el curso de DataCamp Building Claude Cowork Plugins te guía por la instalación, adaptación y creación de tu propio plugin, sin escribir una sola línea de código.

En pocas palabras 

  • Un plugin de Cowork es una carpeta con Markdown y JSON que enseña a Claude un trabajo.
  • Lo instalas desde la página de Personalizar en unos pocos clics.
  • Los plugins se personalizan fácilmente con la opción Edit with Claude.
  • También puedes crear un plugin de Cowork escribiendo 2 archivos de skill cortos, un manifiesto de 6 campos y un archivo de conector; luego comprimes la carpeta y la subes.
  • Para compartir plugins con tu equipo, publícalos en un repositorio de GitHub con un archivo marketplace.json y añade ese marketplace, o usa Publish to org en cuentas Team/Enterprise.

Introducción a los modelos Claude

Aprende a trabajar con Claude utilizando la API de Anthropic para resolver tareas del mundo real y crear aplicaciones basadas en inteligencia artificial.
Explora El Curso

¿Qué son los plugins de Claude Cowork?

Un plugin de Claude Cowork es un paquete instalable que reúne todo lo que Claude necesita para trabajar como especialista. Incluye cosas como habilidades de flujo de trabajo (skills), comandos de barra, conectores adecuados y los subagentes y hooks necesarios. La publicación de lanzamiento de Anthropic lo resume en una frase: 

"Plugins let you bundle any skills, connectors, slash commands, and sub-agents together to turn Claude into a specialist for your role, team, and company."

Los plugins llegaron a Cowork el 30 de enero de 2026, como vista previa de investigación para usuarios de pago, junto con 11 plugins de código abierto creados por los propios equipos de Anthropic. Una segunda oleada el 24 de febrero de 2026 añadió plugins de RR. HH., diseño, ingeniería, operaciones y análisis financiero, 4 plugins para servicios financieros, plugins de partners como Slack, S&P Global y LSEG, y formularios estructurados para comandos de barra. Cowork salió de la vista previa y pasó a disponibilidad general el 9 de abril de 2026.

Dónde se ejecutan los plugins suele confundir, así que aquí va la respuesta actual del artículo del centro de ayuda sobre plugins de Anthropic. Un plugin que añades se guarda en tu cuenta de Claude, no en tu ordenador, de modo que te acompaña al chat web, a la app de escritorio, a Cowork y a Claude Code (la versión 2.1.273 o posterior lo sincroniza automáticamente). Las skills y los comandos funcionan en todos esos lugares; los hooks y los subagentes se ejecutan solo en Cowork y Claude Code, y aparecen en gris en el chat.

Si aún no has usado Cowork, nuestro tutorial de Claude Cowork repasa la app, y la comparativa entre Claude Cowork y Claude Code explica por qué el mismo plugin puede hacer más en uno que en otro. No volveré a explicar Cowork aquí.

Qué agrupa un plugin

La tabla siguiente recoge los 5 componentes que un plugin puede incluir, qué hace cada uno y cuándo se activa.

Componente

Qué hace

Cuándo se activa

Skill

Un archivo SKILL.md con instrucciones y conocimiento de dominio, como tus convenciones de SQL

Automáticamente, cuando Claude juzga que la tarea encaja con la descripción de la skill. También puedes ejecutarla por nombre tras /.

Comando de barra

Una acción con nombre y sus propias instrucciones, como /data:write-query

Manualmente, cuando lo tecleas. En Cowork, Claude puede hacer una pregunta estructurada antes de empezar.

Conector (MCP)

Un enlace a un servicio externo mediante Model Context Protocol (MCP): Snowflake, BigQuery, Slack y cientos más

Cuando Claude llama a una de las herramientas del servicio, tras haber conectado el servicio una vez.

Subagente

Un especialista al que Claude puede delegar parte de una tarea, con su propio prompt y lista de herramientas

Cuando Claude decide delegar. Solo en Cowork y Claude Code.

Hook

Un script o prompt que se ejecuta en un evento de la sesión, por ejemplo justo antes de una llamada a herramienta

En ese evento, siempre. Solo en Cowork y Claude Code.

Las skills se activan cuando Claude las ve relevantes, y los comandos cuando escribes /. Esa diferencia determina qué revisar cuando parece que un plugin no hace nada; volveré a ello en la sección de verificación. Si los subagentes son nuevos para ti, nuestro curso Introduction to AI Agents explica el patrón de delegación sin código.

Plugin vs. skill

Una skill enseña a Claude una tarea en un único archivo SKILL.md. Un plugin es el conjunto empaquetado de skills, comandos y conectores para una función completa, así que el plugin Data incluye 10 skills, y el plugin es la unidad que instalas, mientras que la skill es la unidad que editas. Nuestra guía de Claude Skills profundiza en el formato si te interesa.

Dónde encontrar plugins de Cowork

Los plugins de Cowork llegan por 3 vías, y usarás la primera en la mayor parte de este artículo:

  • Los marketplaces integrados en Cowork. El marketplace Knowledge Work se añade a todas las cuentas por defecto. Los de Life Sciences, Financial Services y Legal de Anthropic están en Add, Add marketplace y luego Browse Anthropic sources.
  • El directorio en claude.com/plugins. Enumera más de 300 plugins, con un filtro para indicar si funciona con Claude, con Claude Code o con ambos.
  • El repositorio anthropics/knowledge-work-plugins en GitHub. Es el código Apache-2.0 de todos los plugins de rol creados por Anthropic, y de ahí he leído los archivos que cito a continuación.

Existen otras dos rutas de instalación: añadir cualquier repositorio Git como marketplace por su URL o la forma abreviada owner/repo (funcionan GitHub, GitHub Enterprise y repos públicos de GitLab y Bitbucket), o subir directamente un archivo de plugin como un .zip o .plugin de hasta 200 MB.

La oferta de roles cubre multitud de campos: productividad, ventas, soporte al cliente, gestión de producto, marketing, legal, finanzas, datos, búsqueda empresarial, RR. HH., diseño, ingeniería, operaciones, bioinvestigación y pymes, además de plugins de partners. Este artículo no es un listado comparativo: elige el que corresponda a tu trabajo y sigue.

¿Qué hay dentro de un plugin de Cowork?

Un plugin de Cowork es una carpeta con un manifiesto en una subcarpeta oculta y todo lo demás en el nivel superior. Este es el esquema completo, con los componentes; solo algunas superficies de carga están marcadas como tales:

my-plugin/
├── .claude-plugin/
│   └── plugin.json          # manifest (required)
├── skills/
│   └── <name>/SKILL.md      # skills: auto-triggered knowledge & named actions
├── commands/
│   └── <name>.md            # legacy single-file slash commands (still work)
├── agents/
│   └── <name>.md            # sub-agents (Cowork and Claude Code only)
├── hooks/
│   └── hooks.json           # hooks (Cowork and Claude Code only)
├── .mcp.json                # connectors
└── README.md

Ten presente este árbol, porque en el paso 4 construimos su mitad superior archivo a archivo. La figura de abajo empareja el árbol con dónde se ejecuta cada componente, a partir de la tabla de compatibilidad de plataformas de Anthropic.

La carpeta de un plugin a la izquierda y, para cada componente, cuándo se activa y si lo carga chat, Cowork o Claude Code.

Figura 1. La carpeta de un plugin a la izquierda y, para cada componente, cuándo se activa y si lo carga chat, Cowork o Claude Code. Imagen del autor.

El manifiesto

El manifiesto es .claude-plugin/plugin.json, y name es el único campo obligatorio. Este es el manifiesto real del plugin Data de Anthropic, copiado del repositorio:

{
  "name": "data",
  "version": "1.1.0",
  "description": "Write SQL, explore datasets, and generate insights faster. Build visualizations and dashboards, and turn raw data into clear stories for stakeholders.",
  "author": {
    "name": "Anthropic"
  }
}

Tres cosas a tener en cuenta:

  • name es la identidad permanente del plugin y prefija cada componente; así, la skill write-query pasa a ser /data:write-query.

  • La cadena version es el número de versión que verá la gente del plugin, y la guía de compilación de Anthropic indica subirlo en cada release.

  • Los campos opcionales incluyen displayName, license, homepage y keywords.

Skills y comandos

Una skill vive en skills/<name>/SKILL.md: un bloque corto de ajustes entre líneas --- arriba (YAML frontmatter) e instrucciones para Claude debajo. Este es el inicio de la skill write-query del plugin Data, la que ejecuto en el paso 2:

---
name: write-query
description: Write optimized SQL for your dialect with best practices. Use when translating a natural-language data need into SQL, building a multi-CTE query with joins and aggregations, optimizing a query against a large partitioned table, or getting dialect-specific syntax for Snowflake, BigQuery, Postgres, etc.
argument-hint: "<description of what data you need>"
---

# /write-query - Write Optimized SQL

La description es lo que lee Claude para decidir si carga la skill, y argument-hint indica qué espera que escribas. Dos flags en el frontmatter cambian cómo se activa una skill: 

  • user-invocable: false la oculta del menú de / para que solo Claude la cargue (la skill sql-queries del plugin está así)

  • disable-model-invocation: true hace lo contrario: la skill solo se ejecuta cuando escribes su nombre.

Los comandos son el formato antiguo: un archivo Markdown en commands/<name>.md con una description en su frontmatter. La propia skill de autoría de Anthropic ahora le indica a Claude que "cree nuevos plugins con skills/*/SKILL.md" y llama a la carpeta commands/ «legacy», porque la interfaz de Cowork muestra ambos como una única lista de Skills. Los comandos siguen cargando en todas partes, así que los verás en plugins antiguos, pero en el paso 4 usaremos skills.

Conectores

El archivo .mcp.json en la raíz del plugin lista los servicios externos a los que el plugin puede acceder, cada uno como un servidor MCP. Aquí van las 3 primeras entradas del archivo del plugin Data:

{
  "mcpServers": {
    "snowflake": {
      "type": "http",
      "url": ""
    },
    "databricks": {
      "type": "http",
      "url": ""
    },
    "bigquery": {
      "type": "http",
      "url": "https://bigquery.googleapis.com/mcp"
    },

Las URLs vacías son marcadores: Anthropic incluye el endpoint de BigQuery pero deja Snowflake y Databricks para que completes con la dirección de tu servidor. Si MCP te suena nuevo, nuestra guía del Model Context Protocol construye un servidor desde cero.

Hay una limitación poco obvia: el centro de ayuda de Anthropic indica que «en Cowork, los conectores acceden a servicios externos a través de la nube de Anthropic, no de tu red local». Por tanto, un conector personalizado debe apuntar a un servidor «accesible desde internet pública desde los rangos de IP de Anthropic». Un almacén detrás de un cortafuegos o VPN no conectará hasta que tu equipo de red incluya las direcciones de Anthropic en la allowlist.

Los servidores MCP locales, los que arrancan un programa en tu máquina, son la excepción: se ejecutan en Claude Code y en sesiones de Cowork que corren en tu ordenador; el chat los ignora.

Desde el 6 de octubre de 2026, las nuevas tareas Pro y Max se ejecutan solo en la nube de Anthropic, así que las sesiones locales son sobre todo una función de Team y Enterprise.

Paso 1: instalar tu primer plugin

Instalar un plugin de Cowork son 6 pasos cortos en la página de Personalizar, idénticos para cualquier plugin del catálogo, así que si eres de ventas o legal, cambia por el tuyo. Yo uso el plugin Data porque prepara el ejemplo de SQL del paso 2.

1. Abre Customize en la barra lateral izquierda de la app de escritorio de Claude. Si tu app aún muestra una pestaña Cowork, ábrela primero.

Customize

2. Abre la pestaña Plugins.

Plugins tab

3. Asegurémonos de que tienes el marketplace Knowledge Work. Haz clic en + Add, luego Add marketplace y después Browse Anthropic sources.

Add marketplace

4. Selecciona y añade los plugins de Knowledge Work.

add knowledge work plugins

5. Abre la pestaña Discover. El marketplace Knowledge Work ya debería estar ahí. Haz clic en el filtro Code.

open Discover tab

6. Selecciona Data y luego haz clic en Add. En algunas versiones, el botón se llama Install.

La página del plugin lista lo que has instalado: su pestaña Skills muestra 10 skills, 7 ejecutables por nombre (analyze, explore-data, write-query, create-viz, build-dashboard, validate-data y data-context-extractor) y 3 que cargan en segundo plano (sql-queries, data-visualization y statistical-analysis). Su archivo de conectores en el repositorio lista Snowflake, Databricks, BigQuery, Definite, Hex, Amplitude (con una entrada separada para la UE) y Atlassian, y ninguno está conectado hasta que inicies sesión. La página de directorio del plugin Data mostraba 7,655 instalaciones el 28 de septiembre de 2026.

Si te manejas con la terminal, el mismo plugin se instala en Claude Code con 2 comandos del README del repositorio:

claude plugin marketplace add anthropics/knowledge-work-plugins
claude plugin install data@knowledge-work-plugins

Importa una diferencia: un plugin que añades desde Customize se sincroniza en Claude Code, pero un plugin que instalas desde la línea de comandos se queda en esa máquina y no llega a tu cuenta. Nuestra guía para crear plugins de Claude Code cubre a fondo el flujo por terminal, así que aquí sigo por la vía de escritorio.

En planes Team y Enterprise, una persona con rol de owner establece cada plugin en uno de 4 estados: no disponible, disponible para instalar, instalado por defecto u obligatorio. Los administradores de Enterprise pueden sobreescribir por grupos, así que el centro de ayuda avisa de que «los plugins que ves en el catálogo pueden diferir de los que ven compañeros de otros grupos». Si Data no aparece en tu pestaña Discover, pregunta a un owner antes de asumir que el marketplace falla.

Paso 2: conectar una fuente de datos y ejecutar un comando de barra

Un plugin con un almacén sin conectar solo puede escribir SQL para que lo pegues en otro sitio, así que el primer paso real es conectar una fuente de datos. Luego, el comando de barra hace el resto.

Autorizar un conector

Añadir un plugin no inicia sesión en ningún servicio. Abre la pestaña Connectors del plugin, donde cada entrada muestra uno de 3 estados: Connected, Not connected (el conector está en tu cuenta, pero no has iniciado sesión) o Not added. Haz clic en Add donde sea necesario, luego en Connect y completa el inicio de sesión en tu navegador.

Plugins overview

En planes Team y Enterprise, una persona con rol de owner añade primero el conector para la organización y tú luego te conectas con tu cuenta.

Usa credenciales de solo lectura para el almacén, porque un conector con permisos de escritura permite a Claude ejecutar cualquier sentencia que expongan sus herramientas y, en el modo automático de Cowork, Claude decide por sí mismo si llamarlas. Eso significa:

  • Para Snowflake, un rol con SELECT únicamente

  • Para BigQuery, una cuenta de servicio con el rol Data Viewer

  • Para Databricks, un token con alcance a un SQL warehouse de solo lectura

Si eres nuevo en alguna de estas plataformas, nuestra guía para principiantes de Snowflake y el tutorial de BigQuery te llevan a tu primera consulta en una tarde.

La conexión vive en tu cuenta bajo Customize y luego Connectors, así que autorizas cada servicio una vez y cualquier otro plugin que liste la misma URL de servidor, como la entrada de BigQuery del plugin Finance, la reutiliza.

Ejecutar tu primer comando

El comando write-query convierte una pregunta en lenguaje natural en SQL para tu dialecto, y es el artefacto que más quiero que observes, porque la sección de verificación vuelve a él.

He creado una pequeña base de datos SQLite, shop.db, con las 4 tablas que tendría un almacén de e-commerce y 1.600 pedidos del 5 de enero al 27 de septiembre de 2026. La tabla siguiente define el esquema; todas las consultas del artículo se ejecutan contra él.

Tabla

Columnas

Una fila es

customers

customer_id, signup_date, country, acquisition_channel

Un cliente (240 filas)

products

product_id, product_name, category, list_price

Un producto del catálogo en 1 de 5 categorías (40 filas)

orders

order_id, customer_id, order_date, status, shipping_country

Un pedido con estado completed, refunded o canceled (1.600 filas)

order_items

order_id, product_id, quantity, unit_price, discount_pct

Una línea de producto en un pedido, con precio antes de un descuento del 0 al 25% (2.647 filas)

Para ejecutar el comando, escribe / en la caja de mensajes y elige write-query del plugin Data, o teclea /data:write-query. 

Desde la actualización del 24 de febrero de 2026, al teclear un comando su texto de ayuda aparece en la caja de mensajes, y Claude puede hacer una pregunta estructurada con opciones numeradas antes de empezar, como muestra la captura de Anthropic abajo con el comando /dashboard. 

El formulario estructurado que lanza un comando de barra en Cowork, mostrado por Anthropic con el comando /dashboard: la pista del comando aparece en la caja de mensajes y Claude hace una pregunta con opciones numeradas antes de comenzar.

El formulario estructurado que lanza un comando de barra en Cowork, mostrado por Anthropic con el comando /dashboard: la pista del comando aparece en la caja de mensajes y Claude hace una pregunta con opciones numeradas antes de comenzar. Fuente: Anthropic, 24 de febrero de 2026.

Mi petición fue: ingresos netos por categoría de producto para cada una de las últimas 8 semanas, contando solo pedidos completados y descontando los descuentos por línea, en SQLite, con el esquema pegado debajo.

Este es el SQL de vuelta, sin editar:

-- Net revenue by product category, last 8 complete weeks (Mon–Sun), completed orders only
-- Dialect: SQLite
WITH RECURSIVE
params AS (
    SELECT
        -- Monday of the current week; 'weekday 0' jumps forward to Sunday, -6 days lands on Monday
        date('2026-09-28', 'weekday 0', '-6 days')              AS current_week_start,  -- 2026-09-28
        date('2026-09-28', 'weekday 0', '-6 days', '-56 days')  AS range_start          -- 2026-08-03
),

-- One row per week, so weeks with no sales still show up
weeks AS (
    SELECT range_start AS week_start
    FROM params
    UNION ALL
    SELECT date(w.week_start, '+7 days')
    FROM weeks AS w
    CROSS JOIN params AS pr
    WHERE date(w.week_start, '+7 days') < pr.current_week_start
),

categories AS (
    SELECT DISTINCT category
    FROM products
),

-- Filter and aggregate at the line-item level before building the grid
weekly_category_revenue AS (
    SELECT
        date(o.order_date, 'weekday 0', '-6 days')                          AS week_start,
        p.category,
        -- discount_pct is stored as 0–25 (a percent), not as a 0–0.25 fraction
        SUM(oi.quantity * oi.unit_price * (1 - oi.discount_pct / 100.0))    AS net_revenue
    FROM orders AS o
    CROSS JOIN params AS pr
    INNER JOIN order_items AS oi ON oi.order_id = o.order_id
    INNER JOIN products    AS p  ON p.product_id = oi.product_id
    WHERE o.status = 'completed'
      -- Plain string comparison, so an index on order_date can be used; works for ISO-8601 dates
      AND o.order_date >= pr.range_start
      AND o.order_date <  pr.current_week_start
    GROUP BY 1, 2
)

SELECT
    w.week_start,
    date(w.week_start, '+6 days')             AS week_end,
    c.category,
    ROUND(COALESCE(r.net_revenue, 0), 2)      AS net_revenue
FROM weeks AS w
CROSS JOIN categories AS c
LEFT JOIN weekly_category_revenue AS r
       ON r.week_start = w.week_start
      AND r.category   = c.category
ORDER BY w.week_start, net_revenue DESC, c.category;

Es más largo de lo que habría tecleado a mano, y ahí está su valor. Cada bloque de la consulta, una CTE (common table expression), hace un trabajo:

  • params ancla todo a una fecha, así es fácil reorientar la consulta.

  • weeks es recursiva y garantiza una fila para semanas sin ventas.

  • weekly_category_revenue mantiene solo status = 'completed' y aplica el descuento como 1 - discount_pct / 100.0, porque el esquema dice que la columna guarda porcentajes enteros del 0 al 25.

  • El SELECT final rellena huecos con 0, así que la salida está lista para graficar.

La skill también lista sus supuestos debajo de la consulta, incluido que order_date debe ser texto ISO 8601 (YYYY-MM-DD) para que funcione el filtro de rango, y que los pedidos reembolsados se excluyen por completo.

Ejecuté la consulta contra shop.db y obtuve 40 filas, una por semana y categoría. Aquí está pivoteada para que cada categoría sea una columna:

Semana que empieza

Audio

Fitness

Home Office

Kitchen

Outdoor

2026-08-03

12,714.80

9,187.23

13,542.08

7,925.04

7,621.21

2026-08-10

12,017.26

6,467.39

5,380.54

12,444.47

6,386.67

2026-08-17

8,808.47

4,669.72

6,675.32

7,513.97

4,485.65

2026-08-24

15,634.67

8,055.81

8,716.85

7,730.55

7,047.96

2026-08-31

11,402.99

11,517.37

14,252.59

9,954.80

7,226.14

2026-09-07

14,853.85

5,509.74

5,639.71

4,926.32

4,162.98

2026-09-14

8,780.41

4,893.28

7,864.22

7,344.70

6,204.45

2026-09-21

12,937.24

4,149.27

12,715.72

9,618.61

7,353.57

Audio es la categoría más grande en 5 de las 8 semanas y nunca baja de 8.780. Home Office es la que más oscila, de 5.380 en la semana del 10 de agosto a 14.252 en la semana del 31 de agosto. Fitness termina el periodo en su mínimo de 4.149, el tipo de movimiento que un informe semanal debe señalar, y que el plugin que construí en el paso 4 sí resalta.

El gráfico de abajo son los mismos 40 números, un panel por categoría.

Figura 2. Ingresos netos semanales de pedidos completados por categoría de producto durante las 8 semanas completas hasta el 27 de septiembre de 2026, a partir del resultado de write-query. Imagen del autor.

Figura 2. Ingresos netos semanales de pedidos completados por categoría de producto durante las 8 semanas completas hasta el 27 de septiembre de 2026, a partir del resultado de write-query. Imagen del autor.

Paso 3: personalizar un plugin instalado

Instalar lleva 2 minutos. Personalizar es donde un plugin empieza a ganarse el sitio, porque los plugins de Anthropic están escritos para una empresa genérica, y la tuya no lo es. Hay 2 maneras de hacerlo.

Usar Edit with Claude

Al hacer clic en Edit with Claude se abre una tarea de Cowork en la que Claude edita el plugin contigo.

Edit with Claude

El centro de ayuda aún llama al botón Customize. En la app actual, abre el menú del plugin en la esquina superior derecha y elige Edit with Claude, que «abre una nueva tarea de Cowork con un prompt pidiendo a Claude que personalice el plugin elegido», y luego pulsa Let's go. Por debajo, esto ejecuta la skill cowork-plugin-customizer del plugin Plugin Management de Anthropic.

La skill primero busca en los archivos del plugin marcadores ~~, como ~~data warehouse, luego busca en cualquier Slack o herramienta de documentos conectada los nombres reales y, por último, te pregunta por lo que no encuentre.

Un ajuste concreto aquí es el nombreado de tus tablas: indícale que las tablas canónicas viven en el esquema analytics, que fct_orders es la única tabla de pedidos a consultar y que todo lo que empiece por stg_ está prohibido. Claude escribirá esas reglas en la skill de SQL y te mostrará el plugin personalizado en la conversación; lo aceptas con el botón de ese resultado.

Editar los archivos directamente

La segunda vía es abrir los archivos del plugin y editarlos tú mismo, ideal para cambios que ya sabes escribir. Tres ediciones aportan más valor:

  • Añade contexto de empresa a una skill. Añade al final de skills/sql-queries/SKILL.md tus definiciones de métricas, las tablas canónicas y las tablas que nunca deben consultarse. El bloque que uso es el que se convierte en su propia skill en el paso 4, y 4 de sus líneas son así:

- orders: one row per order. status is completed, refunded, or canceled. order_date is ISO 8601 (YYYY-MM-DD).
- order_items: one row per product line. unit_price is the price charged before discount. discount_pct is a whole-number percentage from 0 to 25.
- products: one row per product, with its category.
- Never compute revenue from products.list_price. It is the catalog price, not what the customer paid.
  • Cambia conectores en .mcp.json. Elimina las entradas de servicios que no uses y completa la URL vacía de Snowflake o Databricks con la dirección de tu servidor, o añade tu almacén como conector personalizado en Customize y luego Connectors.

  • Sube la versión. Cambia la versión en plugin.json cada vez que edites, para distinguir tu copia del original.

Un apunte: la guía de plugins de Cowork dice que Cowork comprueba actualizaciones en el marketplace y «si has editado archivos del plugin localmente, Cowork detecta el cambio y te avisa antes de que una actualización los sobrescriba». Los plugins gestionados por la organización y los que te comparte un compañero no pueden editarse, así que cópialos antes en un plugin propio.

Otro aviso para usuarios de Windows: un informe de error del 11 de septiembre de 2026 describe un plugin subido por uno mismo que queda congelado en su primera versión instalada, con cargas nuevas, desinstalaciones y reinstalaciones que vuelven atrás tras reiniciar. Seguía abierto sin solución el 6 de octubre de 2026; si tus ediciones dejan de guardarse en Windows, revisa ese hilo en vez de re-subir en bucle.

Paso 4: crear un plugin personalizado desde cero

Un plugin a medida es la respuesta cuando ningún plugin del marketplace conoce tu flujo de trabajo. Veamos un ejemplo: un informe semanal de métricas con 1 skill de conocimiento, 1 comando y 1 conector.

Incluyo cada archivo completo, porque el producto es la carpeta. La figura muestra el bucle que vas a seguir.

Figura 3. Crear un plugin personalizado: escribe y valida los archivos en tu equipo, comprímelos y súbelos; luego ejecuta el comando en una tarea nueva y vuelve a los archivos para los cambios. Imagen del autor.

Figura 3. Crear un plugin personalizado: escribe y valida los archivos en tu equipo, comprímelos y súbelos; luego ejecuta el comando en una tarea nueva y vuelve a los archivos para los cambios. Imagen del autor.

Andamiaje con Plugin Create

Plugin Create es el nombre de Anthropic para la ruta guiada y, en septiembre de 2026, está en el menú Add. Ve a Customize, Plugins, Add y luego Create with Claude, que abre una tarea de Cowork con la petición ya rellenada.

Create with Cladue

Describe el trabajo como se lo dirías a un compañero, responde a las preguntas de Claude sobre qué conectores incluir y haz clic en Save plugin en la tarjeta de archivo que genere. El mismo menú también ofrece Create a plugin, un formulario y un editor para quien ya sepa qué debe decir cada archivo.

Para el plugin de este artículo, el briefing que escribiría es el siguiente. Nombra el único comando, la única skill en segundo plano, el único conector y las reglas, que es la información que de otro modo las preguntas de descubrimiento de la skill te irían sacando una a una.

Build me a plugin called Weekly Metrics Report for our online store's data team.

What it does: every Monday, compare the most recent complete week (Monday to Sunday) with the week before it and write a short Markdown report. Keep it to one command, /weekly-report, that runs the whole thing, and one background skill that holds our metric definitions so Claude never guesses them.

The definitions: net revenue is quantity times unit price after the line discount, for completed orders only. Completed orders are counted by distinct order ID. Average order value is net revenue divided by completed orders. Refund rate is refunded orders divided by completed plus refunded orders, as a percentage with one decimal. Cancelled orders never count toward anything.

The data: the canonical tables are orders, order_items, and products in our BigQuery warehouse. Never use products.list_price for revenue; it is the catalog price, not what the customer paid. Bundle the BigQuery connector and nothing else.

The report: a three-sentence summary that names the biggest mover and says whether it went up or down, a table of net revenue by product category (this week, last week, percentage change with one decimal and a sign), a second table with the overall metrics for both weeks, and the SQL at the end so a reader can check it. If either week has fewer than 20 completed orders, say the comparison is noisy.

Do not add agents, hooks, or any other skills.

La ruta guiada ejecuta la skill create-cowork-plugin del plugin Plugin Management en el marketplace Knowledge Work. Puedes instalar ese plugin y ejecutar la skill por su nombre. Te pregunta sobre el trabajo, componentes y conectores, y luego empaqueta el resultado en un archivo .plugin.

Esta es la carpeta con la que terminas:

weekly-metrics-report/
├── .claude-plugin/
│   └── plugin.json
├── .mcp.json
├── README.md
└── skills/
    ├── metric-definitions/
    │   └── SKILL.md
    └── weekly-report/
        └── SKILL.md

El manifiesto nombra el plugin y fija la versión:

{
  "name": "weekly-metrics-report",
  "displayName": "Weekly Metrics Report",
  "version": "0.1.0",
  "description": "Builds the store's weekly metrics report from the warehouse, using the team's own metric definitions.",
  "author": { "name": "Tim Lu" },
  "license": "MIT"
}

El archivo de conectores lista un único servidor, el mismo endpoint de BigQuery que usa el plugin Data, así que quien conectó BigQuery en el paso 2 no tiene que autorizar nada nuevo:

{
  "mcpServers": {
    "bigquery": {
      "type": "http",
      "url": "https://bigquery.googleapis.com/mcp"
    }
  }
}

El README es opcional para un plugin privado y obligatorio si algún día lo envías al directorio, así que lo escribí ya:

# Weekly Metrics Report
A small Cowork plugin that turns "how did last week go?" into a consistent report. It holds the store's metric definitions in one skill and the report workflow in another, and it bundles the BigQuery connector so Claude can query the warehouse directly.

## Use it
Run /weekly-metrics-report:weekly-report, or ask for the weekly numbers in plain words. Claude compares the most recent complete week with the week before, writes a Markdown report with per-category and overall tables, and includes the SQL it ran.

## Data
The plugin reads the orders, order_items, and products tables through the connector you sign in to. It stores nothing itself.

Escribir la skill

La skill de conocimiento guarda el contexto que se pega cada lunes. Aquí tienes skills/metric-definitions/SKILL.md completa:

---
name: metric-definitions
description: The store's definitions of net revenue, completed orders, average order value, and refund rate, plus which warehouse tables are canonical. Use whenever a request involves revenue, sales, orders, refunds, discounts, or which table to query, even if it does not name a metric.
user-invocable: false
---

# Metric definitions for the store warehouse
Follow these definitions whenever you compute or report a store metric. If a request conflicts with them, follow the definitions and say so.

## Canonical tables
- orders: one row per order. status is completed, refunded, or cancelled. order_date is ISO 8601 (YYYY-MM-DD).
- order_items: one row per product line. unit_price is the price charged before discount. discount_pct is a whole-number percentage from 0 to 25.
- products: one row per product, with its category.
- Never compute revenue from products.list_price. It is the catalog price, not what the customer paid.

## Metrics
- Net revenue: SUM(quantity * unit_price * (1 - discount_pct / 100.0)) over order_items, for orders with status = 'completed'.
- Completed orders: COUNT(DISTINCT order_id) where status = 'completed'.
- Average order value: net revenue divided by completed orders.
- Refund rate: refunded orders divided by completed plus refunded orders, as a percentage with one decimal.
- Cancelled orders never count toward revenue, order counts, or the refund rate.

## Weeks
- A week runs Monday to Sunday. Label a week by its Monday.
- "Last week" means the most recent complete week, not the last 7 days.

La descripción es lo que hace que esta skill se active de forma fiable, y una vaga suele ser la razón por la que una skill nunca se activa. Claude lee solo el frontmatter hasta decidir cargar una skill, y la referencia de skills de Claude Code dice que pongas primero el caso de uso clave. 

Escribe la descripción como las situaciones en que estará el lector («una petición implica ingresos, ventas, pedidos, reembolsos, descuentos») en lugar de como un resumen del archivo, e incluye las palabras que la gente usa, porque Claude coteja tu descripción con su mensaje.

Dos decisiones más son deliberadas: user-invocable: false mantiene esta skill fuera del menú /, ya que nadie debería «ejecutar» un conjunto de definiciones. El cuerpo está escrito como instrucciones a Claude en imperativo («Never compute revenue from products.list_price»), que es el estilo que pide la propia skill de autoría de Anthropic. La sección de tablas es la parte que sustituirías por los nombres de tu almacén.

Escribir el comando

El comando también es un archivo de skill, porque así definen acciones con nombre los plugins nuevos. Aquí está skills/weekly-report/SKILL.md completa:

---
name: weekly-report
description: Build the store's weekly metrics report. Use when the user asks for the weekly report, the weekly numbers, week-over-week metrics, or how last week went.
argument-hint: "[a date inside the week to report on]"
---

# Weekly metrics report

Produce a short report comparing the most recent complete week with the week before it, using the definitions in the metric-definitions skill.

## Steps

1. Work out the reporting week. If the user gave a date, use the Monday-to-Sunday week that contains it. Otherwise use the most recent complete week before today.
2. Get the data. If a warehouse connector is connected, query it directly. If not, ask the user for a database file or an export and query that instead. Never estimate a number.
3. For the reporting week and the week before it, compute net revenue, completed orders, average order value, and refund rate, overall and per product category.
4. Write the report to a Markdown file named weekly_report_<week start>.md containing:
   - A three-sentence summary that names the biggest mover and says whether it went up or down.
   - A table with one row per category: net revenue this week, last week, and the percentage change.
   - A second table with the overall metrics for both weeks.
   - The SQL you ran, in a code block at the end, so the reader can check it.
5. Show the summary in the conversation and say where the file is.

## Rules

- Follow the metric-definitions skill for every metric. Do not invent new ones.
- Report percentage changes with one decimal place and a sign.
- If either week has fewer than 20 completed orders, say the comparison is noisy.

Esta skill se puede invocar por el usuario por defecto, así que aparece en el menú / como /weekly-metrics-report:weekly-report, y argument-hint documenta el único argumento que acepta.

El cuerpo nombra la skill metric-definitions dos veces, una en la línea inicial y otra en las reglas, que es cómo el comando llama a la skill: Claude carga las definiciones porque están nombradas y porque su descripción coincide con una petición sobre ingresos.

Si prefieres el formato legacy, el mismo cuerpo funciona como commands/weekly-report.md con solo la línea description en el frontmatter.

Instalarlo y probarlo

Antes de subirlo, valida la carpeta con ruta relativa a su directorio padre con claude plugin validate ./weekly-metrics-report, que requiere tener Claude Code instalado. En mi equipo imprimió ✔ Validation passed, y cuando falla indica el campo a corregir.

Después, comprime la carpeta del plugin. Vale cualquiera de estos layouts: la carpeta como única entrada de nivel superior o su contenido directamente, siempre que el archivo contenga un .claude-plugin/plugin.json (el mío ocupó 3.067 bytes). Luego ve a Customize, Plugins, Add, Upload plugin y selecciona el zip.

Un plugin recién añadido se carga en tu siguiente tarea de Cowork, no en la que tienes abierta, así que empieza una nueva antes de buscarlo. Si aun así no aparece en la nueva tarea, cierra y vuelve a abrir la app de escritorio antes de ponerte a depurar los archivos.

Probé el plugin desde Claude Code con claude --plugin-dir ./weekly-metrics-report, apuntando a shop.db, y escribí /weekly-metrics-report:weekly-report. Claude dedujo que el 28 de septiembre de 2026 es lunes, informó de la semana del 21 de septiembre y escribió weekly_report_2026-09-21.md. Este es su resumen, tal cual:

Net revenue rose to $46,774.42, up +33.3% from $35,087.07 the week before. Completed orders went from 61 to 78, and average order value rose slightly to $599.67 (+4.3%). 
The biggest mover was Home Office: its net revenue went up +61.7% ($7,864.22 → $12,715.72), the largest gain in both dollars and percent. 
Fitness was the only category that fell (-15.2%). 
The refund rate rose from 10.3% to 12.4%, and Home Office's refund rate reached 27.6% (8 refunded orders), which is worth a closer look.

Y esta es la tabla de categorías del mismo archivo:

Categoría

Esta semana (2026-09-21)

Semana anterior (2026-09-14)

Cambio

Audio

$12,937.24

$8,780.41

+47.3%

Fitness

$4,149.27

$4,893.28

-15.2%

Home Office

$12,715.72

$7,864.22

+61.7%

Kitchen

$9,618.61

$7,344.70

+31.0%

Outdoor

$7,353.57

$6,204.45

+18.5%

Total

$46,774.42

$35,087.07

+33.3%

Compara la última fila de la tabla pivote del paso 2 con la columna «Esta semana» aquí: los mismos 5 números, de 2 plugins distintos, porque ambos siguieron la misma definición de ingresos netos.

Claude también hizo 2 cosas que no pedí. Señaló que 4 de las 5 categorías tenían menos de 20 pedidos completados en al menos 1 semana, aplicando mi regla de comparación ruidosa por categoría. Y señaló que mi regla de «informar cambios como porcentajes» es ambigua para la tasa de reembolso, que ya es un porcentaje, así que informó ese cambio en puntos porcentuales.

Ambas son ediciones que haría después en la skill, que es el bucle de la figura 3: cambia una línea, sube la versión, vuelve a subir.

Cuando el informe funcione, escribe /schedule en cualquier tarea de Cowork para que se ejecute cada lunes por la mañana sin ti, ya que las tareas programadas se ejecutan en la nube de Anthropic. Desde el 1 de octubre de 2026, las tareas programadas que crea Claude vienen por defecto con «Automatically approve» cuando tu organización lo permite, otra razón para mantener ese conector de solo lectura. Nuestro tutorial de Cowork Dispatch muestra la otra opción: lanzar una tarea desde el móvil.

Compartir un plugin de Cowork con tu equipo

La carpeta del plugin es la unidad de distribución, así que compartir es cuestión de dónde la pones. Sube la carpeta a un repositorio de GitHub con un marketplace.json que la liste, y cualquiera a quien pases la URL podrá añadir el repositorio desde Add y luego Add marketplace.

En planes Team y Enterprise, un owner puede sincronizar en su lugar un repositorio privado o subir zips a un marketplace de la organización y fijar cada plugin como disponible, instalado por defecto u obligatorio, para todos o para grupos concretos. Los miembros pueden compartir un plugin que hayan creado desde su menú de tres puntos o enviarlo con Publish to org, y la guía de plugins para organizaciones del centro de ayuda organization plugin guide cubre el resto.

¿Cómo verificas la salida de un plugin?

Verificas la salida de un plugin leyendo la consulta antes de fiarte del gráfico, limitando lo que el plugin puede tocar y sabiendo dónde mirar cuando una skill no se activa. Nada de esto requiere un equipo de seguridad. Requiere 5 minutos de hábito.

Lee el código antes que el gráfico

Una consulta que parece razonable puede responder a otra pregunta ligeramente distinta a la que hiciste. Aquí va una que escribí a mano para la misma pregunta del paso 2, y se ejecuta sin errores:

SELECT p.category,
       ROUND(SUM(oi.quantity * p.list_price), 2) AS revenue
FROM orders AS o
JOIN order_items AS oi ON oi.order_id = o.order_id
JOIN products AS p ON p.product_id = oi.product_id
WHERE o.order_date >= '2026-08-03' AND o.order_date < '2026-09-28'
GROUP BY p.category
ORDER BY p.category;

Valora cada línea al list_price de catálogo en vez del precio cobrado, ignora los descuentos y cuenta pedidos reembolsados y cancelados porque nunca filtra por status. Al ejecutar ambas consultas sobre shop.db salen los totales de abajo, con la última columna mostrando cuánto sobreestima el atajo los ingresos netos.

Categoría

Consulta del plugin (neta, completados)

Consulta atajo (precio catálogo, todos los pedidos)

Sobreestimación

Audio

97,149.69

128,770.97

+32.5%

Fitness

54,449.81

71,237.81

+30.8%

Home Office

74,787.03

99,157.55

+32.6%

Kitchen

67,458.46

83,908.32

+24.4%

Outdoor

50,488.63

64,366.84

+27.5%

Total

344,333.62

447,441.49

+29.9%

Cada categoría se sobreestima entre un 24% y un 33%, y un gráfico de barras de cualquiera de los dos resultados se ve igual de razonable. La consulta del plugin lo resolvió bien porque la skill le decía que filtrase pronto y leyese el esquema.

Si leer una consulta de 50 líneas sigue siendo costoso, nuestro itinerario Associate Data Analyst in SQL es la vía más rápida a la soltura. La guía de optimización de consultas SQL explica las prácticas que sigue la skill de write-query, como filtrar antes de unir y evitar SELECT *.

Mantén las conexiones en solo lectura

Un conector de almacén con escritura pone tus tablas en riesgo por dos frentes: que Claude malinterprete una petición («limpia los pedidos de prueba») como una instrucción de borrar, y la inyección de prompt, donde un texto dentro de un documento o web que lee Claude incluye instrucciones propias. En planes Team y Enterprise, el ajuste que permite omitir la aprobación por tarea para herramientas de conectores con escritura está desactivado por defecto.

Para un carril duro, los hooks se ejecutan antes de cada llamada de herramienta en Cowork y Claude Code, así que un hook que lea el SQL de un conector y rechace cualquier cosa que no sea SELECT es el patrón que conviene seguir. Nuestra guía de hooks en Claude Code muestra cómo escribir uno. No lo construí para este artículo, así que pruébalo con tu conector antes de confiar en él.

Cuando una skill falla o no se activa, revisa antes la descripción

Claude decide a partir del frontmatter, así que abre la skill y pregúntate si su descripción nombra la situación en la que estabas y las palabras que usaste. Si no, añádelas.

Luego dispara la skill manualmente con / para confirmar que el cuerpo funciona, comprueba que la palanca del plugin está activada y que su conector muestra «Connected», y recuerda que un plugin se carga en la siguiente tarea, no en la actual. El culpable más común es una descripción que resume el archivo en vez de describir la petición.

Conoce el estado del producto

Cowork está en disponibilidad general desde el 9 de abril de 2026. Los plugins se lanzaron como vista previa de investigación el 30 de enero de 2026 y ahora figuran como disponibles en todos los planes de pago. El 11 de agosto de 2026, Anthropic amplió la cobertura del Compliance API a sesiones de Cowork en escritorio, web y móvil.

Quedan dos carencias en el centro de ayuda actual: las transcripciones de sesiones locales de escritorio aún no tienen endpoint de borrado, y la monitorización con OpenTelemetry «no sustituye al registro de auditoría para fines de cumplimiento».

Si tu organización gestiona datos sanitarios de EE. UU. en un plan Enterprise con HIPAA, Cowork solo queda cubierto por tu Business Associate Agreement después de que un admin aplique la configuración HIPAA, y una vez activada, Cowork no puede ejecutarse en la nube. Si tus datos están regulados, consigue el visto bueno de compliance antes de que un plugin toque tablas de producción.

Conclusiones

Ahora tienes 3 plugins: el plugin Data que instalaste, la copia que personalizaste con los nombres de tus tablas y el informe semanal que creaste con 5 archivos. Yo me quedaría con el tercero porque guarda las 40 líneas de contexto que antes se pegaban cada lunes, y las guarda una sola vez.

La regla para decidir qué merece un plugin es sencilla: vale la pena crear un plugin cuando el flujo de trabajo se repite y el contexto se mantiene estable, que describe un informe semanal, una checklist de revisión de contratos o la preparación de una llamada de ventas. Un análisis puntual no lo necesita; pega el contexto y sigue.

Y si estás valorando qué flujos repetidos en tu empresa deberían recibir este trato primero, nuestro curso Generative AI for Business gira precisamente en torno a esa pregunta. Para profundizar en el modelo detrás de todo esto, el curso Introduction to Claude Models cubre el prompting y el trabajo multi-turn con la API de Claude.

Preguntas frecuentes sobre plugins de Claude Cowork

¿Qué son los plugins de Claude Cowork?

Los plugins de Claude Cowork son paquetes instalables que agrupan skills, comandos de barra, conectores y, en Cowork y Claude Code, subagentes y hooks, para que Claude trabaje como un especialista en un rol. Anthropic los añadió a Cowork el 30 de enero de 2026 con 11 plugins de código abierto, y están disponibles en todos los planes de pago de Claude.

¿Cuál es la diferencia entre un plugin de Claude Cowork y una skill?

Una skill es un archivo SKILL.md que enseña a Claude una única tarea y se activa cuando Claude la considera relevante. Un plugin es el conjunto empaquetado de skills, comandos y conectores para una función completa, y es la unidad que instalas, compartes y versionas.

¿Cómo instalo un plugin de Claude Cowork?

Abre Customize en la barra lateral izquierda de la app de escritorio de Claude, entra en la pestaña Plugins, ve a Discover, selecciona el plugin y haz clic en Add. El plugin se guarda en tu cuenta, así que también aparece en chat y se sincroniza con Claude Code cuando inicias sesión con la misma cuenta.

¿Los plugins de Cowork funcionan en Claude Code y en el chat?

Sí para skills, comandos y conectores, que cargan en chat, Cowork y Claude Code. Los subagentes y hooks se ejecutan solo en Cowork y Claude Code, y los servidores MCP locales funcionan solo en Claude Code y en sesiones de Cowork que se ejecutan en tu ordenador.

¿Puedo crear un plugin de Claude Cowork sin programar?

Sí. Un plugin es una carpeta con Markdown y JSON, y la opción Create with Claude en Customize > Plugins > Add te guía en una conversación y guarda el resultado en tu cuenta. Escribir los archivos a mano requiere un editor de texto y una herramienta para comprimir; todo el plugin weekly-report de este artículo son 5 archivos cortos.


Tim Lu's photo
Author
Tim Lu
LinkedIn

Soy un científico de datos con experiencia en análisis espacial, aprendizaje automático y canalización de datos. He trabajado con GCP, Hadoop, Hive, Snowflake, Airflow y otros procesos de ciencia/ingeniería de datos.

Temas
Inteligencia Artificial
Agentes de IA

¡Aprende IA con DataCamp!

Curso

Introducción a los modelos Claude

3 h
14.7K
Aprende a trabajar con Claude utilizando la API de Anthropic para resolver tareas del mundo real y crear aplicaciones basadas en IA.
Ver detallesRight Arrow
Empezar Curso
Ver másRight Arrow
Relacionado

blog

10 de los mejores plugins de ChatGPT para sacar el máximo partido a la IA en 2023

Libera todo el potencial de ChatGPT con nuestra guía de expertos sobre los 10 mejores plugins para 2023. Mejora la productividad, agiliza los flujos de trabajo y descubre nueva funcionalidad para elevar tu experiencia ChatGPT.
Matt Crabtree's photo

Matt Crabtree

12 min

blog

Los 10 mejores plugins de ChatGPT para la Ciencia de datos

Descubre los 10 mejores plugins de ChatGPT que pueden convertirte en un científico de datos altamente cualificado.
Abid Ali Awan's photo

Abid Ali Awan

10 min

cursor ai code editor

Tutorial

Cursor AI: Una guía con 10 ejemplos prácticos

Aprende a instalar Cursor AI en Windows, macOS y Linux, y descubre cómo utilizarlo a través de 10 casos de uso diferentes.

Tutorial

Cómo utilizar Custom Instructions de ChatGPT

Explora la función Custom Instructions de ChatGPT. Aprende a afinar las respuestas, explora casos de uso para profesores, empresarios y creadores de contenidos.
Moez Ali's photo

Moez Ali

7 min

Tutorial

Guía para principiantes sobre la ingeniería de avisos ChatGPT

Descubra cómo conseguir que ChatGPT le proporcione los resultados que desea dándole las entradas que necesita.
Matt Crabtree's photo

Matt Crabtree

6 min

Tutorial

Cómo hacer modelos de ChatGPT personalizados: 5 sencillos pasos para conseguir GPT personalizados

Echa un vistazo a estos cinco sencillos pasos para liberar todo el potencial de ChatGPT con tus propios GPT personalizados.
Moez Ali's photo

Moez Ali

9 min

Ver MásVer Más