aict es una herramienta de línea de comandos (CLI) escrita en Go que reimplementa 33 utilidades clásicas de Unix —entre ellas ls, cat, grep, find, diff, wc, sort, awk, sed, ps, df o sha256sum— con el objetivo de que su salida sea consumida directamente por agentes de inteligencia artificial en lugar de por personas. Mientras las coreutils tradicionales devuelven texto plano con columnas alineadas que los modelos deben interpretar (anchos de columna, formatos inconsistentes, detección de lenguajes mediante file(1)), aict genera por defecto XML etiquetado —y opcionalmente JSON o texto plano mediante --json y --plain— en el que cada campo está nombrado: rutas siempre absolutas, marcas temporales en epoch Unix con su equivalente en segundos transcurridos, tamaños en bytes y en formato legible, tipo de archivo, lenguaje detectado y tipo MIME. Todos los campos booleanos se serializan como "true"/"false" y los errores se devuelven como elementos en lugar de escribirse en stderr.
La herramienta incluye un servidor MCP integrado (aict mcp) que expone todas las funciones sobre stdio, lo que permite a asistentes como Claude Code invocarlas como herramientas nativas con argumentos tipados, sin envoltura de shell. Se distribuye vía Homebrew (brew tap synseqack/aict && brew install aict) o go install, y es estrictamente de solo lectura: sin red, sin telemetría y sin escritura fuera de las rutas que el usuario indique.
El proyecto asume un coste de tokens por tarea entre 1,1 y 7,8 veces superior al de las herramientas GNU, justificado por una única llamada donde antes se encadenaban varias (por ejemplo, listar un directorio con tamaño, tipo y lenguaje cuesta 246 tokens en GNU frente a 820 en aict, pero requiere una sola invocación en lugar de dos). En una evaluación en vivo con opencode, el agente equipado con aict generó aproximadamente un 46 % menos tokens de salida (mediana 265 frente a 487) y acertó en los tres intentos, mientras que el agente con GNU entregó un informe defectuoso en la ejecución en la que confió en la detección de lenguaje de file(1), que identificó erróneamente un archivo Go como "C source". El arranque ronda los 3,6 ms y la latencia por operación oscila entre apenas unas décimas más que GNU (diff, wc) y casi dos órdenes de magnitud más en grep sobre 100 000 líneas por el uso de regexp de Go frente al SIMD de GNU.
