pdf (Anthropic)
Lee, edita, combina, divide, aplica OCR y marcas de agua a PDF, y rellena o crea formularios.
Reseña de la skill pdf: sin mejora en nuestras tareas, el doble de coste
Codex CLI · gpt-6-astra
20.6 / 30
Mejora frente a sin skill: +0.00 · Según el caso · 18 ejecuciones
Según el caso: el total 20.6/30 está por debajo de 22 y la mejora +0.00 está por debajo de +1.0. Para ser recomendada hace falta un total de 22/30, una calidad de salida de 3.5 y una mejora de +1.0.
SOTA
AprobadaProbada con Codex.
Cubre Codex, Claude Code
Codex CLI 0.166 (nivel SOTA): 18 ejecuciones puntuadas. Una pasada aquí también cubre Claude Code según nuestra regla de niveles; no dice nada sobre el segundo nivel.
Puntuaciones
Cada dimensión va de 0 a 5 y las seis suman el total sobre 30. 5 es mejor en todas las dimensiones. Coste 5 significa barato y rápido. Instalación 5 significa fácil.
- Fiabilidad de activación
- 5.0
- Mejora frente a sin skill
- 2.0
- Calidad de salida
- 4.6
- Coste en tokens y tiempo
- 2.0
- Instalación y portabilidad
- 3.0
- Seguridad
- 4.0
Revisión de seguridad
SeguraEscaneo estático: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Revisión manual: Segura de ejecutar en un sandbox sin red (sin hallazgos). Un escaneo limpio no demuestra que una skill sea segura.
Instalar
npx skills@latest add anthropics/skills --skill pdf
Commit fijado: ca45fc496a3436251f191354091d557da31c15b5
Probada: 2026-11-02
Qué probamos
- Extracción de tablas. Lleva una tabla de 12 filas que ocupa dos páginas (cabecera repetida en la segunda página) a sales.csv e informa de los ingresos totales.
- Unir, girar, dividir. Combina dos PDF, gira solo la última página 90 grados, guarda la primera página como cover.pdf y deja los originales intactos.
- Rellenar un formulario. Define tres campos y marca una casilla en un PDF rellenable, mantén los campos editables.
Ventajas
- La skill se activó sin nombrarla: se leyó el archivo de la skill en 6/6 ejecuciones con skill (la activación automática en cualquier tarea con PDF funciona).
- Calidad absoluta alta con la skill: 4.58 sobre 5.
Inconvenientes
- Sin mejora medible frente a sin skill (+0.00, dentro del ruido).
- Un prompt de una frase puntuó 5.0, frente a 4.58 con la skill (-0.42).
- Usa 1.98x los tokens de sin skill.
- Salvedad de la prueba: la rama del prompt de una frase se ejecutó después en una máquina Windows con una copia local de pypdf, así que su comparación con el control y el grupo con skill está confundida por el entorno.
- n=2 por tarea y rama; las diferencias de menos de aproximadamente 1 punto son ruido.
Reseña
Codex CLI 0.166 (gpt-6-astra, razonamiento bajo), un proyecto temporal nuevo en cada ejecución, la skill instalada o ausente, dos ejecuciones por grupo, sin red. Las entradas eran PDF que generamos nosotros, para poder comprobar los resultados con código. Los prompts nunca mencionaron la skill.
Comparación de tres ramas
| Rama | Puntuación media (0-5) | Tokens por ejecución |
|---|---|---|
| Sin la skill | 4.58 | 116k |
| Prompt de una frase | 5.0 | 69k |
| Con la skill | 4.58 | 228k |
Medido con Codex CLI en 18 ejecuciones, puntuado con comprobaciones basadas en reglas y sin juez LLM. Total 20.6 / 30, veredicto Según el caso.
Aviso: La rama de una frase se ejecutó más tarde en una máquina Windows con pypdf incluido, así que su comparación con el control y la rama con skill está contaminada por el entorno.
Veredicto: Según el caso (20.3 / 30). Fuente: anthropics/skills, skills/pdf, fijada en el commit ca45fc4. Instalación: npx skills@latest add anthropics/skills --skill pdf. Licencia: propietaria (el uso se rige por tu acuerdo con Anthropic; no es código abierto).
Qué es
Una guía para trabajar con PDF: leer y extraer texto y tablas, combinar, dividir, rotar, añadir marcas de agua, crear PDF nuevos, rellenar formularios, cifrar, extraer imágenes, aplicar OCR a páginas escaneadas. SKILL.md cubre lo básico con fragmentos de Python (pypdf, pdfplumber, reportlab) y herramientas de línea de comandos (pdftotext, qpdf). Otros dos archivos (forms.md, reference.md) y ocho scripts auxiliares se ocupan de formularios y cajas delimitadoras.
Cómo lo probamos
Codex CLI 0.166 (gpt-6-astra, razonamiento bajo), un proyecto temporal nuevo por ejecución, skill instalada o ausente, dos ejecuciones por grupo, red desactivada. Las entradas eran PDF que generamos nosotros, así que pudimos comprobar los resultados con código:
- Extracción de tablas. Lleva una tabla de 12 filas que ocupa dos páginas (encabezado repetido en la segunda) a
sales.csve informa de los ingresos totales. - Combinar, rotar, dividir. Combina dos PDF, rota solo la última página 90 grados, guarda la primera página como
cover.pdfy deja los originales intactos. - Rellenar un formulario. Define tres campos y marca una casilla en un PDF rellenable, mantén los campos editables.
Los prompts nunca mencionaron la skill.
Qué ocurrió
Se activa de forma fiable. El agente leyó SKILL.md en las seis ejecuciones de tratamiento, sin indicación.
No supuso ninguna diferencia en el resultado. La tarea 1 (2 de 2 comprobaciones) y la tarea 2 (6 de 6) se superaron en las cuatro ejecuciones de cada tarea, con y sin la skill. La tarea 3 falló una vez en cada grupo, así que ambos grupos superaron 5 de 6 ejecuciones en total.
Ambos fallos fueron el mismo, y ambos agentes dijeron haber tenido éxito. La casilla se guardó con el valor de texto Yes mientras su estado visual seguía en /Off. Un visor de PDF la muestra sin marcar, y los mensajes finales de esas dos ejecuciones decían que la casilla estaba marcada. Un fallo fue de una ejecución de control y el otro de una de tratamiento. El agente de tratamiento había leído FORMS.md, que le indica inspeccionar los tipos de campo y usar el checked_value de cada casilla, pero nunca llegó tan lejos (párrafo siguiente), así que la skill no evitó el error.
Los scripts no funcionaron como se documenta. FORMS.md dice que se ejecute python scripts/check_fillable_fields .... macOS no tiene python, solo python3, y el entorno de serie no tiene pypdf. Las dos ejecuciones de tratamiento entonces divergieron. Una buscó en el disco, encontró pypdf en la caché de uv del usuario, ejecutó los propios scripts de la skill mediante PYTHONPATH y rellenó el formulario correctamente. La otra intentó pip install (falló sin conexión), luego escribió un programa Swift/PDFKit y se equivocó con la casilla. Las ejecuciones de control improvisaron de formas parecidas (Swift en una, pypdf en la otra). Así que las herramientas de la skill solo ayudaron en la única ejecución que logró tomar prestada una librería de fuera del directorio del proyecto.
Duplica el coste. Las ejecuciones de tratamiento promediaron 228,000 tokens frente a 116,000 sin la skill (1.98x) y tardaron 72 segundos frente a 46. El agente lee la skill, luego forms.md, y después prueba primero los scripts. En la tarea de formulario, la ejecución de tratamiento que tuvo éxito necesitó 35 comandos y 434,000 tokens; las de control necesitaron 16 comandos y unos 185,000.
Notas de portabilidad
SKILL.mdse refiere aFORMS.mdyREFERENCE.md, pero los archivos sonforms.mdyreference.md. Esto funcionó en nuestras ejecuciones porque los sistemas de archivos de macOS ignoran las mayúsculas; en Linux esos enlaces se romperían.- Da por hecho que
pythony varias librerías de Python están instalados. Una máquina limpia normalmente no tiene ni uno ni otras. - La guía menciona
pip install pytesseract pdf2imagepara OCR, lo que requiere acceso a red.
Revisión de seguridad
Ejecutamos el escáner y luego leímos SKILL.md, forms.md, reference.md y los ocho scripts. Los scripts solo importan módulos de la biblioteca estándar más pypdf, pdfplumber, pdf2image y PIL; leen un archivo de entrada y escriben archivos locales. Sin llamadas a subprocesos, sockets, lecturas de entorno, eval ni descargas. Sin instrucciones para ocultar nada ni tocar credenciales. El hallazgo que merece señalarse es la licencia: es propietaria, así que el sitio no debería etiquetarla como código abierto. Consulta security.md.
Puntuaciones
| Dimensión | Puntuación | Motivo |
|---|---|---|
| Calidad del resultado | 4.33 | 5 de 6 ejecuciones totalmente correctas en ambos grupos |
| Mejora frente a sin skill | 2.0 | Diferencia de 0.0 |
| Activación | 5.0 | Leída en 6 de 6 ejecuciones sin indicación |
| Instrucciones y portabilidad | 3 |
|
| Eficiencia | 2 | 1.98x tokens, unas 1.6x tiempo |
| Seguridad e higiene | 4 | Scripts limpios; licencia propietaria |
Quién debería usarla
Los agentes modernos ya combinan, rotan, dividen y extraen tablas de PDF limpios sin ayuda, como mostró nuestro grupo de control, así que para estos trabajos la skill sobre todo añade tokens. Podría ganarse su sitio en casos más difíciles que no probamos: documentos escaneados y OCR, archivos protegidos con contraseña, formularios sin campos rellenables (el flujo de cajas delimitadoras), o un entorno donde las librerías auxiliares estén instaladas para que los scripts funcionen. Si la instalas, asegúrate antes de que existan python y pypdf, o la guía no se ejecutará como está escrita.
Límites de esta prueba
Dos ejecuciones por grupo, tres tareas, un modelo con esfuerzo de razonamiento bajo, sandbox sin conexión y sin librerías PDF de Python en el entorno de serie. Las ejecuciones compartieron la carpeta temporal del sistema, y una ejecución de tratamiento reutilizó un entorno virtual que otra había creado allí, así que el aislamiento entre ejecuciones no fue perfecto. Una máquina totalmente equipada podría cambiar el resultado a favor de la skill. El tier de Codex cuenta para Codex y Claude Code según la regla del sitio.
Actualización (2 nov 2026): se añade el grupo de una frase
Tercer grupo: sin skill, con una frase ("Usa herramientas PDF adecuadas: extrae las tablas por página con sus filas de encabezado intactas, combina/rota/divide páginas sin perder contenido, rellena campos de formulario reales por nombre y mantén el archivo original sin cambios, luego verifica el resultado reabriéndolo."). 6 ejecuciones, comprobaciones basadas en reglas, en una máquina Windows con un conjunto vendorizado de pypdf/pdfplumber disponible sin conexión.
| Grupo | Puntuación media (0-5) | Tokens por ejecución |
|---|---|---|
| Sin skill | 4.58 | 116k |
| Una frase | 5.00 | 69k |
| Skill instalada | 4.58 | 228k |
Las seis ejecuciones de una frase superaron todas las comprobaciones, incluido el relleno de la casilla del formulario que falló una vez en el control y otra en el grupo de la skill. La skill costó 3.3x los tokens de la frase única. Advertencia: las ejecuciones de una frase se hicieron en una máquina distinta (Windows) de los dos primeros grupos (macOS) y tenían las librerías PDF disponibles, que las ejecuciones en Mac no tenían, así que esta comparación está confundida por el entorno. Sí sugiere que el sobrecoste de 2x en tokens de la skill no aporta nada en estas tres tareas.
Transcripción
Registro de ejecuciones: pdf (Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.) Columnas: tarea, grupo-ejecución, puntuación (0-5), tokens, segundos, comprobaciones superadas, archivos de la skill que abrió el agente. t1-table-extract control-1: puntuación 5.0, tokens 60651, s 25.2, comprobaciones 2/2, no abrió nada t1-table-extract control-2: puntuación 5.0, tokens 60785, s 24.8, comprobaciones 2/2, no abrió nada t1-table-extract oneliner-1: puntuación 5.0, tokens 90438, s 33.9, comprobaciones 2/2, no abrió nada t1-table-extract oneliner-2: puntuación 5.0, tokens 91726, s 41.4, comprobaciones 2/2, no abrió nada t1-table-extract treatment-1: puntuación 5.0, tokens 123259, s 43.4, comprobaciones 2/2, abrió pdf t1-table-extract treatment-2: puntuación 5.0, tokens 128381, s 38.7, comprobaciones 2/2, abrió pdf t2-merge-rotate control-1: puntuación 5.0, tokens 91967, s 56.9, comprobaciones 6/6, no abrió nada t2-merge-rotate control-2: puntuación 5.0, tokens 108232, s 45.9, comprobaciones 6/6, no abrió nada t2-merge-rotate oneliner-1: puntuación 5.0, tokens 49185, s 27.4, comprobaciones 6/6, no abrió nada
18 ejecuciones, 3 artefactos
Resultado de ejemplo
SOTA · With the skill: sales.csv (t1-table-extract, run 1, Codex)
Product,Region,Units,Revenue Aurora Lamp,EMEA,1240,48360 Basalt Desk,NA,310,93000 Cedar Shelf,NA,875,52500 Delta Chair,APAC,642,70620 Ember Kettle,EMEA,2210,66300 Fjord Rug,NA,198,39600 Grove Planter,APAC,1534,30680 Harbor Clock,EMEA,420,25200 Iris Vase,NA,905,27150 Juniper Stool,APAC,377,20735 Kestrel Mirror,EMEA,260,41600 Lumen Sconce,NA,733,43980