Según los benchmarks de la propia AWS, Strands harness gasta un 28% menos en tokens que Claude Code, Codex y otros agent harness cuando todos usan los mismos modelos de Claude o GPT, con una precisión casi igual. El matiz está en el propio anuncio de AWS: Strands harness se diseñó como un agente de propósito general, no como un agente de programación, así que no reemplaza directamente a la herramienta con la que programas todos los días.
Nota: cifras y versiones al 24 de septiembre de 2026. Los benchmarks son de AWS y, al momento de publicar esta nota, el paper de investigación que los respalda todavía no se había publicado.
El equipo de Strands Agents en AWS lo lanzó el 21 de septiembre bajo licencia Apache 2.0, con paquetes para Python y TypeScript y una CLI encima. Dos días después llegó a la portada de Hacker News. Aquí va qué mide realmente ese 28%, de dónde sale el ahorro, cómo instalarlo y cómo comprobar tú mismo la factura de tokens.
¿Qué es Strands harness y qué es Strands Agents?
Strands harness es un agent harness ya ensamblado: un solo import te da un agente funcionando, con:
- herramientas de shell y de archivos (
read,write,edit) - acceso web
- gestión de contexto (
context management) yprompt caching - sesiones y memoria de largo plazo
- un subagente auxiliar integrado
- una lista de tareas
- soporte para Agent Skills y servidores MCP
Funciona con Amazon Bedrock (el proveedor por defecto), Anthropic, OpenAI y Google, además de Ollama para modelos locales y LiteLLM.
Se construye sobre Strands Agents, el SDK open source de AWS para crear agentes en Python y TypeScript. El SDK es la caja de herramientas: el agent loop, los proveedores de modelos, las herramientas, los hooks. El harness es la capa “con pilas incluidas”, con valores por defecto medidos en benchmarks. Lo que recibes es un Agent estándar de Strands, así que puedes sobrescribir cualquier valor por defecto y bajar hasta el SDK si lo necesitas.
Si el concepto de “harness” es nuevo para ti, explicamos la disciplina detrás en Harness engineering: el nuevo trabajo del engineer.
¿Strands harness gasta menos tokens que Claude Code?
Según los números de AWS, sí, pero conviene leer la letra pequeña antes de citarlos. Las dos cifras principales son estas:
- 28% menos de costo en seis benchmarks, comparando harnesses que usan los mismos modelos de Claude o GPT. Las pruebas se hicieron con benchmarking distribuido en EC2 usando Harbor.
- 77% menos de costo que Claude Code en
Terminal Bench 2.1con Claude Fable 5, y con mejor puntuación, en 89 ejecuciones por harness.
Hay tres cosas que el titular no cuenta:
- Strands no es el harness más barato ni en el propio gráfico de AWS. Según la nota al pie del benchmark, DeepSeek Harness sale un 14% más barato que Strands, aunque puntuó más bajo en todos los benchmarks. La misma nota aclara que incluir a DeepSeek Harness es lo que bajó el ahorro total de Strands al 28%. Analizamos DeepSeek Harness en DeepSeek Harness: qué pasa cuando hasta el agent loop se convierte en un plugin.
- La diferencia de puntuación salió en el hilo de HN, no en el anuncio. Albert Zhao, coautor del post, dijo que Strands sacó 69,7 frente a 61,8 de Claude Code en Terminal Bench 2.1 (Fable 5, esfuerzo alto).
- Otro participante respondió que Terminal Bench 2.1 está casi saturado y que los rankings públicos muestran puntuaciones de entre 80 y 90%. Es decir, estas ejecuciones usaron claramente otra configuración, y un truco para ahorrar tokens puede lucir muy bien en un benchmark donde todos sacan notas parecidas.
- Nada independiente respalda las cifras todavía. El equipo anunció un paper de sus investigadores que, al momento de publicar esta nota, no había aparecido.
- En el mismo hilo preguntaron por qué dejaron fuera a Pi en su versión básica mientras incluían a Oh My Pi. El equipo respondió que evaluaría una ejecución con Pi.
En resumen: toma el 28% como una afirmación del fabricante con un mecanismo creíble, no como un dato medido sobre tu propio trabajo.
¿De dónde sale el ahorro de tokens?
Según AWS, casi todo sale de la gestión de contexto. Estos son los valores por defecto a los que atribuye el resultado:
- los resultados de herramientas de más de unos 1.500 tokens se truncan
- la compactación (resumen) se activa cuando la ventana de contexto supera el 85%
- si hay un desbordamiento, la recuperación de contexto se ejecuta dentro del propio loop
La documentación añade que los resultados voluminosos se guardan aparte y se sustituyen por una vista previa corta y una referencia. El agente solo recupera el contenido completo si de verdad lo necesita.
La segunda palanca es el prompt caching. En Bedrock y en Anthropic directo, Strands configura los puntos de caché por su cuenta. En OpenAI, Google y bedrock-mantle, el caché ocurre automáticamente del lado del proveedor.
La conclusión práctica: aquí no hay magia. Es la misma disciplina que aplica cualquier harness serio, con valores por defecto que alguien midió. Por eso también un harness propio bien ajustado puede cerrar la brecha. Si quieres empezar a recortar tokens sin cambiar de herramienta, mira cómo reducir tokens en Claude Code con hooks.
¿Puede Strands harness reemplazar a Claude Code para programar?
No como herramienta del día a día, y AWS tampoco lo presenta así. Su anuncio dice que Strands harness está pensado como agente de propósito general y no como agente de programación. El público objetivo es quien está creando su propio agente, idealmente uno que corra en la nube, y quiere partir de algo más cercano a la sensación de “simplemente funciona” de Claude Code.
Tiene las primitivas que necesita un coding agent: shell, edición de archivos, subagentes y MCP. Su system prompt le indica explorar antes de cambiar nada, confirmar antes de cualquier acción irreversible y verificar antes de dar algo por terminado. Aun así, la comparación con Claude Code trata del costo en tokens por tarea en la capa del harness, no de la experiencia completa de una herramienta para programar.
¿Te ahorra dinero si ya pagas Claude Code?
No necesariamente, porque la forma de pago es distinta. Strands harness llama a los modelos a través de las APIs de cada proveedor: credenciales de Bedrock o la API key de un proveedor. El ahorro que midió AWS es ahorro en gasto de API. Si usas Claude Code con una suscripción, pagas con otra lógica, y ese “28% más barato” no se traslada directamente a tu factura. Para ver cómo se comparan el pago por asiento y el pago por tokens, revisa Gloo Code vs Claude Code.
¿Cómo instalar Strands harness y crear tu primer agente de IA?
Tienes tres caminos: la CLI, la librería de Python o la de TypeScript.
Con la CLI (interactiva, sin código):
npm install -g @strands-agents/cli
strands
El asistente de configuración te pregunta qué debe hacer tu agente y te propone un modelo, herramientas, skills, servidores MCP, memoria y un modo de aprobación de herramientas. Cuando termines, /export dentro del chat genera un proyecto en Python o TypeScript con tus elecciones.
Con Python (requiere Python 3.10 o superior):
pip install strands-harness
from strands_harness import create_harness
agent = create_harness(model="anthropic/claude-sonnet-5")
agent("Research the three most common strategies for versioning a REST API, compare their tradeoffs, and write a recommendation to api-versioning.md")
Con TypeScript:
npm install @strands-agents/harness
import { createHarness } from '@strands-agents/harness'
const agent = await createHarness({ model: 'anthropic/claude-sonnet-5' })
await agent.invoke('Research the three most common strategies for versioning a REST API, compare their tradeoffs, and write a recommendation to api-versioning.md')
Modelo y credenciales:
- Cadena del modelo. El modelo se elige con una cadena
proveedor/nombre. Los prefijos admitidos sonbedrock,bedrock-mantle,anthropic,openai,google,ollamaylitellm. Los nombres de modelo cambian seguido, así que revisa la página de selección de modelos en vez de copiar un ID de un anuncio. - Proveedor por defecto. Si no indicas modelo, Strands usa Amazon Bedrock.
- Credenciales de Bedrock. Define
AWS_BEARER_TOKEN_BEDROCKcon una API key de Bedrock, usaaws configure, o defineAWS_ACCESS_KEY_IDyAWS_SECRET_ACCESS_KEY. También necesitas habilitar el acceso al modelo en la consola de Bedrock.
Las sesiones están activadas por defecto y se guardan en ./.agent/sessions. Pasa session={"id": "mi-proyecto"} para retomar una conversación. Desde la CLI, usa strands --session-id mi-proyecto.
¿Funciona con Ollama y modelos locales?
Sí. Descarga un modelo y pásalo con el prefijo ollama/:
ollama pull llama3.1
from strands_harness import create_harness
agent = create_harness(model="ollama/llama3.1")
En ese caso, tu único costo en tokens es tu propio hardware.
¿Cómo medir cuántos tokens gasta tu agente?
Ejecuta la misma tarea con el mismo modelo y compara los contadores de uso. Como create_harness() devuelve un Agent estándar de Strands, aplican las métricas del SDK:
result = agent("tu tarea aquí")
print(result.metrics.accumulated_usage["totalTokens"])
Las lecturas y escrituras de caché aparecen como cacheReadInputTokens y cacheWriteInputTokens cuando el proveedor las reporta. En TypeScript, el equivalente es result.metrics.accumulatedUsage.totalTokens.
Elige una tarea que se parezca a tu trabajo real, no a un benchmark, ejecútala varias veces y compárala con lo que reporta tu harness actual para el mismo modelo. Ese es el único 28% que te importa. Si necesitas repasar por qué cada token se traduce en costo, lo explicamos en qué son los tokens en la IA y por qué te cobran por ellos.
¿Strands harness es gratis?
El harness sí: es Apache 2.0 y lo puedes desplegar en cualquier sitio que ejecute un contenedor Linux. AWS menciona Modal, Cloudflare Containers, Azure Container Apps, Google Cloud Run, Amazon ECS y Bedrock AgentCore. Lo que pagas son los modelos que llamas, salvo que los ejecutes localmente con Ollama.
Al 24 de septiembre de 2026, los paquetes del harness van por la versión 0.1.x (harness-python/v0.1.2, harness-typescript/v0.1.1, harness-cli/v0.1.2), mientras que el SDK de base ya está en 1.x. La organización es madura, pero el harness en sí tiene días de vida.
¿Quién debería probarlo?
Pruébalo si estás creando un agente para algo que no es tu editor: un bot interno, un agente de investigación, un pipeline que tiene que correr en la nube. Para eso, Strands harness te da valores por defecto medidos en lugar de una tarde entera de cableado. También vale la pena si quieres medir qué parte de tu factura de tokens es overhead del harness y no del modelo.
Si solo quieres programar, quédate con tu herramienta actual y espera el paper prometido.