Revisa en Mac el código de Claude Code, Codex o Cursor. Abre el diff, sigue las llamadas y pregunta a AI Reader por un cambio. Haz clic en las referencias para leer el código que lo rodea.
v0.1.303 · Apple silicon & Intel · macOS 14+Versión preliminar · Caduca el (UTC)
tea-notes-demoYENPO
ts recipe.ts×
src / recipe.ts /cupsFor
1234567
export function cupsFor(waterMl: number) { return Math.floor(waterMl / 200);}// Fictional teaching input: 550 ml.const cups = cupsFor(550);// cups is 2.
TypeScriptUTF-8 · Vista previa del código
✳ AI Reader +
¿Cuántas tazas se preparan con esta cantidad?
RESPUESTA
Solo cuentan las tazas completas.
En esta receta ficticia, cada taza usa 200 ml. Al dividir 550 ml se obtiene 2.75, y Math.floor devuelve 2.
recipe.ts:1–3
¿Qué ocurre con menos de 200 ml?↗
ts label.ts×
src / label.ts /teaLabel
1234567
import { cupsFor } from './recipe';export function teaLabel(waterMl: number) { return cupsFor(waterMl) + ' cups';}// teaLabel(550) returns '2 cups'.
TypeScriptUTF-8 · Vista previa del código
✳ AI Reader +
¿De dónde viene el número de esta etiqueta?
RESPUESTA
La etiqueta llama a la función auxiliar de la receta.
teaLabel pasa waterMl a cupsFor y coloca el entero devuelto en una etiqueta. Lee recipe.ts para comprobar cómo se calcula ese número.
label.ts:1–5
¿Qué entrada produciría cero tazas?↗
ts recipe.ts×
src / recipe.ts /cupsFor
123456
export function cupsFor(waterMl: number) { return Math.round(waterMl / 200);}// Proposed change in this teaching example.// cupsFor(550) now returns 3.
TypeScriptUTF-8 · Vista previa del código
✳ AI Reader +
¿El redondeo conservaría el resultado?
RESPUESTA
550 ml se convertirían en tres tazas.
Math.round(2.75) devuelve 3, pero en esta receta ficticia tres tazas necesitan 600 ml. La entrada 550 distingue el cambio propuesto de la versión original.
recipe.ts:1–3
Compara ambas funciones con la misma entrada.↗
Archivos, preguntas y referencias al códigoCódigo y respuestas ficticios, escritos para esta ilustración
Trabaja con repositorios locales
Respuestas con enlaces a líneas del código
Cambios locales, commits y ramas
01 /QUÉ PUEDES HACER
Deja que la IA escriba y mira qué ha cambiado.
Los diffs, el editor, la búsqueda y AI Reader comparten una ventana. Local Changes muestra todo lo que cambió desde tu último commit y, cuando una respuesta menciona una línea, puedes abrirla ahí mismo.
Abre el repositorio donde trabaja tu IA
Abre el DMG, arrastra Yenpo a Applications e inícialo. Elige la raíz del repositorio de tu agente. Local Changes muestra lo que cambió desde el último commit; puedes leer y buscar antes de configurar la IA.
Elige una función modificada y salta a su definición, a quienes la llaman y a las pruebas que la usan. Pregunta a AI Reader qué hace el cambio, abre las líneas citadas y comprueba la respuesta.
Examina un commit o compara dos ramas, como la del agente y main. Lee el diff en línea y pide a AI Reader que busque regresiones. La comparación permanece fijada a los commits elegidos y es de solo lectura.
No. Local Changes, los diffs de commits y ramas, la búsqueda, Markdown y la navegación mediante servidores de lenguaje funcionan sin ella. Conecta tu proveedor cuando quieras preguntar a AI Reader. El proveedor controla el acceso a los modelos y las tarifas de uso.
Swift, Rust, C, C++, Objective-C, Python, JavaScript, TypeScript y Go, cada uno mediante su servidor de lenguaje. Yenpo puede instalar rust-analyzer; los demás servidores proceden de Xcode o de tu PATH. Las funciones disponibles dependen del servidor y de la configuración del proyecto.
¿Mi código permanece en mi Mac?
La exploración y la búsqueda se realizan en tu Mac. Al preguntar a AI Reader, tu pregunta y el código relevante se envían al endpoint del modelo que configuraste; revisa sus condiciones antes de usar código restringido. AI Reader solo lee salvo que autorices ediciones para una ejecución.
¿Qué debo saber sobre la versión preliminar?
Funciona en Mac con Apple silicon e Intel y macOS 14 o posterior. Cada versión caduca en la fecha indicada junto al botón de descarga. Reinstalarla no cambia esa fecha; actualiza antes de que llegue.
La función creada con IA funciona, pero ¿puedes explicarla? Aprende con un filtro ejecutable: predice tres resultados, cambia una regla a mano y comprueba las diferencias.
Una copia superficial crea objetos externos nuevos, pero comparte los label anidados. Sigue las llamadas, compara referencias y comprueba qué modificación omite la explicación.
Elige la comparación correcta, interpreta un bloque, encuentra archivos sin seguimiento ausentes del parche y ejecuta una prueba del comportamiento propuesto.