La iteración del bucle no se completará hasta que este paso tenga éxito. Y, por supuesto, el objetivo de Ralph es tener un agente de codificación de IA que funcione de manera autónoma. Y para hacer eso, no puedes hacer que siga consultando con un desarrollador o una persona, ya sabes, para preguntar, oye, ¿puedo editar este archivo? ¿Puedo usar este comando? Así que a menudo la gente lo usa con la bandera de permisos de omisión, lo cual puede ser bastante peligroso. Así que la gente ha estado a punto de borrar casi todo su sistema de archivos con esta opción, porque Cloud Code ve, oye, este Mac se está quedando sin espacio de almacenamiento, pero necesito más espacio para esta tarea. Así que déjame buscar algunas cosas que pueda eliminar para poder continuar mi trabajo, lo cual es bastante malo, por supuesto. Así que quiero resaltar esta línea en el script, que es ejecutar Docker sandbox run Cloud, que es básicamente una versión sandbox de Cloud Code, en la que todavía se ejecuta sin las verificaciones de permisos, pero no puede realmente ir y destruir todo tu portátil u otro dispositivo que tengas, lo cual es la mejor manera de trabajar, en mi opinión, mucho más seguro.
Así que vamos a hablar sobre esta especificación de la que hemos estado hablando. No tienes que escribirla toda a mano, y recomiendo usar un LLM para ayudarte a escribir esta especificación completa, pero requiere algo de iteración con el LLM, en realidad. Así que aquí hay un ejemplo de Cloud Code, y aquí le digo lo que quiero crear, y aún no es una descripción súper clara, pero no importa porque le decimos a Cloud Code, oye, quiero que tengas una discusión conmigo sobre esto, y que me entrevistes para obtener claridad sobre la implementación. Así que entonces Cloud continuará haciéndote preguntas una y otra vez, hasta que crea que tiene claridad, y luego le dices que haga los archivos de especificación. Y por supuesto obtienes este resultado, tienes que revisar esto línea por línea y revisar todo para asegurarte de que realmente se alinea con tu visión, y si no coincide, entonces tienes que decírselo a Cloud, o simplemente editarlo tú mismo, hasta que obtengas algo con lo que estés 100% de acuerdo. Y el otro archivo es el plan de implementación, que es básicamente un conjunto de tareas seccionadas que coincidirán con la especificación, y también tienes que revisar este línea por línea para asegurarte de que coincida con tu visión para que Cloud no salga y haga un montón de cosas que no quieres que haga. Así que realmente tienes que ser minucioso aquí en este paso de preparación.
Y para este ejemplo, lo usé para crear un boilerplate para un hackathon interno que vamos a realizar más adelante este año. Y encontré que la calidad era bastante alta, muy alta en realidad, especialmente considerando que fue mayormente sin intervención, excepto por el intercambio inicial de tiempo en la inversión en la especificación y la creación del plan básicamente, especialmente considerando que estaba en el plan de $20 al mes, y ni siquiera estaba usando Opus, estaba usando Sonnet 4.5, que dio muy buenos resultados. Así que sé que dijimos que sería un enfoque de codificación autónoma, pero eso no significa que realmente no tengamos que trabajar. Todavía tenemos que, ya sabes, especialmente cuando estamos comenzando con Gralf, es mejor práctica simplemente echar un vistazo a cómo lo está haciendo al principio y ver si se está desviando o no, y luego puedes actualizar tus prompts o tu especificación para ajustarlo hasta que haga lo que quieres que haga. Y luego puedes dejarlo correr. Por supuesto, hay desventajas al usar Gralf. Por supuesto, requiere mucha más planificación al principio. Y tienes que tener cuidado de no hacer las tareas demasiado grandes, o de lo contrario seguirá adelante y se compactará al final porque la ventana de contexto se volverá demasiado grande y eso no es bueno. No siempre es el enfoque más rápido. Para algunas tareas, todavía es más rápido hacerlo a mano o usar alguna función de autocompletar para hacerlo. Y otro punto es que realmente puedes usar fácilmente todos los tokens en tu suscripción. Por supuesto, también hay un montón de ventajas. Ahora puedes ejecutarlo de manera autónoma mientras haces otras tareas o te relajas, lo que sea. Es genial para explorar pruebas de concepto u otras tareas que son muy claras en lo que necesita hacer. Es una especificación realmente buena que es capaz de hacer su mejor trabajo básicamente. Y aún así usarás fácilmente todos los tokens en tu suscripción, lo cual es genial cuando a menudo ves que en realidad no estás usando toda la suscripción por la que estás pagando.
Comments