Ward

Ward vs ejecutar linters y scripts por separado

Actualizado

Ejecutar linters, comandos de test y escáneres por separado funciona, pero cada uno tiene su configuración y su momento. Ward reúne todas las comprobaciones en un ward.toml y las ejecuta en cuatro capas, para que tu agente de código reciba siempre el mismo feedback.

¿Qué hacen bien los linters por separado?

Cada herramienta dedicada profundiza en una tarea, tiene su comunidad y sus reglas, y la controlas por completo. Puedes usarla en el editor, en un script o en CI. Si solo necesitas una herramienta en un sitio, un linter simple es más sencillo que cualquier otra cosa.

¿Qué hace Ward de forma distinta?

Ward es la capa por encima de las herramientas. En ward.toml listas las comprobaciones (tests, cobertura, escáneres de seguridad, cualquier comando) y asignas cada una a un perfil: default tras cada edición del agente, pre-commit, pre-push y ci. Cada capa incluye las comprobaciones de las capas internas. Un fallo vuelve al agente con archivo, línea y regla, así que dejas de repetir las reglas en cada prompt. Ward también trae reglas propias de lint, formato y arquitectura para cada lenguaje que admite, así que necesitas menos linters aparte. Ward ejecuta las herramientas pero no las instala: si falta una, la marca como UNAVAILABLE.

¿Cuándo son mejores los linters por separado?

¿Puedo conservar mis linters y añadir Ward?

Sí. Ward ejecuta cualquier comando que añadas a ward.toml, así que tus linters actuales pasan a ser gates. Colócalos en la capa que les corresponda: los rápidos en default, los lentos en pre-push o ci.

[checks.mutation]
profiles = ["ci"]

¿Qué hago ahora?

¿Listo para probarlo? Instala Ward y ejecuta ward init en tu proyecto.