Sobre el proyecto
CLI Printing Press es un generador que produce herramientas de línea de comandos y servidores MCP para APIs o sitios web arbitrarios, con un fuerte énfasis en ser utilizable por agentes de IA. Está escrito en Go y se distribuye como un binario más un conjunto de habilidades de agente (comandos de barra) que impulsan el binario.
Qué hace
- Lee documentación oficial de APIs, estudia CLIs y servidores MCP populares de la comunidad, y también puede realizar ingeniería inversa de APIs no documentadas capturando tráfico del navegador.
- Acepta una especificación OpenAPI, una URL de sitio web o un archivo HAR como entrada.
- Produce dos binarios por API: una CLI basada en Cobra (`<api>-pp-cli`) y un servidor MCP (`<api>-pp-mcp`), que comparten el mismo cliente, almacén y código de autenticación.
- Genera documentos de investigación, pruebas de verificación y una puntuación de calidad junto con el código.
Puntos clave de diseño
- Capa de datos local primero: tablas SQLite específicas del dominio, búsqueda de texto completo FTS5, sincronización incremental con seguimiento de cursor y un comando `sql` para consultas directas. Comandos como `sync`, `search` y `sql` funcionan sin conexión.
- Comandos compuestos: una vez que los datos son locales, comandos como `stale`, `health`, `bottleneck` y `reconcile` pueden unir recursos y analizar el historial.
- Salida nativa para agentes: tablas legibles por humanos en una terminal, JSON automático cuando se canaliza, `--compact` para salida de tokens reducida, códigos de salida tipados (0/2/3/4/5/7), `--dry-run`, `--select`, `--csv`, `--stdin` y otras banderas en cada comando.
- Interfaz dual: la CLI se dirige a agentes basados en shell, mientras que el servidor MCP se dirige a integraciones de IDE como Claude Desktop y Cursor.
- Verificación: cuadro de mando, dogfooding, prueba de comportamiento y pruebas de humo de API en vivo opcionales se utilizan para detectar rutas alucinadas, banderas muertas y desajustes de autenticación.
Flujo de trabajo
- La instalación es mediante un script de shell que ejecuta `go install` para el generador e instala las habilidades a través de la CLI npm `skills`. Claude Code es el objetivo predeterminado y mejor probado; Codex es compatible con una bandera `--agent codex`.
- Dentro de una sesión de agente, `/printing-press <nombre-de-aplicación>` inicia una ejecución de generación. Los comandos adicionales incluyen `/printing-press-reprint`, `/printing-press-polish`, `/printing-press-publish` y `/printing-press-amend`.
- El pipeline pasa por fases: resolver/reutilizar, resumen de investigación, puerta de absorción del ecosistema, puerta de detección del navegador, generar, construir el GOAT, shipcheck y prueba de humo en vivo opcional. Un pipeline gestionado más largo de 9 fases está documentado para usuarios que quieran detener, reanudar o volver a ejecutar pasos individuales.
- La salida se organiza bajo `~/printing-press/` con directorios separados para ejecuciones activas, CLIs publicados y manuscritos archivados.
Conceptos notables
- "Non-Obvious Insight" (NOI): un replanteamiento de una frase de para qué es realmente útil una API, utilizado como base creativa para los comandos generados.
- "Absorber y trascender": catalogar características de herramientas existentes y servidores MCP, emparejarlas y luego agregar capacidades compuestas habilitadas por datos locales.
- Una "escalera de creatividad" desde envoltorios de endpoints simples hasta comandos de información de comportamiento.
Requisitos y advertencias
- Requiere Go 1.26.6 o más reciente, Node/npm para `npx` y un agente compatible con habilidades (Claude Code probado).
- El README hace afirmaciones de rendimiento y calidad (por ejemplo, ahorro de tokens y velocidad) que son afirmaciones propias del proyecto en lugar de puntos de referencia verificados de forma independiente.
- El repositorio ya no incluye un catálogo de fuentes; los CLIs publicados se mantienen en un repositorio de biblioteca separado.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.