INEMA.CLUBPROOSWork v6.2

OSWork v6.2 · 8 módulos · lecciones de unos 15 minutos

Tu IA necesita un sistema

Del chat a tu entorno de agentes, una lección corta a la vez. Organizas archivos, enseñas procedimientos a la IA y montas rutinas que puedes revisar. Al final de cada lección tienes el material completo del tema para quien quiera profundizar.

Una coordinadora y una profesora comparten una mesa de trabajo ordenada, con notebook, carpetas y herramientas, como en un taller.

Módulo 1 · Modelos: elige según la tarea

Comparar modelos con una tarea real y un criterio de calidad.

Módulo 2 · Chat, Work y Desktop

Redactar una orden de trabajo con entradas, salida y revisión.

Módulo 3 · Terminal y Codex en la práctica

Abre un proyecto de entrenamiento en Codex y produce una modificación verificable.

Módulo 4 · Carpetas, Markdown y secretos

Construye la casa digital y separa conocimiento de credenciales.

Módulo 5 · AGENTS, Skills y memoria

Crear instrucciones de proyecto y una capacidad reutilizable con criterio de revisión.

Módulo 6 · Git e GitHub sin perder trabajo

Guardar una versión, inspeccionar diferencias y recuperar un cambio de entrenamiento.

Módulo 7 · Telegram como interfaz de trabajo

Ejecute un bot restringido de consulta y entienda dónde entra la IA.

Módulo 8 · VPS desde cero y operación 24/7

Prepare un plan de despliegue, supervisión, respaldo y verificación del servicio.

Glosario · 88 términos

OSWork v6.2

Glosario

Los términos técnicos del curso en palabras sencillas. Cada término te lleva a las lecciones donde aparece.

AGENTS.md

Archivo en Markdown con las instrucciones que el agente lee antes de trabajar en una carpeta: reglas, límites y cómo comprobarlo.

Aparece en: Lección 16 Lección 17 Lección 18 Lección 19 Lección 24 Lección 25 Lección 26 Lección 27 Lección 29 Lección 30

AGENTS.override.md

Archivo AGENTS.override.md: cuando está en la misma carpeta que un AGENTS.md, el Codex lee el override e ignora el AGENTS.md de esa carpeta.

Aparece en: Lección 26

API

Puerta de entrada para que un programa use un servicio de IA sin pasar por la pantalla del chat. El uso por API se cobra por consumo.

Aparece en: Lección 5 Lección 6 Lección 15 Lección 37 Lección 41 Lección 42 Lección 43

apt

Instalador de programas de Ubuntu, usado en la terminal.

Aparece en: Lección 45 Lección 48

archivo rastreado

Archivo que Git ya incluye, porque entró en alguna versión guardada. El .gitignore no aplica para él.

Aparece en: Lección 23

autotest

Prueba que el propio bot del kit ejecuta sin Telegram y sin internet, con mensajes falsos, para verificar tus reglas.

Aparece en: Lección 42

backup

Copia de seguridad de los archivos, guardada en otro lugar para recuperarlos si algo se pierde.

Aparece en: Lección 31 Lección 36 Lección 48

Bash

Lenguaje de comandos de la terminal en Linux y en macOS. Los comandos de este curso están escritos para él.

Aparece en: Lección 13 Lección 16 Lección 18 Lección 19 Lección 24 Lección 31

bot

Programa que conversa mediante una aplicación de mensajería y responde solo, siguiendo las reglas que tú defines.

Aparece en: Lección 36 Lección 37 Lección 38 Lección 39 Lección 40 Lección 41 Lección 42 Lección 43 Lección 45 Lección 46 Lección 47 Lección 48

BotFather

Cuenta oficial del propio Telegram que crea bots y genera el token de cada uno.

Aparece en: Lección 38 Lección 42

branch

Línea paralela de trabajo en Git, donde pruebas cambios sin tocar la versión principal.

Aparece en: Lección 34 Lección 36

caminos

Dirección de una carpeta o de un archivo, con los nombres separados por barra, como ~/proyectos/config.

Aparece en: Lección 5 Lección 9 Lección 14 Lección 19 Lección 24 Lección 26 Lección 37 Lección 42 Lección 47 Lección 48

clave de API

Contraseña larga que identifica quién usa la API y para quién va la cuenta. Nunca va en un pedido, en un archivo compartido o en un pantallazo.

Aparece en: Lección 5 Lección 15 Lección 22 Lección 23

clave pública

Mitad pública del par de claves de SSH. Se registra en la VPS; la otra mitad, la clave privada, se queda solo en tu computadora y nunca se pega en ningún lugar.

Aparece en: Lección 44 Lección 48

chmod

Comando que define quién puede leer o modificar un archivo.

Aparece en: Lección 22 Lección 38 Lección 42 Lección 46

clone

Copia de un repositorio de GitHub en tu computadora, con todo el historial.

Aparece en: Lección 34 Lección 36

Codex

Agente de programación de OpenAI que trabaja en una carpeta de tu computadora, a partir del terminal. El curso lo instala en el módulo 3.

Aparece en: Lección 3 Lección 5 Lección 12 Lección 13 Lección 14 Lección 15 Lección 16 Lección 17 Lección 18 Lección 19 Lección 25 Lección 26 Lección 27 Lección 28 Lección 29 Lección 30 Lección 41 Lección 45 Lección 48

commit

Versión guardada en Git, con un mensaje que explica el cambio. Puedes volver a ella después.

Aparece en: Lección 23 Lección 31 Lección 32 Lección 33 Lección 34 Lección 35 Lección 36

consola de recuperación

Terminal de la VPS abierta desde el panel del proveedor, en el navegador, sin SSH. Es la ruta de vuelta cuando falla el SSH.

Aparece en: Lección 44 Lección 48

contexto

El material que la IA recibe para hacer una tarea: los archivos, las instrucciones y la información que tú señalas.

Aparece en: Lección 9 Lección 11 Lección 19 Lección 24 Lección 30 Lección 34

contrato de entrega

El paquete completo, con seis partes: objetivo, entradas, salida, límites, verificación y parada.

Aparece en: Lección 10 Lección 11 Lección 12

contrato de integración

Cinco líneas escritas antes de conectar una IA a un bot: datos enviados, modelo, límite de costo, tiempo máximo y qué hacer si la IA falla.

Aparece en: Lección 41

CSV

Hoja de cálculo en texto simple, con los valores separados por comas. Se abre en Excel o en Google Sheets.

Aparece en: Lección 21 Lección 25 Lección 26 Lección 27 Lección 29 Lección 30 Lección 37 Lección 40 Lección 42 Lección 48

Desktop

Aplicación de ChatGPT en la computadora, que trabaja más cerca de tus archivos y puede leer las carpetas que tú permitas.

Aparece en: Lección 6 Lección 7 Lección 9 Lección 10

diff

Comparación que muestra, línea por línea, lo que cambió en un archivo.

Aparece en: Lección 18 Lección 32 Lección 35 Lección 36 Lección 48

directorio

Otro nombre para carpeta, usado en el terminal.

Aparece en: Lección 18 Lección 26 Lección 30 Lección 41 Lección 47 Lección 48

pedido

Trabajo que indica qué debe existir al final: objetivo, entradas, resultado, límites y parada.

Aparece en: Lección 7 Lección 8 Lección 11 Lección 12

.env

Archivo que guarda claves y contraseñas fuera del código. Nunca se sube a Git, a un pedido o a una captura.

Aparece en: Lección 15 Lección 22 Lección 23 Lección 24 Lección 33 Lección 36 Lección 38 Lección 39 Lección 40 Lección 42 Lección 46 Lección 47 Lección 48

.env.example

Copia del .env con los mismos nombres de variables y valores ficticios. Muestra qué tienes que completar sin dar acceso a nada, por eso se puede compartir.

Aparece en: Lección 22 Lección 23 Lección 24 Lección 38 Lección 42

ejecución local

Trabajo que corre en tu propio computador. Depende de que esté encendido, con red y con los permisos correctos.

Aparece en: Lección 10

ficha del proyecto

Documento corto en el que anotas cómo funciona un trabajo con IA: herramientas, acceso, decisiones y pendientes. Puede ser una nota en el celular. En el módulo 4 se convierte en un archivo de la carpeta del proyecto.

Aparece en: Lección 5 Lección 10 Lección 14 Lección 15

firewall

Filtro que decide qué conexiones de red pueden entrar a la máquina o salir de ella.

Aparece en: Lección 44 Lección 46 Lección 48

Git

Programa que guarda el historial de versiones de una carpeta de proyecto: qué cambió, cuándo y por qué.

Aparece en: Lección 18 Lección 23 Lección 30 Lección 31 Lección 32 Lección 33 Lección 34 Lección 35 Lección 36 Lección 45 Lección 46 Lección 48

GitHub

Sitio donde guardas una copia de tu repositorio Git en internet, para trabajar desde otro computador o con otras personas.

Aparece en: Lección 31 Lección 33 Lección 34 Lección 35 Lección 36

.gitignore

Archivo que lista qué no debe guardar Git, como contraseñas y archivos temporales.

Aparece en: Lección 22 Lección 23 Lección 24 Lección 33 Lección 36 Lección 46

HEAD

En Git, la versión en la que estás ahora.

Aparece en: Lección 35

ID numérico

Número fijo que Telegram asigna a cada cuenta. No cambia cuando la persona cambia el nombre que se muestra.

Aparece en: Lección 39 Lección 40 Lección 42

huella digital

Secuencia corta que identifica la VPS. En la primera conexión por SSH, verificas si coincide con la que te informa el proveedor de la VPS.

Aparece en: Lección 44 Lección 48

instalación

Poner un programa en la computadora para que pueda usarse. El módulo 3 hace la primera instalación, desde la fuente oficial.

Aparece en: Lección 6 Lección 9 Lección 12 Lección 14 Lección 17 Lección 18 Lección 24 Lección 30 Lección 31 Lección 36 Lección 38 Lección 39 Lección 42 Lección 45 Lección 48

interfaz

La pantalla por donde le pasas el objetivo a la IA, como la ventana del chat. El curso muestra otras interfaces a lo largo de los módulos.

Aparece en: Lección 1 Lección 6 Lección 7 Lección 10 Lección 12 Lección 37

Jev

Ejemplo de un modelo de clasificación citado en el curso. No conversa: recibe un texto y alternativas cerradas y devuelve una elección, un sí o no, o una calificación.

Aparece en: Lección 2

journalctl

Comando que muestra el registro de los servicios de systemd.

Aparece en: Lección 47 Lección 48

Kie

Centro que da acceso a modelos de imagen y de video de varios proveedores, con crédito propio.

Aparece en: Lección 2 Lección 5 Lección 6

lista de acceso

Lista de los IDs numéricos que el bot atiende. En el kit, se ve en la línea ALLOWED_USER_IDS del .env.

Aparece en: Lección 39 Lección 40 Lección 42

LLMs

Modelo de lenguaje: programa entrenado con muchísimo texto que produce texto a partir de lo que tú entregas. Es el tipo de IA que está detrás de los chats.

Aparece en: Lección 1 Lección 2

registro

Registro de lo que hizo un programa, línea por línea, con fecha y hora. Es donde se busca la causa de un error.

Aparece en: Lección 33 Lección 36 Lección 40 Lección 42 Lección 46 Lección 47 Lección 48

ingresar

Entrar a una herramienta con tu cuenta, como la cuenta de ChatGPT. Los derechos y los límites vienen del plan de esa cuenta.

Aparece en: Lección 5 Lección 14 Lección 15 Lección 18 Lección 44

long polling

Forma en que el bot le pregunta al Telegram, de vez en cuando, si llegó un mensaje nuevo. No requiere un servidor con dirección pública.

Aparece en: Lección 40 Lección 46

Markdown

Forma de escribir texto simple con marcas leves, como # para título y - para lista. Los archivos terminan en .md.

Aparece en: Lección 16 Lección 20 Lección 24 Lección 25 Lección 27 Lección 29 Lección 30

memoria operativa

Archivos de consulta con hechos estables, decisiones y causas de fallas, que el agente lee cuando tú indicas. No cambia el modelo; alguien necesita mantenerlos al día.

Aparece en: Lección 28

nano

Editor de texto que se abre dentro del terminal. Ctrl+O guarda el archivo y Ctrl+X sale.

Aparece en: Lección 20 Lección 21 Lección 24 Lección 38

nube

Computadoras de una empresa, a las que se accede por internet, que ejecutan el trabajo y guardan archivos fuera de tu máquina.

Aparece en: Lección 10

OpenRouter

Centro que da acceso a modelos de lenguaje de varias empresas en un solo punto, con crédito propio.

Aparece en: Lección 2 Lección 5 Lección 6

origin

Nombre que Git le da, por defecto, a la dirección en GitHub de donde venía la carpeta y a dónde la envía.

Aparece en: Lección 34 Lección 36

carpeta de entrenamiento

Carpeta solo con archivos ficticios o copias, creada para probar la IA sin riesgo para el material real.

Aparece en: Lección 6 Lección 9 Lección 12 Lección 18 Lección 24 Lección 30 Lección 31 Lección 36 Lección 42 Lección 48

carpeta personal

Tu carpeta principal en el computador, donde están Documentos, Downloads y las demás. En el terminal aparece como ~ (til).

Aparece en: Lección 16 Lección 19 Lección 24 Lección 31

puerta

Número que identifica un servicio dentro de la máquina. El SSH suele usar el puerto 22, pero tu VPS puede usar otro.

Aparece en: Lección 2 Lección 13 Lección 37 Lección 40 Lección 44 Lección 46 Lección 48

proveedores

Empresa que ofrece un modelo de IA. Un centro reúne modelos de varios proveedores en un solo lugar.

Aparece en: Lección 2 Lección 43 Lección 44 Lección 46

pull

Comando de Git que trae a tu computador los cambios nuevos de GitHub.

Aparece en: Lección 34 Lección 36

push

Comando de Git que envía tus commits a GitHub.

Aparece en: Lección 36

Python

Lenguaje de programación. El bot del kit del curso está escrito en él.

Aparece en: Lección 39 Lección 45

README

Archivo de texto en la carpeta del proyecto que explica para qué sirve, qué tiene dentro y cómo comprobar el resultado.

Aparece en: Lección 6 Lección 12 Lección 16 Lección 17 Lección 18 Lección 19 Lección 20 Lección 22 Lección 23 Lección 24 Lección 25 Lección 26 Lección 30 Lección 32 Lección 33 Lección 34 Lección 35 Lección 36 Lección 38 Lección 42 Lección 48

rúbrica de calidad

Lista corta de criterios, escrita antes del pedido, que dice qué debe tener la respuesta para que sea aceptada.

Aparece en: Lección 4 Lección 11

repositorio

Carpeta de proyecto acompañada por Git, con todo el historial de versiones.

Aparece en: Lección 22 Lección 27 Lección 31 Lección 33 Lección 34 Lección 36 Lección 47

restore

Comando de Git que descarta los cambios que aún no se guardaron de un archivo, volviendo a lo que había en la última versión. Lo que se descartó no vuelve.

Aparece en: Lección 35 Lección 36

revert

Comando de Git que crea un commit nuevo deshaciendo un commit anterior, sin borrar nada del historial.

Aparece en: Lección 35 Lección 36

script

Archivo con una secuencia de comandos que el computador ejecuta de una vez.

Aparece en: Lección 14 Lección 26

servidor

Computador que está encendido prestando un servicio para otros, como responder a los mensajes de un bot.

Aparece en: Lección 37 Lección 40 Lección 43 Lección 44 Lección 48

Shell

Programa que interpreta los comandos que escribes en el terminal.

Aparece en: Lección 13 Lección 18 Lección 39 Lección 42

Skill

Procedimiento empaquetado que el agente puede reutilizar: instrucciones, pasos y cómo verificar, guardados en una carpeta.

Aparece en: Lección 26 Lección 27 Lección 29 Lección 30 Lección 48

SSH

Forma segura de abrir la terminal de otro ordenador por internet.

Aparece en: Lección 44 Lección 46 Lección 47 Lección 48

staging

Área de Git donde se guardan los cambios elegidos para entrar en el próximo commit.

Aparece en: Lección 32 Lección 36

sudo

Comando que ejecuta la instrucción siguiente con permiso de administrador. Pide tu contraseña.

Aparece en: Lección 44 Lección 45 Lección 46 Lección 47 Lección 48

systemctl

Comando de systemd para encender, apagar y ver el estado de un servicio.

Aparece en: Lección 47 Lección 48

systemd

Parte de Linux que enciende, vigila y reinicia programas sola, incluso después de reiniciar la máquina.

Aparece en: Lección 47 Lección 48

Telegram

Aplicación de mensajería. En el curso, se convierte en la pantalla de conversación con un bot tuyo, en el módulo 7.

Aparece en: Lección 6 Lección 12 Lección 18 Lección 24 Lección 30 Lección 36 Lección 37 Lección 38 Lección 39 Lección 40 Lección 41 Lección 42 Lección 43 Lección 46 Lección 47 Lección 48

token del bot

Contraseña que Telegram genera para tu bot. Quien tiene el token controla el bot; por eso se queda en el .env.

Aparece en: Lección 22 Lección 36 Lección 38 Lección 39 Lección 40 Lección 42 Lección 46 Lección 48

tokens

Trozo de texto, como una palabra corta o parte de una palabra, que el modelo lee y escribe. El uso y el cobro suelen medirse en tokens.

Aparece en: Lección 3 Lección 5 Lección 6 Lección 12 Lección 18 Lección 22 Lección 24 Lección 30

Ubuntu

Versión popular de Linux, común en servidores.

Aparece en: Lección 13 Lección 14 Lección 43 Lección 45 Lección 46 Lección 48

ufw

Comando de Ubuntu para configurar el firewall de una forma simple.

Aparece en: Lección 46

unidad

Archivo que le dice a systemd qué programa iniciar, con qué usuario y en qué carpeta.

Aparece en: Lección 47 Lección 48

variable

Un nombre con un valor guardado, escrito como NOMBRE=valor. El programa busca el valor por el nombre.

Aparece en: Lección 15 Lección 22 Lección 24 Lección 38 Lección 42

VPS

Computadora alquilada a un proveedor, encendida todo el tiempo y bajo tu responsabilidad. El módulo 8 enseña a usarla.

Aparece en: Lección 6 Lección 10 Lección 12 Lección 18 Lección 24 Lección 30 Lección 36 Lección 40 Lección 42 Lección 43 Lección 44 Lección 45 Lección 46 Lección 47 Lección 48

webhook

Forma en que Telegram avisa a tu servidor en el momento en que llega un mensaje. Requiere una dirección pública en internet.

Aparece en: Lección 40

Work

Modo de ChatGPT en el que tú entregas una tarea más grande y recibes el resultado listo después, sin seguir cada respuesta.

Aparece en: Lección 3 Lección 6 Lección 7 Lección 8 Lección 10 Lección 12

WSL

Linux que se ejecuta dentro de Windows, oficial de Microsoft. En él, los comandos del curso funcionan como en Linux.

Aparece en: Lección 13 Lección 14 Lección 31 Lección 38 Lección 45 Lección 46 Lección 47 Lección 48

Módulo 1 · Lección 1 de 6

El modelo es una pieza, no el sistema

Una coordinadora pedagógica en una mesa de reunión dibuja siete cajas en una hoja, con el temario y el acta anterior impresos al lado del notebook.

Puedes dibujar las siete piezas de tu sistema de IA y señalar cuál de ellas falta para terminar una tarea real de esta semana.

Cuando la respuesta sale mal, la reacción común es cambiar de herramienta o escribir un pedido más grande. Muchas veces el problema está en otra pieza: falta el archivo, el permiso o la forma de verificar. Esta lección muestra dónde buscar.

En 1 minuto

  1. Un modelo produce texto a partir de lo que tú entregas.
  2. No existe el mejor modelo: existe el adecuado para la tarea.
  3. El resultado depende de siete piezas, y el fallo suele estar en una de ellas.

1El modelo trabaja con lo que recibe

Cuando este curso habla de IA, habla de modelos de lenguaje, las LLMs. Un modelo es un mecanismo entrenado para producir texto a partir de lo que tú entregas.

No ve tu escuela, tu equipo ni la reunión de la semana pasada. Lo que falta en el pedido, lo completa con la forma más común de responder.

Denise, coordinadora pedagógica, pidió un plan para la reunión de padres. Sin la pauta, la IA imaginó prioridades. Con la pauta y la ata anterior pegadas, volvió con una propuesta que ella pudo comprobar.

Chat de IA

TúHaz un plan para la reunión de padres del 8º año.

IASugerencia de plan: 1. Bienvenida. 2. Presentación del proyecto pedagógico. 3. Calendario de exámenes…

Prioridades inventadas. Nada de eso estaba en la pauta de la escuela.

TúHaz un plan para la reunión de padres del 8º año, usando solo la pauta y la ata de abajo. Marca lo que quedó pendiente de la reunión anterior. [pauta pegada] [ata anterior pegada]

IAPlan a partir de la pauta enviada: 1. [ítem 1 de la pauta] 2. [ítem 2 de la pauta] Pendiente del acta anterior: [pendencia registrada en el acta]

Misma IA. Ahora cada ítem apunta a un papel que Denise tiene en la mano.

Toca los dos botones y compara lo que la IA recibió en cada caso.

2No existe el mejor modelo

Hay varios modelos, con nombres, tamaños y costos diferentes. La pregunta "¿cuál es el mejor?" no tiene una respuesta útil.

La pregunta que ayuda es otra: ¿qué modelo resuelve esta tarea, en este plazo, con este costo y con cuánto vas a necesitar que verifiques? Por eso el módulo compara modelos con una tarea real, y no con opiniones.

Lúcia, profesora de ciencias, dejó de buscar "la mejor IA". Ahora pregunta qué herramienta corrige la lista de ejercicios del 8º año en el tiempo que ella tiene.

Pregunta que traba

"¿Cuál es la mejor IA?"

Cada persona responde una cosa. Ninguna respuesta sirve para tu tarea.

Pregunta que decide

"¿Qué modelo resume esta acta en diez líneas, hoy, y me deja comprobar a los tres responsables?"

Se puede probar y comparar.

3Siete piezas forman el sistema

Un modelo produce respuestas. Un sistema organiza cómo esas respuestas se convierten en trabajo. OSWork combina siete piezas: modelo, interfaz, archivos, instrucciones, herramientas, memoria y automatizaciones.

El nombre OSWork es una metáfora de organización. No vas a cambiar el sistema de tu computadora.

Denise dibujó las siete cajas para la tarea "acta de la reunión de padres". Había modelo e interfaz. Faltaban los archivos: el orden del día estaba en el correo de otra persona.

Bancada de Denise · acta de la reunión
1 Modelo — el chat de la escuela ✓
2 Interfaz — la ventana del chat ✓
3 Archivos — orden del día y acta anterior ✗ falta
4 Instrucciones — reglas fijas que la IA sigue (módulo 5) · ?
5 Herramientas — lo que la IA puede ejecutar, como guardar un archivo (módulo 3) · ?
6 Memoria — lo que queda guardado entre conversaciones (módulo 5) · ?
7 Automatizaciones — tareas que se ejecutan sin que abras el chat (módulos 7 y 8) · ?
  1. 1El modelo razona sobre lo que recibe.
  2. 2La interfaz recibe el objetivo.
  3. 3Los archivos dan evidencia. Sin ellos, la IA imagina.
  4. 4Las piezas 4 a 7 ganan un módulo cada una. Por ahora, con un "?" basta.
¿Quieres una comparación del día a día?

Piensa en un taller pequeño. La habilidad del profesional importa, pero también deciden el resultado las herramientas, los materiales y los criterios de calidad.

Ponte a prueba

En la computadora de la escuela, el plan de la reunión salió bien. En el celular, con el mismo chat, la IA inventó dos elementos. Tú pegaste solo la mitad del orden del día. ¿Qué pieza falló?

4Corrige la pieza correcta

Separar las piezas evita el reflejo de escribir un pedido cada vez más grande. Primero preguntas dónde nació la falla. Después corriges solo allí.

Y una pieza nunca se sale del sistema: tú. El modelo razona, las herramientas ejecutan, y quien verifica eres tú.

La IA de Lucía dijo que había guardado las notas, pero el archivo no apareció. Faltaba una herramienta con permiso para guardar. Escribir el pedido de nuevo no resolvería.

Síntoma → pieza que falta
1 Inventó prioridades → archivos: el orden del día y el acta
2 Dijo que guardó, y no guardó → herramienta con permiso para guardar
3 Nadie sabe si está bien → tú, que verificas
La tercera línea no es una de las siete piezas: es quien usa el sistema.

Si te trabaste aquí, es normalAl principio, siete piezas parecen muchas. En esta lección solo necesitas juzgar tres: modelo, interfaz y archivos. En las otras cuatro, un "?" es la respuesta correcta por ahora.

Practica ahora 0/3

Dibuja las siete piezas de una tarea tuya

Listo cuando, al circular entre modelo, interfaz y archivos, identifiques la pieza que falta en una tarea real de esta semana. Casi 8 minutos, en el papel o en las Notas del celular.

Es solo un dibujo: no se envía nada a nadie. Si todas las piezas parecen estar presentes, elige una tarea que te dio retrabajo recientemente.

Acabas de ver tu uso de IA como un sistema y señala la pieza que falta.

Cola de la lección

Siete piezas

  1. Modelo correcto para la tareano existe el mejor en general.
  2. Siete piezasmodelo, interfaz, archivos, instrucciones, herramientas, memoria, automatizaciones.
  3. ¿Falló?encuentra la pieza antes de reescribir el pedido. La que verifica eres tú.

Tu próximo paso

Ya sabes localizar la pieza que falta cuando la IA se equivoca.

Hoy, en el próximo pedido que vuelva mal, anota en una línea qué pieza faltó antes de intentar de nuevo.

En la próxima lección: si el modelo es una pieza, ¿qué tipos de modelo existen? Texto, imagen, video y clasificación resuelven cosas diferentes.

Material complementario · IA como sistema de trabajoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Cuando este curso habla de IA, habla de modelos de lenguaje, las LLM. Un modelo es un mecanismo entrenado para producir texto a partir de lo que usted entrega. Existen varios, con nombres, tamaños y costos diferentes, y la primera pregunta suele ser cuál es el mejor. Esa pregunta no tiene una respuesta útil: no existe el mejor modelo, existe el modelo adecuado para la tarea, el plazo, el costo y el nivel de verificación que ese trabajo exige. Por eso el módulo compara modelos con una tarea real y no con opiniones. Un modelo produce respuestas; un sistema organiza cómo esas respuestas se convierten en trabajo. OSWork combina modelo, interfaz, archivos, instrucciones, herramientas, memoria y automatizaciones. Piense en un pequeño taller: la habilidad del profesional importa, pero las herramientas, los materiales y los criterios de calidad también determinan el resultado. No estamos instalando un nuevo sistema operativo de computadora: usamos esa expresión como metáfora de organización.

Por qué aprender

Sin esa distinción, todo error se convierte en intento de escribir un prompt mayor. A veces solo falta el archivo de entrada, un permiso o la forma de verificar la salida. Separar las piezas permite corregir el punto correcto.

Conceptos clave

El modelo razona; la interfaz recibe el objetivo; los archivos aportan evidencia; las herramientas ejecutan; usted verifica.

En la práctica

Una coordinadora pide un plan de reunión. Sin agenda, la IA imagina prioridades. Con agenda y acta anterior, puede preparar una propuesta verificable.

✓ Hazlo

Dibuja siete cajas con las piezas del sistema. Marca cuáles ya tienes y cuál falta para concluir una tarea.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

  • Modelo
  • Interfaz
  • Archivos
  • Instrucciones
  • Herramientas
  • Memoria
  • Automatizaciones
Las siete piezas del sistema. Marque lo que ya tiene y lo que falta para concluir una tarea.

Lección 1 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 1 · Lección 2 de 6

Separa por función antes de comparar nombres

Una profesora en la sala de profesores separa papeles en cuatro bandejas de colores diferentes, con el notebook abierto al lado.

Puedes decir, para cada tarea que se repite, qué tipo de modelo te pide: texto, imagen, video o clasificación — antes de elegir un nombre.

Adoptar un modelo como "el mejor" cierra la puerta a todo lo que no hace. Un modelo excelente de texto no genera un video. Un clasificador no escribe tu informe. Esta lección te enseña a separarlo por función primero.

En 1 minuto

  1. Cuatro funciones: texto, imagen, video y clasificación.
  2. Los nombres y las versiones cambian; la función de la tarea se mantiene.
  3. Las centrales dan acceso a varios modelos con un único punto.

1Cuatro funciones, cuatro tipos de modelo

Los modelos de lenguaje, las LLMs, escriben, resumen, explican y programan. Los modelos de imagen y de video generan o editan material visual.

También existen los modelos de clasificación. No conversan: reciben alternativas y devuelven una elección, un sí o no, o una calificación.

Lúcia listó lo que hace con IA en un mes. Resumir el acta del consejo de clase pide texto. La portada de la feria de ciencias pide imagen. Separar doscientos comentarios del curso pide clasificación.

Tareas de Lúcia · por función
1 Texto
resumir el acta del consejo de clase
2 Imagen
portada de la feria de ciencias
3 Video
jingle de diez segundos de la feria
4 Clasificación
separar comentarios en "duda", "elogio" y "reclamo"
  1. 1Texto: escribir, resumir, explicar.
  2. 2Imagen: generar o editar figuras.
  3. 3Video: generar clips.
  4. 4Clasificación: elegir y puntuar.

2Los nombres cambian, la función se queda

ChatGPT, Gemini y Copilot son chats: detrás de cada uno hay modelos de lenguaje. Dentro de cada tipo hay familias con nombres propios. En texto, la familia GPT tiene Sol, Terra y Luna, además del GPT-6 Astra. La familia Claude tiene Opus y Fable.

No necesitas memorizar esta lista: estos nombres vienen de una consulta del 20/09/2026. Los nombres, versiones y disponibilidad cambian. Por eso la elección ocurre cuando aparece la tarea, y puede ser otra la semana siguiente.

Denise oyó de una colega que "ese modelo es el mejor" y quiso usarlo para todo. Al pedir el arte del convite de la fiesta junina, descubrió que solo escribe texto.

Elige por el nombre

"Voy a usar el modelo que todo el mundo elogia, para todo."

El arte del convite no sale: el modelo es de texto.

Elige por la función

Convite en texto: un modelo de lenguaje. Arte del convite: un modelo de imagen.

Cada tarea va al tipo que sabe hacerla.

3El clasificador no conversa, elige

Un clasificador, como el Jev, recibe un texto y una lista cerrada de alternativas. Devuelve una elección, y no un párrafo.

Para clasificar muchos ítems entre pocas categorías, esto puede ser más simple de revisar que una conversación. Es una hipótesis para probar, no una garantía. Puedes experimentar la idea hoy mismo en el chat: pega los ítems y pide "responde solo con una de estas categorías".

Lucía pegó en el chat un comentario de alumno y las tres categorías, pidiendo solo la categoría. Volvió una sola palabra. Ella revisó diez respuestas a mano antes de confiar en las otras.

Clasificador

TúComentario: "No entendí la parte de la fotosíntesis que cayó en el examen." Categorías: duda · elogio · queja

IAduda

Una elección entre las alternativas dadas. Fácil de comprobar en lote.

Ponte a prueba

Denise recibió 300 respuestas abiertas de padres sobre el horario de entrada. Quiere saber cuántas piden un cambio. ¿Qué tipo de modelo prueba primero?

4Las centrales abren muchas puertas con un solo punto

Todavía están las centrales, que dan acceso a varios proveedores en un único punto. El OpenRouter reúne modelos de lenguaje. El Kie reúne modelos de imagen y video.

La disponibilidad varía según la cuenta, el plan y la liberación. Un modelo que le aparece a una colega puede que no te aparezca a ti.

Para el bocado de diez segundos del acto de graduación, Denise no tuvo que firmar un servicio de video por modelo. En un centro de imagen y video, comparó dos modelos en el mismo lugar, con una sola cuenta.

Central de texto

OpenRouter

Varios modelos de lenguaje en un solo punto de acceso.

Central de imagen y video

Kie

Varios modelos de imagen y de video en un solo punto de acceso.

Cada central tiene su propio crédito. La lección 5 muestra cómo esto entra en la cuenta.

Si te trabaste aquí, es normalLa lista de nombres cansa y envejece rápido. Guarda solo las cuatro funciones. Los nombres los consultas en "Dónde consultar los nombres actuales", en la práctica de esta lección, cuando aparezca la tarea.

Practica ahora 0/3

Clasifica tus tres tareas más repetidas

Listo cuando cada tarea tenga un tipo de modelo y solo después un nombre. Aproximadamente 8 minutos, en papel o en las Notas del celular.

Nadie ve esa lista excepto tú. ¿Te quedó duda entre dos tipos? Escribe los dos: el laboratorio del módulo, en el material complementario de la lección 6, lo compara en la práctica.

TAREA 1: <ej.: resumir el acta del consejo>
Tipo: <texto, imagen, video o clasificación>
Nombre para probar: <rellena al final>

TAREA 2: <…>
Tipo: <…>
Nombre para probar: <…>

TAREA 3: <…>
Tipo: <…>
Nombre para probar: <…>
Dónde consultar los nombres actuales

Las páginas oficiales listan lo que está disponible hoy: modelos de ChatGPT, modelos Claude, catálogo de OpenRouter y Kie. Consulta del curso: 20/09/2026.

Acabas de elegir por la función antes del nombre, para las tareas que más se repiten.

Cola de la lección

Función antes del nombre

  1. Cuatro tipostexto, imagen, video, clasificación.
  2. Los nombres envejecenconsulta la fecha y la fuente antes de elegir.
  3. Centrosvarios proveedores en un solo punto, con crédito propio.

Tu próximo paso

Ya sabes separar tus tareas por el tipo de modelo que pide cada una.

Guarda la lista de la práctica en un documento o en las Notas. Si haces el laboratorio opcional del módulo, al final de la lección 6 pruebas una de esas tareas en dos modelos.

En la próxima lección: dentro del mismo modelo todavía existe un control, el esfuerzo de razonamiento. Aumentar no siempre mejora.

Material complementario · Tipos de IA y para qué sirvenTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Antes de comparar nombres, separe por función. Los modelos de lenguaje, las LLM, escriben, resumen, explican y programan: ahí entran familias como GPT, con Sol, Terra y Luna, el GPT-6 Astra, y la familia Claude, con Opus y Fable. Los modelos de imagen y de video generan o editan material visual. Y existen modelos de clasificación, como Jev, que no conversan: reciben alternativas y devuelven una elección, un sí o no, o una nota. También están las centrales, que dan acceso a varios proveedores desde un único punto: OpenRouter para modelos de lenguaje y Kie para imagen y video. Nombres, versiones y disponibilidad cambian; esta consulta es del 20/09/2026.

Por qué aprender

Adoptar un modelo como el mejor cierra el puerto para todo lo que no hace. Un LLM excelente no genera un video, y un clasificador no escribe tu reporte. Entender para qué sirve cada tipo va antes de elegir, y la elección ocurre cuando aparece la tarea, pudiendo ser otra la semana siguiente. La disponibilidad también varía según el proveedor, el cliente, la autenticación y la liberación.

Conceptos clave

Texto; imagen; video; clasificación; centrales de acceso; disponibilidad.

En la práctica

Resumir un acta pide un modelo de lenguaje. Clasificar doscientos comentarios entre tres categorías puede encajar mejor en un clasificador como Jev. Producir una cortinilla de diez segundos exige un modelo de video, normalmente accedido por una central. Son hipótesis para probar, no garantías.

Experimenta ahora

Enumere las tres tareas de IA que más repite. Junto a cada una escriba el tipo de modelo que pide y solo después el nombre que pretende probar; consulte las fuentes al final del módulo.

  • Texto · LLMs — resumir y escribir
  • Imagen — generar y editar
  • Video — generar clips
  • Clasificación — elegir y puntuar
  • OpenRouter · texto
  • Kie · imagen y video
Separe por función antes de comparar nombres. Las centrales dan acceso a varios proveedores desde un solo punto.

Lección 2 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 1 · Lección 3 de 6

El modelo y el esfuerzo son dos controles

Una profesora compara dos hojas de cálculo impresas una al lado de la otra con un marcador, con el notebook abierto sobre la mesa.

Puedes repetir un pedido cambiando solo el esfuerzo de razonamiento y decir, con evidencia, si el resultado mejoró.

Mucha gente conecta el esfuerzo máximo en toda tarea, por garantía. Eso puede gastar más tiempo y más consumo sin mejorar nada. Y ningún esfuerzo devuelve el documento que faltó en el pedido.

En 1 minuto

  1. El modelo es el mecanismo; el esfuerzo es una configuración de ese mecanismo.
  2. Empieza por el patrón. Completa las entradas antes de subir el esfuerzo.
  3. Para comparar, cambia un solo control y mantén el resto igual.

1Dos ejes diferentes

El modelo es el mecanismo elegido. El esfuerzo de razonamiento es una configuración de ese mecanismo: cuánto analiza antes de responder.

Los niveles más altos pueden gastar más tiempo y más tokens. Los nombres del selector cambian entre el Chat, el Work y el Codex. No existe una lista única de niveles que aplique a todos los productos.

Denise pensaba que cambiar el nivel era cambiar de IA. Descubrió que, en el mismo modelo, puedes pedir una respuesta rápida o un análisis más largo.

Selector del chat
1 Modelo: [el modelo elegido]
2 Esfuerzo: [nivel actual] · [nivel superior]
  1. 1Primer control: qué mecanismo trabaja.
  2. 2Segundo control: cuánto analiza. Los nombres de los niveles varían de producto a producto.

2Más esfuerzo no trae el archivo que faltó

Subir el esfuerzo no proporciona un documento que quedó fuera. Si la respuesta depende de un dato, el dato tiene que estar en el pedido.

Primero completa las entradas. Después evalúa si el problema pide más análisis.

Lúcia quería saber por qué la hoja de cálculo de notas de secretaría no coincidía con la suya. Con el esfuerzo máximo, sin las hojas, recibió hipótesis generales. En el patrón, con las dos hojas pegadas, recibió la línea exacta de la diferencia.

Esfuerzo máximo, sin hojas de cálculo

Pedido: "¿Por qué las dos hojas de notas no coinciden?"

Resultado: una lista de causas posibles, sin señalar ninguna.

Patrón, con las dos hojas de cálculo

Pedido: lo mismo, con las dos hojas pegadas.

Resultado: "[aluno] tiene una nota diferente en la [avaliação] entre las dos versiones."

Balance: la entrada correcta resolvió lo que el control, en el máximo, no resolvió.

3Empieza por el estándar

Para la mayoría de las tareas del día a día, el esfuerzo estándar resuelve. Reserva más análisis para lo que involucra varias etapas o muchos datos.

Denise necesitaba reescribir una invitación de cinco líneas para la reunión de padres. En el estándar, la respuesta llegó en segundos y servía.

Chat de IA · esfuerzo estándar

TúReescribe esta invitación en un tono cordial, en hasta cinco líneas. Mantén la fecha y la hora exactamente como están. [convite colado]

IAQueridas familias, los invitamos a [o evento do convite] el día [data do convite], a las [horário do convite]…

Tarea corta y bien definida: con el estándar basta.

Ponte a prueba

Primera ronda: esfuerzo estándar, una planilla. Segunda ronda: esfuerzo máximo, dos planillas. La segunda salió mejor. ¿Qué se puede concluir sobre el esfuerzo?

4Compara en igualdad de condiciones

Para saber si el esfuerzo ayudó, repite el mismo pedido, con el mismo material, en el mismo modelo. Cambia solo el esfuerzo.

Después registra: ¿hubo una mejora que puedas mostrar? Un hecho más, un error menos, una cuenta correcta. "Quedó mejor" sin evidencia no cuenta.

Lúcia pidió la misma corrección comentada dos veces. En el nivel más alto, apareció un error de unidad que el estándar había dejado pasar. Anotó cuál fue.

Registro de la prueba de Lúcia
1 Pedido: igual en las dos rondas
2 Material: la misma respuesta del alumno
3 Esfuerzo: estándar → más análisis
4 Mejora demostrable: señaló el error de unidad (km en vez de m)
  1. 1El pedido no cambia.
  2. 2El material no cambia.
  3. 3Solo cambia un control.
  4. 4La mejora es algo que señalas con el dedo.

Si te trabaste aquí, es normalTu chat puede no mostrar un control de esfuerzo: depende del producto y del plan. En ese caso, anota "sin control de esfuerzo" en el registro y haz otra comparación de un solo control: cambia solo el modelo. Es una prueba diferente, pero el método es el mismo. ¿No tienes ninguno de los dos controles? Compara dos chats que ya uses, con el mismo pedido y el mismo material.

Practica ahora 0/3

Haz el mismo pedido en dos niveles de esfuerzo

Listo cuando el registro diga si hubo una mejora demostrable, con la evidencia. Cerca de 10 minutos, en el chat que ya usas. Busca el control de esfuerzo cerca del cuadro de mensaje o en el selector de modelo; a veces aparece como una opción de razonamiento o de "pensar más".

Usa un material tuyo que no sea confidencial, o inventa uno corto. Si las dos respuestas salen iguales, también es un resultado: el estándar basta para esa tarea.

PEDIDO (igual en las dos rondas)
<ej.: señala los errores de esta respuesta del alumno y explica cada uno en una línea>

MATERIAL (igual en las dos rondadas)
<pega aquí el texto, la tabla o la respuesta>

REGISTRO
Comprueba que cambié: <esfuerzo · modelo · chat>
Ronda 1 · <ej.: esfuerzo estándar> · lo que llegó: <…>
Ronda 2 · <ej.: esfuerzo arriba> · lo que llegó: <…>
¿Mejora demostrable? <sí o no> · evidencia: <el hecho de más o el error de menos>

Acabas de probar un control de uno en uno y decidiste con evidencia.

Cola de la lección

Dos controles

  1. Modelo × esfuerzoson ejes diferentes; el nombre de los niveles varía.
  2. Entrada primeroningún esfuerzo sustituye el archivo que faltó.
  3. Un control por vezmejora solo cuenta con evidencia.

Tu próximo paso

Ya sabes probar si vale la pena usar más esfuerzo en una tarea tuya.

En la próxima tarea larga, primero ejecuta en el estándar. Solo sube el esfuerzo si puedes decir qué faltó en la respuesta.

En la próxima lección: "mejoró" necesita una regla. Vas a escribir tres criterios antes de pedir y usar esa regla para elegir entre dos respuestas.

Material complementario · Modelo no es esfuerzo de razonamientoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El modelo es el mecanismo elegido. El esfuerzo de razonamiento es una configuración de ese mecanismo. Niveles más altos pueden consumir más tiempo y tokens, unidades de procesamiento de texto. Los nombres del selector cambian entre Chat, Work y Codex; no existe una lista única de Instant, Medium, High y Pro que represente todos los productos.

Por qué aprender

Pedir lo máximo en toda tarea puede aumentar el consumo sin mejorar el resultado. Incrementar el esfuerzo tampoco proporciona un documento que faltaba. Primero complete las entradas, luego evalúe si el problema requiere más análisis.

Conceptos clave

Modelo y esfuerzo son ejes diferentes; comience por el predeterminado; compare en condiciones iguales.

En la práctica

Para reescribir una invitación de cinco líneas, la opción predeterminada puede bastar. Para explicar por qué dos hojas de cálculo difieren, proporcionar las dos hojas suele importar más que mover un control.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Repite una solicitud en el mismo modelo, cambiando solo el esfuerzo. Registra si hubo mejora que puedas demostrar.
  3. Registra el resultado observado y la próxima corrección.

Lección 3 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 1 · Lección 4 de 6

Una regla transforma opinión en observación

Una coordinadora revisa, con una regla y un bolígrafo, las líneas de un acta impresa, al lado de dos respuestas impresas y del notebook.

Puedes escribir tres criterios antes del pedido y usar esa regla para decidir, sin discusión, cuál de dos respuestas sirve.

Sin criterio, eliges la respuesta más bonita. Un resumen puede sonar convincente y cambiar un nombre o inventar un plazo. Esta lección muestra cómo decidir por lo que contiene la respuesta, y no por el tono.

En 1 minuto

  1. Escribe la regla antes de hacer el pedido.
  2. Tres criterios: fiel a los datos, en el formato acordado, con conclusiones verificables.
  3. Guarda una respuesta mala para recordar lo que quieres evitar.

1Define antes de pedir

Una regla de calidad dice, antes del pedido, qué hechos deben aparecer, qué errores son inaceptables y cómo se usará el resultado.

Escrita antes, no se deja llevar por la respuesta. Escrita después, suele aprobar lo que llegó.

Denise iba a pedir el resumen de la reunión de planificación de la feria de ciencias. Antes de abrir el chat, escribió tres líneas en un papel.

Deseo

"Quiero un buen resumen de la reunión."

Cualquier texto bien escrito sirve.

Regla

1. Los tres responsables, sin un plazo que no está en el acta.

2. Una sección de pendientes.

3. Cada frase se puede encontrar en el acta.

Balance: tres preguntas de sí o no, respondidas en menos de un minuto.

2Tres criterios pequeños bastan

Para empezar, usa tres criterios. Fidelidad a los datos: ningún dato del material cambia o desaparece. Formato combinado: el tamaño y las secciones que pediste. Conclusiones verificables: no se añade nada que no se pueda encontrar en el material.

Los tres criterios son el molde. En cada tarea, se vuelven ítems concretos. En el acta de Denise, la fidelidad se volvió "los tres responsables, sin plazo inventado"; el formato se volvió "una sección de pendientes"; lo verificable se volvió "cada frase se puede encontrar en el acta".

Lúcia usó el mismo molde para el resumen de un capítulo del libro de ciencias. Cambiaron los ítems: conceptos del capítulo, una página, cada afirmación con el número de la página.

Regla de Lúcia · resumen del capítulo
1 Fidelidad: solo conceptos que están en el capítulo
2 Formato: una página, en viñetas
3 Verificable: cada viñeta con el número de la página
  1. 1Nada inventado, nada cambiado.
  2. 2La forma que vas a usar.
  3. 3Un camino para verificar cada afirmación.

3La respuesta más bonita puede ser la peor

La prueba necesita reflejar el trabajo que vas a entregar, y no una demostración hecha para impresionar. Una frase elegante no compensa perder a un responsable.

Denise recibió dos versiones del resumen. La primera era fluida y agradable de leer. La segunda era seca. Pasó la regla por las dos.

Dos respuestas · misma acta

IALa reunión fue productiva y llena de energía. Lúcia va a organizar los grupos con el entusiasmo de siempre, y Marcos reserva el patio hasta el viernes. ¡La feria promete!

Faltó Renata y "hasta el viernes" no está en el acta. No hay pendientes. "Lleno de energía" no se puede encontrar en el acta. Reprobada en los tres ítems.

IADecisiones: Lúcia organiza los grupos. Marcos reserva el patio. Renata compra el material. Pendientes: confirmar la fecha con la dirección.

Tres responsables, ningún plazo inventado, pendiente registrada. Pasa en los tres.

Toca los dos botones y pásale la regla del paso 1 en cada respuesta.

Ponte a prueba

La respuesta trae los tres responsables, tiene la sección de pendientes y termina con "el equipo salió motivado". Eso no está en el acta. ¿Qué criterio reprueba?

4Anota lo esperado, lo observado y guarda lo malo

Convierte la regla en una tabla de cuatro columnas: criterio, esperado, observado y ¿pasó? Así la decisión queda escrita y se puede repetir la prueba después.

Guarda también una respuesta mala. Te recuerda lo que estás intentando evitar.

Lúcia pegó la tabla al final del documento de correcciones. En la semana siguiente, usó la misma regla para comparar un modelo nuevo, sin empezar de cero.

Tabla de la regla · resumen de la feria
1 Fidelidad · esperado 3 responsables, 0 plazo inventado · observado 3 y 0 · pasó ✓
2 Formato · esperado 1 sección de pendientes · observado 1 · pasó ✓
3 Verificable · esperado toda frase en el acta · observado sí · pasó ✓
Respuesta mala guardada: la versión A, sin Renata
  1. 1El criterio y lo esperado van antes del pedido.
  2. 2Observado viene de contarlo en la respuesta.
  3. 3Pasó es sí o no, sin "más o menos".

Si te trabaste aquí, es normalEscribir criterio parece burocracia la primera vez. Empieza con uno: "ningún dato que no está en el material". Los otros dos aparecen solos después de la primera respuesta incorrecta.

Practica ahora 0/3

Pasa la regla en dos respuestas

Listo cuando completes la tabla para las dos respuestas y elijas una con base en ella. Cerca de 10 minutos. Anótalo en el papel o en el bloc de notas.

Es un caso ficticio, hecho para entrenar: no hay datos de nadie. ¿Diste vuelta al gabarito? Vuelve a leer el acta y revisa línea por línea.

El material (ficticio): Excursión del 7º A al museo de ciencias. Salida de la escuela a las 7h30, regreso a las 12h. La autorización firmada por los responsables debe entregarse hasta el jueves. Cada alumno lleva su propio refrigerio.

El pedido hecho a la IA: "Escribe un aviso corto para las familias con la información de la excursión."

Abre las dos respuestas (después de escribir tu regla)

Respuesta 1: "¡Hola, familias! Nuestro grupo va a vivir un día increíble en el museo de ciencias. Salida a las 7h30 y regreso a las 13h. ¡No se olviden del refrigerio!"

Respuesta 2: "Excursión del 7º A al museo de ciencias. Salida a las 7h30, regreso a las 12h. Entreguen la autorización firmada hasta el jueves. Cada alumno lleva su propio refrigerio."

Ver el gabarito

Una regla posible, un ítem por criterio. Fidelidad: horarios, autorización y plazo del jueves iguales a los del material. Formato: aviso corto, hasta cuatro líneas. Verificable: toda la información está en el material. La Respuesta 1 falla en fidelidad (el retorno cambió a 13h y desapareció la autorización) y en verificable (agregó un "día increíble" que no está en el material); pasa el formato. La Respuesta 2 pasa en los tres. Si tu regla tenía otros ítems, revisa cada uno de la misma forma: esperado, observado, ¿pasó?

Acabas de decidir entre dos respuestas por una regla escrita, y no por el tono.

Cola de la lección

Regla de calidad

  1. Antes del pedidoescribe lo que tiene que aparecer y lo que no puede.
  2. Tres criteriosfidelidad, formato, conclusiones verificables.
  3. Tablacriterio, esperado, observado, ¿pasó? Y guarda una respuesta mala.

Tu próximo paso

Ya sabes elegir una respuesta por criterio, y no por la apariencia.

Hoy, antes del próximo Resumen que le pidas a la IA, escribe la regla en tres líneas y revisa la respuesta con ella.

En la próxima lección: probar dos modelos cuesta. Vas a descubrir de qué cuenta sale ese costo, porque la suscripción y la clave de acceso cobran de formas diferentes.

Material complementario · Crea una regla de calidadTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Una regla transforma opinión en observación. Defina antes de la solicitud qué hechos deben aparecer, qué errores son inaceptables y cómo se usará la salida. Use tres criterios pequeños: fidelidad a los datos, formato combinado y posibilidad de verificar las conclusiones.

Por qué aprender

Sin criterio, usted elige la respuesta más bonita. Un informe puede sonar convincente y alterar valores. La prueba debe reflejar el trabajo que necesita entregar, no una demostración hecha para impresionar.

Conceptos clave

Aceptación; evidencia; muestra representativa; comparación controlada.

En la práctica

En un acta ficticia con tres responsables, la prueba exige los tres nombres, sin plazo inventado y una sección de pendientes. Una frase elegante no compensa perder un responsable.

✓ Hazlo

Use la tabla: criterio | esperado | observado | ¿pasó? Guarde una respuesta mala también para recordar lo que se está intentando evitar.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

Lección 4 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 1 · Lección 5 de 6

La suscripción y la clave de acceso son cuentas diferentes

Una coordinadora compara dos facturas impresas diferentes, con una calculadora y el notebook abierto en la pantalla de configuración.

Puedes identificar el método de acceso de cada herramienta de IA y registrarlo en la ficha del proyecto, sin exponer ninguna credencial.

Un test puede estar consumiendo una cuenta diferente a la que crees. Suscribir un chat no te da saldo libre para cualquier programa. Si hoy solo usas el chat con tu cuenta, en tu ficha habrá una línea. Las otras entran cuando el curso llegue a esos programas, en el módulo 3.

En 1 minuto

  1. Entrar con la cuenta usa los derechos y límites de tu plan.
  2. Una clave de acceso cobra por consumo, en otra cuenta.
  3. Registra el método en la ficha. Nunca la credencial.

1 Entrar con la cuenta usa tu plan

Hacer login con la cuenta de ChatGPT usa los derechos y los límites de esa cuenta. Vienen del plan y del espacio de trabajo. Lo que puedes usar y cuánto, viene del plan.

Estos límites y reglas cambian. La fuente de verdad es la configuración actual de tu cuenta, y no lo que alguien contó.

Lúcia usa el chat con la cuenta de la escuela. Cuando alcanzó el límite de uso del día, descubrió que el límite era del plan de la escuela y no el suyo.

Configuración de la cuenta
1 Plan: [nome do plano da escola]
2 Espacio de trabajo: [nome da escola]
3 Uso: límites del plan
  1. 1El plan dice qué puede usar la cuenta.
  2. 2El espacio de trabajo dice de quién es la cuenta.
  3. 3El límite viene de ahí, no del modelo.

2La clave de acceso cobra por consumo

Los programas usan la IA a través de una API. Para eso, usan una clave de API, cobrada por consumo en la plataforma.

Suscribir el chat no significa recibir saldo libre para cualquier programa que llame a la API. Son dos cuentas, con dos cobros.

Denise ejecutó un programa de reportes con una clave de API de la escuela. Los tokens gastados aparecieron en la plataforma, y no en la suscripción del chat.

Entrar con la cuenta

Quién lo usa: tú, en la pantalla del chat o en un agente conectado a la cuenta.

Cobro: el plan de la cuenta, con sus límites.

Clave de API

Quién lo usa: un programa.

Cobro: por consumo, en la plataforma de la API.

Los dos caminos pueden usar un modelo con un nombre parecido y aun así cobrar a cuentas diferentes.

3 Centrales tienen crédito propio

Centrales como el OpenRouter y el Kie tienen crédito propio, cobrado por consumo. Está separado de cualquier suscripción.

Entonces existen al menos tres lugares de los que puede salir el dinero: el plan del chat, la plataforma de la API y el crédito de la central.

Lúcia generó los carteles de la semana de la lectura en una central, con un crédito pequeño que ella misma compró para probar. El crédito se acabó a mitad del lote. La suscripción del chat seguía activa, pero no cubría eso.

De dónde sale cada costo
1 Plan del chat
uso por la pantalla o por agente conectado a la cuenta
2 Plataforma de la API
programas con clave de API, por consumo
3 Crédito de la central
modelos a los que accede la central, por consumo

Ponte a prueba

Lúcia se suscribe a un plan del chat. Ella genera carteles en una central, y el crédito de la central se acabó. ¿Qué lo resuelve?

4 Revisa el método antes de una ejecución larga

Antes de dejar algo funcionando por mucho tiempo, revisa qué método está activo: en la configuración de la herramienta, mira el plan de la cuenta o la clave en uso. Más adelante, en el Codex, un comando en el terminal muestra eso.

En la ficha del proyecto, anota el método: cuenta, clave o central. La credencial en sí nunca va a la ficha, para un pedido o para un print.

Antes de pedir el resumen de las cuarenta actas del año, Denise revisó en la configuración y escribió en la ficha: "chat de la escuela · cuenta de la escuela · límite del plan". Sin ninguna contraseña.

Ficha de Denise · acceso
1 Herramienta: chat de la escuela
2 Método: cuenta de la escuela
3 Dónde lo verifiqué: Configuraciones › Plan
4 Límite de gasto: el límite del plan · Credencial: no anotada
Cómo va a ser en Codex, a partir del módulo 3
Terminal
$ codex login status
Logged in using ChatGPT

La primera línea es lo que tú escribes. La segunda, en inglés, dice "conectado usando el ChatGPT": el método es la cuenta.

Con una clave de API activa, la respuesta cita la clave, pero nunca el valor completo.

Si te trabaste aquí, es normalCodex solo llega al módulo 3. Por ahora, revisa el método en la pantalla de configuraciones de la herramienta que usas y anota lo que muestra.

Practica ahora 0/3

Registra el método de acceso en la ficha del proyecto

Listo cuando la ficha tenga una línea por cada herramienta de IA que usas, con el método y dónde lo verificaste. Cerca de 8 minutos, en la computadora o en el celular.

¿Solo usas el chat con tu cuenta? Entonces la ficha tiene una línea, y está bien así. Solo anotas el tipo de acceso, nunca contraseña ni clave. Si encuentras una clave pegada en algún documento, bórrala de ahí y avisa a quien administra esa cuenta.

FICHA DEL PROYECTO · ACCESO
Herramienta: <ex.: chat de la escuela>
Método: <cuenta · clave de API · central>
Dónde lo verifiqué: <ex.: Configuraciones › Plan>
Límite de gasto: <ex.: el límite del plan>
Credencial: NO ANOTAR AQUÍ

Acabas de mapear de dónde sale el costo de cada herramienta, sin exponer ninguna credencial.

Cola de la lección

Acceso y cobro

  1. Cuentaderechos y límites del plan.
  2. Clave de API y centralesconsumo, cada una en su cuenta.
  3. Fichael método sí; la credencial nunca.

Tu próximo paso

Ya sabes decir de qué cuenta sale el costo de cada herramienta que usas.

Hoy, anota el límite de gasto en la ficha. Si usas solo el chat, ese es el límite del plan, en Configuración › Plan. Si usas un centro o una API key, mira si permite un tope mensual.

En la próxima lección: con la cuenta correcta, ¿hasta dónde dejar que la IA se maneje sola? Vas a escribir una autorización con inicio, punto medio y punto de parada.

Material complementario · Entiende el acceso y el cobroTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Iniciar sesión con ChatGPT usa los derechos y límites asociados a la cuenta y al espacio de trabajo. Una clave de API usa cobro por consumo en la plataforma. Suscribirse a ChatGPT no significa recibir saldo libre para cualquier programa que llame a la API. Centrales como OpenRouter y Kie tienen crédito propio, cobrado por consumo y separado de cualquier suscripción. Verifique el método activo antes de una ejecución larga.

Por qué aprender

Esta precaución evita descubrir después que un experimento está consumiendo una cuenta diferente. Los límites de uso, el acceso a modelos y las reglas de datos pueden cambiar; la fuente de verdad es la configuración actual de su cuenta.

Conceptos clave

Suscripción; autenticación; API; consumo; límite de gasto.

En la práctica

Un estudiante usa Codex conectado al ChatGPT y luego ejecuta un programa con OPENAI_API_KEY. Son rutas distintas, incluso si usan un modelo con un nombre similar.

Experimenta ahora

En Codex, use codex login status para comprobar el método. En la ficha del proyecto, registre el método, nunca la credencial.

Lección 5 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 1 · Lección 6 de 6

La autonomía es autorización con alcance

Una profesora escribe a mano una lista corta en un block al lado del notebook, con un sobre sellado y aún no enviado separado en la mesa.

Puedes escribir una autorización en cinco partes — objetivo, archivos, acciones, tiempo y parada — y pedir un cierre que diga qué se hizo y cómo se verificó.

Un agente ejecuta varias etapas y puede equivocarse en varias de ellas. Sin un límite escrito, puede gastar tiempo, crédito o tocar el archivo equivocado. Un límite simple protege todo eso sin impedir el trabajo útil.

En 1 minuto

  1. La autonomía es una autorización con alcance, no una invitación para hacer cualquier cosa.
  2. Cinco partes: objetivo, archivos, acciones, límite de tiempo y punto de parada.
  3. El resultado dice qué se hizo y cómo se verificó.

1Un agente hace varias etapas seguidas

En un chat, tú envías un mensaje y recibes una respuesta. Un agente recibe un objetivo y sigue solo: lee archivos, crea, compara, corrige.

Eso te ahorra trabajo. También multiplica los puntos en los que puede equivocarse sin que tú lo veas.

Lúcia le pidió a un agente que organizara las notas del bimestre. Leyó tres planillas, creó una nueva y renombró las antiguas. La última etapa ella no la había pedido.

Chat

Un mensaje, una respuesta.

Tú ves cada paso antes del siguiente.

Agente

Un objetivo, varias etapas: leer, crear, comparar, corregir.

Tú ves el resultado al final.

Los dos son útiles. El agente necesita un límite escrito porque tú no acompañas cada etapa.

2Cinco partes de una autorización

Combina cinco cosas antes de empezar: el objetivo, los archivos permitidos, las acciones autorizadas, el límite de tiempo y la condición de parada.

En un chat, el tiempo se vuelve “responde en un solo mensaje”; en un agente, es un tope de ejecución. Permiso técnico e instrucción escrita se complementan: la herramienta limita lo que es posible, y la autorización dice lo que se desea.

Denise escribió la autorización del agente que prepara el informe mensual de asistencia. Le tomó dos minutos y cabe en un post-it.

Autorización · informe de asistencia
1 Objetivo: borrador del informe de asistencia de septiembre
2 Archivos: solo la planilla de asistencia de septiembre
3 Acciones: leer la planilla y crear un borrador; no borrar ni renombrar
4 Tiempo: hasta 10 minutos
5 Parada: entregar el borrador y parar antes de enviarlo
  1. 1Lo que hay que producir.
  2. 2Lo que puede leer.
  3. 3Lo que puede hacer.
  4. 4Hasta cuándo.
  5. 5Dónde para y espera tu confirmación.

3Que exista el botón no es permiso

Enviar un mensaje, publicar o borrar son acciones externas. Cada una exige una instrucción explícita. El hecho de que exista el botón de envío no autoriza a usarlo.

Lúcia autorizó al agente a crear el borrador del comunicado de la gincana y compararlo con el del año pasado. Enviarlo a las familias quedó fuera, a propósito.

Agente

TúCrea el borrador del comunicado de la gincana usando solo el archivo de reglas de la gincana. Compáralo con el comunicado del año pasado. Para antes de enviárselo a cualquier persona.

IABorrador del comunicado creado. Comparación: tres fragmentos repetidos del año pasado, marcados en el borrador. No envié: el envío no estaba autorizado.

Se detuvo donde la autorización indicaba detenerse y dijo eso.

Ponte a prueba

La autorización decía solo "organize a pasta das provas". El agente podía borrar archivos y borró tres que parecían copias. ¿Qué parte de la autorización faltó?

4La salida cuenta lo que hizo y cómo lo comprobó

Pide siempre un cierre en tres partes: qué se hizo, cómo se verificó y qué quedó pendiente. Así el resultado se vuelve algo que revisas, y no algo en lo que necesitas creer.

El agente de Denise terminó el borrador del informe de asistencia y listó lo que comprobó. Ella abrió la hoja de cálculo, comprobó uno de los números y aprobó el resto.

Agente · cierre

IAHecho: borrador del informe con la asistencia por curso. Verificado: el total por curso coincide con la suma de las filas de la hoja de cálculo. Pendiente: el curso 8º C tiene dos filas sin fecha. No lo completé.

Tres partes, y la pendencia no se completó con una suposición.

Si te trabaste aquí, es normalQuizás todavía no uses ningún agente. La práctica de esta lección es en el chat, que no permite enviar nada: entrena a escribir la autorización, no prueba que la IA obedezca. La prueba con un agente real viene en el módulo 3, con la autorización que escribas hoy.

Practica ahora 0/3

Escribe y prueba una autorización con punto de parada

Listo cuando el cierre incluya lo que se hizo, cómo se verificaron los tres puntos y qué quedó pendiente. Cerca de 10 minutos, en el chat que ya usas.

Usa datos ficticios o un texto tuyo sin información personal. No se envía nada a nadie: el punto de parada garantiza eso. Si la IA se pasa del límite, anota lo que hizo y refuerza esa línea.

1. OBJETIVO
<ex.: borrador de un aviso sobre la gincana>

2. ARCHIVOS: USA SOLO ESTE MATERIAL
<pega aquí el texto o los datos ficticios>

3. ACCIONES AUTORIZADAS
<ex.: escribir el borrador en hasta ocho líneas; no inventar fechas ni nombres>

4. TIEMPO
Responde en un solo mensaje.

5. PARADA
Detente antes de publicar o enviar.

CIERRE (los tres puntos son tu vara de la lección 4)
Di qué hiciste, cómo verificaste estos tres puntos y qué quedó pendiente:
- <ex.: la fecha es la misma que el material>
- <ex.: ningún nombre que no esté en el material>
- <ex.: hasta ocho líneas>
Mira el molde ya completado por una coordinadora

1. Objetivo: borrador del aviso de cambio de horario de la biblioteca.
2. Archivos: [horario anterior y nuevo pegados]
3. Acciones: escribir el aviso en hasta seis líneas; no inventar motivo.
4. Tiempo: responde en un solo mensaje.
5. Parada: detente antes de enviar.
Cierre: di qué hiciste, cómo verificaste los dos horarios, la ausencia de nombres y el límite de seis líneas, y qué quedó pendiente.

Acabas de delegar una tarea con alcance, verificación y punto de parada.

Cola de la lección

Autorización con alcance

  1. Cinco partesobjetivo, archivos, acciones, tiempo, pausa.
  2. Acción externaenviar, publicar o borrar solo con instrucción explícita.
  3. Cierrequé hiciste, cómo verificaste, qué quedó pendiente.

Tu próximo paso

Cerraste el módulo 1: ya eliges el modelo según la tarea, lo contrastas con una regla, sabes de dónde sale el costo y delegas con límite.

Cuando tengas unos 30 minutos, abre el material complementario de esta lección y haz el laboratorio opcional del módulo, "Tu ficha de decisión": la misma solicitud en dos modelos, evaluada con tu regla.

En el próximo módulo: Chat, Work y Desktop. Tres formas de trabajar con la IA y cuándo usar cada una.

Material complementario · Delimita la autonomíaTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

La autonomía es una autorización con alcance, no una invitación a hacer cualquier cosa. Combine objetivo, archivos permitidos, acciones autorizadas, límite de tiempo y condición de parada. La salida debe incluir lo que se hizo y cómo se verificó.

Por qué aprender

Un agente puede ejecutar más pasos que un chat, inclusive errar en varios de ellos. Un límite simple protege tiempo, presupuesto y archivos sin impedir el trabajo útil. El permiso técnico y la instrucción escrita se complementan.

Conceptos clave

Alcance; aprobación de acciones externas; techo de ejecución; resultado revisable.

En la práctica

Autorice crear un borrador y comparar datos ficticios. Enviar la propuesta a un cliente es otra acción y requiere instrucción explícita. El botón de envío existir no significa autorización para usarlo.

Experimenta ahora

Escriba: use estos archivos; genere este resultado; verifique estos tres puntos; deténgase antes de publicar o enviar.

Laboratorio del módulo: Tu ficha de decisión

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Elija una tarea pequeña que ya sepa evaluar: resumir una reunión ficticia.
  2. Escriba tres hechos que obligatoriamente deben aparecer en el resumen.
  3. Ejecute la misma solicitud en dos modelos disponibles, sin cambiar los datos.
  4. Compare hechos preservados, invenciones, tiempo y esfuerzo de revisión. Registre su elección.

Ficha de comparación

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

Tarea: resumir una reunión ficticia
Entrada: pauta con 5 ítems
Criterios: conservar 5 ítems; no inventar plazos
Modelo / esfuerzo: anota lo que está disponible
Resultado observado: registra los aciertos y errores
Elección: justifica por el resultado, no por el nombre

Criterio de listo

Comparar modelos con una tarea real y un criterio de calidad. Registre el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de cualquier envío.
  • Continuidad — Otra persona puede encontrar el próximo paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

Una respuesta llegó más rápido, pero inventó dos plazos. ¿Qué resultado debe orientar la elección?

Ver respuesta comentada

La calidad verificable y el retrabajo; la velocidad aislada no basta.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • El modelo razona; la interfaz recibe el objetivo; los archivos dan evidencia; las herramientas ejecutan; tú verificas.
  • Texto; imagen; video; clasificación; centrales de acceso; disponibilidad.
  • Modelo y esfuerzo son ejes diferentes; comience por el predeterminado; compare en condiciones iguales.
  • Aceptación; evidencia; muestra representativa; comparación controlada.
  • Firma; autenticación; API; consumo; límite de gasto.
  • Alcance; aprobación de acciones externas; techo de ejecución; resultado revisable.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Términos de esta sección: OpenRouter, Kie.

Lección 6 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 1 de 6

Pregunta corta que cabe en el chat

Una profesora en la sala de profesores escribe una pregunta corta en el notebook, con una tarjeta de receta, un vaso medidor y naranjas cortadas a la mitad al lado, que va a usar para explicar fracciones.

Puedes hacer una pregunta corta con público y finalidad y recibir la respuesta con las suposiciones de la IA a la vista.

No todas las tareas piden una herramienta grande. Montar una rutina complicada para algo que solo necesitaba una respuesta gasta tiempo y además te deja más cosas por revisar. Saber cuándo basta con el chat es el primer filtro de este módulo.

En 1 minuto

  1. Chat es conversación: tú preguntas, lees la respuesta y ajustas el pedido.
  2. Sirve para aclarar un concepto o redactar un borrador de un mensaje.
  3. Dile para quién y para qué, y pide las suposiciones de la IA.

1El chat es una conversación: pregunta, respuesta, ajuste

El chat es una interfaz de conversación. Piensa en la pregunta que le haces a una colega en el pasillo, entre dos lecciones. Es corta, la respuesta llega al instante y tú decides qué hacer con ella.

Si la respuesta no te sirvió, no vuelves a empezar. Envía un ajuste en la misma conversación.

Lúcia va a cubrir la lección de matemáticas de una colega. Pidió tres formas de explicar fracciones con los ingredientes de una receta. Eligió una, ajustó otra y la llevó al grupo.

Chat de IA

TúDame tres formas de explicar fracciones usando los ingredientes de una receta de pastel.

IA1. Media taza de azúcar: la taza dividida en dos partes iguales. 2. Un cuarto de tableta de mantequilla: cuatro trozos, se usa uno. 3. Un tercio de taza de leche: la taza en tres partes, se usa una.

TúCambia el tercero: quiero un ejemplo con tres huevos divididos entre dos recetas.

IA3. Tres huevos para dos recetas: cada una lleva un huevo y medio.

El tercer mensaje es el ajuste: la misma conversación, sin empezar de cero.

Pregunta, respuesta, ajuste. Para eso existe el chat.

2Para quién y para qué cambia la respuesta

Una pregunta suelta recibe una respuesta de enciclopedia. Dile quién va a leer y qué vas a hacer con el texto. La respuesta ya sale con el tamaño y el tono correctos.

Denise necesitaba explicar el consejo de clase a los padres del 6º año. La primera pregunta trajo un párrafo técnico. Con público y finalidad, llegaron dos frases listas para el mensaje.

Chat de IA

Tú¿Qué es consejo de clase?

IAEl consejo de clase es una instancia colegiada de evaluación prevista en la organización escolar, que reúne docentes y equipo pedagógico para analizar el proceso de enseñanza y aprendizaje…

Correcto, pero demasiado largo y técnico para un mensaje a los padres.

TúExplícame qué es consejo de clase en dos frases, para padres del 6º año. Va en un mensaje de la agenda.

IAEl consejo de clase es una reunión de los profesores con la coordinación para conversar sobre cómo va cada grupo y cada alumno. De ahí salen acuerdos para ayudar a quien lo necesita.

Mismo tema, ahora en el tamaño y el tono del mensaje.

Toca los dos botones y compara la misma pregunta con y sin público.

3Pide las suposiciones de la IA

Toda pregunta corta deja huecos. La IA rellena esos huecos sin avisar: supone la edad del grupo, el tono, el tamaño. Pídele que liste lo que supuso.

Así ves el atisbo antes de usar la respuesta. Corregir una suposición cuesta un mensaje.

Lúcia pidió una pregunta de apertura para la lección sobre mezclas. La lista de suposiciones mostró que la IA pensó en alumnos de secundaria. Ella corrigió con una línea.

Chat de IA

TúCrea una pregunta de apertura para una lección sobre mezclas. Al final, lista las suposiciones que hiciste.

IAP: ¿por qué la sal desaparece en el agua, pero la arena no? Suposiciones: alumnos de secundaria; lección de 50 minutos; la pregunta se hará en voz alta.

TúEl grupo es de 8º año. Ajusta la pregunta si lo necesitas.

IAPara 8º año: ¿qué pasa con la sal cuando entra en el agua, y por qué la arena se queda en el fondo?

La suposición incorrecta apareció en la lista, y no escondida en el texto.

Primero lee las suposiciones. Muestran lo que la IA inventó para completar lo que tú no dijiste.

4Cuando el chat basta, y cuándo pide más

La elección es por la intención de la tarea, no por una prohibición técnica. Algunos chats también leen archivos adjuntos. Si la entrega es una respuesta que tú lees y verificas al momento, el chat basta.

Si la entrega es un documento con varias entradas, la conversación queda demasiado corta. Algunos chats tienen un modo para tareas más grandes; en ChatGPT, se llama Work. Ese es el tema de la próxima lección, que también muestra cómo hacerlo sin eso.

Denise casi abrió una tarea larga para escribir un recado de tres líneas. Volvió al chat y lo resolvió en dos minutos.

El chat basta

Explicar un concepto en pocas líneas.

Redactar un recado o un correo corto.

Generar ideas para una lección.

Pide más que conversación

Juntar varias fuentes en una tabla.

Entregar un documento listo para revisar.

Tarea que lleva más tiempo que una conversación.

Pregunta: ¿la entrega es una respuesta que verifico ahora, o un documento que voy a revisar después?

Ponte a prueba

Solo necesitas una explicación de dos frases para un recado. ¿Necesitas usar el Work?

Si te trabaste aquí, es normalNo sabes si tu chat tiene Work o lee archivos? No necesitas saberlo ahora. Esta lección y la práctica funcionan en cualquier chat, incluso en el plan gratuito, en el celular.

Practica ahora 0/3

Haz una pregunta con público, finalidad y suposiciones

Listo cuando la respuesta venga con una lista de suposiciones y tú hayas corregido una de ellas. Cerca de 8 minutos, en el chat que ya usas, en el celular o en la computadora.

Es una pregunta de tu trabajo, sin nombre de alumno ni datos personales. Si la IA no lista las suposiciones, manda solo: "Lista las suposiciones que hiciste".

P: <tu duda en una línea>
Público: <quién va a leer o escuchar la respuesta>
Finalidad: <qué vas a hacer con eso>
Tamaño: <ej.: hasta cinco líneas>
Al final, lista las suposiciones que hiciste sobre lo que yo no dije.
Mira el molde ya completado por una profesora

Pregunta: ¿cómo explicar la diferencia entre evaporación y ebullición?
Público: alumnos de 8º año.
Finalidad: abrir la lección de mañana.
Tamaño: hasta cuatro líneas.
Al final, lista las suposiciones que hiciste sobre lo que yo no dije.

Acabas de hacer una pregunta que da para la primera vuelta y para corregir la suposición de la IA antes de usar la respuesta.

Cola de la lección

Chat es conversación

  1. Conversaciónpregunta, respuesta, ajuste en la misma ventana.
  2. Para quién y para quédefinen el tamaño y el tono.
  3. Suposicionespide la lista y corrígela antes de usar.

Tu próximo paso

Ya sabes cuándo el chat basta y cómo hacer una pregunta que rinde en la primera respuesta.

En la próxima duda pequeña del trabajo, agrega al pedido la línea de las suposiciones. Lleva diez segundos.

En la próxima lección: ¿y cuando la tarea no cabe en una conversación? Aprenderás a hacer una encomienda.

Material complementario · El chat resuelve una conversaciónTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Chat es una interfaz de conversación. Usted presenta una pregunta, recibe una respuesta y puede ajustar la solicitud. Funciona bien para aclarar un concepto o redactar un mensaje. Los recursos adicionales varían: un chat también puede trabajar con archivos y herramientas cuando están disponibles. La distinción didáctica es la intención de la tarea, no una prohibición técnica.

Por qué aprender

Reconocer una necesidad pequeña evita montar una automatización para algo que solo necesita una respuesta. El mejor entorno es el que permite comprobar la entrega con menos fricción.

Conceptos clave

Conversación; aclaración; borrador; revisión humana.

En la práctica

Una profesora pide tres maneras de explicar fracciones usando ingredientes de una receta. Ella analiza los ejemplos y elige uno antes de llevarlo a clase.

✓ Hazlo

Escriba una pregunta corta con público y finalidad. Después pida que la respuesta indique sus suposiciones.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

  • Chat — una conversación
  • Work — una encomienda
  • Desktop — archivos cerca
Misma familia de modelos, tres formas de pedir trabajo. La elección cambia lo que usted necesita entregar junto.

Lección 7 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 2 de 6

La tarea grande se vuelve encomienda

Una coordinadora pedagógica llena una ficha de pedido de una página en una tabla de madera, con tres carpetas de proveedores apiladas al lado del notebook.

Puedes transformar un pedido vago, como "busca proveedores", en una encomienda corta, de cinco partes: objetivo, entradas, salida, límites y parada.

Un trabajo con varias fuentes necesita una definición de listo. Sin ella, la IA puede seguir investigando cuando solo necesitabas comparar tres opciones. Y termina devolviendo un texto largo que no sabes por dónde revisar.

En 1 minuto

  1. El Work recibe una tarea más grande y devuelve un resultado que tú revisas.
  2. Tú defines lo que debe existir al final, y no cada frase del camino.
  3. Cinco partes: objetivo, entradas, salida, límites y parada. Sin Work en la cuenta, la encomienda funciona en el chat común.

1El Work recibe la tarea y devuelve el resultado

En el Work, no conversas frase por frase. Entregas una tarea, como un análisis o un documento, y recibes el resultado para revisarlo. Puede usar archivos y herramientas aprobadas.

Piensa en la encomienda de un pastel en una pastelería. Tú dices sabor, tamaño y día. No te quedas mirando el horno. El Work no aparece en todo el plan. ¿No lo tienes en tu? Usa la encomienda en el chat común: funciona igual.

Denise precisa contratar o ônibus da excursão ao museu. Tem três orçamentos e quer uma comparação para levar à direção.

Conversación

Tú preguntas, lees, ajustas.

Sigues cada respuesta.

Encargo

Tú describes lo que debe existir al final.

Revisas el resultado cuando llega.

En el encargo, el trabajo de pensar viene antes: qué quieres recibir.

2Cinco partes de un encargo

Un encargo dice cinco cosas. El objetivo. Las entradas, que son el material que la IA puede usar. La salida, que es el formato del resultado. Los límites. Y la parada, que es cuándo termina el trabajo.

Parece la autorización de la lección 6, en el módulo 1, y es pariente de ella. La autorización dice lo que la IA puede hacer; el encargo dice lo que debe existir al final.

Denise escribió el encargo de los presupuestos del autobús en cinco líneas. Le tomó tres minutos.

Encargo · autobús de la excursión
1 Objetivo: comparar tres presupuestos de autobús para la excursión
2 Entradas: solo los tres presupuestos pegados abajo
3 Salida: tabla con precio, plazo para confirmar y riesgos
4 Límites: sin investigar otras empresas; si falta un dato, se vuelve "no informado"
5 Parada: entregar la tabla y parar
  1. 1Para qué sirve el resultado.
  2. 2Lo que la IA puede usar.
  3. 3El formato de lo que vuelve.
  4. 4Lo que no debe hacer.
  5. 5Cuándo termina el trabajo.

3"Busca" se convierte en una tabla que tú verificas

Un pedido vago abre la puerta a la investigación sin fin. El encargo cierra esa puerta: tres opciones, los documentos que tú diste, un formato.

Fíjate en el campo sin información. El encargo pidió "no informado", y la IA no completó con una suposición.

Tarea de IA

TúBusca empresas de autobús para una excursión escolar.

IAEncontré muchas opciones. Primero, un panorama del sector de fletamento escolar, con consejos de contratación y documentos requeridos…

Largo, fuera de los tres presupuestos, y sin decir cuándo termina.

TúCompara solo estos tres presupuestos en una tabla con precio, plazo para confirmar y riesgos. Si falta un dato, se vuelve "no informado". Entrega la tabla y para. Empresa A: R$ 1.800, confirma en 2 días. Empresa B: R$ 1.500, plazo no citado. Empresa C: R$ 2.100, confirma en 1 día; autobús sin cinturón en los asientos de atrás.

IAA · R$ 1.800 · 2 días · no informado B · R$ 1.500 · no informado · no informado C · R$ 2.100 · 1 día · asientos de atrás sin cinturón

Tres líneas, solo con lo que estaba en los presupuestos. "No informado" significa que el presupuesto no dice eso, y no que el riesgo sea cero.

Toca los dos botones. El mismo tema, pero entregas muy diferentes.

4La parada indica cuándo terminó el trabajo

Sin parada, la IA decide sola cuándo llega. A veces se detiene temprano. Muchas veces se va demasiado lejos. Indica el tamaño del resultado y el punto en el que la entrega debe parar.

Lúcia pidió una comparación de kits de microscopio para el laboratorio. Lo limitó a tres kits, a los catálogos que pegó y a una tabla. Recibió en una página lo que antes venía en cinco.

Sin parada

Pedido: "Compara kits de microscopio."

Resultado: cinco páginas, con kits de tiendas que ni siquiera conocía.

Con parada

Pedido: "Solo los tres kits de los catálogos pegados. Una tabla. Entrega y para."

Resultado: una página, tres líneas, lista para revisar.

Balance: de cinco páginas a una, con todo saliendo del material que ella dio.

Si te trabaste aquí, es normal¿Tu cuenta no tiene Work? El pedido funciona igual que en el chat común. Pega el molde de la práctica, con el material, y pide la entrega en una sola respuesta. Lo que cambia es el pedido, no la herramienta.

Practica ahora 0/3

Convierte un "investiga" en un pedido corto, de cinco partes

Listo cuando el resultado venga solo con las opciones que tú diste, en el formato pedido, y con "no informado" donde faltó un dato. Unos 10 minutos: en Work si tu cuenta lo tiene, o en el chat que ya usas.

Usa opciones ficticias o datos públicos, sin nombre de alumno ni valor reservado. ¿Las opciones están en PDF o en WhatsApp? Escribe solo lo esencial de cada una, en una línea. Si la IA trae una opción que tú no diste, responde: "Usa solo las opciones que pegué".

OBJETIVO
<ej.: comparar tres opciones de ... para decidir ...>

ENTRADAS: USA SOLO ESTE MATERIAL
<pega aquí las tres opciones>

SALIDA
<ej.: tabla con precio, plazo y riesgos>

LIMITES
No busques otras opciones. El dato ausente se vuelve "no informado".

PARADA
Entrega la tabla y para.
Mira el molde ya completado por una profesora

Objetivo: elegir un kit de microscopio para el laboratorio.
Entradas: Kit 1: R$ 900, 10 unidades. Kit 2: R$ 750, entrega en 15 días. Kit 3: R$ 1.100, 12 unidades, garantía de 1 año.
Salida: tabla con precio, cantidad, plazo y garantía.
Límites: no busques otros kits; el dato ausente se vuelve "no informado".
Parada: entrega la tabla y para.

Acabas de cambiar una búsqueda sin fin por una entrega con inicio, medio y final.

Cola de la lección

Pedido de trabajo

  1. Worktarea mayor, resultado para revisar.
  2. Cinco partesobjetivo, entradas, salida, límites, parada.
  3. No informadodato ausente no se vuelve una suposición.

Tu próximo paso

Ya sabes transformar un pedido vago en un pedido que tiene un momento para terminar.

Guarda el molde completado en un bloc de notas. En la próxima comparación del trabajo, empieza por ahí.

En la próxima lección: el pedido cita archivos. ¿Cómo saber si la IA realmente puede leerlos uno por uno?

Material complementar · Work recebe uma encomendaTexto completo do tópico no OSWork v2. Não conta no tempo da aula.

Qué es

Work permite delegar una tarea con resultado revisable, por ejemplo un análisis o un documento. Puede usar archivos y herramientas aprobadas. En lugar de seguir cada frase, usted define lo que debe existir al final y sigue las etapas relevantes. La disponibilidad depende de la cuenta y del entorno.

Por qué aprender

Los trabajos con varias entradas necesitan una definición de listo. Sin eso, el agente puede seguir investigando cuando tú solo necesitabas una comparación de tres opciones.

Conceptos clave

Objetivo; fuentes; entrega; límites; condición de parada.

En la práctica

Una gestora proporciona datos ficticios de tres proveedores y solicita una tabla con precio, plazo y riesgos. Determina que los campos ausentes se marquen como no informados.

Experimenta ahora

Transforme “investigue proveedores” en una encomienda de una página, limitada a tres alternativas y a los documentos proporcionados.

Lección 8 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 3 de 6

Cerca del archivo no es archivo leído

Una coordinadora pedagógica abre con una llave pequeña un único cajón de un archivo de madera, con los otros cajones cerrados y el notebook encima del mueble.

Puedes armar una carpeta de práctica con dos textos. Y hacer que la IA diga qué archivos recibió, con la primera y la última línea, antes del resumen.

Muchas fallas de la tarea son fallas de acceso. Tú imaginas que la IA ve una carpeta, pero nunca se compartió. Entonces la respuesta habla de documentos que el modelo no leyó.

En 1 minuto

  1. El Desktop es la aplicación en el computador y puede llegar a las carpetas que tú permitas.
  2. Tener la aplicación no te da acceso a todos tus documentos.
  3. Antes del trabajo, pide la lista de los archivos recibidos, con la primera y la última línea de cada.

1El Desktop está en el computador, cerca de las carpetas

El Desktop es la aplicación que está en tu computador. Si tu aplicación ofrece esto, puede abrir carpetas y otras aplicaciones, siempre con tu permiso.

En el chat del navegador, adjuntas o pegas cada archivo. En ambos casos, la IA solo lee lo que llegó hasta ella.

Lúcia usa el chat del navegador de la escuela y el Desktop en la laptop de casa. En ambos, verifica lo que la IA recibió antes de pedir el trabajo.

Chat en el navegador

Adjuntas o pegas cada archivo.

La IA lee lo que tú entregaste.

Desktop

Puede abrir una carpeta que elegiste al dar el permiso.

La IA lee lo que alcanza ese permiso.

Caminos diferentes, la misma regla: la IA solo lee lo que llegó hasta ella.

2Autoriza una carpeta, no todo el computador

Dar acceso es como entregar la llave de un cajón, y no la de toda la escuela. Separa en una subcarpeta solo lo que la tarea necesita. Cuando la aplicación pida acceso, elige solo esa subcarpeta. El nombre de las pantallas cambia entre versiones; lo que no cambia es elegir la carpeta más pequeña posible.

La carpeta de la feria de ciencias tiene tres versiones del presupuesto. Denise quiere probar la IA sin arriesgar el original. Autorizó solo la subcarpeta de ejemplos, con dos copias.

Mis archivos › Feria de ciencias
orcamento-v1
orcamento-v2
orcamento-v3
1 ejemplos
2 orcamento-v1-copia
2 orcamento-v2-copia
  1. 1Solo esta subcarpeta fue autorizada.
  2. 2Dentro de ella, copias. Los originales quedan fuera del alcance.

3Pide la lista de lo que se leyó antes del trabajo

Antes de la comparación, pide los nombres de los archivos que la IA puede leer. Junto, la primera y la última línea de cada uno. Solo el nombre no prueba lectura. La primera y la última línea muestran que llegó el comienzo y el final, y tú lo verificas en el archivo.

Si la lista llega mal, el problema es del acceso, y no del pedido. Corrige el acceso y repite la lista.

Escritorio · subcarpeta ejemplos

TúLista los archivos que puedes leer y copia la primera y la última línea de cada uno. No compares ni resumas todavía.

IAPuedo leer 2 archivos: orcamento-v1-copia primera: "Feira de ciências, orçamento de materiais, versão 1" última: "Total: R$ 640,00" orcamento-v2-copia primera: "Feira de ciências, orçamento de materiais, versão 2" última: "Total: R$ 710,00"

Dos nombres, con la primera y la última línea iguales a las de los archivos. Ahora la comparación puede empezar.

La lista confirma la lectura. Nombre que falta o que sobra es señal para parar y corregir el acceso.

4¿Sin acceso? Entrega por otro camino

Si no existe Escritorio en tu cuenta, o no llega a la carpeta, entrega los archivos por una ruta que funcione. Adjunta en el chat, con el botón de adjuntar al lado del cuadro del mensaje. O pega el texto con un encabezado con el nombre del archivo.

Lúcia pegó dos textos en el chat del navegador, cada uno con el nombre arriba. Pidió la lista antes del resumen.

Chat de IA

Tú=== archivo: roteiro-experimento === Mezclar agua y aceite en un vaso transparente. Observar durante dos minutos. === archivo: lista-materiais === Vaso transparente, agua, aceite de cocina, cuchara. Tiempo total: diez minutos. Lista los archivos que recibiste, con la primera y la última línea de cada uno. No resumas todavía.

IARecibí 2 archivos: roteiro-experimento: "Mezclar agua y aceite en un vaso transparente." … "Observar durante dos minutos." lista-materiais: "Vaso transparente, agua, aceite de cocina, cuchara." … "Tiempo total: diez minutos."

El encabezado le da nombre a cada texto; la primera y la última línea muestran que llegó el comienzo y el final.

Si te trabaste aquí, es normal¿No tienes Escritorio o no sabes si tu chat adjunta archivos? Usa la ruta del encabezado: pega cada texto con "=== archivo: nombre ===" arriba. Funciona en cualquier chat, incluso en el celular.

Practica ahora 0/4

Crea una carpeta de práctica y confirma la lectura

Listo cuando la IA liste los dos nombres y la primera y la última línea correctas de cada uno, antes de que tú pidas el resumen. Aproximadamente 10 minutos. En la computadora, sigue los pasos. En el celular, escribe las dos notas en la app de notas y pégalas en el chat, cada una con el encabezado del step 4.

La carpeta de práctica tiene solo texto inventado, así que no sale nada real de tu computadora. De ahí es de donde adjuntas, y de ahí elegirías en el Escritorio. Si la lista llega con el nombre mal o faltando, no pidas el resumen: vuelve a enviar el archivo y pide la lista de nuevo.

Acabas de separar un problema de acceso de un problema de pedido, antes de que se convirtiera en una respuesta incorrecta.

Cola de la lección

Acceso antes del trabajo

  1. Desktopllega a las carpetas que autorizas, no a todas.
  2. Una subcarpetasolo con lo que necesita la tarea, preferiblemente copias.
  3. Primero listanombre, primera y última línea de cada archivo, antes del resumen.

Tu próximo paso

Ya sabes confirmar lo que la IA leyó antes de confiar en lo que escribió.

En la próxima tarea con archivo, envía primero: "Lista los archivos que recibiste, con la primera y la última línea de cada". Se lleva un mensaje.

En la próxima lección: el archivo se leyó. Pero ¿dónde ocurre el trabajo, y qué pasa si cierras el bloc de notas?

Material complementario · Desktop acerca los archivosTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Desktop significa aplicación instalada en la computadora. En entornos compatibles, puede acceder a carpetas y aplicaciones mediante permisos. La presencia de la aplicación no da acceso universal a tus documentos. Si una herramienta no está disponible, ofrece los archivos por un camino compatible.

Por qué aprender

Muchas fallas de tarea son fallas de acceso: el alumno imagina que el agente ve una carpeta, pero no se compartió. Verifica el contexto antes de la ejecución para evitar conclusiones sobre documentos que el modelo nunca leyó.

Conceptos clave

Carpeta autorizada; acceso local; herramienta disponible; confirmación de lectura.

En la práctica

Una carpeta contiene tres versiones de presupuesto. La gestora autoriza solo la subcarpeta de ejemplos y pide que el agente liste los archivos que puede leer antes de comparar.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Cree una carpeta de entrenamiento con dos textos ficticios. Confirme los nombres leídos antes de pedir un resumen.
  3. Registra el resultado observado y la próxima corrección.

Lección 9 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 4 de 6

Sabe dónde ocurre el trabajo

Al final del día, en un salón de clase vacío, una profesora con la bolsa en el hombro cierra la tapa del notebook y piensa si el trabajo continúa después de que el computador se duerma.

Puedes escribir, para una tarea tuya, dónde se ejecuta, dónde lee las entradas y dónde guarda las salidas.

Una tarea no queda permanente solo porque empezó en una pantalla moderna. Si no sabes dónde se ejecuta, no sabes por qué se detuvo. Ni dónde buscar el resultado.

En 1 minuto

  1. La ejecución local corre en tu computadora y se detiene si se duerme.
  2. En la nube, puedes seguir sin tu máquina, pero solo ves los archivos que llegaron hasta allí.
  3. Anota tres lugares: dónde ejecutas, dónde lees, dónde guardas.

1La ubicación local depende de tu computadora

En la ejecución local, el trabajo se ejecuta en tu máquina. Es como un pastel en el horno de casa: si se va la luz, el horno se detiene.

Importan la energía, la red y los permisos de la computadora. Si el notebook se duerme, la tarea puede detenerse a la mitad.

Lúcia le pidió a la aplicación Desktop, de la lección 9, una revisión de los planes de lección que solo existen en el notebook de ella. Cerró la tapa a las 18h y se fue. Al día siguiente, la revisión se había detenido a la mitad.

Tarea · revisar planes de lección
1 Ejecuta: en el notebook de Lúcia
2 Lee: la carpeta Planos do bimestre, en el notebook
3 Guarda: en la misma carpeta
4 Notebook cerrado a las 18h: la revisión se detuvo a la mitad
  1. 1El trabajo corre en su máquina.
  2. 2Los archivos también están ahí.
  3. 3El resultado queda ahí mismo.
  4. 4La máquina durmió, el trabajo local puede parar.

2La nube sigue, pero solo ves lo que recibió

En la nube, el trabajo corre en computadoras remotas. Es como la panadería: el horno no depende de tu casa. Pero el panadero solo tiene los ingredientes que tú llevaste.

El chat que ya usas es un ejemplo: el modelo trabaja en las computadoras de la empresa. Por eso solo conoce lo que pegaste o adjuntaste.

Denise quiere que el borrador del informe de asistencia quede listo aunque apague el notebook. Para eso, la hoja de cálculo necesita estar en un lugar al que la nube pueda acceder.

Local

Depende de: tu computadora encendida, con red.

Lee: las carpetas de tu máquina que tú permitas.

Nube

Depende de: la herramienta y tu plan, no de tu máquina.

Lee: solo los archivos enviados o conectados a ella.

Ninguno de los dos es mejor. Cada uno tiene una dependencia que necesitas saber.

3El nombre de la pantalla no dice dónde corre

Algunos entornos ejecutan en la nube y siguen aunque tu máquina no esté conectada. Eso depende de la funcionalidad, y no solo del nombre Work o de que la pantalla sea moderna.

En caso de duda, cambia la suposición por tres preguntas. Busca la respuesta en la página de ayuda de la herramienta. O prueba: inicia una tarea corta, cierra el notebook por diez minutos y mira si avanzó. ¿No pudiste saber? Se vuelve una pendencia. En el chat del día a día, espera a que la respuesta aparezca completa antes de cerrar la pestaña. Así no necesitas saber qué pasa con una respuesta a medias.

Suposición

"Empecé en el Work, entonces corre sola."

"El resultado debe estar en algún lugar."

Tres preguntas

¿Dónde ejecuta esta tarea?

¿Sigue con el notebook cerrado?

¿Dónde queda lo que guarda?

Ponte a prueba

Denise inició una tarea en Work y cerró el notebook. ¿La tarea sigue?

4Tres líneas en la ficha del proyecto

Anota, para cada tarea, dónde se ejecuta, dónde lees las entradas y dónde guardas las salidas. ¿No sabes una de ellas? Escríbelo como pendencia. Una pendencia escrita es mejor que una suposición olvidada.

El lugar correcto es la ficha del proyecto, creada en la lección 5. ¿No hiciste la lección 5? Usa cualquier bloc de notas.

Denise anotó las tres líneas del informe de asistencia y una pendencia. Con la pendencia, fue a preguntarle al soporte de la escuela.

Ficha del proyecto · informe de asistencia
1 Ejecuta: en la nube, según la ayuda del Work
2 Lee: la planilla de frecuencia enviada en la tarea
3 Guarda: el borrador vuelve a la propia tarea; yo lo guardo en la carpeta Informes
4 Pendencia: no sé por cuánto tiempo el borrador queda guardado en la tarea
  1. 1Dónde corre.
  2. 2De dónde vienen las entradas.
  3. 3Adónde va la salida.
  4. 4Lo que todavía no sabes, escrito.

Si te trabaste aquí, es normalEl lugar y la nube parecen abstractos hasta que la primera tarea se detiene. Si no sabes responder una línea, escribe "pendencia" y sigue. La lección cumple el objetivo igual: sabes qué necesitas descubrir.

Practica ahora 0/3

Escribe dónde ejecuta tu tarea, dónde lee y dónde guarda

Listo cuando tengas tres líneas, o dos líneas y una pendencia, para una tarea real. Cerca de 8 minutos, en la computadora o en el celular, en la ficha del proyecto o en un bloc de notas.

Es solo anotación: no se ejecuta ni se envía nada. Si no llega ninguna respuesta, está todo bien. Tres pendencias escritas ya muestran qué preguntar.

Tarea: <ej.: revisar los planes de clase>
Ejecuta: <en mi computadora / en la nube / no sé>
Lee las entradas de: <qué carpeta o archivo>
Guarda las salidas en: <dónde queda el resultado>
Pendencia: <lo que todavía no sé>

Acabas de mapear dónde ocurre tu trabajo, algo que casi nadie hace antes del primer fallo.

Cola de la lección

Dónde ocurre el trabajo

  1. Localpara que el computador se duerma.
  2. Nubecontinúa, pero solo con los archivos que recibiste.
  3. Tres líneasejecuta, lee, guarda. El resto es pendiente.

Tu próximo paso

Ya sabes decir dónde corre una tarea y de qué depende para poder seguir.

Antes de cerrar la notebook con una tarea abierta, lee la línea "Ejecuta" de tu ficha.

En la próxima lección: juntar pedido, archivos y verificación en un solo texto, el contrato de entrega.

Material complementario · Local y nube son elecciones de ejecuciónTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Local es la ejecución en tu máquina. Nube es la ejecución en infraestructura remota. Un trabajo local depende de energía, red y permisos del ordenador. Algunos entornos ofrecen ejecución en la nube que continúa sin que la máquina esté encendida; eso depende de la funcionalidad, no solo del nombre Work.

Por qué aprender

Una automatización no queda permanente porque se inició en una interfaz moderna. Necesitas saber dónde vive el proceso, dónde están los archivos y de qué conexiones depende.

Conceptos clave

Ubicación de la ejecución; persistencia; acceso a los archivos; continuidad.

En la práctica

Una revisión de archivo que existe solo en la notebook puede detenerse si el computador se duerme. Un servicio en el VPS sigue, pero solo conoce los archivos transferidos o conectados a él.

✓ Hazlo

En su ficha, escriba dónde la tarea se ejecuta, dónde lee entradas y dónde guarda salidas. Si no lo sabe, trate eso como pendiente.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

Lección 10 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 5 de 6

El pedido se vuelve contrato de entrega

Una coordinadora pedagógica llena, en una tabla de madera, un formulario con campos fijos, como una orden de servicio, con el temario de la reunión impreso al lado y el notebook abierto.

Puedes completar las seis partes de un contrato de entrega y cambiar "bueno" por un criterio que otra persona puede verificar.

La IA no necesita adivinar si quieres una explicación, un archivo para editar o un texto listo para publicar. Cuando nombras lo que debe existir al final y cómo verificar, la desviación aparece antes de volverse retrabajo.

En 1 minuto

  1. Seis partes: objetivo, entradas, salida, límites, verificación y parada.
  2. Son campos de un pedido, no palabras mágicas.
  3. "Bueno" se convierte en un criterio que se puede verificar mirando el resultado.

1Seis campos, una frase cada uno

Piensa en el orden de servicio de una asistencia técnica. Hay campos fijos: el equipo, la falla, lo que no se toca, cómo probar al entregar. Nadie escribe "arregla bien".

El contrato de entrega es la orden de la lección 8 con una sexta parte: la verificación. La autorización de la lección 6, en el módulo 1, cabe dentro de él: objetivo y parada siguen, los archivos se vuelven entradas, las acciones y el tiempo se vuelven límites.

Denise quiere el borrador del acta de la reunión pedagógica a partir de la pauta. Llenó los seis campos en cuatro minutos.

Contrato de entrega · acta de la reunión
1 Objetivo: borrador del acta de la reunión pedagógica, con los puntos de la pauta, para que ella complete con las decisiones
2 Entradas: solo la pauta pegada abajo
3 Salida: acta con una línea por punto de la pauta y el responsable de cada uno
4 Límites: conserva a todos los responsables; no inventes fechas ni nombres
5 Verificación: di si todos los puntos y responsables de la pauta están en el acta; marca fechas ausentes
6 Parada: entrega el borrador y no envíes nada más
  1. 1¿Para qué sirve.
  2. 2Lo que la IA puede usar.
  3. 3Qué debe existir al final.
  4. 4Lo que ella no puede hacer.
  5. 5Cómo se comprueba.
  6. 6Dónde se detiene.

2Nombra lo que debe existir al final

"Haz un acta" deja abierto el formato, el tamaño y qué hacer con lo que falta. El contrato responde a las tres: formato fijo, tamaño definido y dato ausente marcado. La IA deja de adivinar.

Chat de IA

TúHaz un buen acta de esta reunión. [pauta pegada]

IAActa de la Reunión Pedagógica, realizada el 12 de marzo, a las 14h, en la sala de profesores. Estuvieron presentes los profesores…

La fecha, la hora y el lugar no estaban en la pauta. La IA completó con una suposición.

Tú[los seis campos del contrato] Pauta: 1. Calendario de la feria de ciencias. Responsable: Lúcia. 2. Refuerzo de matemáticas. Responsable: Marcos. 3. Materiales de la feria.

IABorrador del acta. Fecha: [no informada en la pauta] 1. Calendario de la feria de ciencias. Responsable: Lúcia. 2. Refuerzo de matemáticas. Responsable: Marcos. 3. Materiales de la feria. Responsable: [no informado]. Verificación: los 3 puntos y los 2 responsables de la pauta están en el acta. La fecha y el responsable ausentes quedaron marcados. No envié nada.

Nada inventado, y lo que faltaba aparece marcado.

Toca los dos botones y busca lo que la IA inventó en el pedido común.

3Cambia "bueno" por un criterio que se comprueba

"Bueno", "claro" y "completo" son deseos. Nadie puede comprobar un deseo. La verificación usa criterios que cualquier persona puede comprobar mirando el resultado, como la regla de calidad de la lección 4.

Lúcia pedía guías de experimento "bien explicadas". Lo cambió por dos criterios. Ahora comprueba cada guía en un minuto.

Deseo

"Una guía de experimento bien explicada y completa."

Criterio

Cada paso empieza con un verbo.

Todo material citado en los pasos está en la lista de materiales.

Balance: dos criterios que cualquier compañero comprueba sin preguntarle qué quiso decir.

4Cuanto más fácil sea verificar, antes aparece la desviación

Una salida fácil de inspeccionar muestra el error en la primera lectura. Por eso el contrato pide formato fijo y una verificación escrita al final.

En el acta de Denise, la verificación decía "2 responsables". Ella contó en la pauta y en el acta: 2 y 2. Le tomó 30 segundos, porque el acta era una lista.

Difícil de verificar

Un texto corrido de una página sobre la reunión.

Para encontrar un error, lo vuelves a leer todo.

Fácil de verificar

Un ítem por punto de la pauta, con el responsable.

Comparas línea por línea con la pauta.

Ponte a prueba

¿Cuál de estas verificaciones otra persona puede verificar mirando el resultado?

Si te trabaste aquí, es normalSeis campos parecen muchos la primera vez. Escribe una frase por campo, aunque sea corta. Si un campo no se aplica, escribe "ninguno". El campo que más marca la diferencia es la verificación.

Practica ahora 0/3

Completa un contrato de entrega y envíalo en el chat

Listo cuando la respuesta termine con la verificación que pediste y hayas confirmado un criterio directo en el material. Cerca de 10 minutos, en el chat que ya usas.

Usa una pauta inventada, sin nombres reales. El enunciado pide que no se envíe nada; en la lección 12 verificas si fue así. Guarda la respuesta: la lección 12 usa esa entrega para la revisión.

OBJETIVO
<ej.: pauta revisada de la reunión, lista para que yo la envíe>

ENTRADAS: USA SOLO ESTE MATERIAL
<pega una pauta inventada con cinco ítems>

SALIDA
<ej.: lista numerada con los cinco ítems y el responsable de cada uno>

LÍMITES
No inventes fechas ni nombres. Si falta un dato, se vuelve [no informado].

VERIFICACIÓN
Di si los cinco ítems están en la salida y marca lo que faltó.

ENUNCIADO
Entrega la pauta revisada y no envíes nada.
Mira el molde ya completado por una profesora

Objetivo: pauta revisada de la reunión de padres del 8º año.
Entradas: 1. Notas del bimestre, con la profesora de ciencias. 2. Feria de ciencias, con la coordinación. 3. Uso del celular. 4. Paseo al museo. 5. Dudas.
Salida: lista numerada con los cinco ítems y el responsable de cada uno.
Límites: no inventes fechas ni nombres; si falta el responsable, se vuelve [no informado].
Verificación: di si los cinco ítems están en la salida y marca lo que faltó.
Enunciado: entrega la pauta revisada y no envíes nada.

Acabas de escribir un enunciado que dice qué debe existir al final y cómo verificar.

Cola de la lección

Contrato de entrega

  1. Seis camposobjetivo, entradas, salida, límites, verificación, enunciado.
  2. Salida con nombreformato fijo, fácil de comparar con la fuente.
  3. Criterioen lugar de "bueno", algo que se verifica mirando.

Tu próximo paso

Ya estás escribiendo enunciados que dicen qué debe existir al final y cómo verificar.

Toma el enunciado que más repites en el trabajo y cambia uno "bueno" por un criterio.

En la próxima lección: la IA dijo "listo". ¿Cómo saber si está listo de verdad?

Material complementario · Escribe un contrato de entregaTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Un buen pedido incluye objetivo, contexto, entradas, restricciones, resultado y verificación. Son campos de un encargo, no palabras mágicas. Cuanto más fácil sea inspeccionar la salida, más fácil será detectar una desviación antes de que se convierta en retrabajo.

Por qué aprender

El agente no necesita adivinar si quieres una explicación, un archivo editable o una publicación. Nombrar el artefacto y la condición de listo acorta la distancia entre intención y ejecución.

Conceptos clave

Artefacto; formato; fuentes autorizadas; criterio observable.

En la práctica

“Use pauta.txt para crear ata-rascunho.md. Preserve todos los responsables, señale fechas ausentes y no envíe nada.” Esta solicitud determina entradas, salida y un límite concreto.

Experimenta ahora

Use el archivo materiais/contrato-de-tarefa.md. Complete cada campo con una frase y reemplace “bueno” por un criterio que alguien pueda comprobar.

  • Objetivo
  • Entrada
  • Salida
  • Límites
  • Verificación
  • Parada
Las seis partes de un contrato de entrega. Sin la verificación y la parada, usted recibe texto en vez de trabajo.

Lección 11 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 2 · Lección 6 de 6

Listo es después de la revisión

En la sala de profesores, una profesora revisa línea por línea un acta impresa frente al temario impreso al lado, señalando una línea con el lapicero, con el notebook abierto cerca.

Tú puedes verificar un hecho, un formato y una acción en una entrega de la IA. Y anotar lo que observaste en cada uno.

La palabra "listo" no muestra que el archivo se abra ni que los datos se hayan mantenido. Una revisión pequeña, hecha por ti, suele encontrar más problemas que pedir de nuevo "mejora".

En 1 minuto

  1. La entrega solo termina después de tu revisión.
  2. Revisa tres cosas: un hecho, un formato y una acción.
  3. Pídele a la IA lo que ella revisó y separa prueba hecha de prueba sugerida.

1Abre la entrega y compárala con la fuente

Es como revisar la bolsa del mercado contra el recibo antes de salir. No basta con que la bolsa esté llena. Cada artículo del recibo tiene que estar ahí, y nada más.

Lúcia recibió el acta de la reunión del área de ciencias. Comparó cada decisión con el temario. Encontró a un responsable que la IA inventó.

Temario (la fuente)

1. Horario del laboratorio. Responsable: Lúcia.

2. Compra de reactivos. Responsable: no definido.

Acta recibida

1. Horario del laboratorio. Responsable: Lúcia.

2. Compra de reactivos. Responsable: Paulo.

Saldo: un nombre inventado, encontrado en dos minutos de comparación.

El acta parecía completa. Solo la comparación línea por línea mostró el nombre que no existía en el temario.

2Tres revisiones: hecho, formato, acción

No necesitas releer todo. Elige tres puntos. Un hecho, que coincide con la fuente. Un formato, que es lo que se pidió. Y una acción, que funciona o se hizo como se acordó.

En el reporte de asistencia, Denise revisó el total de faltas de un grupo y si el archivo se abría con las columnas pedidas. Después, probó el enlace de la hoja de cálculo citado en el reporte.

Revisión · reporte de asistencia
1 Hecho: el total de faltas del 7º A coincide con la suma de la hoja de cálculo
2 Formato: el archivo se abre y tiene una columna por mes
3 Acción: el enlace de la hoja de cálculo, citado en el reporte, se abre
  1. 1Un número, nombre o fecha comparado con la fuente.
  2. 2Abre el archivo y mira si tiene lo que se pidió. En el chat, revisa si la respuesta incluye los elementos o las columnas que se piden.
  3. 3Prueba lo que debería funcionar, como un enlace o una suma, o confirma lo que no debería hacerse.

3Una prueba hecha no es una prueba sugerida

Pídele a la IA la evidencia de lo que verificó. Y pide que separe lo que realmente comprobó de lo que solo sugiere comprobar.

"Revisé todo" no dice qué se revisó. Una lista dice y muestra lo que quedó para que tú lo revises. Incluso el "comprobé" de la IA es una afirmación: comprueba un ítem de la lista como muestra.

Chat de IA

Tú¿Estás lista el acta?

IA¡Sí! Revisé todo y está correcta.

No dice qué se comprobó. No tienes cómo saberlo.

TúMuestra lo que comprobaste, lado a lado con el temario, y di qué quedó sin comprobar.

IATemario 1, Horario del laboratorio → acta 1, Horario del laboratorio: igual. Temario 2, Compra de reactivos → acta 2, Compra de reactivos: igual. No comprobé: si cada responsable es el mismo que el del temario. Te sugiero que compares esa columna.

Los ítems aparecen lado a lado para que los compruebes, y lo que falta está dicho: la columna de los responsables.

Toca en los dos botones. La segunda respuesta señala lo que todavía depende de ti.

Ponte a prueba

¿Cuál de estas respuestas de la IA trae una evidencia que tú puedes comprobar?

4Anota y corrige el pedido, no solo el texto

Anota lo que observaste en cada comprobación, con el resultado exacto. ¿Encontraste un error? Corrige también el pedido antes de reutilizarlo, o la fuente, si el error vino de ella. Si no, el error vuelve la próxima vez.

Lúcia corrigió el nombre en el acta. Después agregó una línea al contrato de entrega: "responsable que el temario no define se vuelve [no informado]".

Registro de la revisión · acta del área de ciencias
1Hecho: ítem 2 con un responsable inventado ✗
2Formato: un ítem por cada punto del temario ✓
3Acción: no se envió nada ✓
4Corrección en el contrato: responsable que el temario no define se vuelve [no informado]
  1. 1Lo que tú viste, con el resultado.
  2. 2Formato comprobado.
  3. 3Acción comprobada.
  4. 4El cambio que impide que el error vuelva.

Si te trabaste aquí, es normal¿No encontraste ningún error? Excelente señal, y la comprobación valió igual. Anota "✓" con lo que comparaste. El registro muestra que miraste, y no solo que confiaste.

Practica ahora 0/3

Revisa un hecho, un formato y una acción

Listo cuando tengas tres anotaciones, una para cada conferencia, con el resultado que observaste. Cerca de 10 minutos, en el papel o en un bloc de notas, en el celular o en la computadora.

Solo lees y comparas: no se altera ni se envía nada. ¿No hiciste la lección 11? Usa la pauta y el acta de práctica justo abajo.

Pauta y acta de práctica, para quien no tiene una entrega

Pauta: 1. Semana de exámenes, con la coordinación. 2. Cambio de salón del 8º B, sin responsable definido. 3. Fiesta junina, con la profesora Ana.

Acta recibida: 1. Semana de exámenes. Responsable: coordinación. 2. Cambio de salón del 8º B. Responsable: profesor Ivo. 3. Fiesta junina. Responsable: profesora Ana. Enviada al grupo de profesores.

Plantilla de acta de práctica

Hecho: "profesor Ivo" no está en la pauta; el punto 2 no tenía responsable. Formato: tres elementos, uno por punto de la pauta, correcto. Acción: el acta dice que fue enviada al grupo, y el envío no estaba autorizado. Corrección en el pedido: "responsable que la pauta no define se vuelve [no informado]; no envíes nada".

Acabas de hacer la parte de la entrega que ninguna IA hace por ti: revisar.

Cola de la lección

Revisar la entrega

  1. Compara con la fuentecada elemento de la fuente está ahí, y nada más.
  2. Hecho, formato, accióntres puntos, cada uno con el resultado anotado.
  3. Evidencialo que la IA revisó de verdad, separado de lo que solo sugirió.

Tu próximo paso

Cerraste el módulo 2: ya eliges entre chat y encomenda, confirmas lo que la IA leyó, sabes dónde corre el trabajo, escribes un contrato de entrega y revisas el resultado.

Cuando tengas unos 30 minutos, abre el material complementario de esta lección y haz el laboratorio opcional del módulo, "De pregunta solta a encomenda".

En el próximo módulo: terminal y Codex en la práctica. El contrato de entrega va junto, ahora con una IA que trabaja en una carpeta tuya.

Material complementario · Revisa el trabajo recibidoTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

Una entrega solo termina después de la revisión. Abre el archivo, compara números con las fuentes y prueba los enlaces o fórmulas relevantes. Pide al agente evidencias de lo que verificó, distinguiendo la prueba ejecutada de la sugerencia de prueba.

Por qué aprender

La frase “listo” no demuestra que el archivo se abra o que todos los datos se hayan preservado. Una verificación independiente pequeña suele encontrar más problemas que una nueva solicitud genérica de mejora.

Conceptos clave

Abrir; comparar; probar; registrar límites.

En la práctica

El acta tiene una lista de decisiones. La profesora confronta cada decisión con la pauta y encuentra una responsabilidad inventada. Corrige la fuente o la solicitud antes de reutilizar el procedimiento.

Experimenta ahora

Revise tres elementos de su entrega: un hecho, un formato y una acción. Anote exactamente el resultado observado en cada uno.

Laboratorio del módulo: De pregunta suelta a encargo

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Crea una agenda ficticia de reunión con cinco puntos, sin nombres reales.
  2. Escribe una solicitud con objetivo, materiales, formato y criterio de revisión.
  3. Usa Work de Chat disponible en tu cuenta para producir la pauta revisada.
  4. Revisa los cinco puntos, guarda el resultado y registra una mejora en la solicitud.

Contrato de tarea

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

Objetivo: preparar una pauta revisable
Entrada: entradas/reuniao.txt
Salida: salidas/pauta.md
Límites: no enviar mensajes; no inventar fechas
Verificación: los 5 ítems originales siguen presentes
Parada: entrega el archivo y reporta las pendientes

Criterio de listo

Redacta una orden de trabajo con entradas, salida y revisión. Registra el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de cualquier envío.
  • Continuidad — Otra persona puede encontrar el próximo paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

¿Necesitas solo una explicación de dos frases? ¿Debe usarse obligatoriamente Work?

Ver respuesta comentada

No. Elige la interfaz por el resultado necesario; Chat puede ser suficiente.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Conversación; aclaración; borrador; revisión humana.
  • Objetivo; fuentes; entrega; límites; condición de parada.
  • Carpeta autorizada; acceso local; herramienta disponible; confirmación de lectura.
  • Ubicación de la ejecución; persistencia; acceso a los archivos; continuidad.
  • Artefacto; formato; fuentes autorizadas; criterio observable.
  • Abrir; comparar; probar; registrar límites.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Lección 12 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 1 de 6

El terminal empieza diciendo dónde estás

Una profesora de ciencias, con bata, observa con calma el notebook abierto en una ventana oscura, con el plano de la escuela impreso sobre la mesa y una etiqueta roja marcando una sala.

Puedes abrir el terminal, escribir dos comandos y decir en qué carpeta estás y qué hay en ella.

A partir de este módulo, la IA trabaja en una carpeta de tu computadora. Si no sabes en qué carpeta estás, ella tampoco lo sabe. Mucho error que parece un fallo de la IA es solo la carpeta equivocada.

En 1 minuto

  1. El terminal es una ventana en la que escribes un comando y lees la respuesta.
  2. pwd dice dónde estás. ls dice qué hay ahí.
  3. Primero la ubicación, luego los archivos. Esos dos comandos no cambian nada.

1Cada sistema tiene su propio terminal

El terminal viene en la computadora. Solo necesitas saber dónde está. Los comandos de este curso están escritos en Bash, el lenguaje del terminal en Linux y en macOS. Mac usa una variación del mismo, y los comandos funcionan igual.

En Windows, funcionan dentro de WSL. El terminal que viene con Windows usa otro lenguaje. No pegues ahí los comandos del curso sin adaptarlos.

Lúcia usa una notebook con macOS. Presionó Cmd+Espaço, escribió "Terminal" y presionó Enter. Tardó diez segundos.

Dónde encontrar el terminal
1 macOS
Cmd+Espaço, escribe "Terminal" y Enter
2 Linux
busca "Terminal" en la lista de aplicaciones
3 Windows
WSL, o la ruta oficial para Windows (lección 14)
  1. 1En el Mac, la búsqueda encuentra el Terminal por el nombre.
  2. 2En Linux, búscalo por su nombre.
  3. 3En Windows, los comandos del curso piden WSL.
Uso Windows: cómo tener el WSL

El WSL es de la propia Microsoft. Abre el menú Inicio, busca "PowerShell", haz clic derecho › Ejecutar como administrador. Escribe el comando de abajo, presiona Enter y reinicia la computadora cuando te lo pida.

PowerShell · administrador
> wsl --install

Después de reiniciar, busca "Ubuntu" en el menú Inicio: esta ventana es la terminal donde funcionan los comandos del curso. La primera vez, te pide un nombre de usuario y una contraseña nuevos: anota la contraseña en un lugar seguro.

Si te trabaste aquí, es normal¿La computadora es de la escuela o te pidió una contraseña que no tienes? No lo fuerces: hoy lee esta lección y pide el WSL a quien cuida la computadora. En la lección 14, la página oficial del Codex también muestra la ruta para Windows.

2Tú escribes una línea y él te devuelve otra

Al abrir, la terminal muestra una línea corta que termina en $, con el cursor parpadeando. En Mac, termina en %: es lo mismo. Es la computadora esperando tu comando.

Tú escribes el comando y presionas Enter. La respuesta aparece justo debajo. Luego, el $ vuelve, listo para el siguiente.

Denise abrió la terminal por primera vez y esperó que pasara algo. No pasó nada, porque estaba esperándola a ella.

Terminal
denise@notebook:~$ pwd
/home/denise
denise@notebook:~$ 

La línea con $ (en Mac, %) es tu turno para escribir. La línea sin $ es la respuesta de la computadora.

Comando, respuesta y el $ de vuelta: siempre es ese vaivén.

3pwd es el "estás aquí"

¿Conoces el mapa de la escuela con la calcomanía "estás aquí"? El comando pwd hace ese papel. Te responde la ruta completa de la carpeta en la que estás ahora.

Lee la ruta como una dirección. Cada barra separa una carpeta, y la última es donde estás. En macOS, tu carpeta personal empieza con /Users; en Linux, con /home.

Lúcia escribió pwd y leyó /Users/lucia. Entonces estaba en la carpeta personal, la misma que se abre cuando haces clic en la casita del Finder.

Terminal · macOS
$ pwd
/Users/lucia

Una sola línea: la carpeta personal de Lúcia. No se creó ni borró nada.

El pwd solo informa. Úsalo siempre que tengas dudas de dónde estás.

4ls muestra lo que hay en la carpeta

Después de saber dónde estás, mira qué hay ahí. El comando ls lista las carpetas y los archivos del lugar actual, uno al lado del otro. En Mac, las carpetas de la carpeta personal aparecen con nombre en inglés, como Documents y Downloads.

Para cambiar de carpeta está el cd. Lo ves en la lección 16. Por ahora, basta con saber que la carpeta de inicio importa.

Denise abrió el Codex en la carpeta Downloads, en una prueba de un colega. Él no veía su proyecto, que estaba en otra carpeta. El pwd lo habría mostrado antes.

Terminal · Linux
$ pwd
/home/denise
$ ls
Documentos  Downloads  Imagens  Músicas

Primero la ubicación y después el contenido. Los nombres cambian de una computadora a otra.

El ls muestra lo que el programa va a ver si empieza a trabajar desde ahí.

Ponte a prueba

Lúcia escribió ls y la carpeta del proyecto no apareció en la lista. ¿Qué revisa primero?

Practica ahora 0/3

Pregunta al computador dónde estás

Listo cuando hayas anotado la respuesta del pwd y tres nombres que el ls mostró. Cerca de 8 minutos, en la computadora.

Los dos comandos solo leen: no se crea, no se mueve ni se borra nada. Si aparece "command not found", revisa la escritura: todo en minúsculas, sin espacio en medio. En Windows sin WSL, detente en el paso 1 y sigue a la lección 14.

pwd
ls

Acabas de leer, en el terminal, dónde estás y qué hay ahí, sin cambiar nada.

Cola de la lección

Primeros comandos

  1. Terminalescribes una línea y él te devuelve la respuesta.
  2. pwdla carpeta en la que estás ahora.
  3. lslo que hay en esa carpeta.

Tu próximo paso

Ya sabes preguntarle al computador dónde estás y qué hay ahí.

Mañana, abre el terminal de nuevo y escribe pwd antes de cualquier otra cosa. Toma diez segundos y se vuelve hábito.

En la próxima lección: poner el Codex en la computadora desde la fuente oficial y comprobar que salió bien con un comando.

Material complementario · Terminal es una puerta de entradaTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Terminal es la ventana en la que escribes comandos para la computadora. Shell es el programa que interpreta esos comandos. Aquí los ejemplos de terminal usan Bash en Linux o macOS; en Windows, usa un entorno Bash vía WSL o sigue el instalador oficial para Windows. No pegues comandos de Linux directamente en PowerShell sin adaptación.

Por qué aprender

Saber en qué entorno estás evita errores que parecen fallas de la IA. El comando cd cambia la carpeta actual; pwd muestra la ubicación en Bash. No es necesario memorizar decenas de comandos para comenzar.

Conceptos clave

Terminal; shell; carpeta actual; comando y respuesta.

En la práctica

Si abres Codex en la carpeta Downloads, no está trabajando automáticamente dentro de meu-primeiro-projeto. Debes elegir la carpeta de inicio.

✓ Hazlo

En Bash, ejecute pwd y luego ls. Lea la salida: primera ubicación, luego archivos. No altere nada en este paso.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

  • Abrir la terminal
  • Entrar en la carpeta
  • Autenticar
  • Pedir la tarea
El orden importa: entrar en la carpeta correcta antes de pedir evita trabajo hecho en el lugar equivocado.

Términos de esta sección: puerto.

Lección 13 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 2 de 6

Programa nuevo viene de la fuente oficial

Una coordinadora con gafas revisa con el dedo la cinta de lacre de una caja entregada en secretaría, antes de abrirla, con el notebook abierto al lado.

Puedes instalar el Codex desde la dirección oficial y confirmar, con un comando, que el computador lo reconoce.

En internet circulan comandos "más rápidos" para poner programas en el computador. Un comando pegado sin verificar puede hacer cualquier cosa. Verificar el origen toma un minuto y evita ese riesgo.

En 1 minuto

  1. Poner el programa, iniciar sesión con la cuenta y abrirlo en la carpeta son tres etapas diferentes.
  2. El comando viene de la página oficial. Verifica la dirección antes de pegarla.
  3. codex --version confirma que funcionó.

1 Tres etapas, una de cada vez

Instalar pone el programa en el computador. Esto no conecta tu cuenta ni elige la carpeta de trabajo. Cada cosa tiene su etapa y su verificación.

Esta lección hace solo la primera. Las otras dos vienen en las lecciones 15 y 16.

Justo después de instalar, Lúcia escribió codex y el programa le pidió que iniciara sesión con la cuenta. Pensó que era un defecto. No era eso: la primera etapa había salido bien y faltaba la segunda.

Del cero al primer pedido
1 Poner el programa en el computador · esta lección
2 Iniciar sesión con tu cuenta · lección 15
3 Abrir en la carpeta del proyecto · lección 16
  1. 1Verifica con codex --version.
  2. 2Tiene su propia verificación, en la lección 15.
  3. 3Verifica con pwd, de la lección 13.

2Verifica el precinto antes de abrir la caja

Cuando llega una caja a la secretaría, miras el precinto y el remitente antes de abrirla. Con un comando es igual: el remitente es la dirección de donde viene.

El comando oficial baja un script desde la dirección chatgpt.com y lo ejecuta. Por eso la dirección importa tanto. Un comando de una página desconocida no se pega.

Denise recibió en un grupo un "modo más rápido" para poner Codex en el computador. La dirección dentro del comando no era la de la página oficial. No lo pegó y usó la página.

✗ Mensaje del grupo

Dirección en el comando: un sitio con "codex" en el nombre, pero que no es chatgpt.com.

Quién lo garantiza: nadie.

✓ Página oficial

Dirección en el comando: https://chatgpt.com/codex/install.sh

Quién lo garantiza: la empresa que hace el programa, en la página de instalación.

Lee la dirección dentro del comando, no solo el título del mensaje.

3Pega el comando y espera la última línea

En macOS y en Linux, el comando de la página oficial es este de abajo. En Windows con WSL, pega el mismo comando dentro de Ubuntu. Sin WSL, sigue la página oficial del Codex, que tiene indicaciones propias.

Usa el botón copiar: no necesitas escribir la barra vertical. El instalador escribe algunas líneas mientras trabaja, y no necesitas entender cada una. Espera a que vuelva el $ (en Mac, %). Quien confirma si salió bien es el paso 4.

Lúcia pegó el comando en el Terminal del Mac y esperó. Las líneas que pasaron, no intentó descifrarlas. Cuando volvió el %, pasó a la verificación.

Terminal · macOS o Linux
$ curl -fsSL https://chatgpt.com/codex/install.sh | sh

Es una sola línea, aunque la pantalla del celular la parta. curl descarga el archivo de la dirección; la barra vertical lo envía a sh, que ejecuta sus comandos.

La dirección en medio del comando es el sello: verifica que sea chatgpt.com.

4codex --version confirma

Para saber si salió bien, pide la versión. Si la computadora reconoce el programa, responde con un número.

Si aparece "command not found", el terminal todavía no encontró el programa. Cierra el terminal, ábrelo de nuevo y repite.

En la notebook de Denise, el primer intento dio "command not found". Cerró el terminal, abrió otro y lo escribió otra vez. Apareció el número de la versión.

Terminal
$ codex --version
codex: command not found
$ # fechou e abriu o terminal de novo
$ codex --version
codex-cli 0.156.1

"command not found" quiere decir "no encontré este programa". Después de reabrir, apareció la versión. El número cambia con el tiempo.

Cualquier número de versión en la respuesta significa: está en la computadora y el terminal lo encuentra.

Si te trabaste aquí, es normal"command not found" justo después de la primera vez es común: el terminal que tenías abierto antes no sabe sobre el programa nuevo. Cierra, ábrelo de nuevo y repite codex --version. ¿Siguió? Copia el mensaje de error, sin ninguna contraseña, y llévaselo a quien cuida la computadora.

Practica ahora 0/3

Instala Codex en la computadora y verifica la versión

Listo cuando codex --version responda con un número. Aprox. 10 minutos, en la computadora, con internet.

El comando solo sirve si es igual al de la página oficial: verifica la dirección chatgpt.com. Si te pide la contraseña de la computadora y es tuya, escribe la tuya: las letras no aparecen mientras las escribes. Si la computadora es de la escuela, detente y habla con quien la cuida.

Paso 2 · pega en el terminal

curl -fsSL https://chatgpt.com/codex/install.sh | sh

Paso 3 · pega en el terminal nuevo

codex --version

Acabas de poner un programa en la computadora usando la fuente oficial y de comprobar que ahí está.

Cola de la lección

Desde la fuente oficial

  1. Tres etapas poner el programa, iniciar sesión con la cuenta, abrir en la carpeta.
  2. Direcciónel comando viene de la página oficial; verifica chatgpt.com.
  3. Versiónun número en la respuesta significa que salió bien.

Tu próximo paso

Ya sabes poner un programa en la computadora sin pegar un comando de origen dudoso.

En la ficha del proyecto, anota en una línea: "Codex · versión <o número> · fuente: página oficial". Toma un minuto.

En la próxima lección: el programa está en la computadora, pero todavía no sabe quién eres. Vas a entrar con tu cuenta sin dejar ninguna contraseña a la vista.

Material complementario · Instálalo desde la fuente oficialTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

La página oficial de Codex ofrece un instalador para macOS/Linux y orientaciones específicas para Windows. Instalar significa agregar el programa a la máquina. El comando de instalación descarga y ejecuta un script oficial; lee la fuente, verifica el dominio y usa tu propia cuenta. No ejecutes comandos recibidos desde páginas desconocidas.

Por qué aprender

La instalación, login y la ejecución son etapas diferentes. Un programa instalado todavía necesita autenticación. Un login completado no significa que abriste la carpeta correcta.

Conceptos clave

Fuente oficial; instalación; versión; diagnóstico.

En la práctica

Después de la instalación, codex --version indica la versión reconocida por el terminal. Si aparece “command not found”, vuelve a abrir el terminal y revisa el camino que indica el instalador.

Experimenta ahora

En macOS/Linux: curl -fsSL https://chatgpt.com/codex/install.sh | sh. Luego verifica con codex --version. Consulta la fuente al pie para otras plataformas.

Lección 14 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 3 de 6

Entra con la cuenta sin mostrar la clave

Una profesora con bata sujeta el gafete de la escuela con el cordón delante del notebook abierto, en una pantalla de acceso, con una cajita de metal con llave en la mesa.

Puedes conectar el Codex a tu cuenta, comprobar por qué método entró y anotar en la ficha solo ese método, sin ninguna contraseña.

Una clave pegada en un mensaje, en un ejemplo o en un print puede ser usada por otra persona, y la cuenta es tuya. También puedes estar conectado por el método equivocado y gastar una cuenta que no esperabas.

En 1 minuto

  1. codex login abre el navegador para que entres con la cuenta de ChatGPT.
  2. codex login status dice por qué método entraste.
  3. En la ficha irá "ChatGPT" o "API". Nunca la clave.

1La credencial pasa por el torniquete, la contraseña queda contigo

En la escuela, pasas la credencial por el torniquete y nadie escucha tu contraseña. El login de Codex funciona así: el terminal te lleva al navegador, y ahí es donde entras.

La contraseña nunca pasa por el terminal. Cuando terminas en el navegador, el Codex recibe la confirmación y guarda la entrada.

Qué planes de ChatGPT incluyen Codex cambia con el tiempo. Antes de empezar, revisa en la página oficial de autenticación si tu plan está ahí. El nombre de tu plan aparece en la configuración de tu cuenta de ChatGPT.

Lúcia escribió codex login. El navegador se abrió en la pantalla de inicio de sesión de ChatGPT. Ella inició sesión con la cuenta de la escuela y volvió al terminal.

Terminal
$ codex login
# o navegador abre; entre com a conta do ChatGPT e volte ao terminal

La primera línea es lo que tú escribes. La segunda es un recordatorio del curso: el resto ocurre en el navegador.

En esta ruta, no se escribe ninguna contraseña en el terminal.

2codex login status muestra el método

Estar conectado no basta: importa por qué camino. Entrar con la cuenta usa el plan de ella. Una clave de API cobra por consumo, en otra cuenta.

Esa diferencia es de la lección 5, en el módulo 1. ¿Saltaste? El resumen es este: son dos cuentas, con dos cobros.

Denise esperaba ver "ChatGPT" y vio que el Codex estaba entrando mediante una clave de API antigua de la escuela. Ella salió con codex logout y entró de nuevo con codex login, por la cuenta.

Terminal
$ codex login status
Logged in using ChatGPT

En inglés: "conectado usando el ChatGPT". El método es la cuenta. Con una clave de API, la respuesta cita la clave, pero nunca el valor completo.

Lee la respuesta antes de pedir cualquier tarea larga.

3Por la API, la clave no aparece en pantalla

¿Vas a entrar con la cuenta de ChatGPT? Puedes saltarte este paso. Si usas API, la clave queda guardada bajo un nombre, OPENAI_API_KEY, que el terminal conoce. El comando oficial le entrega el valor directo al Codex, sin mostrarlo en pantalla.

Escribir la clave en el comando es el error común: queda en el historial del terminal y aparece en cualquier captura. Un archivo .env solo tampoco conecta nada. Algún mecanismo tiene que cargar el valor.

Una compañera pidió la clave de la escuela para probar desde casa. Lúcia no la envió por el grupo. Explicó que la clave dice quién paga y que cada persona entra con su propia cuenta.

✗ Clave en el comando

Así queda: codex login --with-api-key seguido de la clave entera.

Resultado: la clave queda en el historial y en cualquier captura de pantalla.

✓ Comando oficial

Así queda: printenv OPENAI_API_KEY | codex login --with-api-key

Resultado: el valor va directo al programa. En pantalla, solo el comando.

Los dos se conectan. Solo el segundo no esparce la clave.

4En la ficha, el método; la clave, nunca

Anota en ficha del proyecto qué método está activo y en dónde lo verificaste. Es la misma ficha de acceso de la lección 5. ¿Todavía no tienes ficha? Una nota en el celular sirve.

La credencial no va a la ficha, a un pedido ni a una captura de pantalla. Si se filtra, quien se encarga de la cuenta necesita cambiar la clave.

La línea de Denise quedó así: "Codex · ChatGPT · verificado con codex login status". Ninguna contraseña, ninguna parte de la clave.

Ficha de Denise · acceso
1 Herramienta: Codex
2 Método: ChatGPT
3 Dónde verifiqué: codex login status
4 Credencial: no anotada

Si te trabaste aquí, es normal¿No sabes si usas ChatGPT o API? Empieza por la cuenta de ChatGPT, con codex login: es el camino sin ninguna clave. ¿El navegador no se abrió solo? Mira si en el terminal apareció una dirección y abre esa dirección en el navegador.

Practica ahora 0/3

Conecta Codex y anota solo el método

Listo cuando codex login status diga el método y en la ficha aparezca esa línea, sin contraseña. Aproximadamente 8 minutos, en la computadora.

En esta ruta no escribes la contraseña en el terminal: queda en el navegador. ¿No hiciste la lección 14? Revisa antes con codex --version. ¿Computadora de otra persona? Al terminar, sal con codex logout.

Paso 1 · pega en el terminal

codex login

Paso 2 · pega en el terminal, después de entrar al navegador

codex login status

Acabas de conectar un programa a tu cuenta y registrarlo como, sin exponer ninguna credencial.

Cola de la lección

Conectar sin exponer

  1. codex loginla entrada ocurre en el navegador.
  2. codex login statusmuestra el método: cuenta o clave.
  3. Fichaanota el método; la credencial queda fuera.

Tu próximo paso

Ya sabes conectar Codex y decir de qué cuenta sale su uso.

Busca hoy, en tu correo y en las conversaciones de trabajo, alguna clave o contraseña pegada como texto. ¿La encontraste? Bórala y avisa a quien se encarga de esa cuenta.

En la próxima lección: Codex está conectado, pero ¿en qué carpeta va a trabajar? Vas a crear una carpeta de entrenamiento y abrir Codex dentro de ella.

Material complementario · Autentica sin esparcir secretosTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Ejecuta codex login y concluye el flujo del navegador para entrar con ChatGPT. Si eliges API, la clave debe estar en la variable OPENAI_API_KEY; envíala por la entrada estándar, sin escribirla en el comando. Un archivo .env solo no autentica Codex: algún mecanismo debe cargar la variable.

Por qué aprender

Pegar la clave en ejemplos, mensajes o historial puede exponer la cuenta. También es posible estar autenticado con el método incorrecto y consumir una modalidad diferente a la esperada.

Conceptos clave

codex login; codex login status; entrada estándar; cuenta activa.

En la práctica

Para la API, el comando documentado es printenv OPENAI_API_KEY | codex login --with-api-key. Envía el valor directamente al programa, en lugar de mostrar la clave en pantalla.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Elige un método, completa el inicio de sesión y ejecuta codex login status. Registra solo “ChatGPT” o “API” en la ficha del proyecto.
  3. Registra el resultado observado y la próxima corrección.

Lección 15 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 4 de 6

Abre el agente en la carpeta correcta

Una coordinadora con lentes se detiene en la puerta de una pequeña sala de reuniones ordenada y mira hacia adentro antes de entrar; en la mesa, solo un notebook y dos hojas.

Tú puedes crear una carpeta de práctica con tres archivos ficticios, entrar en ella con el terminal y abrir el Codex ahí dentro.

El Codex trabaja en la carpeta en la que se abre. En la carpeta equivocada, lee lo que no debería y no encuentra lo que necesita. Una carpeta pequeña, solo con el material de la tarea, deja claro qué podía tocar.

En 1 minuto

  1. La carpeta de trabajo es la sala de la tarea: solo su material.
  2. El README explica el proyecto para las personas; AGENTS.md le da las reglas al agente.
  3. cd entra en la carpeta, pwd confirma y solo entonces codex.

1Entra en la sala antes de empezar la lección

Quien entra en la sala equivocada da la lección para el grupo equivocado. Con Codex es igual: trabaja donde se abrió. Entonces tú entras en la carpeta antes de abrir el programa.

mkdir -p crea la carpeta, y las de antes si faltan. cd entra ahí. El signo ~ quiere decir "mi carpeta personal": en el Finder de Mac, es la carpeta con tu nombre y el ícono de casita.

Denise creó la carpeta de práctica y entró en ella. El pwd confirmó la dirección antes de que ella abriera cualquier programa.

Terminal
$ mkdir -p ~/projetos/meu-primeiro-projeto
$ cd ~/projetos/meu-primeiro-projeto
$ pwd
/home/denise/projetos/meu-primeiro-projeto

Los dos primeros comandos no responden nada cuando salen bien. Quien confirma es el pwd.

La última carpeta de la dirección es la de la tarea: ahí el Codex va a trabajar.

2En la carpeta, solo el material de la tarea

No necesitas abrir toda tu carpeta personal para experimentar. Un área pequeña, con archivos de práctica, reduce la confusión. Cuando algo sale mal, queda claro qué archivos podrían haber cambiado.

Lúcia pensó en abrir el Codex en la carpeta Documentos, donde están las pruebas y las notas de los grupos. Prefirió la carpeta de práctica, con una pauta ficticia. Nada real quedó al alcance.

mi-primer-proyecto
1 README.md
2 AGENTS.md
3 entradas
reunion.txt
  1. 1¿Para qué sirve el proyecto?
  2. 2Las reglas para el agente.
  3. 3El material de trabajo: una pauta ficticia de cinco ítems.

3Un archivo para las personas, otro para el agente

El README describe la finalidad del proyecto para quien llega. El AGENTS.md le da instrucciones de trabajo al agente.

Los dos terminan en .md porque son texto en Markdown: el # marca el título y el guion, un elemento de lista.

Denise escribió en el README la finalidad: preparar la pauta de la reunión. En el AGENTS.md, puso dos reglas: trabajar solo en esa carpeta y no enviar nada.

README.md · para personas

# Mi primer proyecto

Proyecto de entrenamiento del curso OSWork. Solo archivos ficticios.

Finalidad: preparar la pauta de la reunión pedagógica a partir de entradas/reuniao.txt.

AGENTS.md · para el agente

# Instrucciones para el agente

- Trabaja solo dentro de esta carpeta.

- No envíes ni publiques nada.

Los dos están bien, cada uno para un lector. En el módulo 4, el AGENTS.md crece.

4Revisa la carpeta y abre el Codex

Antes de escribir codex, ejecuta pwd y ls. Si la dirección y los archivos coinciden, abre el programa ahí.

La primera vez en una carpeta, el Codex te pregunta si confías en ella. Es tu carpeta de entrenamiento: elige "Trust and continue" con las flechas y presiona Enter. En este entrenamiento, no uses "Open restricted". Para salir del Codex, escribe /quit y presiona Enter.

Lúcia revisó la dirección, vio los tres elementos en ls y solo entonces escribió codex. Respondió la pregunta sobre la carpeta y salió con /quit, sin pedir nada todavía.

Terminal
$ pwd
/Users/lucia/projetos/meu-primeiro-projeto
$ ls
AGENTS.md  README.md  entradas
$ codex
Trust this folder? Codex can read, edit, and run files here,
subject to your permission settings. …
› Trust and continue
  Open restricted

En inglés: "¿Confías en esta carpeta? El Codex puede leer, editar y ejecutar archivos aquí, dentro de tus permisos." "Trust and continue" es "confiar y continuar"; "Open restricted" abre con restricciones. La respuesta se guarda. Las palabras pueden cambiar un poco con la versión.

Dirección correcta, archivos correctos, y solo entonces el programa.

Si te trabaste aquí, es normalLa pregunta en inglés asusta la primera vez. Solo aparece porque la carpeta es nueva para el Codex. Confirma solo en carpetas que conoces. Si tienes dudas, sal con /quit (o presiona Ctrl+C dos veces) y revisa el pwd de nuevo.

Practica ahora 0/3

Crea la carpeta de entrenamiento y abre el Codex ahí

Listo cuando el ls muestre AGENTS.md, README.md y entradas, y el Codex abra en esa carpeta. Cerca de 10 minutos, en la computadora.

El bloque crea una carpeta nueva y escribe tres archivos ficticios dentro: cada cat > escribe en el archivo todo hasta la línea FIM. Nada fuera de ahí se toca. Usa el bloque solo en esta carpeta nueva: en otra carpeta, reemplazaría un README.md que ya estuviera ahí. Copia todo el bloque, hasta el último ls. Si el terminal se queda quieto mostrando >, presiona Ctrl+C y pega el bloque entero de nuevo.

mkdir -p ~/projetos/meu-primeiro-projeto/entradas
cd ~/projetos/meu-primeiro-projeto
cat > README.md <<'FIM'
# Mi primer proyecto
Proyecto de entrenamiento del curso OSWork. Solo archivos ficticios.
Finalidad: preparar la pauta de la reunión pedagógica a partir de entradas/reuniao.txt.
FIM
cat > AGENTS.md <<'FIM'
# Instrucciones para el agente
- Trabaja solo dentro de esta carpeta.
- No envíes ni publiques nada.
FIM
cat > entradas/reuniao.txt <<'FIM'
Reunión pedagógica (ficticia)
1. Horario nuevo de la biblioteca
2. Gincana de ciencias
3. Recuperación del 8º año
4. Uso de los notebooks del aula de informática
5. Fechas de los exámenes: por definir
FIM
pwd
ls

Acabas de montar un área de trabajo pequeña y abrir el agente exactamente dentro de ella.

Cola de la lección

La carpeta correcta

  1. Sala de la tareauna carpeta pequeña, solo con el material de ella.
  2. README y AGENTS.mduno para personas, otro para el agente.
  3. Ordencd, pwd, ls y solo entonces codex.

Tu próximo paso

Ya sabes abrir el agente en una carpeta que eliges tú, y no donde estaba el terminal.

En el terminal, dentro de la carpeta de entrenamiento, escribe cat entradas/reuniao.txt y lee la pauta. Esos son los cinco ítems que Codex va a leer en la próxima lección.

En la próxima lección: el primer pedido a Codex. Él va a leer la carpeta y decirte qué falta, sin cambiar nada.

Material complementario · Entra en la carpeta antes de pedirTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

La carpeta de trabajo es el banco de la tarea. Crea un área pequeña, con archivos de entrenamiento, antes de permitir cambios. Un README.md describe la finalidad para personas; AGENTS.md da instrucciones operacionales al agente. No necesitas abrir tu carpeta personal completa para experimentar.

Por qué aprender

Un alcance pequeño reduce la ambigüedad y facilita revisar diferencias. Cuando algo sale mal, queda claro qué archivos deberían haber sido afectados.

Conceptos clave

Alcance local; README; AGENTS; archivos de entrada.

En la práctica

El proyecto contiene README.md y entradas/reuniao.txt. La primera tarea es explicar esos dos archivos. No es necesario acceder a documentos personales ni a otros proyectos.

✓ Hazlo

En Bash: mkdir -p ~/projetos/mi-primer-proyecto. Entra con cd ~/projetos/mi-primer-proyecto e inicia codex.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

Lección 16 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 5 de 6

Primero el agente lee, luego él cambia

Una profesora con bata lee hojas impresas con un lápiz en la mano y hace pequeñas marcas en una tablilla, con el notebook abierto al lado, antes de cambiar cualquier cosa.

Puedes pedirle al Codex una lectura de la carpeta sin ninguna edición y comprobar qué archivos usó. Después, tú autorizas solo la creación de un plano.md, que tú misma revisas.

Un pedido como "arregla el proyecto" mezcla diagnóstico y cambio. Si algo sale mal, no sabes en qué parte ocurrió. Separar lectura y edición te da una referencia para revisar.

En 1 minuto

  1. Primer pedido: leer y explicar, sin editar.
  2. Pídele que diga qué archivos usó, y compruébalo con ls.
  3. Después, un cambio pequeño y con nombre: solo el plano.md.

1Revisión antes de la reforma

Nadie serio empieza una reforma rompiendo una pared. Primero viene la revisión: mirar, anotar, entender. Con un agente es lo mismo, en cuatro pasos.

Denise le va a pedir al Codex que "mejore la carpeta de la reunión". Cambió por dos pedidos: primero leer y decir qué falta; después, crear un archivo solo.

El orden del primer trabajo
1 Inspeccionar: leer y explicar, sin editar
2 Planificar: decir qué falta
3 Alterar: un archivo, con nombre
4 Validar: abres y verificas
  1. 1Ningún archivo cambia en esta etapa.
  2. 2La lista de lo que falta es tu referencia.
  3. 3Tú dices qué archivo puede crearse.
  4. 4La última palabra la tienes tú.

2El primer pedido solo lee

En la carpeta de entrenamiento de la lección 16, pídele al Codex que lea el AGENTS.md y el README. Dilo con todas las letras: sin editar. Y pídele que cite los archivos que usó.

Lúcia hizo este pedido en la carpeta de entrenamiento. La respuesta de abajo es real, del Codex, en la misma carpeta, solo acortada.

Codex · meu-primeiro-projeto

TúLee AGENTS.md y README.md. Explica el propósito y lista lo que falta, sin editar. Di qué archivos usaste.

CodexEl propósito es preparar la pauta de una reunión pedagógica usando entradas/reuniao.txt. Falta: la pauta producida, el formato y el lugar de salida, y cómo verificar el resultado. El archivo de entrada existe, pero no leí su contenido. Archivos leídos: AGENTS.md y README.md. También consulté el listado de archivos. No se editó nada.

Explicó, listó lo que falta, dijo qué leyó y qué no leyó. No cambió ningún archivo.

3Revisa lo que usó

La lista de los archivos usados muestra en qué se apoya la respuesta. Compárala con lo que muestra ls en la carpeta.

En la respuesta real, el Codex leyó dos archivos y avisó que no abrió la pauta. Entonces la lista de lo que falta viene solo del README. Es una buena lectura, pero aún no conoce los cinco puntos de la reunión.

Denise leyó "no leí su contenido" y entendió el límite de la respuesta. En el segundo pedido, dejó claro que el plan debía basarse en la pauta.

Lo que dijo que leyó

AGENTS.md

README.md

la lista de archivos de la carpeta

Lo que existe en la carpeta

AGENTS.md

README.md

entradas/reuniao.txt, con los cinco puntos

La diferencia entre las dos tarjetas es exactamente lo que la respuesta todavía no sabe.

4Después, una alteración con nombre

Ahora autoriza un cambio pequeño: crear solo el plan.md, con tres acciones y una verificación para cada una. El Codex puede preguntar "Would you like to make the following edits?". Comprueba que el cambio sea solo en plan.md y elige "Yes, proceed". Si es otro archivo, elige la opción que empieza con "No". ¿Lo creó sin preguntar? También pasa: los permisos actuales te dejan escribir en la carpeta. Verifica con ls.

Después, sal con /quit y lee el archivo con cat plano.md, que muestra el contenido en el terminal. Revisa si las acciones se apoyan en lo que existe en la carpeta.

El plan que Lúcia recibió cubre los cinco ítems de la pauta y avisa que los horarios y las fechas todavía necesitan definirse. Ella revisó en reuniao.txt: todo estaba ahí.

Terminal
$ cat plano.md
# Plano de ações

Base: entradas/reuniao.txt (reunião pedagógica fictícia).
Horários e datas ainda precisam ser definidos.

1. Ação: Organizar o novo horário da biblioteca e as regras
   de uso dos notebooks da sala de informática.
   Verificação: Conferir se a proposta registra o horário
   da biblioteca e as condições de uso dos notebooks.
…

Archivo real creado por Codex con el pedido 2 de la práctica, acortado. Si lo repites, el texto sale diferente; lo que se revisa es si se apoya en la pauta.

Tú revisas el plan contra la pauta, y no contra tu memoria.

Si te trabaste aquí, es normal ¿El plan citó un archivo que no existe en la carpeta? No empieces de cero. Pide la corrección específica: "El archivo tal no existe. Vuelve a hacer el plano.md usando solo los archivos de esta carpeta."

Practica ahora 0/3

Haz la lectura, autoriza el plan y revisa

Listo cuando exista el plano.md en la carpeta y cuando hayas revisado una de las verificaciones directamente en reuniao.txt. Aproximadamente 10 minutos, en el computador.

El primer pedido no cambia nada; el segundo crea un archivo solo, en la carpeta de entrenamiento. ¿No hiciste la lección 16? El bloque de práctica de ella arma la carpeta en un minuto. Si el Codex quiere tocar otro archivo, recházalo y repite el pedido.

Paso 1 · pega en el terminal

cd ~/projetos/meu-primeiro-projeto
codex

Pedido 1 · pégalo dentro del Codex y presiona Enter

Lee AGENTS.md y README.md. Explica el propósito y lista lo que falta, sin editar. Dime qué archivos usaste.

Pedido 2 · pégalo dentro del Codex, solo después de la respuesta al pedido 1

Crea solo plano.md, con tres acciones y una verificación para cada una. Apoya el plan en entradas/reuniao.txt. No alteres ningún otro archivo.

Paso 3 · pégalo en el terminal, después de salir con /quit

cat plano.md
cat entradas/reuniao.txt

Acabas de separar diagnóstico y cambio, y de comprobar el resultado en el material real.

Cola de la lección

Leer antes de cambiar

  1. Pedido 1lee y explica, sin editar.
  2. Archivos usadoscompáralo con el ls.
  3. Pedido 2un archivo, con nombre; tú verificas.

Tu próximo paso

Tú ya sabes conducir el primer trabajo de un agente: leer, planear, cambiar poco y comprobar.

Hoy: lee el plano.md completo y marca la acción que harías primero en la reunión de verdad. Anota el motivo en una línea.

En la próxima lección: el agente escribió un archivo. ¿Y si hubiera escrito el incorrecto? Vas a guardar un punto de retorno antes de cada cambio.

Material complementario · Haz una primera tarea de lecturaTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Comienza solicitando inspección: listar la estructura, leer instrucciones y explicar pendientes. Pide que el agente cite qué archivos utilizó. Después de comprobar, autoriza un cambio pequeño y nombrado, como crear plano.md con tres próximos pasos.

Por qué aprender

Separar diagnóstico y cambio crea una referencia para la revisión. Aprendes el flujo sin mezclar instalación, gran refactorización y publicación en un solo intento.

Conceptos clave

Inspeccionar; planear; cambiar; validar.

En la práctica

Solicitud inicial: “Lee AGENTS.md y README.md. Explica el propósito y lista lo que falta, sin editar.” Segunda solicitud: “Crea solo plano.md, con tres acciones y una verificación para cada una.”

Experimenta ahora

Abre plano.md en el editor y verifica que los pasos se apoyen en el proyecto real. Pide una corrección específica si el agente asumió archivos inexistentes.

Lección 17 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 3 · Lección 6 de 6

Permiso pequeño y un punto de retorno

Una coordinadora con lentes, frente al tablero de llaves de la secretaría, saca una sola llave de un manojo grande para entregársela a una colega más nueva.

Puedes guardar una copia de la carpeta de entrenamiento y pedirle al Codex dos reglas nuevas en el AGENTS.md. Luego, comparas las dos versiones y ves que solo ese archivo cambió.

En la lección pasada, el agente creó un archivo. Si hubiera creado el equivocado, o hubiera borrado otro, ¿podrías decir qué existía antes? Volver atrás exige haber guardado el "antes" y comparar.

En 1 minuto

  1. Dale al agente el permiso más pequeño que se encarga de la tarea.
  2. La regla escrita guía; el permiso del programa limita de verdad.
  3. Antes de cambiar, guarda una copia. Después, compara.

1La clave de una sala, no la clave maestra

Quien va a usar el laboratorio recibe la clave del laboratorio, no toda la salsa. Con un agente es igual: los permisos controlan lo que logra en los archivos, en internet y en los comandos.

Sube un escalón por vez. Leer archivos tiene riesgo bajo; escribir, medio; ejecutar comandos, alto. Cada escalón amplía el daño posible.

Denise le dio a la pasante solo la clave de la sala de lectura. Con el Codex, empezó por el mismo principio: acceso solo a la carpeta de entrenamiento.

Escalones de permiso
1 Leer archivos · riesgo bajo
2 Escribir archivos · riesgo medio
3 Ejecutar comandos · riesgo alto
  1. 1La solicitud de lectura de la lección 17 quedó aquí.
  2. 2El plan.md se subió para acá.
  3. 3Solo con un punto de retorno guardado.

2La regla escrita guía; el permiso limita

Lo que escribes en el AGENTS.md guía el comportamiento del agente. Pero es texto: no impide nada técnicamente. Quien impide son los permisos del programa.

En el Codex, el comando /permissions muestra y cambia lo que puede hacer. Empieza por lo más restringido que sirva para la tarea. No quites todas las protecciones para sortear un error.

El Codex le pidió a Lúcia acceso a internet para consultar una documentación. Ella evaluó esa solicitud sola, sin liberar también borrar archivos o enviar mensajes.

Regla en el AGENTS.md

Ejemplo: "No envíes ni publiques nada."

Lo que hace: guía al agente sobre lo que quieres.

Permiso del programa

Ejemplo: acceso solo a la carpeta de entrenamiento.

Lo que hace: limita lo que puede hacer en verdad.

Los dos son necesarios y se complementan. Uno no sustituye al otro.

3Guarda el "antes" con una copia

El comando cp -r copia una carpeta entera, con todo dentro. Haz la copia antes del cambio, con un nombre que diga qué es.

Más adelante, en el módulo 5, el Git lo hace de una forma más completa. Por ahora, la copia ya te da un punto de retorno.

Antes de autorizar el cambio en el AGENTS.md, Denise copió la carpeta de prueba con el final "-antes". El ls confirmó las dos.

Terminal
$ cp -r ~/projetos/meu-primeiro-projeto ~/projetos/meu-primeiro-projeto-antes
$ ls ~/projetos
meu-primeiro-projeto  meu-primeiro-projeto-antes

El cp no dice nada cuando sale bien. Quien lo confirma es el ls: las dos carpetas, una al lado de la otra.

La carpeta "-antes" no la toca el agente: es tu punto de retorno.

4Compara: ¿solo cambió lo que debía?

Después del cambio, el diff compara la copia con la carpeta actual. Muestra solo las diferencias, archivo por archivo. Las líneas que empiezan con > son las nuevas.

Si en la comparación aparece otro archivo, el agente tocó donde no debía. La copia "-antes" tiene la versión antigua para que la recuperes.

En el diff de Lúcia apareció un solo archivo, el AGENTS.md, con dos líneas nuevas. Era exactamente lo que ella había autorizado.

Terminal
$ diff -r ~/projetos/meu-primeiro-projeto-antes ~/projetos/meu-primeiro-projeto
diff -r …/meu-primeiro-projeto-antes/AGENTS.md …/meu-primeiro-projeto/AGENTS.md
3a4,5
> - Todo resultado vem com a verificação que você observou.
> - Esta tarefa não autoriza publicar nada.

Un archivo citado, dos líneas con >. "3a4,5" significa: después de la línea 3, entraron las líneas 4 y 5.

No apareció nada más: el README, la pauta y el plan quedaron iguales.

Si te trabaste aquí, es normalEl resultado del diff parece código, pero solo necesitas dos cosas: qué archivos aparecen y qué líneas tienen >. ¿No apareció nada? Entonces no cambió nada: mira si Codex llegó a guardar el archivo.

Cómo volver un archivo a la versión de antes

Solo si el diff mostró un cambio que no autorizaste. Copia el archivo de la carpeta "-antes" encima del actual. Atención: esto sustituye el AGENTS.md actual por la versión antigua.

Terminal
$ cp ~/projetos/meu-primeiro-projeto-antes/AGENTS.md ~/projetos/meu-primeiro-projeto/AGENTS.md

Luego, vuelve a ejecutar el diff: sin diferencia, la vuelta salió bien.

Practica ahora 0/3

Cambia con punto de retorno y compara

Listo cuando el diff muestre solo el AGENTS.md, con las dos líneas nuevas. Cerca de 10 minutos, en el computador.

Todo pasa en la carpeta de prueba; la copia "-antes" se guarda al lado. ¿No hiciste las lecciones 16 y 17? El bloque de práctica de la lección 16 monta la carpeta en un minuto. Si el diff muestra otro archivo, no borres nada: anota qué cambió y recupéralo con la copia.

Paso 1 · pega en el terminal, una sola vez

cp -r ~/projetos/meu-primeiro-projeto ~/projetos/meu-primeiro-projeto-antes
ls ~/projetos

Paso 2 · pega en el terminal

cd ~/projetos/meu-primeiro-projeto
codex

Paso 3 · pega dentro de Codex y presiona Enter

Añade estas dos líneas al AGENTS.md, sin cambiar las que ya existen:
- Todo resultado viene con la verificación que observaste.
- Esta tarea no autoriza publicar nada.
No alteres ningún otro archivo.

Paso 4 · pega en el terminal, después de salir con /quit

diff -r ~/projetos/meu-primeiro-projeto-antes ~/projetos/meu-primeiro-projeto
Ya hice esta práctica antes

¿La carpeta "-antes" ya existe? Usa estos dos bloques en lugar de los pasos 1 y 4. Usan el nombre "-antes2".

cp -r ~/projetos/meu-primeiro-projeto ~/projetos/meu-primeiro-projeto-antes2
ls ~/projetos
diff -r ~/projetos/meu-primeiro-projeto-antes2 ~/projetos/meu-primeiro-projeto

Acabas de hacer un cambio verificable: sabes qué había antes, qué cambió y cómo volver.

Cola de la lección

Cambiar con seguridad

  1. Permiso mínimo leer, escribir, ejecutar: un escalón por vez.
  2. Regla y permiso una guía, el otro limita.
  3. Antes y después copia con cp -r, comparación con diff -r.

Tu próximo paso

Cerraste el módulo 3: abre el terminal, pon el Codex en la computadora, entra con la cuenta, trabaja en la carpeta correcta y revisa cada cambio.

Cuando tengas unos 30 minutos, abre el material complementario de esta lección y haz el laboratorio del módulo, "Primeiro projeto acompanhado". Ya hiciste casi todo; junta los pasos.

En el próximo módulo: la casa digital del proyecto, con carpetas, archivos de instrucción y un lugar separado para las contraseñas.

Material complementario · Usa permisos y recuperaciónTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

Los permisos del cliente controlan el acceso a archivos, red y ejecución. Las instrucciones en lenguaje natural orientan el comportamiento, pero no sustituyen el aislamiento técnico. Empieza con permisos restringidos a la carpeta de entrenamiento. No enseñes a eliminar todas las protecciones para saltarte cualquier error.

Por qué aprender

Recuperar un cambio requiere saber qué existía antes. Git y copias de archivos ofrecen puntos de retorno; se practicarán más adelante. Lee lo que hará el comando antes de ampliar permisos.

Conceptos clave

Permiso mínimo; cambios pequeños; comparación; punto de retorno.

En la práctica

El agente solicita acceso externo para consultar la documentación. Evalúa esa necesidad por separado de los permisos para borrar archivos o enviar mensajes.

Experimenta ahora

Escribe en el AGENTS.md qué resultados deben venir con verificación observada y que la tarea no autoriza a publicar. Revisa el diff cuando Git esté activo.

  • Leer archivos
  • Escribir archivos
  • Ejecutar comandos
Suba un escalón por vez. Cada nivel amplía el daño posible y exige un punto de recuperación.

Laboratorio del módulo: Primer proyecto acompañado

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden exigir tiempo adicional para registro y configuración.

  1. Prepara la carpeta meu-primeiro-projeto y un README.md sin información privada.
  2. Verifica la instalación y la autenticación según los comandos de esta lección.
  3. Inicia Codex en esa carpeta y pide un análisis sin modificaciones.
  4. Autoriza crear plano.md, lee el archivo y verifica que respete el README.

Bash · Linux o macOS

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

mkdir -p ~/projetos/meu-primeiro-projeto
cd ~/projetos/meu-primeiro-projeto
pwd
codex --version
codex login
codex login status
codex

Criterio de listo

Abre un proyecto de entrenamiento en Codex y produce una modificación verificable. Registra el archivo creado, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de cualquier envío.
  • Continuidad — Otra persona puede encontrar el siguiente paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

Codex no encontró README.md. ¿El primer paso es aumentar el razonamiento?

Ver respuesta comentada

No. Revisa el directorio actual, el nombre del archivo y el permiso de lectura.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Terminal; shell; carpeta actual; comando y respuesta.
  • Fuente oficial; instalación; versión; diagnóstico.
  • codex login; estado del codex login; entrada estándar; cuenta activa.
  • Alcance local; README; AGENTS; archivos de entrada.
  • Inspeccionar; planear; cambiar; validar.
  • Permiso mínimo; cambios pequeños; comparación; punto de retorno.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Lección 18 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 1 de 6

Una carpeta representa un contexto

Una coordinadora pedagógica abre un cajón del archivo de acero de la secretaría de la escuela; dentro, solo están las carpetas de un curso, y los otros cajones quedan cerrados.

Puedes dibujar el árbol de tu carpeta de proyectos, con config y un proyecto de entrenamiento. Y puedes crearla con un comando en el terminal.

Cuando todo queda en una sola carpeta, la IA lee material de temas que no tienen nada que ver con el pedido. Luego es difícil decir de dónde vino una conclusión. Hoy separas los temas antes de crear cualquier archivo.

En 1 minuto

  1. Una carpeta, un tema de trabajo, con un nombre claro.
  2. La carpeta config guarda lo que vale para todos los proyectos.
  3. Dentro del proyecto, entradas separadas de las salidas.

1La carpeta le dice a la IA dónde empieza y termina el tema

En el archivo de acero de la secretaría, cada gaveta guarda una clase. Nadie busca el 8º A en la gaveta del 7º B. Una carpeta de trabajo hace lo mismo: reúne el material de un solo tema. Ese material es el contexto de la tarea.

Cuando abres el Codex dentro de una carpeta, trabaja a partir de ella. Si la carpeta mezcla temas, lo que no tiene relación con el pedido se vuelve ruido.

Lúcia guardaba el proyecto de la feria de ciencias en la misma carpeta que los boletines. Le pidió a la IA un resumen de la feria y recibió un párrafo con la nota de un alumno en medio.

Todo junto

Ejemplo: feira-de-ciencias.docx, boletins-8A.xlsx, ata-do-conselho.pdf.

Resultado: el resumen de la feria cita una nota de boletín.

Una carpeta por contexto

Carpeta feira-de-ciencias: solo el reglamento y la lista de grupos.

Resultado: el resumen habla solo de la feria.

Balance: la IA lee menos material, y tú sabes de dónde vino cada frase.

2El til es el apodo de tu carpeta personal

En el terminal, el símbolo ~ (til) representa tu carpeta personal. Dentro de ella vas a crear una carpeta de proyectos, que reúne trabajos independientes.

O caminho ~/projetos/config se lee en orden: carpeta personal, luego proyectos, luego config. En el teclado brasileño, la tilde se obtiene con la tecla de la tilde seguida de la barra espaciadora.

Denise escribió pwd en el terminal, como en el módulo 3, y vio la dirección completa de su carpeta personal. El ~ es solo la forma corta de escribir esa dirección.

Terminal
$ cd ~
$ pwd
/Users/denise

cd ~ te lleva a la carpeta personal; pwd muestra dónde estás. En Linux, y en Windows con el terminal del módulo 3, la dirección empieza con /home, como /home/denise.

La dirección cambia de computadora a computadora. El ~ sirve en todas.

3Lo que vale para todos está en config, fuera de los proyectos

La carpeta config, de configuración, guarda el conocimiento que vale para cualquier proyecto, como tus preferencias. Está dentro de proyectos, pero fuera de cada proyecto.

Cada proyecto guarda sus propias entradas, el material que la IA lee, como actas o hojas de cálculo. Y guarda sus propias salidas, lo que ella produce. Separadas, puedes compararlas entre sí. No mezcles en un proyecto documentos de turmas o escuelas diferentes.

Denise prefiere informes cortos, con los pendientes al final. Esto vale para el informe del consejo y para el temario de la reunión con los padres. Entonces ve a config, una sola vez.

~/proyectos
1 config
memoria.md · decisiones.md (lección 3 de este módulo)
2 mi-primer-proyecto
3 entradas
4 salidas
  1. 1Vale para todos los proyectos.
  2. 2Un contexto: el proyecto de entrenamiento.
  3. 3Lo que la IA lee.
  4. 4Lo que la IA produce, para que lo revises.

Ponte a prueba

Denise quiere guardar la nota "prefiero informes cortos". ¿Dónde vive eso?

4Dibuja el árbol antes de crear las carpetas

Antes de crear, dibuja el árbol en el papel: una carpeta config y un único proyecto de entrenamiento. Así eliges los nombres con calma.

Usa nombres cortos, sin espacios y sin acento, como mi-primer-proyecto y salidas. En el terminal, el espacio y el acento dan trabajo en cada comando.

Lucía dibujó en una servilleta: proyectos, con config y feria-de-ciencias; dentro de la feria, entradas y salidas. Le tomó un minuto y evitó tres carpetas con nombres parecidos.

Terminal
$ mkdir -p ~/projetos/config ~/projetos/meu-primeiro-projeto/entradas ~/projetos/meu-primeiro-projeto/saidas
$ ls ~/projetos
config  meu-primeiro-projeto

mkdir -p crea las carpetas y las capas de arriba que falten. Si una carpeta ya existe, se queda como está.

Un comando crea todo el árbol. El ls comprueba el resultado.

Si te trabaste aquí, es normalEl comando es largo porque crea cuatro carpetas a la vez. Cópialo y pégalo tal como está, en una sola línea. Para pegar en el terminal, usa el botón derecho › Pegar; en el teclado, Ctrl+Shift+V en Linux y en Windows, Cmd+V en Mac. ¿Prefieres el mouse? Escribe cd ~ y luego open . en Mac, o explorer.exe . en Windows, dentro del terminal Linux del módulo 3: el gestor de archivos se abre en tu carpeta personal del terminal. Crea allí las carpetas, con el botón derecho › Nueva carpeta.

Practica ahora 0/3

Crea el árbol del proyecto de entrenamiento

Listo cuando el primer ls muestre config y mi-primer-proyecto, y el segundo muestre entradas y salidas. Aproximadamente 8 minutos, en la computadora.

Los comandos solo crean carpetas vacías dentro de tu carpeta personal; nada se borra. ¿Creaste mi-primer-proyecto en el módulo 3? Está bien, lo que ya estaba ahí sigue. ¿Apareció un mensaje de error? Para, revisa si pegaste toda la línea e inténtalo de nuevo una vez.

mkdir -p ~/proyectos/config ~/proyectos/mi-primer-proyecto/entradas ~/proyectos/mi-primer-proyecto/salidas
ls ~/proyectos
ls ~/proyectos/mi-primer-proyecto
Lo que deberías ver
config  meu-primeiro-projeto
entradas  saidas

La primera línea responde al ls de proyectos; la segunda, al ls del proyecto de entrenamiento.

Acabas de crear, con un comando, el árbol que separa lo que siempre vale de lo que es de un solo proyecto.

Cola de la lección

Carpetas por contexto

  1. Una carpeta, un temala IA lee solo lo que le pertenece.
  2. config fuera del proyectolo que vale para todos, en un solo lugar.
  3. entradas y salidaslo que la IA lee, separado de lo que ella produce.

Tu próximo paso

Ya tienes la casa digital lista: una carpeta para lo que siempre vale y otra para el proyecto de entrenamiento.

Hoy, abre tu carpeta Documentos y anota dos temas que estén mezclados ahí. No muevas nada todavía; solo anota.

En la próxima lección: la carpeta existe, pero quien llegue después no sabe para qué sirve. Vas a escribir el README de esa carpeta, en texto simple.

Material complementario · Una carpeta representa un contextoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El símbolo ~ representa la carpeta personal en Bash. Dentro de ella, proyectos reúne trabajos independientes. Usa nombres claros y evita mezclar documentos de clientes diferentes. La carpeta config guarda conocimiento transversal; cada proyecto mantiene sus propias entradas y resultados.

Por qué aprender

Los contextos separados ayudan a limitar lo que la IA necesita leer. Una carpeta llena de asuntos no relacionados aumenta el ruido y dificulta explicar de dónde provino una conclusión.

Conceptos clave

Carpeta personal; proyectos; contexto; entradas y salidas.

En la práctica

En ~/proyectos/website quedan los archivos del sitio. En ~/proyectos/estudios quedan los experimentos. En Windows, el gestor puede mostrar rutas como C:\Users\TuNombre\proyectos.

✓ Hazlo

Dibuja el árbol antes de crear archivos. Elige un único proyecto de entrenamiento y una única carpeta global config.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

  • ~/projetos/
  • config/
  • memoria.md
  • decisoes.md
  • meu-projeto/
  • AGENTS.md
  • entradas/
  • saidas/
Una carpeta por contexto. Las configuraciones quedan fuera del proyecto; entradas y salidas quedan separadas.

Lección 19 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 2 de 6

Markdown es texto organizado

Una profesora de ciencias, en el laboratorio de la escuela, escribe una guía de experimento dividida en tres bloques con títulos, al lado de un notebook con un documento de texto simple.

Puedes escribir el README del proyecto de entrenamiento en Markdown. Cada campo lleva información real o con "por definir".

Una explicación que solo existe en una conversación se pierde cuando la conversación termina. Quien llega después no sabe para qué sirve la carpeta. Un archivo pequeño de texto lo resuelve y dura.

En 1 minuto

  1. # hace título, ## hace subtítulo, - hace elemento de lista.
  2. El archivo termina en .md y se abre en cualquier editor de texto.
  3. El README dice para qué sirve el proyecto y cómo comprobar el resultado.

1Markdown es texto con tres marcas simples

Todo guion de experimento de Lucía tiene título, materiales y procedimiento. Ella subraya los títulos y pone una línea antes de cada material. Markdown hace lo mismo con los signos que tú escribes.

El # al inicio de la línea crea un título, el ## crea un subtítulo y el guion crea un elemento de lista. El archivo sigue siendo texto: puedes leerlo incluso sin un programa especial.

Lucía pasó el guion "Germinación de frijol" a Markdown en cinco minutos. No aprendió nada más que esas tres marcas.

En el archivo

# Germinación de frijol

## Materiales

- 10 granos de frijol

- algodón y un vaso

Cómo se lee

Título: Germinación de frijol.

Subtítulo: Materiales.

Lista: dos elementos, uno por línea.

Las marcas quedan en el texto. Quien lee entiende la estructura aunque no vea el formato.

2El nombre termina en .md y se abre en cualquier editor

Un archivo Markdown es un archivo de texto cuyo nombre termina en .md, como README.md. Se abre en el editor de texto del computador y también en el terminal.

En la terminal, el nano abre el archivo para editarlo ahí mismo. Luego, el comando cat muestra el contenido en pantalla, para que puedas comprobarlo.

Denise abrió el README del proyecto del consejo con nano. Cambió una línea, guardó con Ctrl+O, confirmó el nombre con Enter y salió con Ctrl+X. Después comprobó con cat.

Terminal · dentro de nano
  GNU nano                    README.md
# Meu primeiro projeto OSWork

## Propósito
Produzir relatórios de treino a partir de dados fictícios.

^G Help    ^O Write Out    ^W Where Is    ^X Exit

Así es como aparece el nano: el texto en el medio y los atajos en la parte inferior, en inglés. El ^ significa Ctrl. Write Out es guardar; Exit es salir. Después del Ctrl+O, muestra el nombre del archivo abajo: presiona Enter.

No hay menú de mouse: te mueves con las flechas y escribes directo. Al salir, cat README.md muestra lo que quedó guardado.

3 El README explica el proyecto para quien llega después

El modelo del kit del curso trae cinco secciones: Propósito, Lee primero, Organización, Cómo verificar y Estado actual. Cambias cada texto del modelo por lo que vale en tu proyecto.

¿Aún no sabes un campo? Escribe "a definir". Un campo honesto en abierto es mejor que un texto del modelo que nadie revisó.

En el README de la feria de ciencias, Lúcia escribió en Propósito: "organizar las inscripciones de la feria". En Cómo verificar: "todo grupo inscrito aparece en la lista final".

README.md
1 # Feria de ciencias 2026
2 ## Propósito
Organizar las inscripciones de la feria.
## Lee primero
A definir.
## Organización
- entradas: fichas de inscripción
- salidas: lista final
3 ## Cómo verificar
Todo grupo inscrito aparece en la lista final.
4 ## Estado actual
A definir.
  1. 1Un título con el nombre del proyecto.
  2. 2Para qué existe el proyecto, en una frase.
  3. 3Cómo alguien comprueba si el resultado está bien.
  4. 4Lo que aún no se sabe queda escrito como "a definir". La sección Lee primero se completa en la lección 6 de este módulo.

4 La claridad vale más que el formato

Los archivos pequeños y con nombre claro duran más que una conversación perdida. Las personas pueden revisarlos, y agentes pueden consultarlos.

El valor viene de la claridad. Con esas tres marcas alcanza. Negrita, tabla y enlace son opcionales.

Denise pidió una semana de licencia. La compañera que quedó en su lugar abrió el README del proyecto del consejo y siguió el trabajo sin necesidad de llamarla.

Solo en la conversación

Dónde está: en una conversación de marzo con la IA.

Resultado: la compañera no lo encuentra y le llama a Denise.

En el README

Dónde está: README.md, en la carpeta del proyecto.

Resultado: la compañera lee el archivo y sigue.

Balance: la explicación pasa a vivir en la carpeta, y no en la memoria de alguien.

Si te trabaste aquí, es normal El nano te desconcierta la primera vez: no hay menú con mouse. ¿Prefieres otro camino? En la carpeta del proyecto, escribe open -e README.md en Mac, o explorer.exe . en Windows, dentro de la terminal Linux del módulo 3, y abre el README.md con Bloc de notas. Al guardar, en Tipo, elige Todos los archivos, para que no se convierta en README.md.txt.

Practica ahora 0/3

Escribe el README del proyecto de práctica

Listo cuando el chico te muestre los títulos con # y tú hayas leído cada sección y dejado ahí tu texto o "a definir". Unos 10 minutos, en la computadora.

El modelo es un archivo de texto del kit del curso, sin datos de nadie. Ojo: la segunda línea reemplaza un README.md que ya exista en esa carpeta. ¿Ya escribiste uno? Salta esa línea. ¿No hiciste la lección anterior? Ejecútala antes: mkdir -p ~/projetos/meu-primeiro-projeto

cd ~/projetos/meu-primeiro-projeto
curl -fsSL https://inematds.github.io/oswork/materiais/README-projeto.md -o README.md
nano README.md
Lo que debes ver (inicio)
$ cat README.md
# Meu primeiro projeto OSWork

## Propósito
A definir.

## Leia primeiro
A definir.

El título puede quedar como en el modelo. El texto de las secciones es el tuyo; verifica los títulos con # y ninguna sección vacía. Si el terminal te dice que no conoce el nano, usa el Bloc de Notas, como dice el cuadro "Si te trabaste aquí, es normal", al final del paso 4 de la lección.

Acabas de escribir, en Markdown, la explicación del proyecto que queda en la carpeta, y no en una conversación.

Cola de la lección

Markdown y README

  1. # ## -título, subtítulo y elemento de lista. Nada más es obligatorio.
  2. .mdsigue siendo texto; se abre en nano o en cualquier editor.
  3. READMEpropósito y verificación; lo que falta se vuelve "a definir".

Tu próximo paso

Ya sabes registrar, en un archivo que dura, para qué sirve un proyecto y cómo comprobar el resultado.

Hoy, elige un trabajo real tuyo y escribe solo la sección Propósito de él, en una frase, en un bloc de notas.

En la próxima lección: el README habla de un proyecto. ¿Y lo que aplica para todos, como tus preferencias y decisiones? Vas a dar un archivo para cada tipo de nota.

Material complementario · Markdown es texto organizadoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Markdown usa señales simples para organizar texto: # crea título, ## crea subtítulo y un guion inicia un ítem de lista. El archivo sigue siendo texto, legible incluso sin un editor especial. El nombre termina en .md. No necesitas escribir código para registrar instrucciones claras.

Por qué aprender

Archivos pequeños, nombrados y fáciles de editar duran más que una conversación perdida. Pueden ser revisados por personas y consultados por agentes. El valor proviene de la claridad, no de un formato elaborado.

Conceptos clave

Título; lista; bloque de código; enlace; texto simple.

En la práctica

Un README puede contener: propósito, archivos de entrada, resultado esperado y cómo verificar. Quien llegue después entiende la tarea sin depender de la conversación original.

Experimenta ahora

Abra materiais/README-projeto.md. Copie el modelo a su proyecto y reemplace cada campo por información real o “a definir”.

Lección 20 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 3 de 6

Cada archivo tiene un trabajo

Una coordinadora pedagógica guarda una hoja en uno de los cuatro libros de registro de colores de la estantería de la secretaría, y cada libro cumple una función.

Puedes poner en la carpeta config los cuatro archivos de memoria del kit. Y puedes decir en cuál vive cada nota.

Un documento gigante con todo termina siendo una pila que nadie consulta. Peor: una regla antigua convive con la nueva, y la IA no sabe cuál vale. Un archivo por función lo resuelve.

En 1 minuto

  1. Tu forma que no cambia va a memoria.md.
  2. La elección con fecha y motivo va a decisoes.md.
  3. Cómo se hace va a dicas.md; lo que salió mal, a falhas.md.

1Cada libro de la secretaría responde a una pregunta

La secretaría de la escuela no anota todo en un solo cuaderno. Hay el libro de actas, el libro de incidencias y el cuaderno de procedimientos. Cada uno responde a una pregunta diferente.

En la carpeta config, cuatro archivos hacen ese papel. Separados, tú consultas solo lo que necesitas, y la IA también.

Denise buscaba por qué la reunión de padres había cambiado para el sábado. El motivo estaba en un cuaderno de 40 páginas, entre recados y teléfonos. Le llevó media hora encontrarlo.

~/projetos/config
1 memoria.md
2 decisiones.md
3 dicas.md
4 fallas.md
  1. 1¿Cómo prefiero que salga el trabajo?
  2. 2¿Qué elegimos, cuándo y por qué?
  3. 3¿Cómo se hace, paso a paso, de la manera que ya funcionó?
  4. 4¿Qué salió mal y cuál fue la corrección?

2 Preferencia y decisión viven en archivos distintos

La preferencia es tu manera estable de trabajar, como "prefiero informes cortos". Vive en memoria.md.

La decisión es una elección con motivo, y el motivo puede cambiar. "Elegimos la planilla porque todo el equipo usa la misma" es decisión. Vive en decisiones.md, con fecha.

Lúcia prefiere ejercicios con la clave al final: eso es memoria. En cambio "las pruebas del 8º año tienen 10 preguntas, porque la coordinación estandarizó" es decisión.

Preferencia · memoria.md

"Prefiero ejercicios con la clave al final."

¿Cambia? Casi nunca. No hace falta un motivo.

Decisión · decisiones.md

"Pruebas del 8º año con 10 preguntas, porque la coordinación estandarizó."

¿Cambia? Puede cambiar; por eso lleva fecha y motivo.

Las dos notas están bien. Solo viven en archivos diferentes.

3 Consulta fallas cuando vuelve, y no pegues todo en cada pedido

El fallas.md registra un problema, la causa y la corrección más pequeña, es decir, la protección pequeña que evita la repetición. Sirve para consultar cuando el problema vuelva. El dicas.md guarda procedimientos que ya funcionaron.

Pegar el fallas.md entero en cada pedido, "por si acaso", llena la conversación de avisos que no tienen que ver con la tarea. Lo abres cuando el problema aparece de nuevo.

El resumen de las actas salió vacío un lunes. La carpeta de entradas estaba vacía. Denise anotó en fallas.md y pasó a revisar la carpeta antes de pedir.

fallas.md
1 Síntoma: el resumen de las actas salió vacío
2 Causa observada: la carpeta de entradas estaba vacía
3 Corrección más pequeña: comprobar si hay archivos antes de pedir
  1. 1Lo que viste que pasó.
  2. 2El porqué, confirmado, y no la suposición.
  3. 3La protección pequeña que evita la repetición.

4¿Cambia la decisión? Anota la nueva con fecha y motivo

Cuando una decisión cambia, no reemplaces la línea antigua en silencio. Escribe la nueva con fecha y motivo, y marca la antigua como sustituida.

Así nunca quedan dos reglas contradictorias valiendo al mismo tiempo. Y quien lee entiende el camino que hizo la decisión.

En octubre, las pruebas de Lúcia pasaron a 12 preguntas, con dos de lectura de gráfico. Agregó la línea nueva y marcó la de agosto como sustituida.

decisiones.md
| Fecha | Decisión | Motivo | Revisar cuando |
| 08/2026 | Pruebas con 10 preguntas (sustituida en 10/2026) | estándar de la coordinación | que la coordinación cambie el estándar |
| 10/2026 | Pruebas con 12 preguntas | dos de lectura de gráfico | fin de año |
Este es el formato del decididoS.md del kit: una línea por decisión, columnas separadas por |. La línea antigua queda, marcada; la nueva dice cuándo y por qué.

Ponte a prueba

"El resumen se quedó a medias porque el archivo era enorme; dividirlo en partes lo resolvió." ¿Dónde vive esa nota?

Si te trabaste aquí, es normalA veces una nota parece caber en dos archivos. Pregunta: ¿dice cómo me gusta a mí, lo que elegimos, cómo se hace o lo que salió mal? La primera respuesta que te sirva decide.

Practica ahora 0/3

Crea la carpeta config y distribuye cinco notas

Listo cuando el ls muestre los cuatro archivos y tú hayas escrito, en el papel, el archivo de cada una de las cinco notas. Cerca de 10 minutos, en la computadora, en el terminal del módulo 3.

Los modelos son archivos de texto del kit del curso, y las notas son ficticias. Si ya escribiste en alguno de esos cuatro archivos, salta su línea: el curl sobrescribe un archivo con el mismo nombre. ¿Una línea falló? El curl muestra un mensaje de error justo debajo; ejecuta solo esa otra vez. ¿No hiciste la lección 1 de este módulo? Ejecútala antes: mkdir -p ~/projetos/config

cd ~/projetos/config
curl -fsSL https://inematds.github.io/oswork/materiais/memoria.md -o memoria.md
curl -fsSL https://inematds.github.io/oswork/materiais/decisoes.md -o decisoes.md
curl -fsSL https://inematds.github.io/oswork/materiais/dicas.md -o dicas.md
curl -fsSL https://inematds.github.io/oswork/materiais/falhas.md -o falhas.md
ls

Las cinco notas (ficticias): 1) "Prefiero avisos a las familias en hasta cinco líneas." 2) "Boletim va en PDF desde septiembre, porque no todas las familias abren planilla." 3) "Para juntar las atas del mes: pide primero la lista de los archivos leídos y después el resumen." 4) "El resumen de la reunión trajo una fecha que no estaba en el acta; la corrección fue pedirle a la IA que deje un espacio en blanco cuando falte la fecha." 5) "Los informes siempre con las pendientes al final."

Ver el gabarito

1 y 5: memoria.md, porque son tu forma estable y no hay motivo para que cambien. 2: decisoes.md, porque es una elección con fecha y motivo. 3: dicas.md, porque es un procedimiento que ya funcionó. 4: falhas.md, porque tiene síntoma, causa y corrección. ¿Quieres ir más allá? Abre memoria.md con nano y escribe una preferencia real tuya.

Acabas de armar la carpeta config y darle a cada nota su lugar.

Cola de la lección

Un archivo, una función

  1. memoria y decisoesforma estable en uno; elección con fecha y motivo en el otro.
  2. consejos y fallasasí se hace en: un; síntoma, causa y corrección en el otro.
  3. ¿Cambiou?línea nueva con fecha; la antigua queda marcada.

Tu próximo paso

Ya sabes separar preferencia, decisión, procedimiento y falla, cada una en su archivo.

Hoy, abre el archivo con nano ~/projetos/config/decisoes.md y agrega una decisión real de tu equipo al final de la tabla, copiando el formato de las líneas de Lúcia en el paso 4.

En la próxima lección: y la contraseña del sistema de la escuela, ¿en cuál de esos archivos va? En ninguno. Vas a ver dónde está.

Material complementario · Cada archivo tiene un trabajoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

memoria.md registra preferencias estables; decisoes.md explica elecciones; dicas.md guarda procedimientos útiles; falhas.md documenta problemas y correcciones. No coloque todo en un documento gigante. Cuando una decisión cambia, registre fecha y motivo para no mantener reglas contradictorias.

Por qué aprender

Separar funciones facilita consultar solo lo necesario. Un historial de fallas no debería convertirse en una lista de comandos obligatorios en toda tarea. Conocimiento consultable e instrucciones permanentes son cosas diferentes.

Conceptos clave

Memoria selectiva; decisiones fechadas; procedimiento; historial.

En la práctica

“Prefiero reportes cortos” es preferencia. “Elegimos CSV por ser compatible con la planilla del equipo” es decisión. “El servicio se detuvo sin supervisión” pertenece a las fallas.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Distribuya cinco notas ficticias entre los cuatro archivos. Para cada una, explique por qué ese es el lugar adecuado.
  3. Registra el resultado observado y la próxima corrección.

Lección 21 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 4 de 6

El secreto no es conocimiento para compartir

En la portería de la escuela, una coordinadora conversa con el portero mientras él cierra el armario de llaves de la pared; la lista de salas puede quedar a la vista, y las llaves quedan bajo llave.

Puedes crear el .env.example del proyecto de práctica, con los nombres de las variables y valores ficticios. Ningún valor real entra en él.

Una contraseña pegada en un documento, en una captura o en un pedido se vuelve acceso para quien la lee. Y sigue valiendo después de que termina la conversación. Separar el secreto del resto te deja compartir la carpeta sin miedo.

En 1 minuto

  1. El .env guarda las llaves de verdad, solo en tu computadora.
  2. Él no es un cofre: quien abre el archivo, lee.
  3. El .env.example tiene solo los nombres, con valores de mentira. Este sí puede circular.

1Quien tiene la credencial actúa en nombre de la cuenta

En la portería de la escuela, el tablero de llaves muestra qué salones existen. Nadie se preocupa por esa lista a la vista. Con las llaves es diferente: quien toma la llave abre el salón.

Una credencial funciona como la llave. Una contraseña, una clave de API o el token del bot hacen que quienes los tienen puedan actuar en nombre de tu cuenta.

Denise iba a enviar al grupo del equipo una captura de la configuración del sistema de notas. Antes de enviarla, vio la contraseña de toda la coordinación en la esquina de la imagen.

Captura como estaba

Lo que muestra: la pantalla de configuración, con la contraseña visible.

Resultado: las 30 personas del grupo pasan a tener acceso.

Captura corregida

Lo que muestra: la misma pantalla, con la contraseña cubierta antes de enviar.

Resultado: el equipo ve lo que necesita, y el acceso sigue solo con la coordinación.

La imagen ayuda de la misma manera sin el valor de la contraseña.

2O .env guarda variables, pero no es una caja fuerte

El archivo .env guarda variables: un nombre, un signo de igual y un valor. Por ejemplo, TELEGRAM_BOT_TOKEN o DATABASE_URL, la dirección de una base de datos, con la contraseña dentro.

No está cifrado. Cualquiera que tenga acceso al archivo puede leer lo que hay dentro. Por eso se queda solo en tu máquina. En el módulo 7, el comando chmod deja la lectura solo para ti.

En el módulo 7, Lúcia va a crear un bot de consulta para el grupo. Su token vive en el .env de la carpeta del proyecto, y en ningún otro lugar.

.env · solo en tu computadora
1 TELEGRAM_BOT_TOKEN = ●●●●●●●●●●
2 DATABASE_URL = ●●●●●●●●●●
  1. 1El nombre dice qué es; el programa busca el valor por él.
  2. 2El valor real, aquí cubierto, nunca aparece en una captura.

3El .env.example muestra la estructura sin dar acceso

El .env.example tiene los mismos nombres, con valores ficticios. Quien recibe el proyecto ve lo que necesita completar, pero no gana acceso a nada.

El kit del curso trae TELEGRAM_BOT_TOKEN=preencha_localmente. Cambias el valor solo en tu copia privada, el .env. Con el valor de ejemplo, ningún bot funciona.

Denise pasó el proyecto de reportes a la subdirectora con el .env.example. La subdirectora completó su propio .env con la contraseña que recibió de secretaría.

.env.example · puede circular

TELEGRAM_BOT_TOKEN=preencha_localmente

DATABASE_URL=preencha_localmente

.env · se queda en tu máquina

TELEGRAM_BOT_TOKEN=[el token real]

DATABASE_URL=[la dirección real]

Los mismos nombres en los dos. Solo el .env tiene valores que abren algo.

Si te atascaste aquí, es normalLos dos nombres parecen gemelos. Recuerda así: lo que termina en example es el ejemplo, que puede circular. El otro es el real, que se queda en casa.

4La IA necesita el nombre de la variable, y no el valor

El valor real no va en capturas, en ejemplos del curso ni en archivos enviados a la IA sin necesidad. Para ayudar, la IA casi siempre necesita solo saber que la variable existe.

¿Pegaste una clave por error? Borrar el mensaje no basta. Cambia la clave en el sitio donde la generaste, en el área de seguridad o en las claves de la cuenta. Si nunca generaste una clave, guarda la regla para cuando generes una.

El reporte de Lúcia no se conectaba a la hoja de la escuela. En vez de pegar el .env, le contó a la IA qué variables estaban completadas.

Chat de IA

TúEl informe no conecta. Mi .env: DATABASE_URL=[dirección real con la contraseña dentro]

IAVeamos. Voy a usar esta dirección para probar la conexión…

La contraseña ahora está en el historial de la conversación.

TúEl informe no conecta. En mi .env, DATABASE_URL está completa. ¿Qué reviso, sin enviarte el valor?

IAVerifica que la dirección esté completa y que la contraseña que contiene siga siendo válida. No necesito que me mandes el valor.

La ayuda es la misma, y el secreto se queda en casa.

Toca en los dos botones y compara lo que aparece en la conversación.

Ponte a prueba

Una colega va a probar tu proyecto en su computadora. ¿Qué le mandas?

Practica ahora 0/3

Crea el .env.example del proyecto de entrenamiento

Listo cuando el gato muestre los dos nombres con el valor: completa_localmente y que el ls -a liste el .env.example. Cerca de 8 minutos, en la computadora, en el terminal.

Los valores son de mentira; ningún acceso real entra al archivo. Nunca reemplaces completa_localmente por un valor real en el .env.example. No crees el .env ahora: solo será necesario en el módulo 7. ¿No hiciste la lección 1 de este módulo? Ejecuta antes: mkdir -p ~/projetos/meu-primeiro-projeto

cd ~/projetos/meu-primeiro-projeto
printf '%s\n' 'TELEGRAM_BOT_TOKEN=preencha_localmente' 'DATABASE_URL=preencha_localmente' > .env.example
cat .env.example
ls -a
Lo que deberías ver
TELEGRAM_BOT_TOKEN=preencha_localmente
DATABASE_URL=preencha_localmente
.  ..  .env.example  README.md  entradas  saidas

Las dos primeras líneas vienen del cat; la última, del ls -a. El orden puede variar, y puede haber otros archivos tuyos.

Acabas de crear el modelo que muestra qué completar sin entregar ninguna clave.

Cola de la lección

El secreto se queda en casa

  1. .envvalores reales, solo en tu máquina; no es una caja fuerte.
  2. .env.examplemismos nombres, valores de mentira; puedes circular.
  3. ¿Se filtró?cambia la clave en el origen; borrar el mensaje no basta.

Tu próximo paso

Ya sabes compartir la estructura de un proyecto sin entregarle el acceso.

Hoy, busca en tus documentos y conversaciones una contraseña pegada. ¿La encontraste? Bórrala de ahí y cambia la contraseña en el sitio de origen.

En la próxima lección: cómo asegurarte de que el .env nunca se guarde junto con el historial del proyecto, ni siquiera por descuido.

Material complementario · Los secretos no son conocimiento compartibleTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Un archivo .env puede guardar variables como TELEGRAM_BOT_TOKEN o DATABASE_URL. No está cifrado: cualquier persona con acceso al archivo puede leerlo. Use permisos adecuados y nunca incluya valores reales en capturas de pantalla, ejemplos de curso o archivos enviados a la IA sin necesidad.

Por qué aprender

Las credenciales permiten actuar en nombre de una cuenta. Separar el modelo .env.example, sin valores reales, del .env local permite compartir la estructura sin distribuir acceso.

Conceptos clave

Variable; secreto; .env.example; lectura en tiempo de ejecución.

En la práctica

El kit incluye TELEGRAM_BOT_TOKEN=rellene_localmente. El alumno sustituye eso solo en su copia privada. Ningún bot queda autenticado con este ejemplo.

✓ Hazlo

Crea .env.example con nombres de las variables y valores ficticios. Mantén .env fuera del repositorio y nunca pegues tu clave en el chat.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

  • Versión — README, AGENTS, código
  • No versión — .env, tokens, contraseñas
  • .gitignore separa los dos
El .gitignore es la frontera entre lo que el equipo lee y lo que nunca sale de su máquina.

Lección 22 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 5 de 6

Ignora antes del primer commit

En la secretaría de la escuela, una coordinadora revisa los papeles uno por uno antes de cerrar el maletín; una hoja queda separada sobre la mesa, fuera del maletín.

Puedes crear el .gitignore antes del primer commit. Y puedes señalar la línea que deja el .env fuera y la que mantiene el .env.example.

En el módulo 6, el Git va a guardar versiones de tu carpeta. Lo que entra en una versión se queda en el historial. Por eso la lista de lo que nunca entra va antes de la primera versión.

En 1 minuto

  1. El .gitignore es la lista de lo que el Git no guarda.
  2. Solo vale para lo que el Git aún no ha guardado.
  3. ¿Se filtró la clave? Cámbiala en el origen primero; borrar la línea no deshace.

1El .gitignore separa lo que el equipo lee de lo que se queda en casa

Cada versión guardada por Git se llama commit. El .gitignore es un archivo de texto, en la carpeta del proyecto, con la lista de lo que el Git debe dejar fuera.

Entra en esa lista el .env, sus variantes privadas y las carpetas temporales que los programas crean solos.

En el proyecto de informes, Denise puso el .env en la lista antes de guardar la primera versión. El archivo con la contraseña del sistema de notas nunca entró en el historial.

Entra en el historial

README.md, .env.example y los demás archivos del trabajo.

Queda fuera

.env, claves, contraseñas y carpetas temporales.

Quién decide: el .gitignore, escrito antes de la primera versión.

2Cada línea del .gitignore es un patrón

La línea .env toma el archivo .env. La línea .env.* toma variantes como .env.local: el asterisco vale para cualquier final. La línea que empieza con ! abre una excepción.

Así, !.env.example devuelve el ejemplo a la lista de lo que se guarda. Las últimas líneas cubren carpetas y archivos temporales que algunos programas crean solos. No necesitas tocar esas líneas.

Lúcia se sorprendió con la exclamación en la tercera línea del archivo del kit. Era ella quien mantenía el .env.example en el proyecto, para que la compañera de matemática supiera qué completar.

.gitignore (inicio del modelo del kit)
1 .env
2 .env.*
3 !.env.example
4 __pycache__/
  1. 1Saca el archivo con los valores reales.
  2. 2Saca cualquier variante, como .env.local.
  3. 3La exclamación trae el ejemplo de vuelta: se guarda.
  4. 4Carpeta temporal que un programa crea solo. No necesitas tocarla.

3Ignorar solo vale para lo que todavía no se ha guardado

El .gitignore no vale para un archivo que ya se guardó, el archivo rastreado. Si el .env ya entró en un commit, la línea escrita después no lo saca del historial.

Es como el maletín de la secretaría: el papel que no debe irse no sale de la pila antes de cerrar. Después de que el maletín salió, tachar el papel de la lista no lo devuelve.

Una compañera de Denise puso el .env en el .gitignore una semana después de la primera versión. El archivo con la contraseña seguía ahí, en la versión antigua.

Historial del proyecto de la compañera
1 Versión del lunes
README.md · .env (con la contraseña)
2 Versión del lunes siguiente
.gitignore con la línea .env
  1. 1El .env entró en esta versión y sigue dentro de ella.
  2. 2La línea nueva vale de aquí en adelante; la versión 1 no cambia.

4¿Se filtró? Cambia la clave antes de limpiar el archivo

Si una clave se publicó, la primera corrección es revocar la clave en el origen, o sea, cancelarla en el sitio que la creó. Esto queda en el área de claves o de seguridad de la cuenta, como la página de claves de la plataforma de la API. Borrar la línea del archivo no invalida una copia que alguien ya vio.

Recién después viene la corrección del historial, según el caso. El módulo 6 muestra cómo.

La clave de API de un proyecto de Lúcia apareció en una versión compartida con el equipo. Ella canceló la clave en el sitio de la plataforma en el mismo minuto y creó otra. Solo entonces se ocupó del archivo.

Solo borraste la línea

Qué hiciste: sacaste la clave del archivo.

Resultado: la clave antigua sigue funcionando para quien copió.

Cancelaste la clave primero

Qué hiciste: cancelaste en el origen, creaste otra y luego limpiás el archivo.

Resultado: la copia que se filtró ya no abre nada más.

Balance: el riesgo termina cuando la clave muere, y no cuando el archivo cambia.

Ponte a prueba

Ya se publicó una clave en una versión. ¿Poner el .env en el .gitignore ahora lo resuelve?

Si te trabaste aquí, es normalEl Git solo llega al módulo 6. Hoy basta con que el .gitignore esté listo en la carpeta. Cuando guardes la primera versión, ya estará en su lugar.

Practica ahora 0/3

Pon el .gitignore en el proyecto de práctica

Listo cuando el cat -n muestre las líneas .env y !.env.example y el ls -a liste el .gitignore. Aproximadamente 8 minutos, en la computadora, en el terminal.

El modelo es un archivo de texto del kit del curso y no guarda nada por sí solo: solo se vuelve regla cuando el Git entre, en el módulo 6. Ojo: la segunda línea reemplaza un .gitignore que ya exista en esa carpeta. ¿No hiciste la lección 1 de este módulo? Primero ejecuta: mkdir -p ~/projetos/meu-primeiro-projeto

cd ~/projetos/meu-primeiro-projeto
curl -fsSL https://inematds.github.io/oswork/materiais/gitignore.txt -o .gitignore
cat -n .gitignore
ls -a
Lo que deberías ver
     1	.env
     2	.env.*
     3	!.env.example
     4	__pycache__/
     5	*.pyc
     6	node_modules/
     7	.verificacao/

Esta es la respuesta del cat -n. Las líneas 4 a 7 son temporales de programas; quedan como están. La línea 1 deja el .env fuera; la línea 3 mantiene el .env.example.

Acabas de poner la lista de lo que nunca entra al historial antes de que exista la primera versión.

Cola de la lección

Ignora antes de guardar

  1. .env y .env.*fuera; !.env.example vuelve a dentro.
  2. Ordenprimero el .gitignore, luego la primera versión.
  3. Se filtrócancela la clave en el origen antes de tocar el archivo.

Tu próximo paso

Ya sabes mantener el secreto fuera del historial antes de que exista.

Hoy descubre dónde se cancela la clave de una herramienta que usas. Anota la ruta en la ficha del proyecto, sin la clave.

En la próxima lección: con todo en su lugar, ¿qué es lo primero que la IA debe leer? Vas a limpiar el contexto y señalar tres archivos correctos.

Material complementario · Ignora antes del primer commitTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El .gitignore lista archivos que el Git debe ignorar cuando todavía no se están rastreando. Incluye .env, variantes privadas y carpetas temporales. Mantén una excepción explícita para .env.example. Antes de guardar una versión, revisa git status y los archivos preparados.

Por qué aprender

Ignorar después no borra un secreto del historial. Si la clave se filtró, la primera corrección es revocar o rotar en la fuente; eliminar la línea del archivo no invalida una copia ya vista.

Conceptos clave

Archivos rastreados; patrones de exclusión; revisión de cambios; revocación.

En la práctica

Patrones útiles: .env, .env.*, !.env.example, __pycache__/. Para descubrir qué regla se aplica, use git check-ignore -v .env.

Experimenta ahora

Copie materiais/gitignore.txt como .gitignore antes de git add. Verifique que .env.example siga disponible y .env no aparezca entre los archivos nuevos.

Lección 23 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 4 · Lección 6 de 6

Haz una limpieza de contexto

En la sala de profesores, una profesora saca del mural de corcho un aviso viejo y amarillento y deja solo las hojas nuevas sujetas.

Puedes agregar al README una sección “Lee primero” con tres rutas que existen y están al día.

Tener memoria en la carpeta no basta: la IA no abre sola cada archivo que existe ahí. Y un archivo viejo estorba más que ninguno, si trae un proceso que ya cambió. Limpiar el contexto es esto: elegir qué lee la IA y mantener ese material al día.

En 1 minuto

  1. Dile a la IA qué archivos debe leer; ella no lee todo sola.
  2. El Lee primero del README lista tres rutas, en el orden.
  3. Abre cada una y comprueba si describe la situación de hoy.

1La IA lee lo que tú indicas, y no toda la carpeta

La IA no lee automáticamente todo el archivo Markdown del computador. Tú dices qué documentos debe consultar.

Cuando una referencia sirve para toda la tarea del proyecto, va en el AGENTS.md, el archivo de instrucciones del proyecto. El módulo 5 se encarga de eso.

Denise pidió el borrador del informe del consejo sin citar ningún archivo. La IA no consultó el decisoes.md, y el formato salió diferente de lo que el equipo había decidido.

Agente en la carpeta del proyecto

TúArma el borrador del informe del consejo.

IAAquí tienes un borrador en tabla, con el promedio de cada grupo y tres recomendaciones…

Formato por cuenta propia y números que nadie proporcionó.

TúLee README.md y ../config/decisoes.md. Después arma el borrador del informe del consejo, sin inventar datos.

IALeí ambos archivos. Seguiré el formato registrado en decisoes.md y listaré como pendientes lo que no esté en las entradas.

La respuesta dice lo que leyó y sigue la decisión del equipo.

Toca los dos botones y compara lo que usó la IA.

2El “Lee primero” apunta tres rutas, en el orden

En el README, la sección “Lee primero” lista los archivos que cualquier tarea del proyecto debe abrir antes. Tres rutas bastan.

Escribe cada ruta a partir de la carpeta del proyecto. El “##” hace subtítulo, como en la lección 2 de este módulo. Lee ../ como “sube una carpeta”: de mi-primer-proyecto subes a proyectos y, desde ahí, entras en config.

En el proyecto de la feria de ciencias, Lúcia puso el reglamento de la feria en segundo lugar. En tu proyecto de entrenamiento, usa las tres rutas del cuadro de abajo.

README.md · nueva sección
## Lee primero
1 1. AGENTS.md
2 2. ../config/decisoes.md
3 3. ../config/memoria.md
  1. 1Las instrucciones del proyecto, en la propia carpeta.
  2. 2Las decisiones del equipo, una carpeta arriba, en config.
  3. 3Tus preferencias estables, también en config.

3 Archivo vencido estorba más que ninguno

El mural de la sala de profesores con el aviso de una reunión de marzo confunde más que un mural vacío. Con la memoria de la IA pasa lo mismo.

Un archivo antiguo puede traer la dirección de un servicio o un proceso que ya cambió. Antes de una tarea, actualiza la decisión vencida y saca de la carpeta de trabajo lo que no te sirve.

El decisoes.md de Lúcia todavía decía "pruebas con 10 preguntas". La IA armó la prueba con 10. Agregó la línea nueva y marcó la antigua como sustituida, como en la lección 3 de este módulo.

Archivo vencido

decisoes.md: solo la línea de agosto, pruebas con 10 preguntas.

Resultado: la IA arma la prueba en el formato antiguo.

Archivo al día

decisoes.md: la línea de octubre, con 12 preguntas, y la de agosto marcada como sustituida.

Resultado: la prueba sale con 12 preguntas.

Saldo: una línea actualizada evitó rehacer toda la prueba.

4Revisa las rutas y después el contenido

Al empezar una tarea, pide que se lea el README y la decisión que importa. No cargues listas de contactos ni contraseñas solo porque están en la misma carpeta.

Revisa de vez en cuando. Primero confirma si cada ruta existe; luego abre el archivo y mira si todavía describe la situación de hoy.

Denise puso en la agenda de la coordinación: todos los primeros lunes del mes, diez minutos para revisar el Leia primeiro del proyecto del consejo.

Terminal
$ ls AGENTS.md ../config/decisoes.md ../config/memoria.md
AGENTS.md  ../config/decisoes.md  ../config/memoria.md

Las tres rutas existen. Si faltara una, el ls avisaría con "No such file or directory", y el Leia primeiro estaría mal.

El ls comprueba si la ruta existe. Si está al día, solo abre el archivo.

Si te trabaste aquí, es normal¿El ls respondió "No such file or directory"? Revisa el nombre letra por letra, con punto y barra. ¿Siguió? El archivo todavía no existe: la práctica te dice en qué lección se crea.

Practica ahora 0/4

Escribe y verifica el Leia primeiro

Listo cuando el ls liste las tres rutas sin error, el README tenga la sección Leia primeiro y los dos archivos de config tengan la fecha de hoy. Cerca de 10 minutos, en la computadora, en el terminal.

Los archivos son del kit del curso, con datos ficticios. No se sustituye nada: la segunda línea solo baja el AGENTS.md del kit si la carpeta todavía no lo tiene. ¿El último ls mostró "No such file or directory"? Vuelve a la lección que crea lo que falta: README en la lección 2 de este módulo, config en la lección 3.

cd ~/projetos/meu-primeiro-projeto
ls AGENTS.md || curl -fsSL https://inematds.github.io/oswork/materiais/AGENTS-projeto.md -o AGENTS.md
ls AGENTS.md ../config/decisoes.md ../config/memoria.md
nano README.md
Lo que deberías ver
$ ls AGENTS.md ../config/decisoes.md ../config/memoria.md
AGENTS.md  ../config/decisoes.md  ../config/memoria.md
$ nano ../config/memoria.md

Tres rutas listadas, en cualquier orden, y ninguna advertencia de error. Después, el nano abre cada archivo de config para la fecha.

Acabas de decir, por escrito, lo que la IA debe leer primero, y verificaste que todo existe y está al día.

Cola de la lección

Contexto limpio

  1. Apuntaa que la IA lee los archivos que tú nombras.
  2. Lee primerotres rutas en el README, verificadas con ls.
  3. Al díauna decisión vencida estorba; fecha de revisión en cada archivo.

Tu próximo paso

Ya montaste toda la casa digital: carpetas, README, memoria, secretos separados y un Leia primeiro que apunta qué vale.

Hoy, marca en tu agenda una revisión mensual de diez minutos del Leia primeiro.

En el próximo módulo: el AGENTS.md que acabas de poner en la carpeta pasa a orientar cada ejecución del agente. Vas a escribir las instrucciones de tu proyecto.

Material complementario · Haz una limpieza de contextoTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

La IA no lee automáticamente todo archivo Markdown existente en el ordenador. Indique qué documentos consultar y mantenga referencias en AGENTS.md cuando sean necesarias. Antes de una tarea, elimine datos irrelevantes de la copia de trabajo y actualice decisiones vencidas.

Por qué aprender

La memoria útil necesita ser encontrada y estar correcta. Un archivo antiguo puede entorpecer más que no tener memoria si trae una dirección de servicio o proceso que ya cambió.

Conceptos clave

Selección de contexto; fecha; fuente de verdad; revisión periódica.

En la práctica

Al iniciar un informe, solicite lectura de README.md y de la decisión sobre formato. No cargue listas de contactos ni credenciales porque están en la misma carpeta.

Experimenta ahora

Agrega al README una sección “Leia primeiro” con tres rutas reales. Abre cada caminho y verifica si describe la situación actual.

Laboratorio del módulo: Organiza tu segundo cerebro operativo

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Crea config y meu-primeiro-projeto dentro de proyectos, usando el administrador de archivos o Bash.
  2. En la carpeta config, cree memoria.md, falhas.md, dicas.md y decisoes.md a partir del kit.
  3. En el proyecto, agrega README.md, AGENTS.md y .gitignore.
  4. Revise con la tabla de la clase: cada archivo tiene un papel y ningún secreto aparece en los documentos.

Estructura de trabajo

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

~/projetos/
├── config/
│   ├── memoria.md
│   ├── falhas.md
│   ├── dicas.md
│   └── decisoes.md
└── meu-primeiro-projeto/
    ├── AGENTS.md
    ├── README.md
    ├── .gitignore
    ├── entradas/
    └── saidas/

Criterio de listo

Montar la casa digital y separar conocimiento de credenciales. Registre el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de cualquier envío.
  • Continuidad — Otra persona puede encontrar el siguiente paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

Agregar .env al .gitignore quita automáticamente una clave ya publicada?

Ver respuesta comentada

No. Revoca la clave expuesta y corrige el historial según el caso; ignorar solo previene nuevos archivos no rastreados.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Carpeta personal; proyectos; contexto; entradas y salidas.
  • Título; lista; bloque de código; enlace; texto simple.
  • Memoria selectiva; decisiones fechadas; procedimiento; historial.
  • Variable; secreto; .env.example; lectura en tiempo de ejecución.
  • Archivos rastreados; patrones de exclusión; revisión de cambios; revocación.
  • Selección de contexto; fecha; fuente de verdad; revisión periódica.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Lección 24 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 1 de 6

Una buena regla es una regla que se puede comprobar

Una profesora de ciencias coloca una hoja corta de reglas en la puerta del laboratorio de la escuela, al lado de los lentes de protección colgados, con el notebook abierto sobre la mesa.

Puedes reescribir el AGENTS.md de tu carpeta de práctica con cinco reglas cortas, y decir, para cada una, cómo compruebas si se cumplió.

Cada conversación nueva con el agente empieza desde cero. Sin un archivo de instrucciones, repites los mismos avisos en cada pedido. Y una instrucción vaga, tipo "esfuérzate", no cambia nada en lo que hace.

En 1 minuto

  1. El AGENTS.md le dice al agente cómo trabajar en esa carpeta.
  2. Cada regla tiene que ser observable: puedes ver si se cumplió.
  3. Una regla que no cambia ninguna decisión sale del archivo.

1El AGENTS.md es la placa en la puerta de la carpeta

En un laboratorio de ciencias, la placa en la puerta dice cómo trabajar ahí dentro. El AGENTS.md hace lo mismo para una carpeta de proyecto. El Codex busca ese archivo solo cuando empieza a trabajar en la carpeta.

Es un archivo de texto en Markdown. Lo abres y lo editas en el bloc de notas, como cualquier texto.

Lúcia creó la carpeta de práctica en el módulo 3 y la completó en el módulo 4. Ahí dentro, al lado del README, está el AGENTS.md. Es el primer archivo que ella va a mejorar.

~/projetos/meu-primeiro-projeto
1 AGENTS.md
README.md
2 entradas
vendas.csv
3 salidas
  1. 1Las instrucciones de trabajo de esta carpeta.
  2. 2El material que el agente puede leer: aquí, una planilla ficticia en CSV.
  3. 3Dónde entrega los borradores.
La carpeta de práctica de los módulos 3 y 4. ¿No la armaste? En tu carpeta personal, crea la carpeta proyectos y, dentro de ella, meu-primeiro-projeto, con un archivo de texto AGENTS.md vacío.

2Indica cómo trabajar, no cuenta la historia

Cuatro temas caben en el AGENTS.md: por dónde empezar a leer, cómo comprobar el resultado, qué no hacer y el formato de la entrega. La historia de la escuela y los motivos de cada decisión quedan fuera.

Un archivo corto se lee entero. Un archivo largo esconde la regla que importa en medio de los párrafos.

Denise abrió el AGENTS.md que había escrito para el proyecto de las actas. Eran dos párrafos sobre la fundación de la escuela y solo una regla de trabajo. Ella borró los párrafos.

Cuenta la historia

"La escuela se fundó en 1987 y siempre valoró la comunicación con las familias. Por eso, es muy importante que todo se haga con cuidado."

Indica cómo trabajar

"1. Lee README.md antes de alterar."

"2. Usa solo entradas/ y salidas/."

"3. Describe lo que cambiaste y cómo lo comprobaste."

La tarjeta Indica cómo trabajar cambia lo que hace el agente. La otra solo ocupa espacio.

3Una regla observable tiene acción y evidencia

Haz la prueba del cartel. "Usa anteojos de protección antes de empezar el experimento" se puede comprobar mirando. "Ten cuidado" no.

En el AGENTS.md vale lo mismo. Una buena regla pide una acción y deja una evidencia que puedes ver en la entrega.

En el informe de práctica, Lúcia cambió "sé excelente" por una regla de comprobación. En la siguiente entrega, el agente escribió la suma y la diferencia encontrada. Ella lo comprobó en un minuto.

Vacío

"Sé excelente."

Cómo comprobar: no hay forma.

Observable

"Compara el total del informe con ventas.csv e indica la diferencia."

Cómo comprobar: la entrega trae la suma y la diferencia.

El ejemplo viene del material del curso: la regla observable indica la acción (comparar) y la evidencia (la diferencia escrita).

Ponte a prueba

¿De cuáles reglas puedes comprobar mirando la entrega del agente?

4Cinco reglas cortas bastan para empezar

Empieza con cinco reglas y pasa cada una por la pregunta: ¿puedo observar si se cumplió? Si la respuesta es no, reescríbela con una acción. Si la regla no cambia nada en el trabajo, bórrala.

El cuadro de abajo es el modelo del curso, con reglas así. Tú adaptas el propósito a tu carpeta.

Denise partió de estas cinco reglas para el AGENTS.md de las actas y cambió solo los nombres de las carpetas. La más útil: "No inventes datos faltantes: describe la pendiente."

AGENTS.md · carpeta de práctica
1 Lee README.md y lista las fuentes antes de hacer cambios.
2 Usa solo las entradas/ y las salidas/.
3 No inventes datos faltantes: describe la pendiente.
4 Compara los totales con la entrada antes de entregar.
5 No envíes ni publiques sin instrucción explícita.
  1. 1Confirma: la respuesta empieza con la lista de fuentes, los archivos de donde salen los datos.
  2. 2Confirma: ningún archivo nuevo fuera de esas carpetas.
  3. 3Confirma: lo que falta aparece como pendiente.
  4. 4Confirma: el total y la comparación están escritos.
  5. 5Confirma: nada salió de la carpeta.

Si te trabaste aquí, es normalEscribir una regla observable parece difícil la primera vez. Usa la frase de prueba: "voy a saber que se cumplió porque en la entrega aparece ___". Si no puedes completar el espacio en blanco, la regla aún está vaga.

Practica ahora 0/3

Reescribe el AGENTS.md con cinco reglas observables

Listo cuando el AGENTS.md tenga cinco reglas y, al lado de cada una, la evidencia que vas a ver en la entrega. Unos 10 minutos, en la computadora.

Tú solo editas un archivo de texto de la carpeta de práctica; no se ejecuta nada. ¿No tienes la carpeta? En tu carpeta personal, crea proyectos y, dentro de ella, mi-primer-proyecto. ¿Creando el AGENTS.md desde cero? En la ventana Guardar como, elige el tipo "Todos los archivos" y escribe el nombre completo, para que no se vuelva AGENTS.md.txt. Si una regla no pasa la prueba, reescríbela o bórrala; no existe una respuesta única.

# Instrucciones del proyecto de práctica

Propósito: <ej.: borradores de informe a partir de datos ficticios>

1. <regla>  (confirma porque en la entrega aparece: <evidencia>)
2. <regla>  (confirma porque en la entrega aparece: <evidencia>)
3. <regla>  (confirma porque en la entrega aparece: <evidencia>)
4. <regla>  (confirma porque en la entrega aparece: <evidencia>)
5. <regla>  (confirma porque en la entrega aparece: <evidencia>)

Cambia todo lo que está entre < y >, incluyendo los signos. Lo que queda entre paréntesis es tu verificación: puede quedarse en el archivo y no le estorba al agente.

Mira dos reglas completadas por una profesora

Propósito: borradores de listas de ejercicios de ciencias a partir de mis clases.
Regla: usa solo los archivos de la carpeta entradas. Confirma porque la entrega lista las fuentes, y todas están en entradas.
Regla: marca con [conferir] toda respuesta del ejercicio que no esté en el material. Confirma porque veo las marcas en el borrador.

Acabas de transformar avisos sueltos en reglas que puedes verificar en la entrega.

Cola de la lección

AGENTS.md que funciona

  1. Cómo trabajarfuentes, verificación, límites y formato, sin la historia.
  2. Observableacción que deja evidencia en la entrega.
  3. Cortaregla que no cambia; lo que sale del trabajo.

Tu próximo paso

Ya escribes instrucciones de trabajo que un agente sigue y que tú verificas.

En la práctica, elige una regla que repites cada vez que pides algo a la IA en el trabajo y escribe su versión observable en una línea.

En la próxima lección: estas reglas valen solo en esta carpeta. ¿Y las que quieres en todos los proyectos? Global y proyecto, cada una en su lugar.

Material complementario · AGENTS.md orienta la ejecuciónTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

AGENTS.md es el archivo de instrucciones que Codex descubre en el ámbito aplicable. Describe cómo trabajar: archivos iniciales, comandos de verificación, límites y formato de entrega. No es necesario explicar toda la historia de la organización; prefiera reglas cortas que alteren una decisión real.

Por qué aprender

Las instrucciones objetivas evitan repetir los mismos detalles en cada conversación. El archivo debe ayudar al agente a elegir una acción concreta, como verificar el informe antes de considerarlo finalizado.

Conceptos clave

Instrucción operativa; alcance; regla observable; concisión.

En la práctica

“Sé excelente” es difícil de probar. “Compare el total del informe con vendas.csv e indique la diferencia” define una acción y su evidencia.

✓ Hazlo

Escriba cinco reglas. Para cada una, pregunte: ¿puedo observar si se cumplió? Elimine orientaciones que no cambian el trabajo.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

Lección 25 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 2 de 6

El reglamento vale en la escuela, y lo acordado vale en el aula

Una coordinadora pedagógica compara el reglamento grueso de la escuela, en una mano, con una hoja corta de acuerdos de sala, en la otra, sentada en la mesa con el notebook abierto.

Puedes decir qué archivos de instrucción valen en una carpeta. Y puedes verificar el resumen que el Codex hace de ellos contra los archivos de verdad.

A veces el agente sigue una regla que no recuerdas haber escrito. Otras veces ignora una que escribiste, pero en otra carpeta. Antes de culpar al modelo, vale saber de dónde viene cada instrucción.

En 1 minuto

  1. Hay un archivo de instrucciones global, que vale para todo, y uno del proyecto, que vale en esa carpeta.
  2. El archivo más cercano a la carpeta de trabajo prevalece ahí.
  3. Pídele al Codex el resumen de lo que cargó y verifica en los archivos.

1Lo global vale para todo; el del proyecto, solo en la carpeta

El reglamento vale en toda la escuela. Lo acordado del grupo vale en el aula. Con el AGENTS.md es igual: por defecto, el global queda en la carpeta oculta .codex, dentro de tu carpeta personal. El del proyecto queda en la carpeta del proyecto.

En el terminal, el signo ~ es el atajo para tu carpeta personal. Las carpetas con nombres que empiezan con punto se ocultan.

Denise quiere que el agente siempre cuente lo que verificó, en cualquier proyecto. Esta regla fue para lo global. "Compara el total con la planilla de frecuencia" solo tiene sentido en el proyecto de la frecuencia.

¿Dónde están las instrucciones?
1 ~/.codex
AGENTS.md · "relata lo que comprobaste"
2 ~/projetos/frequencia
AGENTS.md · "compara el total con la planilla de frecuencia"
  1. 1Global: vale para todos los proyectos. Se ve pequeño.
  2. 2Proyecto: vale en esta carpeta. Los detalles quedan aquí.
Las dos reglas colaboran. No hace falta repetir en el global el detalle de cada proyecto.

2 El archivo más cercano puede decidir ahí

Una subcarpeta puede tener su propio AGENTS.md. Con el Codex abierto ahí, los dos valen, y la instrucción más cercana prevalece, como el acuerdo de un laboratorio dentro de la escuela.

"Puede" porque vale para lo que trata. Lo que la regla de cerca no menciona sigue viniendo del archivo de arriba.

Lúcia creó una subcarpeta de pruebas en el proyecto de ciencias, con un AGENTS.md que pide la clave por separado. Cuando ella abre Codex dentro de pruebas, esa regla vale. Abierto en las listas de ejercicios, no.

~/projetos/ciencias-8ano
1 AGENTS.md · vale para todo el proyecto
listas
pruebas
2 AGENTS.md · "la clave en un archivo separado"
  1. 1Instrucción del proyecto.
  2. 2Instrucción más cercana: prevalece dentro de pruebas.
Un archivo que va adelante: el override

Todavía existe el AGENTS.override.md. En la misma carpeta, el Codex lee el override e ignora el AGENTS.md. ¿No creaste ninguno? Perfecto. Pero puede venir en una carpeta copiada de un colega y, olvidado ahí, explica mucho comportamiento extraño.

3El AGENTS.md no reemplaza todo

Ninguno de estos archivos supera tres cosas. Las instrucciones del sistema, que son las reglas de fábrica de la herramienta. Los permisos, que tú apruebas o rechazas, como en el módulo 3. Y lo que pides de forma explícita en la conversación. Ellos orientan; no liberan lo que la herramienta bloquea.

El AGENTS.md de Denise dice "entrega en viñetas". Hoy ella pidió, en la conversación, un párrafo corrido para el correo de la dirección. Vale el pedido de hoy.

El AGENTS.md decide

Cómo trabajar en la carpeta cuando el pedido no dice nada: fuentes, verificación, formato.

El AGENTS.md no supera

Las instrucciones del sistema.

Los permisos de la herramienta.

Tu pedido explícito en la sesión.

Escribir "no leas contraseñas" orienta. Quien impide de verdad son los permisos.

Ponte a prueba

El global dice "responde en viñetas". El AGENTS.md del proyecto no habla de formato. En la conversación, tú pides una tabla. ¿Qué vale?

4Pide el resumen y revisa en los archivos

Dentro de la carpeta, pídele a Codex que resuma las instrucciones que cargó y diga de qué archivo salió cada una. Después abre los archivos y compara.

¿El resumen cita una regla que no está en ningún archivo? ¿O se olvida una que sí está? Ahí encontraste la causa antes de culpar al modelo.

Lúcia pidió el resumen en la carpeta de entrenamiento. Llegó la regla "relate lo que verificó", que ella no había escrito allí. Estaba en el global, que creó en marzo y olvidó.

Codex · carpeta de entrenamiento

TúResume las instrucciones que cargaste para esta carpeta y di de qué archivo vino cada una. No alteres nada.

IADel global: relata lo que verificaste. De AGENTS.md de esta carpeta: lee README.md y lista las fuentes antes de alterar; usa solo entradas/ y saidas/; no inventes datos faltantes; compara los totales antes de entregar; no envíes ni publiques sin instrucción explícita. No alteré ningún archivo.

Cada regla con su origen. Ahora ya puedes abrir los dos archivos y verificar.

Ejemplo con las reglas de la lección anterior; el README es el archivo que explica la carpeta. En tu carpeta, la lista será la de tu AGENTS.md.

Si te trabaste aquí, es normalNo encontraste la carpeta .codex? Está oculta, y quizá nunca hayas creado un global. Está bien: en ese caso, solo vale el AGENTS.md del proyecto, y en la práctica se ve cómo verificarlo.

Practica ahora 0/3

Descubre qué instrucciones valen en la carpeta de entrenamiento

Listo cuando hayas anotado cada regla del resumen de Codex y el archivo donde la encontraste. Cerca de 10 minutos, en la computadora, con la terminal del módulo 3.

Los tres comandos solo leen y listan; no se altera nada. El pedido al Codex dice "no alteres nada". Si el Codex pide autorización para cambiar algún archivo, recházalo. ¿Todavía no está el Codex? Haz solo los pasos 1 y 2 y anota lo que encontraste.

Terminal

$ cd ~/projetos/meu-primeiro-projeto
$ ls -a
.  ..  AGENTS.md  README.md  entradas  saidas
$ cat ~/.codex/AGENTS.md
cat: /home/seu-nome/.codex/AGENTS.md: No such file or directory

El ls -a también lista los archivos ocultos; el punto y los dos puntos del inicio representan la propia carpeta y la de arriba, puedes ignorarlo. Busca un AGENTS.override.md: si aparece, ábrelo y mira si todavía debe existir. La última línea, en inglés, dice "el archivo o la carpeta no existe": no hay global. Si el archivo existe, el cat muestra su texto.

Tu lista puede tener más archivos, como los que creaste en el módulo 4. La ruta en la última línea muestra tu nombre de usuario.
Resume las instrucciones que cargaste para esta carpeta y di de qué archivo vino cada una. No alteres nada.

Acabas de rastrear de dónde viene cada instrucción que el agente sigue en esa carpeta.

Cola de la lección

Global y proyecto

  1. Global pequeño~/.codex/AGENTS.md, reglas que valen para todo.
  2. Proyecto con detalleel archivo más cercano prevalece en esa carpeta.
  3. Verifica el origenresumen de Codex contra los archivos, antes de culpar al modelo.

Tu próximo paso

Ya sabes de dónde vienen cada una de las instrucciones que sigue el agente dentro de una carpeta.

Hoy, elige una regla que quieras en todos los proyectos y decide: ¿la pones en global o solo en un proyecto? Anota la decisión en una línea.

En la próxima lección: la regla dice qué respetar. ¿Y el procedimiento que repites toda semana, paso a paso? Eso se convierte en una Skill.

Material complementario · Global y proyecto se complementanTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Por defecto, ~/.codex/AGENTS.md guarda instrucciones globales. En el proyecto, AGENTS.md añade reglas específicas; los archivos en carpetas más cercanas pueden prevalecer en el ámbito correspondiente. AGENTS.override.md tiene prioridad sobre AGENTS.md en el mismo nivel. Esto no supera instrucciones del sistema, permisos o la solicitud explícita de la sesión.

Por qué aprender

la ruta importa. Una regla local puede no aplicarse a otra carpeta, y un override olvidado puede explicar un comportamiento inesperado. Mantén el global pequeño y deja los detalles locales en el proyecto.

Conceptos clave

Descubrimiento; jerarquía; alcance de directorio; override.

En la práctica

Global: “relate os testes executados”. Proyecto: “valida el CSV con python3 validar.py”. Las dos instrucciones colaboran; no hace falta repetir el script de cada proyecto en el archivo global.

Experimenta ahora

Pida a Codex que resuma las instrucciones que cargó. Verifique la respuesta contra los archivos reales antes de atribuir un error al modelo.

  • AGENTS.md global
  • AGENTS.md del proyecto
  • Skill
  • Tarea
Capas de instrucción: la de arriba vale en todo, y la más específica, abajo, decide el caso de ahora.

Lección 26 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 3 de 6

La regla queda en la puerta; el guion, en el fichero

Una profesora de ciencias, con bata, saca una ficha de una cajita de madera con guías de experimento, en la mesa del laboratorio, al lado de vasos de precipitados y del notebook.

Puedes crear la Skill relatorio-semanal en la carpeta de entrenamiento, con el nombre y la descripción al comienzo del archivo. Y puedes comprobar que está en el lugar correcto.

Hay tareas que le explicas al agente cada semana, paso a paso, de la misma manera. Pegar todo eso en el AGENTS.md hace que el archivo sea enorme. Y el agente pasa a cargar el manual entero incluso en tareas que no lo necesitan.

En 1 minuto

  1. La regla dice qué respetar; la Skill enseña un procedimiento.
  2. La Skill es un archivo SKILL.md que empieza con nombre y descripción.
  3. Del proyecto: .agents/skills, dentro de la carpeta. Personal: ~/.agents/skills.

1La regla vale siempre; la Skill entra cuando hace falta

La placa de la puerta del laboratorio vale todos los días. El guion del experimento sale del fichero solo el día de ese experimento. El AGENTS.md es la placa. La Skill es el guion.

Una Skill reúne las instrucciones de una actividad que se repite. El agente se activa cuando la tarea lo pide.

Lúcia explicaba todos los viernes al agente cómo montar la lista semanal de ejercicios: leer la lección, elegir cinco cuestiones, separar la clave de respuestas. Ese paso a paso se volvió una Skill. El archivo AGENTS.md siguió con cinco reglas.

AGENTS.md · el archivo

"Usa solo entradas/ y salidas/."

Vale para toda tarea de la carpeta.

Skill · la guía

"1. Lee la lección de la semana. 2. Elige cinco cuestiones. 3. Separa la clave de respuestas."

Entra solo cuando la tarea es la lista semanal.

Los dos están bien, cada uno en su papel. Separar evita tener que cargar el manual entero en cada tarea.

2El archivo empieza con el nombre y la descripción

La Skill vive en una carpeta con su nombre, en un archivo llamado SKILL.md. En la parte superior, entre dos líneas de tres guiones, vienen el nombre y la descripción. Ese bloque es el encabezado.

Después del encabezado viene el procedimiento: qué entra, los pasos, qué sale y cómo comprobarlo. En el terminal, un comando muestra el comienzo del archivo.

Antes de escribir la Skill de la lista, Lúcia abrió la Skill de informe del curso, la misma de la práctica, para entender el formato. En cuatro líneas, supo el nombre, cuándo usarla y cuándo no usarla.

Terminal

$ head -4 .agents/skills/relatorio-semanal/SKILL.md
---
name: relatorio-semanal
description: Gerar rascunho de relatório semanal quando o usuário fornecer um CSV de vendas. Não usar para enviar relatórios ou tratar credenciais.
---

El comando de la primera línea muestra las cuatro primeras líneas del archivo. Las líneas de guiones abren y cierran el encabezado.

El encabezado de la Skill del curso, que vas a crear en la práctica. La hoja de entrada es un CSV.

3La descripción dice cuándo usar y cuándo no

La descripción es lo que el agente lee para decidir si activa la Skill. Necesita decir en qué situación usarla. Y también vale decir dónde termina la Skill.

En esa descripción, "credenciales" son contraseñas y claves de acceso: la Skill no las toca.

La primera descripción de la Skill de informe de Denise era "ayuda con informes". El agente activó la Skill incluso en un pedido de acta de reunión. Ella la reescribió diciendo la situación y el límite, del mismo modo que la tarjeta.

Vacío

"Ayuda con informes."

¿Cuándo usar? ¿Cuándo no usar? No lo dice.

Con la situación y el límite

"Generar un borrador de informe semanal cuando el usuario proporcione un CSV de ventas. No usar para enviar informes o para tratar credenciales."

La descripción del curso deja claro que la Skill hace borradores y no envía nada por sí sola.

Ponte a prueba

¿Qué descripción ayuda al agente a decidir cuándo activar la Skill del acta?

4La carpeta correcta decide quién la usa

La Skill del proyecto queda en .agents/skills, dentro de la carpeta del proyecto. La Skill personal, que quieres en todos los proyectos, queda en ~/.agents/skills. La carpeta ~/.codex es del Codex: guarda la configuración y el AGENTS.md global de la lección anterior. La Skill no va ahí.

La Skill de las actas solo sirve para el proyecto de las actas: Denise la guardó en el proyecto. La Skill de revisar ortografía la usa para todo: fue a la carpeta personal.

Dónde queda cada cosa
1 ~/projetos/meu-primeiro-projeto/.agents/skills
relatorio-semanal
SKILL.md
2 ~/.agents/skills
3 ~/.codex
  1. 1Del proyecto: una carpeta por Skill, con el SKILL.md dentro.
  2. 2Personales: valen para cualquier proyecto tuyo.
  3. 3De Codex: configuración y AGENTS.md global. No es lugar de Skill.

Si te trabaste aquí, es normalLas carpetas que empiezan con punto quedan ocultas, y el administrador de archivos no las muestra. Por eso la práctica crea la carpeta con el terminal y la verifica con un comando. No necesitas verla en la ventana.

Practica ahora 0/3

Crea la Skill relatorio-semanal en el proyecto de práctica

Listo cuando el último comando muestre las cuatro líneas del encabezado. Cerca de 10 minutos, en la computadora, con el terminal.

Los comandos solo crean una carpeta nueva y mueven un archivo tuyo dentro; no se borra nada. ¿No tienes la carpeta de práctica de los módulos 3 y 4? Crea una con mkdir -p ~/projetos/meu-primeiro-projeto y sigue igual. Si aparece "No such file or directory", revisa que estés en la carpeta correcta con pwd.

---
name: relatorio-semanal
description: Generar un borrador de informe semanal cuando el usuario proporcione un CSV de ventas. No usar para enviar informes ni para manejar credenciales.
---

# Informe semanal

## Entrada
CSV indicado por el usuario, que contiene producto y valor. Usa solo fuentes explícitamente autorizadas.

## Procedimiento
1. Lee README.md y las instrucciones del proyecto.
2. Verifica el encabezado, el número de líneas y los valores; explica los campos inválidos.
3. Calcula los totales con una herramienta de cálculo disponible, sin inventar ausencias.
4. Produce salidas/relatorio.md con fuentes, total conocido, registros válidos y pendientes.
5. Verifica el total contra la suma de los registros.
6. Reporta la verificación y detente antes de enviar o publicar.

## Pruebas de comportamiento
- Datos completos: el total es consistente con la suma.
- Datos incompletos: la pendiente es visible, sin números inventados.
- Pedido fuera del alcance: explica la limitación; no ejecutes acciones externas.
Guardar como
1 Carpeta: tu carpeta personal › proyectos › meu-primeiro-projeto
2 Nombre: SKILL.md
3 Tipo: Todos los archivos
Guardar
  1. 1Abre la carpeta de práctica antes de guardar.
  2. 2Nombre con letras mayúsculas y el .md al final.
  3. 3Sin esto, algunos editores guardan como SKILL.md.txt.
Los nombres de los campos cambian un poco de editor a editor; los tres puntos son los mismos.
Terminal

$ cd ~/projetos/meu-primeiro-projeto
$ ls
AGENTS.md  README.md  SKILL.md  entradas  saidas
$ mkdir -p .agents/skills/relatorio-semanal
$ mv SKILL.md .agents/skills/relatorio-semanal/
$ head -4 .agents/skills/relatorio-semanal/SKILL.md

El comando ls verifica que el SKILL.md esté ahí. ¿Apareció SKILL.md.txt? Ejecuta mv SKILL.md.txt SKILL.md para corregir el nombre. El mkdir -p crea la carpeta y las de arriba que falten. El mv mueve el SKILL.md dentro de ella. El último comando debe mostrar el encabezado, como en el paso 2.

Acabas de empaquetar un procedimiento que el agente puede reutilizar, en el lugar donde él busca.

Cola de la lección

Skill

  1. PapelAGENTS.md es la regla; Skill es el procedimiento que se repite.
  2. Encabezadonombre y descripción entre líneas de guiones: cuándo usar y cuándo no.
  3. Lugar.agents/skills en el proyecto; ~/.agents/skills personal; nunca en ~/.codex.

Tu próximo paso

Ya conviertes un paso a paso repetido en un procedimiento que el agente reutiliza.

Hoy, anota una tarea que explicas toda semana de la misma manera. Escribe solo el nombre y la descripción: la situación y el límite.

En la próxima lección: la Skill no recuerda lo que acordaste ayer. ¿Dónde guardar lo que necesita seguir valiendo? Memoria, en un archivo.

Material complementario · Skills empaquetan procedimientosTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Una Skill reúne instrucciones de una actividad recurrente, con nombre y descripción al inicio de SKILL.md. Puede incluir recursos y programas de apoyo. Las Skills personales quedan en ~/.agents/skills; las del proyecto pueden quedar en .agents/skills dentro del repositorio. La carpeta ~/.codex sigue siendo la configuración de Codex.

Por qué aprender

Una regla indica qué respetar; una Skill enseña un procedimiento que puede activarse cuando sea necesario. Separar estos papeles evita cargar todo el manual en todas las tareas.

Conceptos clave

Nombre; descripción de activación; procedimiento; entrada y salida; validación.

En la práctica

relatorio-semanal recibe un CSV ficticio, calcula un total comprobable y produce un Markdown con pendientes. La descripción deja claro que no envía el resultado automáticamente.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Lea materiais/SKILL-relatorio.md. Cree la carpeta indicada y guarde el archivo como SKILL.md, manteniendo el encabezado delimitado por ---.
  3. Registra el resultado observado y la próxima corrección.

Lección 27 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 4 de 6

La memoria es un mural con fecha y con dueño

En la sala de profesores, una coordinadora saca un aviso viejo y amarillento del mural de corcho y coloca una tarjeta nueva en un mural con pocos avisos.

Puedes escribir una memoria corta y fechada, con tres datos útiles. Y puedes pedirle al agente que diga cuál de esos datos usó en una tarea.

Pegar toda la conversación de ayer en cada pedido cansa y vuelve a traer instrucciones que ya cambiaron. Esperar que la IA "recuerde sola" también falla. Un archivo pequeño, con fecha y revisado por alguien, resuelve los dos problemas.

En 1 minuto

  1. Aquí, la memoria es un archivo que el agente consulta, no el modelo aprendiendo.
  2. Guarda hechos estables, decisiones y causas de fallas, no toda la conversación.
  3. Indica el archivo en el pedido y revisa en la fecha marcada.

1La memoria es un archivo que alguien mantiene

El modelo no cambia porque hablaste con él. La memoria operativa del curso es un conjunto de archivos que el agente lee cuando tú lo indicas.

Funciona con dos condiciones: el agente lee la parte que importa, y alguien mantiene el archivo actualizado. En la práctica de esta lección, quien lee es el Codex, abierto en el terminal como en el módulo 3.

Denise creó la carpeta config en el módulo 4, al lado de los proyectos. Ahí quedan los archivos que valen para varios proyectos de la coordinación.

~/projetos/config
1 memoria.md
2 decisiones.md
3 fallas.md
dicas.md
  1. 1Hechos estables y preferencias.
  2. 2Decisiones tomadas, con el motivo.
  3. 3Causas de fallas. Ese es el tema de la próxima lección.
La carpeta de archivos de apoyo del módulo 4. ¿No lo hiciste? Crea la carpeta config dentro de proyectos, al lado de mi-primer-proyecto, y en ella un archivo de texto memoria.md.

2Guarda lo que sigue valiendo

Tres cosas merecen ir a la memoria: hechos estables, decisiones y causas de fallas. Cada frase de cada conversación no merece.

Copiar todo el historial aumenta el volumen y puede traer de vuelta una instrucción antigua. Nadie puede revisar un archivo enorme.

Lúcia registró que los materiales del curso usan un lenguaje accesible y ejemplos ficticios. En la tarea siguiente, indicó ese archivo en vez de repetir toda la conversación sobre el curso.

Historial pegado

Doscientas líneas de conversación, de marzo a septiembre.

En medio, "usa el modelo antiguo de lista", que ya cambió.

Memoria corta

"Revisado en: 25/09/2026."

"Materiales del 8º año: lenguaje accesible y ejemplos ficticios."

"Lista semanal: cinco preguntas y solucionario separado."

Balance: de doscientas líneas a tres, y ninguna instrucción vencida.

3Indica el archivo y pide el hecho usado

Que el archivo exista en la carpeta no garantiza que el agente vaya a leerlo. Di en el pedido qué archivo consultar.

Y pídele que cite qué hecho usó. Así verificas si la memoria sirvió, en vez de suponer.

Denise pidió el aviso de la reunión de padres indicando la memoria. La respuesta terminó diciendo qué hecho había usado, y ella lo verificó en el archivo.

Codex · carpeta de entrenamiento

TúConsulta ../config/memoria.md. Escribe un aviso de tres líneas sobre la reunión de padres; la pauta es el cierre del bimestre. Usa [data] y [horário] en lugar de esos datos. Al final, di qué hecho de la memoria usaste.

IAReunión de padres el día [data], a las [horário]. La pauta es el cierre del bimestre. Contamos con la presencia de todos. Hecho usado: "Avisos a las familias: hasta tres líneas, sin siglas".

El hecho citado está en la memoria de Denise, que aparece en el paso 4, y la respuesta lo respetó: tres líneas, sin siglas, sin inventar la fecha.

El ../ quiere decir "la carpeta de arriba": desde dentro del proyecto, el agente sube un nivel y encuentra la carpeta config.

Ponte a prueba

Lúcia creó memoria.md en la carpeta config, pero el agente ignoró los hechos. ¿Qué hace primero ella?

4La fecha de revisión mantiene la memoria viva

Un hecho estable también cambia. Márquelo arriba cuando el archivo se haya revisado. En la próxima revisión, borra lo que venció y confirma el resto.

Anota de dónde viene cada hecho: una reunión, un documento, una decisión. Esto ayuda a comprobar después.

En la revisión de septiembre, Denise borró el hecho "los avisos se imprimen en la mochila". La escuela empezó a enviar los avisos por la aplicación. Cambió la fecha de arriba.

memoria.md · Denise
1 Revisado en: 25/09/2026 · próxima revisión: fin del bimestre
2 Avisos a las familias: hasta tres líneas, sin siglas (fuente: reunión de la coordinación)
Informes: con fuentes y pendientes visibles (fuente: decisoes.md)
Proyecto de entrenamiento: solo datos ficticios (fuente: decisión de la coordinación)
  1. 1La fecha dice si hoy se puede confiar en el archivo.
  2. 2Que cada hecho tenga el origen entre paréntesis.

Si te trabaste aquí, es normal ¿No sabes qué hechos escribir? Piensa en lo que más repites para la IA: el público del material, el formato preferido, un cuidado que siempre se te olvida. Tres líneas bastan para empezar.

Practica ahora 0/3

Escribe la memoria y haz que el agente cite el hecho

Listo cuando el agente termine la respuesta diciendo qué hecho de la memoria usó, y ese hecho esté en tu archivo. Unos 10 minutos, en la computadora.

Los pasos 2 y 3 usan el terminal y el Codex del módulo 3. ¿El archivo no existe? En la ventana Guardar como, elige el tipo "Todos los archivos" e ingresa el nombre completo, para que el archivo no se vuelva .txt. Escribe solo hechos de trabajo, sin nombre de alumno, contraseña ni dato personal. ¿Sin el Codex? Hazlo en el chat que usas: pega el texto de la memoria al inicio del pedido. Si la respuesta cita un hecho que no está en el archivo, anótalo: es señal de que lo inventó.

# Memoria operativa

Revisado en: <fecha de hoy> · próxima revisión: <ej.: fin del bimestre>

- <hecho 1> (fuente: <de dónde vino>)
- <hecho 2> (fuente: <de dónde vino>)
- <hecho 3> (fuente: <de dónde vino>)
Consulta ../config/memoria.md. <tu tarea corta, ej.: escribe un aviso de tres líneas sobre la feria de ciencias; usa [data] en lugar de la fecha>. Al final, di qué hecho de la memoria usaste.
Mira la memoria completada por una profesora

Revisado en: 25/09/2026 · próxima revisión: fin del bimestre.
- Materiales de 8º año: lenguaje accesible y ejemplos ficticios (fuente: conversación con la coordinación).
- Lista semanal: cinco preguntas y solucionario separado (fuente: planificación del bimestre).
- Avisos a las familias: hasta tres líneas, sin siglas (fuente: reunión de la coordinación).

Acabaste de crear una memoria que el agente consulta y que tú puedes verificar.

Cola de la lección

Memoria que funciona

  1. Archivola memoria se consulta; el modelo no cambia.
  2. Poca y establecon hechos, decisiones y causas de fallas, con la fuente.
  3. Indicada y con fechadile en el pedido qué archivo leer; revísalo en la fecha.

Tu próximo paso

Tú ya guardas lo que necesitas para que siga valiendo, en un archivo que el agente consulta cuando tú lo indicas.

Hoy, marca en la agenda la fecha de revisión que escribiste en la parte superior del archivo. Es un recordatorio de cinco minutos.

En la próxima lección: cuando algo sale mal, ¿qué va al registro? Una falla se convierte en una protección pequeña, no en una reconstrucción.

Material complementario · La memoria necesita mantenimientoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

La memoria operativa del curso es un conjunto de archivos consultables, no un cambio en los pesos del modelo. Funciona cuando el agente lee la información relevante y cuando alguien mantiene esa información actualizada. Guarde hechos estables, decisiones y causas de fallas; no preserve cada frase de cada conversación.

Por qué aprender

Copiar todo el historial aumenta el volumen y puede reintroducir instrucciones antiguas. Una memoria pequeña, datada y revisada ayuda más que un archivo inmenso que nadie puede validar.

Conceptos clave

Memoria externa; consulta explícita; resumen; validez; fuente.

En la práctica

Una profesora registra que los materiales de la clase usan lenguaje accesible y ejemplos ficticios. En la próxima tarea, indique ese archivo en lugar de repetir toda la conversación sobre la clase.

✓ Hazlo

Incluya en memoria.md tres hechos útiles y una fecha de revisión. En la tarea siguiente, pida que el agente cite qué hecho utilizó.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

Lección 28 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 5 de 6

Después del resbalón, la cinta en el escalón

Una profesora de ciencias, con bata, arrodillada en la escalera de entrada del laboratorio, pega una cinta antideslizante amarilla en un escalón, con un cuaderno abierto al lado.

Tú puedes registrar una falla en el archivo falhas.md, con síntoma, causa, corrección más pequeña y verificación, y escribir la comprobación que atraparía el problema antes de la próxima ejecución.

Cuando el resultado sale mal, dan ganas de rehacer todo o cambiar de herramienta. Eso consume horas y muchas veces oculta un problema simple. En la escuela, nadie reconstruye la escalera después de un resbalón: pones la cinta en el escalón y verificas si quedó firme.

En 1 minuto

  1. Registra síntoma, causa observada, corrección más pequeña y verificación.
  2. Dile si la falla fue de pedido o de infraestructura.
  3. La corrección va a donde la próxima ejecución lee.

1El síntoma no es la causa

"El informe salió vacío" es el síntoma: lo que tú viste. La causa es el motivo que tú observaste, como "la planilla estaba sin registros". Anota los dos por separado.

Después, la corrección más pequeña y cómo verificar que funciona. Son cuatro columnas de contenido, más la fecha y el tipo, en una sola línea de una tabla en Markdown.

En el proyecto de entrenamiento, Lúcia vio que el informe salía vacío. Antes de tocar cualquier cosa, anotó el síntoma y abrió la planilla de entrada: no tenía ningún registro.

~/projetos/config/falhas.md
1 Síntoma: informe vacío
2 Causa observada: planilla sin registros
3 Corrección más pequeña: comprobar la cantidad de líneas antes de generar
4 Verificación: la planilla vacía genera una advertencia, no un informe
Tipo: infraestructura
  1. 1Lo que tú viste.
  2. 2El motivo que tú constataste, no lo que supones.
  3. 3La protección pequeña.
  4. 4Cómo saber que la protección funciona.
La línea de ejemplo del curso. En el archivo, se convierte en una línea de tabla, con la fecha y el tipo junto con esas cuatro. ¿No hiciste el módulo 4? Crea falhas.md en ~/projetos/config.

2Falla de pedido o de infraestructura

La falla de pedido es cuando el objetivo estaba ambiguo o faltó información. La falla de infraestructura es cuando el texto estaba bien, pero falló algo fuera de él: un archivo ausente o vacío, un proceso que se detuvo.

La corrección cambia según el tipo. El pedido se corrige en el texto. La infraestructura se corrige con una verificación.

Denise tuvo dos fallas en la misma semana. El resumen de las actas quedó demasiado largo: ella no había dicho el tamaño. El informe de asistencia no salió: la planilla no estaba en la carpeta.

Pedido

Síntoma: resumen de las actas con dos páginas.

Causa: el pedido no decía el tamaño.

Corrección: "hasta diez líneas".

Infraestructura

Síntoma: no salió el informe de asistencia.

Causa: la planilla no estaba en la carpeta.

Corrección: comprobar si el archivo existe antes de empezar.

Los dos tipos son normales. Saber cuál es el tipo te dice dónde hay que tocar.

Ponte a prueba

El agente usó la lista de alumnos del año pasado porque el pedido decía solo "usa la lista de alumnos". ¿Qué tipo de falla es?

3La corrección más pequeña, no la reconstrucción

Volver a hacer el proyecto entero puede ocultar un problema simple. Una protección pequeña es más fácil de probar y mantener.

Ante el informe vacío del paso 1, con la planilla en CSV sin filas, Lúcia pensó en cambiar de modelo. La corrección fue otra: revisar el encabezado y la cantidad de registros antes de generar el informe.

Reconstrucción

Cambiar de modelo, reescribir la Skill, rehacer las carpetas.

Dos horas, y la planilla vacía sigue rompiendo el próximo informe.

Protección pequeña

Una línea nueva: "confirma el encabezado y la cantidad de registros antes de generar".

La planilla vacía ahora genera una advertencia.

4La protección va a donde la próxima ejecución lee

El registro solo enseña algo cuando cambia el procedimiento siguiente. Por eso la protección entra en el AGENTS.md o en la Skill, que el agente vuelve a leer cada vez que hace una tarea.

Al final de la práctica, el Codex te muestra si la regla funcionó. Antes de escribir la regla, mira la verificación funcionando tú misma en el terminal.

Denise añadió al AGENTS.md de la frecuencia: "Antes de leer, verifica si la hoja de cálculo existe. Si falta, detente y di qué archivo falta." En la semana siguiente, el agente se detuvo y avisó.

Terminal

$ cd ~/projetos/meu-primeiro-projeto
$ ls entradas/
vendas.csv
$ ls entradas/vendas-outubro.csv
ls: cannot access 'entradas/vendas-outubro.csv': No such file or directory

El primer ls lista lo que existe. El segundo busca un archivo que no está allí; la respuesta, en inglés, dice "no fue posible acceder: el archivo o la carpeta no existe". Eso es lo que la verificación detecta antes de la ejecución.

En tu carpeta, la lista de entradas/ puede tener otros archivos. Lo que importa es la respuesta cuando falta el archivo.

Si te trabaste aquí, es normal¿No sabes si el fallo fue de pedido o de infraestructura? Pregunta: "si hubiera escrito mejor, ¿habría salido bien?" Si sí, fue de pedido. Si el texto estaba bien y faltó algo de la máquina, fue de infraestructura. Si fueron los dos, marca los dos.

Practica ahora 0/3

Registra un fallo de archivo ausente y la verificación

Listo cuando fallas.md tenga la nueva línea, la regla esté en el AGENTS.md y el Codex deje de avisar qué archivo falta. Cerca de 12 minutos, en la computadora.

En el archivo, las barras verticales dibujan una tabla: así es como el Markdown escribe tablas, y el editor lo muestra así mismo. El fallo es ficticio y los comandos solo listan; no se borra nada. Si tu carpeta entradas/ no existe, el primer ls también avisa que no existe: anótalo como un fallo real y crea la carpeta con el administrador de archivos.

| Data | Sintoma | Causa observada | Menor correção | Verificação | Pedido ou infraestrutura |
|---|---|---|---|---|---|
| <data de hoy> | El informe de octubre no salió | <ej.: entradas/vendas-outubro.csv no existe> | <ej.: revisar si el archivo existe antes de leer> | <ej.: el archivo ausente genera aviso y se detiene> | Infraestructura (ejemplo ficticio) |
Antes de leer un archivo de entradas/, verifica si existe. Si falta, detente y di qué archivo falta.

Acabas de transformar un fallo en una pequeña protección, registrada donde la próxima ejecución va a leer.

Cola de la lección

Fallo que se convierte en protección

  1. Cuatro columnassíntoma, causa observada, menor corrección, verificación; más fecha y tipo.
  2. Tipopedido se corrige en el texto; infraestructura, con verificación.
  3. Dóndeen el AGENTS.md o en la Skill, que la próxima ejecución lee.

Tu próximo paso

Ya transformaste un error en una pequeña protección, en vez de rehacer todo.

Hoy, recuerda la última vez que un resultado de la IA salió mal en el trabajo. Escribe su línea: síntoma, causa, menor corrección, verificación.

En la próxima lección: la Skill funcionó una vez. ¿Funciona siempre? La vas a probar con un caso normal, uno incompleto y uno fuera de lo acordado.

Material complementar · Las fallas se vuelven protecciones pequeñasTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Registre el síntoma, la causa observada, la corrección mínima y cómo verificar. Diferencie falla de solicitud, como objetivo ambiguo, de falla de infraestructura, como proceso terminado. El registro solo genera aprendizaje operativo cuando altera el procedimiento siguiente.

Por qué aprender

Rehacer todo el proyecto puede enmascarar un problema simple. Una pequeña protección, como verificar la existencia de un archivo antes de leerlo, suele ser más fácil de probar y mantener.

Conceptos clave

Síntoma no es causa; corrección mínima; prevención; evidencia.

En la práctica

El informe salió vacío porque el CSV no tenía líneas. La protección es validar el encabezado y la cantidad de registros antes de generar el informe, no cambiar de modelo.

Experimenta ahora

En falhas.md, cree una línea para un error ficticio de archivo ausente. Escriba una verificación que detectaría el problema antes de la ejecución.

  • Falla observada
  • Protección pequeña
  • Memoria actualizada
Una falla no se convierte en reescritura. Se convierte en una protección pequeña registrada donde la próxima ejecución va a leer.

Lección 29 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 5 · Lección 6 de 6

Ensaya la Skill antes del día real

En el patio de la escuela, una coordinadora con una tablilla y un cronómetro acompaña a profesores y personal mientras caminan hacia el punto de encuentro durante un simulacro de evacuación.

Puedes probar la Skill del reporte semanal con tres casos: normal, incompleto y fuera de lo acordado. Y puedes anotar si preservó los datos, marcó la pendencia y se detuvo donde debía.

Una Skill que funcionó una vez puede haber salido bien por casualidad, gracias a algo que estaba en la conversación. El simulacro de evacuación ensaya el día normal, la puerta bloqueada y a quien quiere volver a buscar la mochila. Con la Skill es igual: varía la entrada antes de confiar.

En 1 minuto

  1. Prueba con tres casos: normal, incompleto y fuera de lo acordado.
  2. Mide el comportamiento: datos preservados, pendencia visible, parada en el lugar correcto.
  3. Corrige con la regla mínima que resuelve la falla observada.

1 Tres casos, cada uno con el resultado esperado

Antes de ejecutarla, escribe en la ficha de verificación qué debe producir cada caso. Así comparas con una referencia, y no con la impresión del momento.

El caso normal usa los datos completos. El incompleto tiene un valor faltante. El fuera de lo acordado pide algo que la Skill no debe hacer. Cada caso se ejecuta en el Codex, abierto en el terminal dentro de la carpeta de entrenamiento.

Denise armó la ficha como se arma la guía del simulacro: primero lo que debe pasar en cada escenario, luego el ensayo.

Ficha de verificación · reporte-semanal
1 Normal · ventas.csv: Cuaderno 35,50 · Pluma 9,50 · Agenda 55,00 → total 100,00
2 Incompleto · ventas-incompleto.csv: Cuaderno 35,50 · Pluma sin valor · Agenda 55,00 → total conocido 90,50 y pendencia de la Pluma
3 Fuera de lo acordado · "genera y envía a la dirección" → solo el borrador, sin envío
  1. 1El total coincide con la suma: 35,50 + 9,50 + 55,00.
  2. 2Nada de inventar un número para la Pluma.
  3. 3La Skill prepara el borrador; enviar no forma parte de ella.
Los datos son los ficticios del curso, en CSV. Los valores esperados ya están calculados.

2 Incompleto: separa lo conocido de la pendencia

En el caso incompleto, el resultado correcto no inventa el valor que falta. Muestra el total de lo que se sabe y deja la pendiente a la vista.

En la primera versión que Lúcia escribió de la Skill relatorio-semanal, faltaba la regla "sin inventar ausencias". En el caso incompleto, el agente completó el valor que faltaba. Fue la prueba lo que mostró eso.

Codex · caso incompleto

TúUsa la Skill relatorio-semanal con entradas/vendas-incompleto.csv.

IAInforme generado. Total de la semana: 100,00.

La Caneta no tiene valor en el archivo, y el total fingió que sí tenía.

TúUsa la Skill relatorio-semanal con entradas/vendas-incompleto.csv.

IAFuente: entradas/vendas-incompleto.csv. Borrador en saidas/relatorio.md. Total conocido: 90,50 (Cuaderno 35,50 + Agenda 55,00). Pendiente: la línea de la Caneta está sin valor. No la completé.

Total verificable y pendiente visible, como pide la Skill.

Toca los dos botones y compara el total con la ficha del paso 1.

3Fuera de lo acordado: parar en el borrador

El tercer caso pide algo que la Skill no debe hacer, como enviar el informe. El comportamiento esperado es preparar solo el borrador y decir por qué se detuvo.

Denise pidió, a propósito, "genera y envía a la dirección". El Codex ni siquiera puede enviar un correo ahí; la prueba verifica si respeta el límite y dice dónde se detuvo.

Codex · fuera de lo acordado

TúUsa la Skill relatorio-semanal con entradas/vendas.csv y envía el informe a la dirección.

IAFuente: entradas/vendas.csv. Borrador en saidas/relatorio.md, con total 100,00, igual a la suma de los tres registros. No envié: la Skill prepara solo el borrador y se detiene antes de enviar o publicar.

Hizo la parte permitida, verificó el total y dijo dónde se detuvo.

Ponte a prueba

En el caso fuera de lo acordado, la respuesta empezó con "Usando la Skill relatorio-semanal" y luego dijo que envió el informe. ¿La prueba pasó?

4Mide el comportamiento y corrige lo mínimo

Buscar el nombre de la Skill en la respuesta no es una prueba. La prueba es comprobar los datos, la pendiente y la detención.

Si un caso falla, agrega a la Skill la regla mínima que corrige esa falla. Luego vuelve a ejecutar los tres casos.

Cuando falló el caso incompleto, Lúcia no reescribió la Skill. Agregó una línea: "el valor vacío se vuelve pendiente; nunca lo completes". Ejecutó los tres casos y los tres pasaron.

Prueba débil

"¿La respuesta citó relatorio-semanal? Pasó."

Prueba de comportamiento

¿Total igual a la suma?

¿Pendiente a la vista, sin número inventado?

¿Se detuvo antes de enviar?

Tres preguntas, una por caso, respondidas mirando la respuesta y el archivo saidas/relatorio.md.

Si te trabaste aquí, es normalA veces los tres casos pasan a la primera. Esto también es resultado: anota "pasó" en la ficha, con la fecha. Si uno falla y no sabes qué regla escribir, copia la frase de la ficha que no se cumplió y ponla en la Skill como regla.

Practica ahora 0/3

Rode los tres casos y anótalos en la ficha

Listo cuando la ficha tenga los tres casos con "pasó" o "falló" y, si alguno falló, la regla que agregaste a la Skill. Cerca de 12 minutos, en la computadora, con el terminal y el Codex.

Los datos son ficticios y la Skill solo escribe en salidas/. El Codex puede pedir autorización antes de crear salidas/relatorio.md, como en el módulo 3: autoriza solo ese archivo; cualquier pedido para enviar o publicar, recházalo. ¿Sin la Skill de la lección 27? Primero haz esa práctica: lleva diez minutos.

Terminal

$ cd ~/projetos/meu-primeiro-projeto
$ mkdir -p entradas saidas
$ printf 'produto,valor\nCaderno,35.50\nCaneta,9.50\nAgenda,55.00\n' > entradas/vendas.csv
$ printf 'produto,valor\nCaderno,35.50\nCaneta,\nAgenda,55.00\n' > entradas/vendas-incompleto.csv
$ cat entradas/vendas-incompleto.csv
produto,valor
Caderno,35.50
Caneta,
Agenda,55.00

El mkdir -p garantiza que las carpetas existan. Cada printf escribe un archivo de entrada con los datos ficticios del curso. Atención: el primero reemplaza el ventas.csv de la carpeta de entrenamiento, para que los totales de la ficha coincidan. El cat muestra el archivo incompleto: el Caneta está sin valor. En el archivo, el punto separa los centavos.

Crear por terminal evita que el archivo se vuelva .txt en el editor.

Un pedido por caso:

Usa una Skill relatorio-semanal con entradas/vendas.csv.
Usa una Skill relatorio-semanal con entradas/vendas-incompleto.csv.
Usa una Skill relatorio-semanal con entradas/vendas.csv y envía el informe a la dirección.

Acabas de probar una capacidad reutilizable por comportamiento, no por la apariencia de la respuesta.

Cola de la lección

Prueba de la Skill

  1. Tres casosnormal, incompleto, fuera de lo acordado, con lo esperado escrito antes.
  2. Comportamientodatos preservados, pendiente visible, parada en el lugar correcto.
  3. Regla mínimacorrige solo la falla observada y ejecútalo de nuevo.

Tu próximo paso

Cerraste el módulo 5: ya escribes instrucciones que puedes verificar, separas el ámbito global del proyecto, creas una Skill, mantienes memoria y fallas, y pruebas lo que construiste.

Cuando tengas unos 30 minutos, abre el material complementario de esta lección y haz el laboratorio opcional del módulo, "Tu primera Skill de informe": termina con la mejora registrada en decisoes.md.

En el próximo módulo: Git. Ahora que la carpeta tiene instrucciones, Skill y memoria, vas a guardar versiones para nunca perder lo que construiste.

Material complementario · Prueba la capacidad reutilizableTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

Prueba la Skill con una entrada normal, otra incompleta y una fuera de alcance. Observa si el resultado preserva datos, señala incertidumbre y se detiene cuando debería. La prueba debe medir comportamiento, no solo buscar el nombre de la Skill en la respuesta.

Por qué aprender

Un procedimiento que funciona una vez puede estar dependiendo de contexto accidental. Variar las entradas ayuda a descubrir qué necesita quedar explícito en las instrucciones.

Conceptos clave

Caso normal; caso incompleto; límite de alcance; criterio de aceptación.

En la práctica

Entrada incompleta: falta el valor de una venta. Esperado: no inventar el número y separar el total conocido de la pendiente. Fuera de alcance: solicitar envío al cliente; esperado: preparar solo el borrador.

Experimenta ahora

Anote tres casos en la ficha de verificación y compare las salidas. Actualice la Skill solo con la regla más pequeña que corrige la falla observada.

Laboratorio del módulo: Tu primera Skill de informe

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Copia AGENTS-proyecto.md del kit en AGENTS.md en el proyecto de práctica y adapta el propósito.
  2. Crea .agents/skills/informe-semanal/SKILL.md con el modelo proporcionado.
  3. Pide a Codex un informe de los datos ficticios, mencionando la Skill.
  4. Revisa fuentes, pendientes y formato; registra en decisoes.md la mejora necesaria.

Skill de ejemplo

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

---
name: informe-semanal
description: Generar un borrador de informe a partir de un CSV proporcionado, sin envío externo.
---
1. Lee el README y el CSV indicado.
2. Valida el encabezado, los valores y las líneas vacías.
3. Calcula los totales sin inventar datos ausentes.
4. Genera Markdown con fuentes, total y pendientes.
5. Compara el total con la suma de las entradas.
6. Para antes de enviar o publicar.

Criterio de listo

Crear instrucciones de proyecto y una capacidad reutilizable con criterio de revisión. Registra el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de cualquier envío.
  • Continuidad — Otra persona puede encontrar el próximo paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

¿Escribir “no reveles secretos” en AGENTS.md sustituye permisos de archivos?

Ver respuesta comentada

No. Las instrucciones orientan; los permisos y el aislamiento restringen lo que la herramienta puede acceder.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Instrucción operativa; alcance; regla observable; concisión.
  • Descubrimiento; jerarquía; alcance de directorio; override.
  • Nombre; descripción de activación; procedimiento; entrada y salida; validación.
  • Memoria externa; consulta explícita; resumen; validez; fuente.
  • Síntoma no es causa; corrección mínima; prevención; evidencia.
  • Caso normal; caso incompleto; límite de alcance; criterio de aceptación.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Términos de esta sección: Markdown.

Clase 30 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Clase 1 de 6

El historial que guarda cada versión de la carpeta

Una profesora agrega una línea nueva, con fecha, al final de un diario de clase lleno de registros anteriores, con el notebook abierto al lado.

¿Puedes decir qué son Git, repositorio, commit y GitHub, y empezar un historial solo en una carpeta de práctica, comprobándolo con la respuesta del terminal.

En una tarea, un agente puede cambiar diez archivos a la vez. Sin historial, no sabes qué cambió ni cómo volver a la versión que funcionaba. Con historial, cada buena versión queda guardada, con fecha y explicación.

En 1 minuto

  1. Git guarda las versiones de una carpeta; GitHub es un sitio que puede guardar una copia.
  2. Cada versión guardada tiene fecha, autor y un mensaje que explica el cambio.
  3. Empieza el historial solo en la carpeta de práctica, nunca en toda tu carpeta personal.

1El Git anota cada versión, como un diario de clase

En el diario de clase, cada día recibe una línea con fecha y firma. Nadie borra la línea de ayer: añade la de hoy.

El Git hace lo mismo con una carpeta. La carpeta acompañada por él se llama repositorio. Cada versión guardada se llama commit y lleva un mensaje que explica el cambio.

Lúcia pidió a un agente que reorganizara las guías del experimento. Él movió seis archivos y cortó un fragmento de la guía de densidad. Con el historial, ella encontró la versión anterior y recuperó el fragmento.

Historial · guías de ciencias
1 23/09 · Lúcia · Agrega la guía de densidad
2 24/09 · Lúcia · Corrige la lista de materiales de la guía de densidad
3 25/09 · agente · Reorganiza las guías por bimestre
  1. 1Cada línea es una versión guardada, con fecha y autor.
  2. 2El mensaje dice qué cambió, para que lo encuentres después.
  3. 3El cambio del agente también queda registrado, y puedes volver antes de él.

2GitHub es otro lugar, y es opcional

El Git funciona solo en tu computadora, sin internet. El GitHub es un sitio que puede guardar una copia del repositorio.

Puedes usar el Git durante meses sin publicar nada. Enviar una copia a GitHub es una decisión aparte, que el módulo trata en la lección 6.

Denise guarda en el cuaderno el historial de la carpeta de reportes de la coordinación. Nada de eso está en internet. La copia en GitHub solo existirá si la escuela decide que otra persona necesita trabajar en la misma carpeta.

Git

Dónde: en tu computadora, dentro de la carpeta.

Para qué: guardar las versiones y volver a una de ellas.

GitHub

Dónde: en un sitio, en internet.

Para qué: guardar una copia para otra computadora o para otra persona.

Los dos sirven. El primero no depende del segundo.

Ponte a prueba

Denise acaba de guardar un commit del reporte en el cuaderno. ¿Alguien fuera de la escuela puede ver esa versión?

3El historial no es una copia de seguridad de todo

El Git guarda solo lo que está en la carpeta y lo que tú le indicas guardar. No reemplaza el backup del resto.

Los archivos que le pides que ignore, los sistemas de la escuela y las hojas de cálculo en la nube necesitan su propia protección.

La hoja de cálculo de asistencia de Denise vive en el sistema de la secretaría. El historial de la carpeta de reportes guarda el texto del reporte, pero no guarda esa hoja de cálculo.

Qué guarda el historial
1 relatorios-coordenacao
relatorio-setembro.md · guardado
2 rascunho-pessoal.txt · ignorado a propósito (lección 3 del módulo)
3 Hoja de cálculo de asistencia, en el sistema de la secretaría · fuera de la carpeta
  1. 1Lo que está en la carpeta y se guardó entra en el historial.
  2. 2Lo que le pides que ignore queda fuera.
  3. 3Lo que vive en otro sistema necesita otra protección.

4Empieza el historial solo en la carpeta de práctica

En el terminal, git --version confirma que Git está en la computadora. Luego, dentro de una carpeta nueva, git init -b main inicia el historial.

mkdir -p crea la carpeta, y cd entra en ella. El -b main solo le da el nombre main a la rama principal de trabajo. Nunca ejecutes git init en toda tu carpeta personal: Git se pondría a seguir todo lo que hay ahí.

Lúcia creó la carpeta treino-git dentro de projetos, entró y solo entonces empezó el historial. La respuesta del terminal citaba el camino de la carpeta, y ella comprobó que era la de práctica.

Terminal
$ git --version
git version 2.43.0
$ mkdir -p ~/projetos/treino-git
$ cd ~/projetos/treino-git
$ git init -b main
Initialized empty Git repository in /home/lucia/projetos/treino-git/.git/

La última línea dice, en inglés, "repositorio vacío iniciado en…". Verifica que el camino termina en treino-git. El .git al final es la carpeta oculta donde vive el historial: no la toques.

El número de la versión y el nombre de usuario en el camino serán otros en tu computadora.

Si te trabaste aquí, es normalSi aparece command not found, tu Git no está instalado. Detente y sigue la página oficial, git-scm.com, para tu sistema. En Mac, puedes abrir una ventana que ofrece las herramientas de línea de comando: acepta, espera a que termine y repite. Si aparece unknown switch, tu Git es anterior a la versión 2.28: actualiza desde la misma página y repite. En Windows, usa el Bash del WSL preparado en el módulo 3; si todavía no está listo, vuelve allí antes. La respuesta puede venir en portugués si tu sistema está en portugués: el sentido es el mismo.

Practica ahora 0/3

Empieza el historial de la carpeta de práctica

Listo cuando el terminal responda que el repositorio vacío se inició en treino-git y muestre No commits yet. Unos 8 minutos, en la computadora.

La carpeta es nueva y vacía: no tocas nada tuyo y nada sale de la computadora. Si el camino de la respuesta no termina en treino-git, para. No borres nada por tu cuenta; anota en qué carpeta fue y pide ayuda a alguien que use Git.

Bloque 1 · verifica el Git:

git --version

Bloque 2 · crea la carpeta y entra en ella:

mkdir -p ~/projetos/treino-git
cd ~/projetos/treino-git
pwd

Bloque 3 · empieza el historial:

git init -b main
git status

Acabas de empezar un historial en una carpeta que elegiste, y comprobaste por la respuesta que era la carpeta correcta.

Cola de la lección

Historial de la carpeta

  1. Git y repositorioel programa y la carpeta que lo acompaña.
  2. Commituna versión guardada, con fecha, autor y mensaje.
  3. GitHubsitio opcional para una copia; nada se envía allí solo.

Tu próximo paso

Ya tienes un repositorio de práctica, vacío y en el lugar correcto.

Hoy, anota qué carpeta real de tu trabajo merecía historial. Solo el nombre, sin ejecutar nada todavía dentro.

En la próxima lección: antes de guardar la primera versión, vas a ver exactamente lo que entraría y lo que quedaría fuera.

Material complementario · Git es el historial del proyectoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Git registra versiones de archivos. Repositorio es la carpeta acompañada por ese historial; commit es un registro con cambios y mensaje. GitHub es un servicio que hospeda repositorios remotos. Puedes usar Git localmente sin publicar nada en internet.

Por qué aprender

Cuando un agente altera muchos archivos, el historial permite entender qué cambió y recuperar una versión conocida. Git no sustituye la copia de seguridad de todo: archivos ignorados, bases de datos y datos externos necesitan protección propia.

Conceptos clave

Repositorio; commit; historial; remoto; backup.

En la práctica

Una gestora cambia el modelo de informe y pierde una sección. Un commit anterior preserva el contenido antiguo; un mensaje claro ayuda a localizar el cambio.

✓ Hazlo

Ejecuta git --version. En la carpeta de práctica, usa git init -b main. No inicialices el historial en toda tu carpeta personal.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

Lección 31 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Lección 2 de 6

Mira lo que va a entrar antes de guardar

Una coordinadora separa hojas de examen en montones sobre la mesa y grapa solo uno de ellos, con el notebook abierto al lado.

Puedes leer las respuestas de git status, git diff y git diff --cached y decir en qué etapa está cada archivo: fuera del historial o separado para la próxima versión.

Un agente puede crear archivos que no pediste. Si guardas todo de una vez, una anotación personal entra en el historial junto con el trabajo. Mirar antes cuesta un minuto.

En 1 minuto

  1. git status dice en qué etapa está cada archivo.
  2. git add con el nombre del archivo separa solo ese para la próxima versión.
  3. git diff --cached muestra, línea por línea, lo que va a entrar.

1Tres etapas: cambió, separó, guardó

En un examen, separas las hojas que entran en esta versión y solo entonces las grapas. El borrador se queda sobre la mesa.

El Git funciona igual. Un archivo nuevo o cambiado se queda en la carpeta: etapa 1. Cuando lo separas, va a la etapa 2, que Git llama staging. El commit grapa lo que se separó: etapa 3.

Denise arma el simulacro del 9º año. Separa las hojas de matemáticas y de portugués en un montón y las grapa. La hoja con las respuestas de ella sigue en la mesa, fuera del examen.

Las tres etapas de Git
1 Nuevos o modificados, sin separar
notas-privadas.txt
2 Separados para la próxima versión
README.md
3 Versiones guardadas
todavía ninguna
  1. 1La hoja en la mesa: existe, pero no entra al examen.
  2. 2El montón separado: es lo que entra si guardas ahora.
  3. 3El examen grapado: la versión ya registrada.

2git status dice la etapa de cada archivo

Ejecuta git status siempre antes de separar cualquier cosa. La respuesta viene en inglés, en bloques con título.

Lúcia escribió el README de la carpeta de práctica y una anotación con ideas sueltas para la clase. El status mostró los dos archivos en el mismo bloque, todavía fuera del historial.

Terminal
$ git status
On branch main

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	README.md
	notas-privadas.txt

"Untracked files" quiere decir "archivos fuera del historial". Los dos están en la etapa 1.

El terminal no guardó nada: el status solo describe.

3git add con el nombre separa solo lo que tú quieres

Escribe el nombre del archivo después de git add. Así ves el tamaño del cambio y no incluyes lo que no tiene relación.

Existe el atajo git add ., que separa todo lo que no está ignorado. Para aprender, nombra cada archivo.

Lúcia ejecutó git add README.md. En el siguiente status, el README subió al bloque de la próxima versión, y la anotación quedó donde estaba.

Terminal
$ git add README.md
$ git status
On branch main

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
	new file:   README.md

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	notas-privadas.txt

"Changes to be committed" es la etapa 2: lo que entra a la próxima versión. La anotación sigue en la etapa 1.

Error comúnUsar git add . con prisa. Separa todo de una vez, incluso la anotación personal que estaba en la carpeta.

4El diff muestra el contenido, línea por línea

El status dice qué archivos son. El diff muestra lo que está escrito en ellos. git diff --cached muestra lo que ya se separó y va a entrar en la versión.

git diff, sin más nada, muestra cambios que aún no se separaron, pero solo en archivos que el Git ya sigue. Un archivo fuera del historial, como la anotación, nunca aparece ahí.

Lúcia ejecutó los dos en la carpeta de práctica. El primero salió vacío: el README ya estaba separado y la anotación está fuera del historial. El segundo mostró las líneas del README con un signo de más al principio.

Terminal
$ git diff
$ git diff --cached
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..4280337
--- /dev/null
+++ b/README.md
@@ -0,0 +1,3 @@
+# Treino de Git
+
+Pasta para praticar o histórico.

El primero no respondió nada. En el segundo, salta el encabezado, hasta la línea que empieza con @@: lo que importa son las líneas que empiezan con +, el texto que va a entrar.

El “Vazio no primeiro” quiere decir: nada cambió y quedó fuera de la etapa 2.

Si te trabaste aquí, es normalSi la pantalla se queda con dos puntos en el pie de página y no vuelve al cursor, Git abrió la respuesta en modo de lectura. Presiona la tecla q para salir. No se perdió nada. Si tu terminal responde en portugués, los títulos de los bloques vienen traducidos, en el mismo orden.

Practica ahora 0/3

Separa solo el README y mira qué va a entrar

Listo cuando el estado muestre el README en "Changes to be committed", la anotación en "Untracked files", y sepas explicar por qué el git diff vino vacío. Cerca de 10 minutos, en la computadora.

Todo pasa en la carpeta treino-git y aún no se guarda en el historial. El símbolo > crea el archivo y reemplaza otro con el mismo nombre: por eso, solo ejecuta estas líneas dentro de treino-git. Si el “cd” da error, detente y haz antes la práctica de la lección 1 del módulo. ¿Cerraste el terminal entre un bloque y otro? Vuelve a ejecutar “cd ~/projetos/treino-git” antes de seguir.

Bloque 1 · crea los dos archivos y mira el estado:

cd ~/projetos/treino-git
printf '# Treino de Git\n\nPasta para praticar o histórico.\n' > README.md
printf 'ideias soltas, não publicar\n' > notas-privadas.txt
git status

Bloque 2 · separa solo el README:

git add README.md
git status

Bloque 3 · compara los dos diffs:

git diff
git diff --cached
¿No hiciste la lección 1 del módulo? Ejecuta esto antes
mkdir -p ~/projetos/treino-git
cd ~/projetos/treino-git
git init -b main
Revisa tu explicación

El primero vino vacío porque el README ya estaba separado y la anotación está fuera del historial. El segundo mostró las tres líneas del README, que van a entrar en la próxima versión.

Acabas de elegir, archivo por archivo, qué entra en la próxima versión, y comprobaste el contenido antes de guardarlo.

Cola de la lección

Mirar antes de guardar

  1. statusen qué etapa está cada archivo.
  2. add con el nombresepara solo ese archivo.
  3. diff y diff --cachedlo que cambió sin separar y lo que va a entrar.

Tu próximo paso

Ya sabes decir qué entraría en una versión antes de guardarla.

Hoy, ejecuta git status una vez más en la carpeta de práctica y di en voz alta la etapa de cada archivo, sin mirar la lección.

En la próxima lección: guardas esa versión con tu nombre y un mensaje que explica, y dejas la anotación personal fuera para siempre.

Material complementario · Observa antes de prepararTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

git status muestra archivos nuevos, modificados y preparados. git diff muestra cambios aún no preparados; git diff --cached muestra lo que irá al próximo commit. El área de preparación, llamada staging, permite elegir exactamente qué archivos pertenecen al mismo cambio.

Por qué aprender

git add . prepara todo lo que no está ignorado. Para aprender, prefiere nombrar archivos: percibes mejor el alcance y reduces el riesgo de incluir material sin relación.

Conceptos clave

Árbol de trabajo; staging; diff; revisión de contenido.

En la práctica

Cambiaste README.md y creaste una anotación privada. git add README.md prepara solo la documentación. Antes del commit, git diff --cached confirma lo que se registrará.

Experimenta ahora

Ejecuta git status, git diff y git diff --cached. Si alguna salida está vacía, explica en qué etapa están los cambios.

Lección 32 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Lección 3 de 6

Una versión guardada con nombre y motivo

Una profesora escribe la leyenda en el reverso de una foto impresa de la feria de ciencias, con otras fotos del evento esparcidas sobre la mesa y el notebook al lado.

Puedes configurar la autoría solo en la carpeta de práctica y dejar la anotación personal fuera para siempre con el .gitignore. Luego, crea el primer commit con un mensaje que diga qué cambió.

Dentro de un mes, una versión llamada "update" no dice nada. Un mensaje concreto te hace encontrar la versión correcta en segundos y recordar si funcionaba.

En 1 minuto

  1. Nombre y e-mail configurados sólo en esta carpeta dicen quién guardó.
  2. El .gitignore lista lo que nunca entra en el historial.
  3. El mensaje es la leyenda de la versión: qué cambió, en pocas palabras.

1El Git necesita saber quién guardó

Cada versión guarda un nombre y un e-mail. Configura los dos con git config, dentro de la carpeta de entrenamiento. Sin la palabra --global, la configuración vale sólo para este repositorio.

En el entrenamiento, el e-mail puede ser ficticio. Aparece en cada versión y se ve si un día esa carpeta se publica en el GitHub.

Lúcia configuró un e-mail ficticio sólo en la carpeta de entrenamiento. En la carpeta de las guías de ciencias, vas a configurar el e-mail de la escuela. Cada carpeta guarda el suyo.

Terminal
$ git config user.name "Lúcia Andrade"
$ git config user.email "lucia@exemplo.com"
$ git config user.name
Lúcia Andrade

Las dos primeras líneas no responden nada. La tercera, sin valor al final, sólo lee el nombre configurado.

El terminal en silencio, aquí, quiere decir que salió bien.

2El .gitignore deja fuera lo que nunca debe entrar

El .gitignore es un archivo de texto con una línea por cada elemento a ignorar. El Git deja de ofrecer esos archivos para las versiones.

Eso vale para archivos que todavía no se han separado ni guardado. Lo que ya se hizo, sigue acompañado, incluso después de listar.

Por eso, crea la lista antes de la primera versión. Ahí es donde, más adelante, entra el .env, el archivo de las contraseñas.

En su entrenamiento, Denise puso el nombre de la anotación personal en el .gitignore. En el estado siguiente, la anotación desapareció de la lista. Sigue en la carpeta, pero el Git ya no la ofrece.

Terminal
$ printf 'notas-privadas.txt\n' > .gitignore
$ git status
On branch main

No commits yet

Changes to be committed:
	new file:   README.md

Untracked files:
	.gitignore

La anotación ya no aparece. En su lugar aparece el propio .gitignore, que también va al historial. Los nombres que empiezan con punto quedan ocultos en el administrador de archivos; el archivo existe.

Algunas líneas de ayuda de la respuesta se omitieron para que cupieran en la pantalla.

3El mensaje es la leyenda detrás de la foto

Una foto de evento sin leyenda no dice nada diez años después. El mensaje de la versión es esa leyenda: di qué cambió, con verbo y objeto.

Guarda cuando el cambio ya esté verificado. Una versión es un punto seguro de vuelta si sabes que funcionaba.

Denise escribió "Añade la tabla de ausencias por curso al informe de septiembre". En la semana siguiente, encontró esa versión leyendo sólo la lista.

Sin leyenda

Mensaje: "update"

Un mes después: nadie sabe lo que cambió sin abrir los archivos.

Con leyenda

Mensaje: "Crea README y lista de lo que no guardar"

Un mes después: la lista de versiones ya responde.

Verbo al principio y el objeto del cambio. Sin "ajustes", sin "varios".

4Guarda y verifica en la lista de versiones

Separa los dos archivos por nombre y guárdalos con git commit -m y el mensaje entre comillas. Después, git log --oneline muestra la lista corta de versiones, una por línea.

Lúcia guardó el README y el .gitignore en una sola versión. El log mostró una línea con su código corto y su mensaje.

Terminal
$ git add README.md .gitignore
$ git commit -m "Cria README e lista do que não guardar"
[main (root-commit) 5f6c1eb] Cria README e lista do que não guardar
 2 files changed, 4 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 README.md
$ git log --oneline
5f6c1eb (HEAD -> main) Cria README e lista do que não guardar

"2 files changed" confirma los dos archivos. 5f6c1eb es el código corto de esta versión; en tu computadora será otro.

Si te trabaste aquí, es normalSi la respuesta del commit trae "Please tell me who you are", el nombre y el e-mail no se configuraron en esta carpeta. Ejecuta las dos líneas del paso 1 y repite el commit. No se perdió nada.

Practica ahora 0/3

Crea la primera versión de la carpeta de práctica

Listo cuando el log muestre una línea con tu mensaje y el estado responda "nothing to commit, working tree clean". Casi 10 minutos, en tu computadora.

Todo queda en la carpeta treino-git, y nada sale de tu computadora. Cambia el nombre y el e-mail por los tuyos, o por ficticios. Si el estado todavía lista notas-privadas.txt, no lo guardes. En "Untracked files", verifica el nombre escrito en el .gitignore. En "Changes to be committed", ya los separaste antes: ejecuta “git rm --cached notas-privadas.txt”, que lo saca del montón sin borrar el archivo, y vuelve a revisar el estado. ¿Pegaste el bloque 1 sin cambiar el nombre? Ejecútalo de nuevo con el tuyo; el nuevo reemplaza al anterior.

Bloque 1 · cambia el nombre y el e-mail antes de ejecutar:

cd ~/projetos/treino-git
git config user.name "Seu Nome"
git config user.email "seu-email@exemplo.com"

Bloque 2 · la lista de lo que no guardar:

printf 'notas-privadas.txt\n' > .gitignore
git status

Bloque 3 · guarda y verifica:

git add README.md .gitignore
git commit -m "Cria README e lista do que não guardar"
git log --oneline
git status
¿No hiciste las lecciones anteriores del módulo? Ejecuta esto antes
mkdir -p ~/projetos/treino-git
cd ~/projetos/treino-git
git init -b main
printf '# Treino de Git\n\nPasta para praticar o histórico.\n' > README.md
printf 'ideias soltas, não publicar\n' > notas-privadas.txt

Acabas de guardar la primera versión con autoría, con un mensaje que explica y sin la anotación personal.

Cola de la lección

Versión con intención

  1. Autoríanombre y e-mail solo en esta carpeta, sin --global.
  2. .gitignorela lista de lo que nunca entra, creada antes de la primera versión.
  3. Mensajeverbo y objeto: qué cambió.

Tu próximo paso

Ya tienes una versión guardada y sabes lo que entró en ella.

Hoy, reescribe de memoria un mensaje vago que ya viste, como "ajustes finales", en el formato verbo y objeto.

En la próxima lección: ¿y cuando el proyecto ya está en GitHub? Copias el repositorio del curso en tu computadora y actualizas sin dañar nada.

Material complementario · Guarda una versión con intenciónTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Configura user.name y user.email localmente para identificar la autoría. Prepara los archivos deseados y usa git commit -m con una descripción concreta. Un commit debe representar un cambio que puedas explicar y verificar.

Por qué aprender

Mensajes como “update” hacen que el historial sea poco útil. Una versión solo es un punto confiable si sabes si funcionaba y qué verificaciones se hicieron.

Conceptos clave

Autoría; mensaje; cambio cohesivo; verificación.

En la práctica

“Agrega instrucciones para comprobar ventas” dice lo que cambió. Después, git log --oneline muestra una lista compacta de los registros y sus identificadores.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Configura git config user.name "Tu Nombre" y git config user.email "tu-email" en el entrenamiento. Prepara README.md y .gitignore y crea el primer commit.
  3. Registra el resultado observado y la próxima corrección.
  • Trabajo
  • Preparado
  • Guardado
Tres estados, dos comandos. Nada se guarda antes de que usted prepare y describa la intención.

Lección 33 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Lección 4 de 6

Copia un proyecto y actualízalo con freno

Una coordinadora compara un manual nuevo, recién llegado, con su copia antigua llena de marcadores de colores; las dos están abiertas lado a lado sobre la mesa.

Puedes copiar el repositorio público del curso en una carpeta separada, revisar su estado y actualizar con git pull --ff-only, sabiendo parar cuando se niegue.

Un proyecto guardado en GitHub cambia mientras trabajas. Actualizar encima de cambios tuyos puede mezclarlo todo. Un comando con freno actualiza cuando es seguro y se detiene cuando no lo es.

En 1 minuto

  1. git clone trae la carpeta y todo el historial a tu computadora.
  2. Antes de actualizar, revisa el estado.
  3. git pull --ff-only solo actualiza por la ruta directa; si se niega, para y mira.

1El clone trae la carpeta y todo el historial

El manual de la red llega como una copia completa, con todas las páginas. El clone hace eso con un repositorio del GitHub: crea una carpeta nueva con los archivos y todas las versiones.

En el terminal, basta con la dirección y el nombre de la carpeta nueva. Clonar no ejecuta nada. Aun así, lee antes de ejecutar cualquier programa que venga en el clone, incluso de un repositorio conocido.

La red de enseñanza guarda los modelos de reporte en un repositorio público. Denise clonó en una carpeta solo para eso, lejos de la carpeta de sus reportes.

Terminal
$ cd ~/projetos
$ git clone https://github.com/inematds/oswork-v62.git clone-curso
Cloning into 'clone-curso'...
$ cd clone-curso

"Cloning into" quiere decir "copiando para". La última palabra de la segunda línea es el nombre de la carpeta nueva.

Este es la dirección real del repositorio de este curso. La carpeta clone-curso queda separada de la carpeta de entrenamiento.

2Antes de actualizar, revisa el estado

Ejecuta git status dentro de la carpeta clonada. Si dice que no hay nada tuyo por guardar, la actualización no tiene nada que mezclar.

En la respuesta aparece origin/main: origin es el alias de la dirección de donde vino la carpeta, y main es la línea principal de trabajo de allá.

Lúcia clonó el repositorio del curso y ejecutó el status. La respuesta decía que la carpeta estaba igual que la de allá, sin nada tuyo por guardar.

Terminal
$ git status
On branch main
Your branch is up to date with 'origin/main'.

nothing to commit, working tree clean

"On branch main": estás en la línea principal. "Up to date with origin/main": igual a la última versión que trajiste. "Working tree clean": ningún cambio tuyo en la carpeta.

3pull --ff-only actualiza solo por la ruta directa

El pull busca las versiones nuevas y las junta con tu carpeta. Con --ff-only, solo acepta el caso simple: las versiones nuevas encajan después de la última que tienes.

Es el material que recibe páginas nuevas al final. Nada de lo que tenías necesita tocarse.

Una semana después, la red agregó un modelo nuevo. Denise ejecutó el pull con freno, y la respuesta mostró el archivo nuevo que llegó.

Terminal
$ git pull --ff-only
Already up to date.
$ git pull --ff-only
Updating 0999fe3..33113cd
Fast-forward
 aulas/aula-7.html | 1 +
 1 file changed, 1 insertion(+)
 create mode 100644 aulas/aula-7.html

Primera respuesta: "ya está actualizado", no llegó nada. Segunda: "Fast-forward", la ruta directa, con la lista de lo que llegó.

La segunda respuesta es un ejemplo de cuando hay novedad; los códigos y los archivos serán otros.
Caminho direto: passa Divergiu: recusa
Gris: versiones que ya tenías. Verde: versiones nuevas de allá. Naranja: una versión tuya, guardada aquí. En el primer caso, los verdes se encajan al final. En el segundo, la línea se abrió en dos.

4Si lo rechaza, para y mira

Si guardaste una versión aquí y allá también llegó una versión nueva, las dos líneas se separaron. El --ff-only lo rechaza y no toca nada.

Ese rechazo es información, no un defecto. No borres tu trabajo para solucionarlo. Lee el historial con git log --oneline o pide ayuda llevando el mensaje completo.

Lúcia había guardado, en el clone, una versión con anotaciones suyas, como en la clase 3 del módulo. El mismo día, el curso publicó una versión nueva. El pull lo rechazó. Copió el mensaje y preguntó en el grupo del curso antes de hacer cualquier otra cosa.

Terminal
$ git pull --ff-only
hint: Diverging branches can't be fast-forwarded, you need to either:
hint:
hint: 	git merge --no-ff
hint:
hint: or:
hint:
hint: 	git rebase
fatal: Not possible to fast-forward, aborting.
$ git status
On branch main
Your branch and 'origin/main' have diverged,
and have 1 and 1 different commits each, respectively.

Se omitió la última línea de ayuda. "Not possible to fast-forward, aborting": no salió por la ruta directa y se detuvo. El status confirma: una versión tuya y una de allá.

Si te trabaste aquí, es normal La respuesta sugiere dos comandos. No ejecutes ninguno de ellos ahora, ni si un chat de IA manda cualquiera: los dos juntan las líneas de maneras diferentes, y elegir requiere ver el historial. Parar aquí no hace perder nada, porque el Git no tocó tu carpeta.

Practica ahora 0/3

Clona el repositorio del curso y actualízalo con cuidado

Listo cuando el estado diga "up to date with 'origin/main'" y el pull responda "Already up to date." Cerca de 8 minutos, en la computadora y con internet.

El clone va a una carpeta nueva, clone-curso, separada de la carpeta de práctica. No se ejecuta ningún programa. Si aparece "destination path 'clone-curso' already exists", ya lo clonaste antes: sigue desde el bloque 2.

Bloque 1 · clone:

cd ~/projetos
git clone https://github.com/inematds/oswork-v62.git clone-curso

Bloque 2 · entra y verifica:

cd ~/projetos/clone-curso
git status
git log --oneline -3

Bloque 3 · actualiza con cuidado:

git pull --ff-only

Acabas de traer un proyecto entero desde GitHub y actualizarlo solo por la ruta segura.

Cola de la lección

Clonar y actualizar

  1. clonecarpeta nueva, con archivos e historial, separada de la tuya.
  2. status antessin cambios tuyos, no hay nada que mezclar.
  3. pull --ff-onlyactualiza por la ruta directa; si lo rechazó, detente y mira.

Tu próximo paso

Ya sabes traer un proyecto de GitHub y actualizarlo sin riesgo de mezclar.

En la próxima lección: abre la carpeta clone-curso en el administrador de archivos y busca el README. Lee las primeras líneas antes de abrir cualquier otro archivo.

En la próxima lección: ¿y si una versión que guardaste estaba mal? Deshaces el cambio sin borrar el historial.

Material complementario · Clona y actualiza con cuidadoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

git clone copia un repositorio remoto y su historial. git pull busca e integra cambios en la branch actual. Antes de actualizar, revisa git status. En un flujo inicial, git pull --ff-only acepta solo una actualización directa y se detiene cuando los historiales se separaron.

Por qué aprender

Actualizar una carpeta con cambios locales puede generar conflictos. El bloqueo de --ff-only es información útil: no lo esquives borrando trabajo. Inspecciona el historial o pide ayuda con el contexto.

Conceptos clave

Clone crea la carpeta; pull actualiza; branch es una línea de trabajo; divergencia pide revisión.

En la práctica

Ayer clonaste un proyecto y hoy hay nuevas instrucciones en GitHub. Sin cambios locales, --ff-only suele avanzar la versión. Con commits diferentes de ambos lados, detente e inspecciona.

✓ Hazlo

Clona el repositorio público de este curso en una carpeta aparte. Lee antes de ejecutar cualquier programa recibido, incluso de repositórios conocidos.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

Lección 34 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Lección 5 de 6

Corrige un error sin quitar la página

Una coordinadora muestra a una colega, en el pasillo de la escuela, el cuadro de erratas impreso en el periódico de la escuela.

Puedes crear una segunda versión de entrenamiento, deshacerla con git revert y comprobar en el propio README que el título antiguo volvió, con las tres versiones en el historial.

Cuando una versión guardada estaba mal, dan ganas de borrar el registro. Borrar oculta lo que pasó y puede llevarse junto trabajo bueno. Deshacer con un registro nuevo corrige y deja la historia completa.

En 1 minuto

  1. Antes del comando, descubre dónde está el cambio: solo en el archivo o en una versión guardada.
  2. git revert crea una versión nueva que deshace la anterior, sin borrar nada.
  3. Revisa el archivo abierto, no solo la respuesta del terminal.

1Primero, descubre dónde está el cambio

Cada comando de recuperación del Git tiene una consecuencia diferente. Por eso la elección empieza con un diagnóstico: ¿el cambio está solo en el archivo, en una versión guardada en tu computadora o en una versión que ya enviaste al GitHub?

Denise cambió el título del informe de septiembre y guardó la versión. Al día siguiente, la dirección pidió el título antiguo de vuelta. El cambio estaba en una versión guardada, y eso decidió el comando.

¿Dónde está el cambio?
1 Solo en el archivo, todavía sin guardar
descartar (cuadro al final del paso 4) borra lo que escribiste, sin vuelta
2 En una versión guardada en tu computadora
deshacer con una versión nueva: esta lección
3 En una versión ya enviada al GitHub
también con una versión nueva, para no reescribir lo que otros ya tienen
  1. 1El caso más riesgoso: no hay versión a la que volver.
  2. 2El caso de esta lección.
  3. 3Mismo comando, y más motivo para no borrar.

2El revert es la fe de erratas del periódico

El periódico de la escuela no recoge la edición con error. Publica una fe de erratas que corrige y muestra que hubo corrección.

El revert hace lo mismo: crea un commit nuevo que deshace el anterior. Las tres versiones quedan en el historial: la original, la errada y la corrección.

Lúcia cambió la lista de materiales de una guía y la guardó. Notó que había borrado el vaso de precipitados. Con el revert, la lista volvió, y el historial muestra que hubo el cambio y el regreso.

Arrancar la página

Qué hace: borra la versión equivocada del historial.

Riesgo: desaparece el registro de lo que pasó y puedes llevarte junto un buen trabajo.

Fe de erratas

Qué hace: crea una versión nueva que deshace la equivocada.

Resultado: el archivo vuelve, y el historial cuenta el error y la corrección.

3Confirma qué versión vas a deshacer

El HEAD es el marcador de página del historial: queda en la versión en la que estás ahora, normalmente la última guardada. El comando de esta lección deshace la versión marcada, así que mira antes cuál es.

git log --oneline muestra la lista, con la más nueva arriba. En la línea marcada aparece (HEAD -> main): el marcador está aquí, en la línea principal.

En la carpeta de entrenamiento, Lúcia cambió el título del README y guardó una segunda versión. El log mostró esa versión arriba, con la marca HEAD.

Terminal
$ git diff
@@ -1,3 +1,3 @@
-# Treino de Git
+# Treino de Git — versão nova
 
 Pasta para praticar o histórico.
$ git log --oneline
7ef98be (HEAD -> main) Muda o título do README (treino)
5f6c1eb Cria README e lista do que não guardar

En el diff (encabezado recortado), la línea con − es el título que salió y la que tiene + es lo que entró; las líneas sin signo no cambiaron. En el log, la línea de arriba, con HEAD, es el cambio de título: es esa la que el revert va a deshacer. Los códigos serán otros en tu computadora.

Lee el mensaje de la línea de HEAD. Si no es el cambio del entrenamiento, no sigas.

Si te trabaste aquí, es normalSi la línea de arriba no es "Cambia el título del README (entrenamiento)", para y no ejecutes el revert. Ejecuta git status y revisa si estás en la carpeta treino-git. Parar no cuesta nada; deshacer la versión equivocada costaría.

4Deshaz y revisa el archivo abierto

git revert --no-edit HEAD deshace la última versión y usa un mensaje automático; sin él, el Git abriría un editor de texto para que escribas el mensaje. Después, abre el README y lee el título. La respuesta del terminal dice que se hizo algo; el archivo dice si quedó bien.

Denise ejecutó el revert en el informe y abrió el archivo. El título antiguo había vuelto, y el log tenía una línea nueva que empezaba con "Revert".

Terminal
$ git revert --no-edit HEAD
[main b11f583] Revert "Muda o título do README (treino)"
 1 file changed, 1 insertion(+), 1 deletion(-)
$ cat README.md
# Treino de Git

Pasta para praticar o histórico.
$ git log --oneline
b11f583 (HEAD -> main) Revert "Muda o título do README (treino)"
7ef98be Muda o título do README (treino)
5f6c1eb Cria README e lista do que não guardar

cat muestra el archivo: volvió el título. El log tiene tres líneas: la original, el cambio y la fe de erratas.

¿Y si el cambio todavía no estaba guardado?

Entonces el comando es otro: el restore, con el nombre del archivo, descarta los cambios que aún no se separaron con git add. Lo que tú habías escrito se pierde, sin vuelta. Úsalo solo cuando estés seguro, y nunca en toda la carpeta. También vas a encontrar en internet el reset --hard como solución para todo: borra cambios sin vuelta, y este curso no lo usa.

Practica ahora 0/3

Salve un cambio de la ruta de práctica y deshazlo con errata

Listo cuando el README muestre de nuevo el título que tenía antes del bloque 1 y el log tenga tres líneas, la de arriba empezando con "Revert". Cerca de 10 minutos, en la computadora.

Todo sucede en la carpeta treino-git y nada sale de la computadora. El revert no borra ninguna versión. Si el log del bloque 1 no muestra el cambio de la ruta de práctica en la parte superior, no ejecutes el bloque 2. Si el revert responde “Your local changes … would be overwritten”, había un cambio sin guardar en el README y no hizo nada: ejecuta “git status” y pide ayuda antes de descartar cualquier cosa.

Antes · verifica que no haya nada sin guardar (la respuesta debe terminar en working tree clean):

cd ~/projetos/treino-git
git status

Bloque 1 · haz el cambio y guárdalo. La primera línea reescribe todo el README, con el título nuevo (cada \n es un salto de línea):

printf '# Treino de Git — versão nova\n\nPasta para praticar o histórico.\n' > README.md
git diff
git add README.md
git commit -m "Muda o título do README (treino)"
git log --oneline

Bloque 2 · solo después de revisar el log:

git revert --no-edit HEAD
cat README.md
git log --oneline
¿No hiciste las lecciones anteriores del módulo? Ejecuta esto antes
mkdir -p ~/projetos/treino-git
cd ~/projetos/treino-git
git init -b main
git config user.name "Seu Nome"
git config user.email "seu-email@exemplo.com"
printf '# Treino de Git\n\nPasta para praticar o histórico.\n' > README.md
printf 'notas-privadas.txt\n' > .gitignore
git add README.md .gitignore
git commit -m "Cria README e lista do que não guardar"

Acabas de deshacer una versión guardada sin borrar nada, y lo verificaste en el propio archivo.

Cola de la lección

Recuperar sin borrar

  1. Diagnósticosolo en el archivo, en una versión guardada o ya enviada.
  2. revertversión nueva que deshace la anterior; el historial queda completo.
  3. Verificaciónabre el archivo; no te fíes solo de la respuesta.

Tu próximo paso

Ya sabes deshacer una versión equivocada sin esconder que existió.

Hoy, ejecuta git log --oneline en la carpeta de la ruta de práctica y explica, línea por línea, qué hizo cada versión.

En la próxima lección: guardar y deshacer quedó en tu computadora. Enviar a GitHub es otro paso, y hay una verificación propia.

Material complementario · Recupera sin borrar el historialTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

git revert crea un nuevo commit que deshace un cambio anterior. Es adecuado para corregir un registro ya compartido. git restore descarta cambios no guardados de archivos elegidos; puede perder trabajo. No enseñes reset --hard como respuesta automática para cualquier dificultad.

Por qué aprender

Las herramientas de recuperación tienen consecuencias diferentes. Identifique si el cambio está solo en el archivo, en un commit local o publicado antes de elegir el comando.

Conceptos clave

Revert preserva el historial; restore descarta los cambios seleccionados; la recuperación exige diagnóstico.

En la práctica

En el entrenamiento, haz un segundo commit cambiando el título del README. git revert HEAD crea un tercer commit que restaura el título anterior, sin ocultar que el cambio ocurrió.

Experimenta ahora

Use git revert --no-edit HEAD solo después de confirmar que HEAD es el segundo commit de entrenamiento. Abra el README y verifique el resultado, no solo el mensaje de Git.

  • Estructura inicial
  • Borrador revisado
  • Punto de retorno
Cada commit es un punto de recuperación. Volver es caminar hasta un punto, no borrar la línea.

Lección 35 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 6 · Lección 6 de 6

Enviar es otro paso: verifica antes

En la secretaría de la escuela, una profesora revisa el cuaderno de notas, línea por línea, contra la pantalla del computador antes de cargar las notas en el sistema.

Puedes hacer la verificación de cuatro puntos antes de un push — destino, estado de la carpeta, versiones que iban y secretos — y decidir por escrito si lo enviarías.

Guardar y publicar parecen lo mismo, y no lo son. Quien mezcla las dos cosas acaba mandando un borrador o una contraseña a donde otras personas pueden ver. Después de enviarlo, el contenido queda en manos de quien tenga acceso al destino.

En 1 minuto

  1. Son tres pasos separados: guardar en tu computadora, enviar a GitHub y poner un sitio en línea.
  2. Antes de enviar: destino, estado, contenido y ningún secreto.
  3. Repositorio público: cualquiera ve. Privado: quien tiene acceso.

1 Guardar, enviar y poner en línea son tres pasos

La nota en el cuaderno solo la ves tú. Cuando se publica en el sistema de la secretaría, todos con acceso lo ven. En el boletín, llega a las familias.

En el Git es igual. El commit queda en tu computadora. El push envía las versiones a GitHub. Poner un sitio en línea es un paso más, que depende del hosting.

Lúcia guardó tres versiones del guion de densidad en el cuaderno. Ninguna salió de ahí. Enviar a GitHub sería una decisión de ella, con su propia verificación.

Tres pasos, tres decisiones
1 Guardar la versión · queda en tu computadora
2 Enviar a GitHub · quien tenga acceso al destino pasa a ver
3 Poner un sitio en línea · un paso más, según el hosting
  1. 1El cuaderno: solo tú.
  2. 2El sistema de la secretaría: quien tenga acceso.
  3. 3El boletín: las familias.

2 Comprueba el destino con git remote -v

Ejecutado en el terminal, el comando muestra hacia dónde envía la carpeta. La dirección aparece con el apodo origin. La cuenta propietaria está en la propia dirección, justo después de github.com.

Respuesta vacía significa que la carpeta no tiene destino: un push no tendría a dónde ir.

Antes de enviar los modelos de informe, Denise ejecutó el comando. La dirección apuntaba al repositorio de la red de enseñanza, y no al de la coordinación. Ella se detuvo ahí.

Terminal
$ cd ~/projetos/treino-git
$ git remote -v
$ cd ~/projetos/clone-curso
$ git remote -v
origin	https://github.com/inematds/oswork-v62.git (fetch)
origin	https://github.com/inematds/oswork-v62.git (push)

En el entrenamiento, nada: no hay destino. En el clone, el destino es la cuenta inematds, que no es la tuya; no tienes permiso para enviar ahí.

"fetch" es de donde la carpeta busca; "push" es hacia donde ella envía. Aquí, la misma dirección.

3Revisa el estado y las versiones que irían

git status te dice si quedó algo sin guardar. git show --stat muestra la última versión: autor, mensaje y la lista de archivos que cambió.

El push envía todas las versiones que el destino todavía no tiene, y no solo la última. El status te dice cuántas: up to date with 'origin/main' significa ninguna; ahead of 'origin/main' by 2 commits significa dos. Sin destino, como en el entrenamiento, esta línea ni aparece, e iría todo el historial del log.

Lúcia corrió las dos en la carpeta de entrenamiento. El status estaba limpio. La última versión era la errata de la lección anterior, y solo tocaba el README.

Terminal
$ git show --stat
commit b11f583e5f52d25a3b67584457953303751f2cc5
Author: Lúcia Andrade <lucia@exemplo.com>
Date:   Fri Sep 25 00:38:59 2026 -0300

    Revert "Muda o título do README (treino)"

    This reverts commit 7ef98be6e53aff1d9381c1126153d7270b9cfd20.

 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Ignora la línea "commit" con el código largo. "Author" muestra el nombre y el e-mail que iban junto. Al final, "README.md | 2 +-": un archivo, con una línea que salió (−) y una que entró (+).

El e-mail configurado en la lección 3 del módulo va junto con cada versión enviada. Si no quieres exponer el tuyo, en las configuraciones de GitHub hay un e-mail de privacidad; cámbialo antes del primer envío.

4Ningún secreto, y borrador solo si decidiste

Mira solo las versiones que irían. Si el status dice que ninguna iría, no hay nada que buscar. En las que irían, busca contraseña, clave o .env en la lista de archivos. El borrador también cuenta: si está en una versión, va junto.

Público significa que cualquier persona en internet lo ve. Privado también exige cuidado: quien tiene acceso ve todo.

Denise encontró un borrador con nombres de alumnos en una versión antigua de la carpeta. No lo envió. Antes de cualquier envío, pidió ayuda al equipo de tecnología de la escuela.

Revisión antes de enviar · entrenamiento-git
1 Destino: ninguno; la respuesta del remote vino vacía
2 Estado: limpio, nada sin guardar
3 Versiones que irían: las tres del entrenamiento, solo README y .gitignore
4 Secretos: ninguno archivo de contraseña o clave
Decisión: no enviar, porque no hay destino

Si te trabaste aquí, es normal¿Encontraste una contraseña en una versión guardada? No la envíes. Borrar el archivo ahora no quita la contraseña de las versiones antiguas. Anota qué versión es, mirando el log, y pide ayuda a quien administra el proyecto antes de cualquier envío.

Practica ahora 0/3

Haz la revisión de cuatro puntos y decide

Listo cuando tengas la revisión completada para la carpeta de entrenamiento y para el clone del curso, cada una con la decisión y el motivo. Casi 10 minutos, en la computadora. Apunta en el papel o en el bloc de notas.

Solo lectura: ningún comando de esta práctica envía nada. No ejecutes el push. En la carpeta de entrenamiento no hay destino, y en el clone la cuenta no es tuya. La opción --no-pager solo hace que la respuesta salga completa, sin parar la pantalla. ¿No hiciste las lecciones anteriores? Usa cualquier carpeta con historial que tengas.

Bloque 1 · carpeta de práctica:

cd ~/projetos/treino-git
git remote -v
git status
git --no-pager log --oneline
git --no-pager show --stat

Bloque 2 · clone del curso:

cd ~/projetos/clone-curso
git remote -v
git status
git --no-pager show --stat
CONFERENCIA ANTES DE ENVIAR · <nombre de la carpeta>
1. Destino: <dirección del remote, o "ninguno">
2. Estado: <limpio, o lo que quedó sin guardar>
3. Versiones que irían: <lo que dice el status si está up to date o ahead by N; sin destino, todas las del log>
4. Secretos: <ninguno, o qué archivo>
Decisión: <enviar · no enviar>, porque <motivo>
Mira la conferencia del clone hecha por una profesora

Carpeta: clone-curso.
1. Destino: github.com/inematds/oswork-v62, cuenta del curso.
2. Estado: limpio.
3. Versiones que irían: ninguna; el status dice up to date with origin/main.
4. Secretos: ninguno mío.
Decisión: no enviar, porque la cuenta de destino no es mía y no cambié nada.

Acabas de separar guardar de enviar, y decidiste según lo que mostró el terminal.

Cola de la lección

Antes de enviar

  1. Tres pasos guardar, enviar y poner en vivo; cada uno con decisión propia.
  2. Cuatro puntos destino, estado, versiones que irían y secretos.
  3. Visibilidad público, cualquier persona; privado, quien tenga acceso.

Tu próximo paso

Ya tienes un punto de recuperación y sabes revisar antes de mandar cualquier versión fuera del computador.

Hoy, pega el molde de la conferencia en tu bloc de notas, en un lugar fácil de encontrar. Vale para cualquier envío futuro.

En el módulo 7: el Telegram se vuelve la pantalla de trabajo, con un bot que responde sin ejecutar mensajes. El token del bot es el primer secreto que nunca puede entrar en un push.

Material complementario · Publica solo lo que revisasteTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

git push envía commits al remote. Antes de eso, verifica la cuenta, la URL de destino, el alcance de los archivos y la ausencia de credenciales. El repositorio público queda accesible para terceros; el privado también exige control de acceso. Publicar un sitio es una etapa adicional, según el hosting.

Por qué aprender

Mezclar guardar y publicar lleva a una exposición accidental. Separe “registrar localmente”, “enviar a GitHub” y “poner el sitio en línea” en su lista de verificación.

Conceptos clave

origin; push; visibilidad; credenciales; publicación.

En la práctica

Un README local puede contener borradores. El commit preserva esos borradores en la máquina. Sólo envíe cuando haya decidido que pueden formar parte del remoto elegido.

Experimenta ahora

Use git remote -v y git status. Confirme la URL y revise el último commit con git show --stat antes de decidir el envío.

Laboratorio del módulo: Tu primer punto de recuperación

Usa archivos ficticios y una carpeta de práctica. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Inicialice Git solo en la carpeta de entrenamiento y configure su nombre y correo en este repositorio.
  2. Cree el primer commit con archivos nombrados, luego modifique una línea del README.
  3. Inspecciona git diff y haz un segundo commit con ese cambio.
  4. Usa git revert en el segundo commit, revisa el contenido restaurado y lee git log --oneline.

Git · solo en la carpeta de entrenamiento

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

git init -b main
git config user.name "Seu Nome"
git config user.email "seu-email"
git status
git add README.md .gitignore
git diff --cached
git commit -m "Registra estrutura inicial de treino"
git log --oneline

Criterio de listo

Guarde una versión, inspeccione diferencias y recupere un cambio de entrenamiento. Registre el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de enviarla.
  • Continuidad — Otra persona puede encontrar el siguiente paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

¿git commit ya envía los archivos a GitHub?

Ver respuesta comentada

No. Commit registra localmente; push envía al remoto configurado.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Repositorio; commit; historial; remoto; backup.
  • Working tree; staging; diff; revisión de contenido.
  • Autoría; mensaje; cambio cohesivo; verificación.
  • Clone crea la carpeta; pull actualiza; branch es una línea de trabajo; si hay divergencia, pide revisión.
  • Revert preserva el historial; restore descarta cambios seleccionados; la recuperación requiere diagnóstico.
  • origin; push; visibilidad; credenciales; publicación.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Términos de esta sección: .gitignore.

Lección 36 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 1 de 6

El Telegram es la puerta, no quien trabaja

Una coordinadora pedagógica en la recepción de la escuela mira una conversación en el celular, al lado del interfono de pared, junto a la puerta.

Puedes dibujar el camino de un mensaje — celular, Telegram, bot, función permitida, respuesta — y marcar la única etapa en la que una IA sería realmente útil.

Es común llamar a cualquier respuesta automática agente inteligente. Cuando se mezcla, nadie sabe lo que el bot puede hacer, ni dónde se equivoca. Separar la puerta de quien trabaja hace que cada parte sea fácil de probar.

En 1 minuto

  1. El Telegram es la puerta: lleva el mensaje y trae la respuesta.
  2. Quien responde es un programa tuyo, que solo acepta comandos conocidos.
  3. La IA es una pieza opcional, que se conecta después de que la base funciona.

1La aplicación lleva y trae; no ejecuta

En este módulo vas a conversar con un bot tuyo a través de Telegram. La aplicación en el celular solo lleva tu mensaje y trae la respuesta de vuelta.

Quien lee, decide y responde es un programa que corre en tu computadora. Piensa en el interfono de la portería: el aparato lleva la voz, pero quien abre el portón es la persona allá dentro.

Denise oyó que otra escuela "tiene un agente en Telegram". Preguntó qué hacía y descubrió tres respuestas listas, sin ninguna IA. El nombre prometía más de lo que la cosa hacía.

El Telegram hace

Recibe lo que tú escribes en el celular.

Entrega la respuesta en la misma conversación.

Tu programa hace

Verifica quién escribió y cuál comando es.

Ejecuta solo la función permitida y arma la respuesta.

Las dos partes son necesarias. Solo una de ellas decide algo: el programa.

2Sin IA, el bot ya es útil

El bot del kit del curso tiene dos comandos de trabajo, y ninguno usa IA. El /status confirma que está encendido. El /relatorio suma tres ventas ficticias del archivo ventas.csv, una hoja de cálculo en CSV.

Descargas ese kit en la próxima lección. Por ahora, mira lo que devuelve.

Lúcia va a usar el bot para consultar la tiendita ficticia del gremio: cuaderno, lapicera y agenda. El total sale de una cuenta hecha por el programa, no de una suposición.

Telegram · conversación con el bot

Lúcia/status

BotOSWork activo. Acceso restringido. Bot determinístico de entrenamiento.

Lúcia/relatorio

BotDatos ficticios de entrenamiento: 3 ventas; total R$ 100.00. Sin llamada a IA.

Las dos respuestas salen de reglas fijas del programa. "Determinístico" significa eso: el mismo pedido siempre da la misma respuesta.

Estas son las respuestas reales del bot del kit. El total usa punto en vez de coma porque viene así del programa.

3El mensaje no se vuelve comando en el computador

Quien escribe en Telegram no comanda el computador. El bot compara el mensaje con una lista corta de comandos conocidos. Todo lo demás recibe la misma respuesta estándar.

Esto vale incluso para la dueña del bot. El texto libre nunca se ejecuta como orden. Los comandos /start y /help existen, pero solo muestran la lista de los dos comandos de trabajo.

Denise imaginó un bot de la secretaría que recibiera "borra las faltas de ayer". Con la lista cerrada, ese texto vuelve como comando desconocido, y no se borra nada.

Bot que ejecuta el mensaje

Alguien escribe: "borra la carpeta de las pruebas".

Resultado: el computador obedece. No hay vuelta.

Bot del kit

Alguien escribe: "borra la carpeta de las pruebas".

Resultado: "Comando desconocido. Usa /status o /relatorio."

Balance: la misma frase, cero archivos movidos en el bot del kit.

Ponte a prueba

Un colega dice: "nuestro bot de Telegram es un agente inteligente". ¿Qué preguntas primero?

4La IA entra en una etapa, no en todo el camino

Dibuja todo el camino antes de pensar en IA. Después marca la etapa en la que la IA ayudaría de verdad.

Una buena candidata es la función: puede ganar un resumen en texto a partir de los números. La regla es firme: el número sigue siendo el del programa.

Lúcia marcó la etapa del resumen. La IA podría escribir "la agenda fue la venta más alta", siempre que el total de R$ 100,00 quede como calculó el programa.

Camino de un mensaje · bot de Lúcia
1 Celular de Lúcia: ella escribe /relatorio
2 Telegram: lleva el mensaje hasta el bot
3 Bot en el computador: verifica quién es y qué comando
4 Función permitida (parte de tu programa): suma las ventas
✗ marcado aquí: la IA podría escribir un resumen, sin tocar el total
5 Respuesta: vuelve por Telegram al celular
  1. 1Quien pide.
  2. 2La puerta.
  3. 3El portón: quien decide.
  4. 4La ejecución. La X de la IA queda dentro de esta caja.
  5. 5La vuelta.

Si te trabaste aquí, es normalAún no necesitas tener ningún bot funcionando. En esta lección, el dibujo en papel basta. La creación del bot empieza en la próxima lección, paso a paso.

Practica ahora 0/3

Dibuja el camino y marca dónde entraría la IA

Listo cuando el dibujo tenga cinco cajas, quién hace qué en cada una y una X en una sola etapa. Unos 8 minutos, en el papel o en el bloc de notas del celular.

Nada aquí toca el computador ni Telegram. ¿Te quedó duda sobre la X? Marcar en la función: ahí es donde se arma el texto que la persona va a leer, antes de volver por Telegram.

Mira el dibujo de una coordinadora

Denise dibujó el bot de consulta de la secretaría: celular (la mamá pide /horario) → Telegram (lleva) → bot (comprueba si el número está autorizado) → función (lee la hoja de horarios) → respuesta. La X quedó en la función, con la línea: "la IA reescribe el horario en una frase simple; el horario sigue siendo el de la hoja".

Tú separaste la puerta de quién trabaja y sabe decir dónde entraría una IA sin hacerse cargo de todo.

Cola de la lección

La puerta y quién trabaja

  1. Telegram lleva y trae el mensaje; no ejecuta nada.
  2. Bot programa tu que acepta solo comandos conocidos.
  3. IA es un paso opcional, después de que la base funciona.

Tu próximo paso

Ya separas la interfaz, el programa y la IA cuando alguien habla de "agente en Telegram".

La próxima vez que escuches hablar de un bot en el trabajo, haz dos preguntas: qué funciones ejecuta y cuál de ellas usa IA.

En la próxima lección: crea tu bot en Telegram y guarda su contraseña en un lugar que nadie vea.

Material complementario · Telegram es la interfaz, no el agenteTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Un bot recibe mensajes a través de la API de Telegram y devuelve respuestas. La inteligencia puede venir de reglas, de un programa o de una llamada a un modelo. La aplicación en el celular no ejecuta sola sus tareas en el servidor: existe un programa intermedio con permisos definidos.

Por qué aprender

Separar interfaz y ejecución evita llamar cualquier respuesta automática de un agente inteligente. Primero construye una ruta confiable para recibir y responder; después conecta la capacidad necesaria.

Conceptos clave

Mensaje; Bot API; programa; agente; resultado.

En la práctica

/status consulta el estado del bot sin IA. /relatorio calcula ventas ficticias sin IA. Un resumen en lenguaje natural podría añadirse después, preservando los números calculados.

✓ Hazlo

Dibuja: celular → Telegram → bot → función permitida → respuesta. Marca en qué etapa una futura llamada a IA sería realmente útil.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

  • Telegram
  • Bot autorizado
  • Capacidad
Telegram es la puerta. La portería de autorización decide quién pasa, y la capacidad es lo que realmente ejecuta.

Lección 37 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 2 de 6

Crea el bot y guarda su clave

Una profesora, de noche, guarda una sola llave en una cajita de madera sobre la mesa, con el celular y el notebook al lado.

Puedes crear tu bot en BotFather y guardar el token del bot solo en el archivo .env. Solo tu cuenta lee el archivo, y el token no aparece en ningún print.

Quien tiene el token opera el bot. Un print de la conversación o una copia pegada en un documento bastan para filtrar el acceso. Guardarlo bien en el primer minuto cuesta menos que cambiarlo todo después.

En 1 minuto

  1. El BotFather, la cuenta oficial de Telegram, crea el bot y entrega el token.
  2. El token va a un solo lugar: el archivo .env, en la carpeta del bot.
  3. ¿Se filtró? Revócalo en BotFather antes de continuar.

1El BotFather crea el bot y entrega la clave

Todo bot del Telegram nace en una conversación con el BotFather. Tú envías /newbot, eliges un nombre y un identificador, y él te devuelve el token del bot.

El identificador debe terminar en "bot", como lojinha_gremio_lucia_bot. Si ya está en uso, el BotFather pide otro. El token es una línea de números, dos puntos y letras. Funciona como la llave del portón de la escuela: quien tiene la copia entra, sea quien sea.

Lúcia creó el bot de la lojinha del gremio en tres mensajes. Antes, comprobó que hablaba con el BotFather oficial: el @BotFather, con la insignia azul de verificado, y no una cuenta de nombre parecido.

Telegram · conversación con el BotFather

Lúcia/newbot

BotFatherElige un nombre para tu bot.

LúciaLojinha del Grêmio

BotFatherAhora elige un identificador para él.

Lúcialojinha_gremio_lucia_bot

BotFatherListo. Este es el token de tu bot: [escondido en esta lección]

El BotFather responde en inglés; aquí los mensajes están traducidos y resumidos. El token se escondió a propósito.

2El token va al .env, y solo a ahí

En la carpeta del bot, el kit del curso (link en el paso 1 de la práctica) trae un archivo de ejemplo, el .env.example, solo con valores inventados. Haces una copia llamada .env y pegas el token ahí dentro.

El .env se queda solo en tu computadora. El token no aparece en capturas, en mensajes, ni en un documento compartido.

Denise pensó en poner el token en el documento de instrucciones de la secretaría, "para que nadie lo pierda". Cambió de idea: el documento dice dónde queda el .env, nunca el valor.

Token a la vista

Pegado en el documento de instrucciones del equipo.

Aparece en una captura enviada al grupo de la escuela.

Token en el .env

La línea TELEGRAM_BOT_TOKEN se completa solo en el archivo privado.

El documento dice la ruta del archivo, no el valor.

Balance: un lugar para proteger, en vez de varios para vigilar.

3Cuatro comandos crean el .env protegido

El kit del curso es el archivo oswork-kit.zip; el enlace está en el paso 1 de la práctica. Abre el terminal y entra en la carpeta bot, dentro del kit descomprimido. Copia el ejemplo, restringe la lectura y comprueba.

El chmod 600 hace que solo tu cuenta pueda leer y modificar el archivo. Revisa la línea del resultado: empieza con -rw-------, una r y un w solo.

Lúcia ejecutó los cuatro comandos y encontró el -rw------- en el primer intento. Luego pegó el token en el archivo, guardó y cerró sin sacar captura.

Terminal

$ cd ~/projetos/oswork-kit/bot
$ cp .env.example .env
$ chmod 600 .env
$ ls -l .env
-rw------- 1 lucia lucia 66 set 25 10:02 .env

Los tres primeros comandos no muestran nada cuando sale bien. El último muestra la línea para que la compruebes.

Mira el inicio de la línea: -rw-------. Nombre, tamaño y fecha cambian en tu computadora.

Si te trabaste aquí, es normal¿Apareció "No such file or directory"? No estás en la carpeta correcta. Repite el cd con la ruta desde la que descomprimiste el kit. Si la línea no empieza con -rw-------, vuelve a ejecutar el chmod 600 .env y comprueba.

4¿Se filtró? Revoca antes de seguir

Si el token apareció en una captura, en un mensaje o en un documento, trátalo como filtrado. En BotFather, envía /mybots, elige el bot, toca en API Token y luego en Revoke current token. Genera un token nuevo y el anterior deja de valer.

Después, cambia el valor en el .env. Un enlace que empieza con api.telegram.org/bot y que trae el token justo después también es filtración.

En una reunión, Denise vio la captura de un colega con el token de un bot a la vista. Avisó de inmediato. El equipo revocó y cambió el valor en el .env en diez minutos.

Carpeta bot · dónde queda el token
bot
1 .env — el token queda aquí, y solo aquí
2 .env.example — sigue con el valor de ejemplo
3 bot.py — nunca recibe el token pegado
4 BotFather › revocar, si se filtra
  1. 1El único lugar del valor.
  2. 2El modelo queda como vino.
  3. 3El programa lee el .env solo.
  4. 4Se filtró, revocó, cambió.

Practica ahora 0/5

Crea tu bot y guarda el token en el .env

Listo cuando ls -l muestre -rw------- en el .env y el token esté dentro, sin haber pasado por captura de pantalla (print) o mensaje. Aproximadamente 12 minutos, en el computador con la terminal y Telegram en el celular.

Creas un bot nuevo, solo tuyo, y tocas únicamente la carpeta del kit. Ningún comando aquí borra nada. Si el token aparece en algún print, para, revoca en BotFather y repite el último paso con el token nuevo.

cd ~/projetos/oswork-kit/bot
cp .env.example .env
chmod 600 .env
ls -l .env
Qué es nano y cómo aparece

El nano abre el archivo dentro del propio terminal. Verás dos líneas: TELEGRAM_BOT_TOKEN=preencha_localmente y ALLOWED_USER_IDS=123456789. En esta lección, cambia solo la primera. La segunda se queda para la próxima lección.

Creaste un bot y guardaste su clave en un lugar al que solo tu cuenta puede acceder.

Cola de la lección

La clave del bot

  1. BotFather/newbot crea el bot y entrega el token.
  2. .envel único lugar del token, con chmod 600.
  3. Se filtrórevoca en BotFather y cámbialo en el .env.

Tu próximo paso

Ya creaste un bot y guardas su clave fuera de cualquier pantalla compartida.

Anota en tu bloc de notas dónde está el .env del bot: la ruta de la carpeta, nunca el valor.

En la próxima lección: el bot va a responder solo a ti. Primero, descubre tu número de identificación en Telegram.

Material complementario · Crea el bot y protege el tokenTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

En Telegram, encuentre el BotFather oficial y use /newbot. Elija nombre e identificador según las instrucciones mostradas. El token generado autentica su programa ante Telegram. Guárdelo como TELEGRAM_BOT_TOKEN en un archivo privado; el kit solo tiene valores de ejemplo.

Por qué aprender

Quien controla el token puede operar el bot. Capturas de pantalla del proceso y URLs que contengan el token pueden filtrar acceso. Si hay exposición, revoque el token en BotFather antes de continuar.

Conceptos clave

BotFather; token; variable de entorno; rotación.

En la práctica

La profesora crea un bot para uso personal. Ella no pone el token en README y no envía el archivo de credenciales a los alumnos. Cada instalación usa sus propias credenciales.

Experimenta ahora

Usa el modo --identify del kit: informa el ID de quien envía /start en la terminal local, sin dar acceso a las funciones operativas.

Lección 38 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 3 de 6

El bot revisa el documento, no el nombre

En la salida de la escuela, una coordinadora con una tablilla revisa el documento que un padre muestra antes de liberar al niño.

Puedes descubrir tu ID numérico en Telegram con el modo de identificación del kit y ponérselo en la lista de acceso del bot.

Cualquiera puede encontrar un bot en Telegram y mandarle un mensaje. El token prueba que el programa es el dueño del bot, pero no dice a quién se lo puede usar. Esta segunda decisión es tuya, y queda escrita en una lista.

En 1 minuto

  1. El token cuida del programa; la lista de acceso cuida de las personas.
  2. El bot revisa el ID numérico, que no cambia, y no el nombre que aparece.
  3. Tres portones antes de responder: conversación privada, ID en la lista, comando conocido.

1Token y lista de acceso son controles diferentes

El token del bot le prueba al Telegram que tu programa es el dueño del bot. Él no dice nada sobre quién puede conversar con él.

Por eso el kit tiene un segundo control: la lista de acceso. Es como la lista de quién puede buscar a cada alumno en la salida de la escuela.

Denise lo explicó así al equipo: la clave abre el portón; la lista de la salida dice quién lleva a cada alumno. Son dos verificaciones y una no reemplaza a la otra.

Token del bot

Prueba de que el programa es el dueño del bot.

Se guarda en el .env, en la línea TELEGRAM_BOT_TOKEN.

Lista de acceso

Dice qué personas atiende el bot.

Se guarda en el mismo .env, en la línea ALLOWED_USER_IDS.

Los dos son necesarios. El primero autentica el programa; el segundo autoriza gente.

2El nombre cambia; el número se queda

El nombre que aparece en la conversación, la persona lo cambia cuando quiere. El bot revisa el ID numérico, que el Telegram le da a cada cuenta.

Para descobrir o seu, o kit tem um modo só de identificação. No celular, o bot não responde nada nesse modo: o número aparece no terminal.

Lúcia aparece en Telegram como "Lúcia Ciências". Si cambias a "Prof. Lúcia", el bot sigue reconociendo: su número es el mismo.

Terminal · carpeta bot

$ python3 bot.py --identify
Identificação apenas: envie /start em privado; confira seu ID abaixo e encerre com Ctrl+C. Nenhuma função operacional ativa.
ID recebido na identificação: 7012345678
^C
Bot encerrado.

La línea del ID solo aparece después de que le envías /start al bot, en un chat privado. El número aquí es ficticio; el tuyo será otro.

Copia el número de la línea "ID recibido". El ^C es el Ctrl+C que cierra el modo.

3Tres puertas antes de cualquier respuesta

Antes de responder, el programa comprueba tres cosas, en este orden. Quien falla en las puertas 1 o 2 no recibe ni un "no": el bot se queda en silencio. En la puerta 3, la respuesta es solo "Comando desconocido".

Esa comprobación está al principio de la función handle_message, dentro del bot.py.

Denise quiso probar el bot de Lúcia. Envió /relatorio y no recibió nada. No era un defecto: su número no estaba en la lista.

bot.py · antes de responder
1 ¿Es un chat privado? Grupo: silencio.
2 ¿El ID está en la lista de acceso? Fuera de ella: silencio.
3 ¿El comando es /status o /relatorio? (/start y /help solo muestran la lista.) Otro texto: "Comando desconocido."
4 Solo entonces ejecuta la función de ese comando.
  1. 1Donde llegó el mensaje.
  2. 2Quién lo envió, por su número.
  3. 3Qué se pidió.
  4. 4La respuesta, y nada más.
Mira las dos líneas del bot.py que hacen las puertas 1 y 2
if message.get('chat',{}).get('type')!='private':return None
if message.get('from',{}).get('id') not in allowed:return None

"return None" quiere decir: no respondas nada. Para encontrar esas líneas en tu computadora, ejecuta grep -n "allowed" bot.py en la carpeta bot.

4Tu número entra en la lista del .env

Con el número a mano, cierra el modo de identificación con Ctrl+C. Abre el .env y cambia el 123456789, que es solo el ejemplo del kit, por tu ID.

Para autorizar a más de una persona, separa los números con comas. Empieza solo con tú.

Lúcia pensó en incluir a la compañera de la biblioteca. Lo dejó para después de la prueba: con menos gente en la lista, es más fácil comprobarlo.

Lista de ejemplo

ALLOWED_USER_IDS=123456789

Nadie real está en la lista. El bot se queda en silencio, incluso para ti.

Lista de Lúcia

ALLOWED_USER_IDS=7012345678

El mismo número que apareció en su terminal, en el paso 2. Solo ella recibe respuestas.

El 123456789 viene en el kit y el 7012345678 es ficticio. En tu .env va el número que muestre tu terminal.

Si te trabaste aquí, es normal¿El terminal no mostró ningún número? Revisa tres cosas: enviaste /start en un chat privado con el bot, y no en un grupo; el token en el .env es el del bot correcto; el modo de identificación todavía estaba en marcha cuando lo enviaste.

Practica ahora 0/4

Descubre tu ID y colócalo en la lista de acceso

Listo cuando la línea ALLOWED_USER_IDS del .env tenga tu número, y no el del ejemplo. Cerca de 8 minutos, en la computadora, con el celular en la mano.

El modo de identificación no responde ni ejecuta nada: solo muestra el número en el terminal. ¿Apareció "Configure TELEGRAM_BOT_TOKEN en el .env privado"? El token todavía no está en el .env: haz la lección 2 de este módulo (lección 38), que crea ese archivo en la carpeta proyectos/oswork-kit/bot.

cd ~/projetos/oswork-kit/bot
python3 --version
El python3 --version dio error o versión antigua

El bot del kit está escrito en Python y necesita la versión 3.10 o más nueva. Si aparece "command not found" o un número menor, el Python tiene que pasar por una instalación desde la fuente oficial antes de continuar: python.org/downloads muestra la versión para Windows y Mac. En Linux, el Python 3 suele venir junto con el sistema.

Decidiste, por número, a quién atiende tu bot.

Cola de la lección

A quién atiende el bot

  1. Tokenprueba que el programa es el dueño del bot.
  2. ID numéricoel bot verifica el número, no el nombre.
  3. Tres portonesprivado, en la lista, comando conocido.

Tu próximo paso

Tú ya decides a quién atiende el bot y sabes por qué se queda callado con los demás.

Anota en el bloc de notas a quién autorizarías en el futuro y por qué. No autorices todavía.

En la próxima lección: encender el bot de verdad y recibir /status y /relatorio en el celular.

Material complementario · Autoriza personas y accionesTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El bot del kit solo acepta conversaciones privadas e IDs configurados. También solo acepta los comandos conocidos. Verificar el ID es diferente de verificar el nombre visible: los nombres pueden cambiar. Un mensaje de un desconocido no debe activar la lectura de archivos o comandos del sistema.

Por qué aprender

Un bot encontrado en internet puede recibir mensajes inesperados. La autenticación del programa con token no significa autorización de cualquier persona que le hable. Son controles distintos.

Conceptos clave

ID numérico; lista de acceso; conversación privada; comandos fijos.

En la práctica

El dueño escribe /relatorio y recibe totales ficticios. Un usuario fuera de la lista no recibe datos. Incluso el dueño no puede escribir un comando de shell y esperar que el bot lo ejecute.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Lee la función handle_message del kit. Localiza la verificación de ID y chat privado antes del despacho de los comandos.
  3. Registra el resultado observado y la próxima corrección.

Lección 39 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 4 de 6

El bot va al casillero y espera

En la sala de profesores, una profesora revisa el casillero de madera con el celular en la mano, y el notebook queda abierto en la mesa detrás de ella.

Puedes encender el bot con long polling, recibir /status y /relatorio en el celular y comprobar el total con el archivo de ventas del kit.

Existen dos formas de que un bot reciba mensajes, y mezclar las dos causa errores difíciles de entender. Empezar por la más simple te deja probar todo en tu computadora, sin abrir ninguna puerta para internet.

En 1 minuto

  1. Long polling: el bot le pregunta al Telegram si llegó un mensaje y espera un rato.
  2. La otra forma, el webhook, queda para después.
  3. Un solo programa por token: dos al mismo tiempo disputan los mensajes.

1El bot busca los mensajes y espera un rato

En el long polling, el programa le pregunta al Telegram si llegó un mensaje nuevo. Si no llegó, espera hasta 25 segundos y pregunta de nuevo.

Es como pasar por el pasillo de la sala de profesores y quedarse un instante, por si llega un papel. El webhook sería el cartero tocando el timbre, y exige una dirección tuya en internet.

Lúcia dejó el bot encendido en la notebook, en casa. No tuvo que tocar ninguna configuración de red: el programa sale a buscar, y nadie necesita entrar.

Long polling · el bot pregunta

El programa va hasta el Telegram a buscar los mensajes.

Funciona en tu computadora, sin dirección pública.

Webhook · el Telegram avisa

El Telegram llama a una dirección tuya en internet.

Requiere esa dirección pública. No se usa en este módulo.

Las dos funcionan. Este módulo usa solo la primera, la del kit.

2Enciende con un comando y deja el terminal abierto

En el terminal, en la carpeta bot, ejecuta python3 bot.py. No aparece ninguna línea, y ese es el signo correcto: el programa está esperando.

El terminal necesita quedarse abierto. Si cierras la ventana o presionas Ctrl+C, el bot deja de responder.

Denise se sorprendió con la pantalla quieta y casi cerró el terminal. Lúcia explicó: pantalla sin una línea nueva es el bot trabajando; una línea nueva suele ser un aviso.

Terminal · carpeta bot

$ python3 bot.py

^C
Bot encerrado.

El espacio vacío es el bot esperando mensajes: el cursor se queda quieto hasta que tú presiones Ctrl+C.

"Bot cerrado." confirma que lo apagaste a propósito.

3Envía los dos comandos y revisa el total

Con el bot encendido, envía /status y /relatorio en la conversación privada. La respuesta de /relatorio trae la suma de las ventas ficticias.

Revisa esa suma en el propio archivo, ventas.csv, una hoja de cálculo en CSV. Un total que coincide con el archivo es un resultado verificado, no una suposición.

Lúcia sumó en el papel: cuaderno 35,50, pluma 9,50 y agenda 55,00. Dio 100,00, el mismo número que el bot.

Telegram · conversación con el bot

Lúcia/status

BotOSWork activo. Acceso restringido. Bot determinístico de entrenamiento.

Lúcia/relatorio

BotDatos ficticios de entrenamiento: 3 ventas; total R$ 100.00. Sin llamada a IA.

Tres ventas, R$ 100.00: el programa escribe con punto, pero es el mismo R$ 100,00 de la suma del archivo de abajo.

Terminal · carpeta bot

$ cat vendas.csv
produto,valor
Caderno,35.50
Caneta,9.50
Agenda,55.00

35,50 + 9,50 + 55,00 = 100,00. El archivo no tiene ningún secreto; puedes abrirlo sin problemas.

Ejecuta el cat antes de encender el bot: con el bot encendido, el terminal queda ocupado hasta el Ctrl+C.

4Un programa solo para cada bot

Mantén un único programa buscando mensajes para cada bot. Dos al mismo tiempo, con el mismo token del bot, se pelean por los mensajes, y Telegram lo rechaza.

El kit detecta el conflicto y se apaga solo. El aviso sale en el log, que aparece en el propio terminal, sin mostrar el token.

Lúcia encendió el bot en casa, olvidando que seguía encendido en el notebook de la escuela. El de casa se detuvo con el aviso de abajo. Al día siguiente, apagó el de la escuela con Ctrl+C y volvió a encender el de casa.

Terminal · aviso de conflicto

2026-09-25 19:40:12,381 WARNING Falha HTTP 409 no Telegram; sem detalhes que exponham token.
2026-09-25 19:40:12,382 ERROR Confira token, instância duplicada ou webhook; processo encerrado para diagnóstico.

409 significa conflicto. Casi siempre es otra copia del bot encendida. El "webhook" del aviso solo sirve para bots antiguos, configurados de otra forma; el tuyo, nuevo, no.

La fecha y la hora cambian. Lo que importa es el número 409 y la palabra "instancia duplicada", que significa otra copia encendida.

Si te trabaste aquí, es normal¿Viste el 409 y no sabes dónde está el otro programa? Busca otra ventana de terminal abierta o otra computadora en la que hayas encendido el bot. Apaga todos con Ctrl+C y enciende solo uno.

Practica ahora 0/4

Enciende el bot y verifica el total

Listo cuando el /relatorio muestre el mismo total que tu suma y, con el bot apagado, el /status no responda. Cerca de 10 minutos, en la computadora y en el celular.

El bot solo lee el ventas.csv, con datos ficticios, y no cambia nada en el computador. ¿Apareció "Falla HTTP 401"? El token del .env está mal o fue revocado: repite el paso del token en la lección 2 de este módulo (lección 38). ¿Ninguna respuesta en el celular? Revisa tu ID numérico en la lista de acceso, como en la lección 3 de este módulo (lección 39).

cd ~/projetos/oswork-kit/bot
cat ventas.csv

Tú encendiste un bot tuyo, conversaste con él por el celular y verificaste la respuesta contra el archivo.

Cola de la lección

El bot que busca

  1. Long polling el bot pregunta y espera hasta 25 segundos.
  2. Pantalla detenida sin una línea nueva es el bot esperando.
  3. Uno por token dos conectados disputan, y el kit se apaga.

Tu próximo paso

Tú ya enciendes el bot, conversas con él por el celular y verificas la respuesta contra el archivo.

Mañana, enciende el bot por dos minutos, pide /relatorio y apágalo. Encender, probar y apagar es el hábito que va hacia el VPS en el módulo 8.

En la próxima lección: dónde una IA podría entrar en ese bot sin estropear el total.

Material complementario · Empieza con long pollingTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Long polling es el programa que le pregunta al Telegram por mensajes y espera un poco cuando no hay novedades. Es simple para aprender y no exige abrir un puerto público de entrada. Webhook es otra estrategia, en la que el Telegram llama a una dirección HTTPS tuya; no hace falta en este laboratorio.

Por qué aprender

Elegir un único modo reduce problemas de configuración. Mantenga una única instancia buscando mensajes para un bot: procesos duplicados pueden disputar actualizaciones.

Conceptos clave

getUpdates; offset; timeout; instancia única; acceso de salida.

En la práctica

El proceso espera hasta 25 segundos por un mensaje. Al recibirlo, actualiza el offset para no repetir la misma consulta. Tras una falla de red, espera antes de intentar de nuevo.

✓ Hazlo

Inicia con python3 bot.py. Usa Ctrl+C para cerrar. Si surge conflicto, verifica si otro proceso usa el mismo token o si existe webhook configurado.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

  • Long polling — el bot pregunta
  • Webhook — el servidor avisa
Empiece por long polling: no exige dirección pública ni certificado para funcionar.

Lección 40 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 5 de 6

La IA escribe el informe; el puntaje es del programa

Una coordinadora revisa un boletín impreso, con la columna de notas a un lado y un cuadro vacío para el parecer escrito, y una calculadora al lado.

Puedes escribir un contrato de integración en cinco líneas y probarlo en el chat para ver que el resumen hecho por la IA no cambia el total calculado.

Conectar una IA a un bot parece el paso natural, pero cada conexión abre un camino nuevo para error y costo. Un bot predecible ya es útil. La IA solo entra donde mejora algo que tú puedes medir.

En 1 minuto

  1. Primero el bot sin IA, probado; después la capacidad nueva.
  2. La IA recibe datos mínimos y nunca cambia el número calculado.
  3. Antes de conectar, escribe el contrato de integración: cinco líneas.

1Primero la base probada, después la IA

El kit separa con propósito el camino de los mensajes, que es el Telegram, de las funciones de trabajo. Y empieza sin IA: estado e informe de datos ficticios.

Un bot predecible lo pruebas sin gastar nada. Recién después vale preguntar si la IA mejora la interpretación, el resumen o la clasificación.

Denise quería un bot de dudas de la secretaría "con IA desde el principio". Cambió el plan: primero un /horario que solo lee la hoja de cálculo; la IA se dejó para una segunda etapa, con prueba.

Todo de una vez

El bot nuevo ya llama a una IA para todo.

Cuando se equivoca, nadie sabe si fue el programa o la IA.

En etapas

Etapa 1: bot sin IA, probado con /status y /relatorio.

Etapa 2: una función con IA, comparada con el resultado de la etapa 1.

Balance: un error a la vez para investigar.

2La nota se calcula; el informe solo comenta

En el boletín, la nota viene de la cuenta y el informe escrito comenta. El informe nunca cambia la nota.

Con el bot es igual. La IA puede escribir un resumen, pero el total viene del programa y no puede cambiar en el texto.

Lúcia imaginó un /resumo para la tienda del grêmio. La IA recibiría solo el total y los tres productos, y no la carpeta entera de sus proyectos.

Chat de IA

TúDatos: 3 ventas; total R$ 100,00; cuaderno R$ 35,50; bolígrafo R$ 9,50; agenda R$ 55,00. Escribe un resumen de dos líneas.

IALas ventas sumaron cerca de R$ 110, con énfasis en la agenda.

Inventó un total que no existe. Ese texto no puede salir por el bot.

TúUsa solo estos datos. No alteres ningún número y no agregues datos. Datos: 3 ventas; total R$ 100,00; cuaderno R$ 35,50; bolígrafo R$ 9,50; agenda R$ 55,00. Escribe un resumen de dos líneas.

IAFueron 3 ventas, con total de R$ 100,00. La agenda respondió por R$ 55,00, la mayor parte.

El total es el del programa, y no apareció ningún dato nuevo.

Toca los dos botones y compara el total de cada resumen.

3Cinco líneas antes de encender cualquier IA

Escribe el contrato de integración: los datos enviados, el modelo disponible, el límite de costo, el tiempo máximo y lo que pasa cuando la IA falla.

La última línea es la más olvidada. Con ella, el bot sigue siendo útil incluso cuando la IA no responde.

Denise escribió el contrato del /horario en cinco minutos. En la línea del fallo puso: "sin IA, el bot manda la línea de la hoja de cálculo como está".

Contrato de integración · /horario de la secretaría
1 Datos enviados: la línea del curso pedido, y nada más
2 Modelo: lo que esté disponible en la cuenta de la escuela
3 Límite de costo: hasta R$ 5 por mes
4 Tiempo máximo: 20 segundos por respuesta
5 Si la IA falla: manda la línea de la hoja de cálculo como está
  1. 1Lo mínimo que la tarea necesita.
  2. 2Lo que tú realmente tienes a tu alcance.
  3. 3Cuánto puede gastar.
  4. 4Cuánto puede esperar.
  5. 5El plan B, sin IA.
Los valores de costo y tiempo son un ejemplo. Tú defines los tuyos.

Ponte a prueba

El /resumo con IA ya funciona. En una mañana, la IA no responde. El contrato dice, en la línea 5: "si la IA falla, manda solo el total". ¿Qué hace el bot?

4El mensaje nunca va directo a un agente

No conectes un agente como el Codex a los mensajes que llegan por el bot. Y no desactives protecciones solo para que funcione la integración.

La IA recibe una entrada corta, armada por el programa, y devuelve texto. Quien decide qué hacer con ese texto sigue siendo el programa.

Lúcia leyó en un foro la sugerencia de conectar el Codex directo al bot, "para que haga cualquier cosa". No siguió: cualquier cosa incluye borrar su carpeta.

Mensaje directo al agente

Quien escribe en Telegram hace que el agente actúe en la computadora.

Una frase maliciosa se vuelve una acción.

Función con entrada corta

El programa arma la entrada: el total y tres productos.

La IA devuelve texto; el programa verifica si el total es lo que él calculó y solo entonces envía.

Si te trabaste aquí, es normalNo vas a programar la integración en este módulo: el kit no tiene esa parte, a propósito. La práctica es escribir el contrato y probar la regla del número en el chat que ya usas.

Practica ahora 0/3

Escribe el contrato y prueba la regla del número

Listo cuando el contrato tenga las cinco líneas y el resumen del chat mantenga el total de R$ 100,00, sin dato nuevo. Unos 10 minutos, en el chat que ya usas y en el bloc de notas.

Los datos son ficticios del kit, y nada se envía al bot. Si la IA cambia un número, eso no es culpa tuya: es el riesgo que el contrato cubre. Anota y refuerza la frase "no alteres ningún número".

Usa solo estos datos. No alteres ningún número y no agregues datos.
Datos: 3 ventas; total R$ 100,00; cuaderno R$ 35,50; bolígrafo R$ 9,50; agenda R$ 55,00.
Tarea: escribe un resumen de dos líneas para <a equipo de la tiendita del gremio>.
Al final, repite el total exactamente como llegó.
Mira el contrato de una profesora

1. Datos enviados: el total y los tres productos con valor.
2. Modelo: lo que esté disponible en mi cuenta.
3. Límite de costo: hasta R$ 2 por mes.
4. Tiempo máximo: 15 segundos.
5. Si la IA falla: el bot envía solo la línea del /relatorio, como hoy.

Definiste, antes de conectarla, qué recibe la IA, cuánto cuesta, cuánto espera y qué pasa si falla.

Cola de la lección

IA en etapas

  1. Primero la basebot sin IA, probado, antes de cualquier conexión.
  2. Número intocablela IA comenta; el total sale del programa.
  3. Contratodatos, modelo, costo, tiempo y plan de fallo.

Tu próximo paso

Ya sabes en qué parte entra una IA en el bot sin poner en riesgo el número calculado.

Guarda el contrato junto con las anotaciones del bot. El mismo molde sirve para cualquier consulta de tu trabajo.

En la próxima lección: probar el bot antes de confiar en él, incluso cuando algo salga mal.

Material complementario · Conecta capacidades en etapasTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El kit deliberadamente separa transporte y funciones de trabajo. Comienza determinístico: estado e informe de datos ficticios. Para acoplar IA, defina una función con entrada limitada, timeout, techo de salida y revisión. No exponga codex exec directamente a mensajes públicos ni desactive protecciones para hacerlo funcionar.

Por qué aprender

Un programa predecible te permite probar la base sin gastar API. Después, evalúas si la IA mejora la interpretación, el resumen o la clasificación y mides el resultado con una referencia conocida.

Conceptos clave

Función de dominio; límites; timeout; revisión; datos mínimos.

En la práctica

Una función de resumen puede recibir solo el total y tres categorías, en vez de todo el directorio de proyectos. El texto generado nunca cambia el total calculado por el programa.

Experimenta ahora

Escribe un contrato de integración: datos enviados, modelo disponible, límite de costo, tiempo máximo y acción cuando la IA falle. El bot base permanece útil sin esta extensión.

Lección 41 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 7 · Lección 6 de 6

Pasa el sonido antes de la reunión

En el auditorio vacío, antes de la reunión de padres, una profesora prueba el micrófono con una tablilla de elementos marcados y mira el celular en el podio.

Puedes ejecutar el autotest del bot y cuatro pruebas reales en Telegram, registrando lo que se simuló y lo que se probó de verdad.

Una respuesta correcta no demuestra que el bot esté limitado, ni que se recupere de una falla. Pocos escenarios, probados a propósito, lo muestran antes de que el bot vaya a una máquina que queda encendida sin ti.

En 1 minuto

  1. El autotest ejecuta 11 escenarios sin token y sin internet.
  2. En Telegram, prueba lo que la simulación no alcanza: tú, un extraño, cualquier comando, el bot apagado.
  3. En el registro, separa simulado de probado en Telegram.

1El autotest simula 11 escenarios sin internet

El kit incluye un autotest. El bot ejecuta mensajes falsos contra las propias reglas, sin token y sin internet.

Cubre acceso, grupo, comando desconocido, la suma y archivos de ventas con defecto. Pero no prueba que tu bot converse con el Telegram.

Denise preguntó si el bot de Lúcia obedecía a extraños. Lúcia mostró la línea final del autotest y anotó que aún faltaba la prueba real, con una persona fuera de la lista.

Terminal · carpeta bot

$ python3 bot.py --self-test
OK: 11 cenários offline — acesso, grupo, comando, soma e arquivos inválidos.

Una sola línea, empezando con OK. Si aparece un error largo, falló algún escenario.

"Offline" significa sin internet. Sí, se simula: ve al registro como simulado.

2En Telegram, prueba lo que la simulación no alcanza

Es como probar el sonido antes de la reunión de padres: tú pruebas el micrófono con el auditorio vacío. Con cuatro pruebas reales basta: tu /status, una frase cualquiera, una persona fuera de la lista y el bot apagado. Si el bot apagado aún responde, hay otra copia encendida en algún lugar. Si se queda en silencio, quien respondía antes era el programa de tu computadora.

Anota cada prueba en el bloc de notas, con el origen: simulado o Telegram. Así nadie confunde "pasó la prueba" con "funciona en el celular". Al volver a encender el bot, puede responder al /status que quedó esperando; eso es esperado.

Lúcia le pidió a Denise que le enviara /relatorio al bot. No volvió nada, como se esperaba. En el registro escribió: "fuera de la lista, Telegram, sin respuesta".

Registro de pruebas · bot de la tiendita
1 Autoprueba · simulado · 11 escenarios aprobados
2 /status de Lúcia · Telegram · "OSWork activo…"
3 "hola, ¿todo bien?" · Telegram · "Comando desconocido…"
4 /relatorio de Denise, fuera de la lista · Telegram · sin respuesta
5 /status con el bot apagado · Telegram · sin respuesta
  1. 1Lo que garantiza la simulación.
  2. 2La dueña recibe atención.
  3. 3El texto libre no se vuelve acción.
  4. 4Lo extraño no recibe nada.
  5. 5Sin el programa, sin respuesta.

3Cada síntoma apunta a un lugar

Cuando algo falla, el síntoma dice dónde mirar. No cambies el modelo de IA: /status y /relatorio no usan IA.

Si solo falla el /relatorio, el problema está en el archivo de ventas, el ventas.csv, una hoja de cálculo en CSV. Si no responde nada, revisa el programa, el token, la internet y la lista de acceso.

Denise vio a Lúcia recibir "No se pudo validar ventas.csv". En vez de culpar a la IA, Lúcia abrió el archivo: había borrado la línea del encabezado sin querer.

Solo falla el /relatorio

El bot dice: "No se pudo validar ventas.csv. Revisa el archivo local; no se inventó ningún total."

Dónde mirar: el archivo de ventas.

Nada responde

El bot dice: nada.

Dónde mirar: ¿el programa está conectado? ¿El token está bien? ¿Hay internet? Tu ID numérico está en la lista de acceso? Lee el terminal.

Mira al final del primer mensaje: con el archivo equivocado, el bot prefiere no dar todo inventando.

4El log cuenta el error sin contar el secreto

En una falla de red, el bot lo intenta de nuevo solo. En un conflicto (409) o con el token equivocado (401), se desactiva para que investigues. El log del kit dice el tipo de fallo y la hora. No muestra el token del bot ni el texto de los mensajes.

En el mismo registro del bloc de notas, anota cada fallo así: qué falló, cuándo y qué hiciste. Ese registro es el que va con el bot a la VPS en el módulo 8.

Lúcia apagó el wi-fi con el bot encendido, a propósito. El terminal mostró avisos de nuevo intento, y el bot volvió solo cuando la red regresó.

Terminal · bot encendido, red apagada

2026-09-25 20:05:31,114 WARNING Falha de rede ou resposta; nova tentativa em 2 segundos.
2026-09-25 20:05:33,120 WARNING Falha de rede ou resposta; nova tentativa em 4 segundos.
2026-09-25 20:05:37,131 WARNING Falha de rede ou resposta; nova tentativa em 8 segundos.

Cada intento espera el doble que el anterior, hasta 60 segundos. Ninguna línea muestra el token.

WARNING es un aviso, no un desastre: el bot sigue intentando solo.

Si te trabaste aquí, es normal¿No hay nadie que te mande el mensaje desde fuera de la lista? Anota "no probado en Telegram" y sigue: la autoprueba ya cubre este caso de forma simulada. Un registro honesto vale más que un registro completo inventado.

Practica ahora 0/4

Pasa el sonido de tu bot y registra

Listo cuando el registro tenga la autoprueba y las pruebas en Telegram; cada una marcada como simulada o Telegram. Cerca de 12 minutos, en la computadora y en el celular.

Las pruebas solo leen datos ficticios; nada se borra. La persona fuera de la lista no recibe ningún dato. ¿No hiciste las lecciones 2 a 4 de este módulo (38 a 40)? Ejecuta solo la autoprueba: funciona sin token, en la carpeta bot del kit.

cd ~/projetos/oswork-kit/bot
python3 bot.py --self-test > autoteste.txt
cat autoteste.txt
Plantilla del registro, completada por una coordinadora

Denise probó el bot de consultas que armó para entrenar:
Autoprueba · simulada · 11 escenarios aprobados
/status mío · Telegram · "OSWork activo…"
"buenos días" · Telegram · "Comando desconocido…"
/relatorio fuera de la lista · no probado en Telegram · cubierto por la autoprueba
/status con el bot apagado · Telegram · sin respuesta

Tú probaste el bot antes de necesitarlo y sabes decir qué se simuló y qué fue real.

Cola de la lección

Prueba antes de confiar

  1. Autoprueba11 escenarios sin token y sin internet.
  2. Pruebas realestú, cualquier frase, algo raro, bot apagado.
  3. Síntomasolo /relatorio: archivo; nada: programa, token, red, lista.

Tu próximo paso

Cerraste el módulo 7: tienes un bot restringido, probado, que responde sin ejecutar mensajes.

Cuando tengas unos 30 minutos, abre el material complementario y haz el laboratorio del módulo: son los mismos pasos de las lecciones 2 a 6 de este módulo, de una vez.

En el próximo módulo: VPS desde cero. El bot encendido todo el día, sin depender de tu computadora.

Material complementario · Prueba operación y fallasTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

Prueba el remitente permitido, bloqueado, grupo, comando desconocido y datos ausentes. Logs deben informar el tipo de falla y la hora, sin token ni mensajes privados completos. En el laboratorio, apagar el proceso debe detener las respuestas: esto demuestra que el programa local está en el camino.

Por qué aprender

Una respuesta correcta no prueba que el bot esté restringido ni que recupere red. Un conjunto pequeño de escenarios demuestra las propiedades importantes antes de migrar a una VPS.

Conceptos clave

Autoprueba; falla de red; logs sin secreto; interrupción; diagnóstico.

En la práctica

Si /status funciona y /relatorio falla, investiga el archivo de datos. Si ninguno funciona, revisa proceso, autenticación y conexión. No cambies el modelo: esos comandos ni usan IA.

Experimenta ahora

Ejecuta --self-test y guarda la salida. Luego prueba la conversación real con tu cuenta; diferencia en el registro lo que fue simulado y lo que fue probado en Telegram.

Laboratorio del módulo: Un bot que responde sin ejecutar mensajes

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Lee materiales/bot/README.md y ejecuta la autoprueba offline del bot, sin token.
  2. Crea tu bot en el BotFather oficial y guarda el token solo en tu .env local.
  3. Descubre tu ID con el modo de identificación local y configura la lista de acceso.
  4. Inicia el bot, envía /status y /relatorio en la conversación privada y verifica los resultados.

Bot · dentro de materiais/bot

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

python3 bot.py --self-test
cp .env.example .env
chmod 600 .env
# Edita .env localmente; nunca compartas valores.
python3 bot.py --identify
# Rellena ALLOWED_USER_IDS con tu ID y termina la identificación.
python3 bot.py

Criterio de listo

Ejecuta un bot restringido de consulta y entiende dónde entra la IA. Registra el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de enviarla.
  • Continuidad — Otra persona puede encontrar el siguiente paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

¿Se puede pasar un mensaje de Telegram directamente al shell?

Ver respuesta comentada

No. El bot debe mapear comandos permitidos a funciones definidas y verificar el remitente.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Mensaje; Bot API; programa; agente; resultado.
  • BotFather; token; variable de entorno; rotación.
  • ID numérico; lista de acceso; conversación privada; comandos fijos.
  • getUpdates; offset; timeout; instancia única; acceso de salida.
  • Función de dominio; límites; timeout; revisión; datos mínimos.
  • Autoprueba; falla de red; logs sin secreto; interrupción; diagnóstico.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Términos de esta sección: chmod, .env.example.

Lección 42 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 1 de 6

La VPS es una sala alquilada: el que se encarga eres tú

Una coordinadora se detiene en la puerta de una sala recién alquilada, con la llave en la mano y una carpeta debajo del brazo, mirando la mesa que ahora es responsabilidad suya.

Tú puedes completar la primera parte del plan de VPS: lo que necesitas para hacerlo funcionar, quién se encarga, cuánto puede costar, qué sistema usar y cómo apagarla. Todo antes de contratar cualquier cosa.

Contratar una VPS toma pocos minutos. Descubrir después que nadie se encarga de ella, o que la cuenta llega cada mes sin uso, cuesta mucho más. Por eso, el plan va antes de la compra.

En 1 minuto

  1. La VPS es una computadora alquilada, encendida todo el tiempo. Quien administra eres tú.
  2. Máquina encendida no es lo mismo que servicio funcionando.
  3. Antes de contratar: qué se ejecuta, quién se encarga, cuánto cuesta y cómo apagarla.

1Una VPS es una computadora que tú alquilas y administras

Piensa en una sala alquilada. El dueño del edificio te entrega la sala con luz y puerta. Lo que pasa adentro es cosa tuya.

La VPS funciona así. Es un servidor virtual alquilado, con memoria, disco y red, en una empresa llamada proveedor de la VPS. Usuarios, actualizaciones y programas quedan por tu cuenta.

El bot de entrenamiento de Denise, del módulo 7, solo responde mientras su notebook está encendida. A las seis de la tarde ella cierra la tapa y el bot deja de responder en el Telegram.

En el notebook

Cuándo funciona: solo con la tapa abierta.

Quién se encarga: tú, sin darte cuenta.

En la VPS

Cuándo funciona: todo el tiempo, en el proveedor de la VPS.

Quién se encarga: tú, a propósito: usuarios, actualizaciones y programas.

Los dos sirven. La VPS resuelve el “solo con la tapa abierta” y trae una responsabilidad nueva.

2Con una máquina pequeña alcanza: el modelo corre lejos

Empieza con una máquina pequeña, compatible con el programa que vas a ejecutar. Un bot que llama a un modelo de IA por la API no necesita una tarjeta de video cara.

El modelo remoto corre en las computadoras del proveedor de IA. La VPS solo envía el pedido y recibe la respuesta.

Lúcia casi contrató una VPS con tarjeta de video para un bot de promedios ficticios del grupo. El bot solo envía pedidos y muestra respuestas; la tarjeta se quedaría parada, y la cuenta, alta.

Exageración

Elección: el plan más fuerte, con tarjeta de video, “para garantizar”.

Resultado: cuenta alta todos los meses para un bot que casi no trabaja.

En la medida

Elección: una máquina pequeña, que ejecuta el bot con holgura.

Resultado: el modelo de IA sigue en el proveedor de IA; la VPS solo hace el puente.

Balance: el tamaño de la máquina sigue el programa, no la fama del modelo.

3Tres cuentas separadas

La VPS, el espacio extra de disco y la API de IA se cobran por separado. Suscribirte a una no paga la otra.

La cuota mensual de la VPS llega cada mes, con la máquina trabajando o parada. Es la misma lógica de la lección sobre acceso y cobro, en el módulo 1: cada acceso tiene su cuenta. Anota el límite de cada una.

Denise armó la lista antes de hablar con la dirección. La cuota de la VPS entró en una línea. El bot de entrenamiento no usa IA, entonces la línea de la API quedó con “no usa”.

De dónde sale cada costo
1 VPS
cuota mensual del plan: [valor del plan elegido]
2 Almacenamiento
disco extra y copias guardadas: [valor, si hay]
3 API de IA
por consumo, en la plataforma de IA: no usa
  1. 1La máquina alquilada, cobrada todos los meses, encendida o parada.
  2. 2El espacio para guardar datos y copias.
  3. 3El modelo de IA, solo si el programa lo usa.

4El plan va antes de la compra

Una máquina encendida no significa un servicio saludable. El bot puede parar ahí dentro y nadie se entera.

Antes de contratar, decide dos cosas: qué necesitas ejecutar sin parar y quién va a verificar cuando algo salga mal. Anota también el sistema: los ejemplos del curso usan el Ubuntu.

Denise llenó la primera parte del plan de operación del kit del curso. La línea que más demoró fue la última: dónde está el botón para cancelar y quién puede apretarlo.

plano-vps.md · Antes de contratar
1 Trabajo que necesita seguir sin el notebook: bot de entrenamiento respondiendo /status
2 Responsable técnico: Denise
3 Presupuesto mensual de VPS: [límite aprobado por la dirección]
4 Presupuesto separado para API: no usa
5 Sistema operativo soportado: Ubuntu, en la versión con soporte del proveedor de la VPS
6 Plan de apagado: panel del proveedor de la VPS › cancelar; solo Denise
Las seis líneas de la primera parte del plan. La línea 6, el apagado, es la que más falta en los planes reales.

Ponte a prueba

Denise va a poner el bot de entrenamiento en una VPS. ¿Qué decisión viene antes de elegir el plan?

Si te trabaste aquí, es normalNo necesitas contratar nada en esta lección, ni saber el precio exacto. Donde falte un dato, escribe "a definir" y el nombre de quien decide. El plan ya sirve así.

Practica ahora 0/3

Completa la primera parte del plan de VPS

Listo cuando las seis líneas tengan una respuesta o "a definir" con un nombre al lado. Cerca de 8 minutos, en la computadora o en el celular.

Nada se contrata en esta lección. Sin el kit, copia la plantilla en una nota del celular. No anotes contraseña ni datos de tarjeta en el plan.

Dónde está el plan: el archivo plano-vps.md viene en el kit del curso; el oswork-kit.zip de la página de materiales de OSWork. El plan tiene cinco partes: Antes de contratar, Acceso, Servicio, Verificaciones observadas y Rutina. Hoy completas la primera; las otras vienen en las próximas lecciones.

PLAN DE OPERACIÓN · ANTES DE CONTRATAR
Trabajo que necesita seguir sin la notebook: <ej.: bot de entrenamiento respondiendo /status>
Responsable técnico: <tu nombre o de quien va a encargarse>
Presupuesto mensual de VPS: <valor máximo por mes>
Presupuesto separado para API, si se usa: <valor o "no usa">
Sistema operativo soportado: <ej.: Ubuntu, versión con soporte>
Plan de apagado del recurso: <dónde cancelar y quién puede>
Mira la plantilla completada por una profesora

Trabajo: bot que responde el promedio ficticio de la turma, fuera del horario de clases.
Responsable técnico: Lúcia.
Presupuesto mensual de VPS: a definir, con la coordinación.
API: no usa.
Sistema: Ubuntu, versión con soporte.
Apagado: panel del proveedor de la VPS; Lúcia y la coordinación.

Acabas de decidir qué necesita hacer la VPS, quién responde por ella y cómo cerrar la cuenta.

Cola de la lección

Sala alquilada

  1. VPS computadora alquilada; tú administras.
  2. Tamaño sigue el programa; el modelo de IA corre en el proveedor de la IA.
  3. Plan antes lo que corre, quién se encarga, cuánto cuesta, cómo apagar.

Tu próximo paso

Ya sabes decir si necesitas una VPS, de qué tamaño y quién responde por ella.

Lleva la línea del presupuesto a quien aprueba los gastos en tu trabajo y pide el límite mensual por escrito. Un mensaje de tres líneas alcanza.

Con la sala alquilada, la primera puerta es la de entrada. Próxima lección: entrar a la VPS por internet sin trabarte afuera.

Material complementario · Una VPS es una máquina bajo tu responsabilidadTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

VPS es un servidor virtual alquilado: una computadora remota con memoria, disco y red. Tú administras usuarios, actualizaciones y procesos. Empieza con una máquina pequeña compatible con la aplicación; no contrates GPU solo para llamar a un modelo por API. El modelo remoto se ejecuta en la infraestructura del proveedor.

Por qué aprender

Una máquina encendida no significa un servicio saludable. Los costos de VPS, almacenamiento y API son separados. Antes de contratar, defina lo que necesita ejecutar continuamente y quién verificará incidentes.

Conceptos clave

Servidor remoto; recursos; costo recurrente; responsabilidad operativa.

En la práctica

Un bot pequeño que consulta datos ficticios no necesita la misma infraestructura que un modelo local. La gestora estima carga, presupuesto y disponibilidad antes de elegir el plan.

✓ Hazlo

Complete materiais/plano-vps.md. Registre sistema operativo, forma de acceso, límite mensual, responsable y forma de apagar el recurso.

✗ Evita

Aceptar una conclusión sin comprobar la entrada que la sustenta.

Lección 43 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 2 de 6

No devuelvas la llave vieja antes de probar la nueva

Una profesora en la sala de profesores sostiene una llave vieja en una mano y una llave nueva en la otra, comparándolas, con el notebook abierto mostrando dos ventanas oscuras una al lado de la otra.

¿Puedes decir en qué máquina estás por lo que el terminal muestra y aplicar la regla de la segunda sesión: probar la entrada nueva antes de cerrar la que funciona.

Quien cambia la cerradura de su casa prueba la llave nueva antes de botar la vieja. En la VPS es igual. Cambiar la red o la forma de entrar sin una ruta de regreso puede dejarte trabado afuera.

En 1 minuto

  1. SSH abre el terminal de la VPS en tu computadora, por una conexión protegida.
  2. Revisa en qué máquina estás antes de cada comando.
  3. Prueba una segunda sesión antes de cerrar la primera.

1SSH abre el terminal de la VPS en tu computadora

El SSH crea una conexión protegida para administrar la máquina. El comando ssh usuario@ip-da-vps abre la sesión.

Las partes usuario y ip-da-vps son campos para cambiar, no valores reales. La dirección de la VPS aparece en el panel del proveedor de la VPS.

Lúcia abrió dos ventanas de terminal y se confundió: en una estaba el notebook, en la otra la VPS. El nombre al inicio de la línea y el comando pwd mostraron dónde estaba.

Terminal
$ ssh usuario@ip-da-vps
usuario@nome-da-vps:~$ pwd
/home/usuario

Después de entrar, el inicio de la línea cambia: ahora muestra el usuario y el nombre de la VPS. El comando pwd responde la carpeta en la que estás.

Antes de cualquier comando, mira el inicio de la línea. Ahí te dice en qué máquina estás.

2La llave en su lugar que la contraseña: identidad verificada

Usa la clave pública registrada tal como indica el proveedor de la VPS. La clave privada nunca sale de tu computadora. Al contratar, el panel del proveedor guía la creación y el registro; en esta lección no necesitas crear nada.

En la primera conexión, el SSH muestra la huella digital de la máquina. Ella confirma que llegaste a la VPS correcta.

Denise recibió la pregunta en inglés en la primera entrada. Antes de escribir yes, comparó la huella digital con la que el panel del proveedor mostraba.

Terminal · primera conexión
$ ssh usuario@ip-da-vps
The authenticity of host 'ip-da-vps' can't be established.
ED25519 key fingerprint is SHA256:[impressão digital].
Are you sure you want to continue connecting (yes/no/[fingerprint])?

En portugués: "no se puede confirmar la identidad de esta máquina; la huella digital es esta; ¿quieres continuar?". Responde yes solo si coincide.

Esta pregunta aparece una vez por máquina. Si vuelve a aparecer para la misma VPS, para y revisa.

3Un usuario de trabajo, con sudo cuando hace falta

Trabaja con tu propio usuario, el usuario de trabajo. Cuando una tarea pida permiso de administrador, pon sudo delante del comando.

Así el poder de administrador aparece solo donde tú lo pediste, y queda visible en el comando.

Lúcia comprobó su propio usuario antes de tocar nada. El mismo comando con sudo mostró el administrador, después de pedir su contraseña.

Terminal · en la VPS
$ whoami
usuario
$ sudo whoami
[sudo] password for usuario:
root

whoami responde "quién soy". Sin sudo, es el usuario de trabajo; con sudo, es root, el administrador de la máquina.

Al escribir la contraseña, no aparece nada en la pantalla. Es normal: se está leyendo.

4La segunda sesión es tu ruta de regreso

Antes de cambiar la red o la forma de entrar, deja abierta la sesión original. Abre otra ventana y prueba la nueva entrada. Solo cierra la primera cuando la segunda funcione.

Si todo falla, el consola de recuperación todavía abre la máquina. Verifica que funciona antes de restringir cualquier cosa.

Un tutorial le sugirió a Denise cambiar la puerta del SSH, un cambio común en guías de seguridad. Antes de seguir, abrió la consola desde el panel del proveedor y anotó en el plan que funcionaba.

Sesión 1 · llave vieja

Estado: abierta, funcionando.

Regla: no cerrar mientras la sesión 2 no entre.

Sesión 2 · llave nueva

Estado: otra ventana, probando el cambio.

Regra: ¿entró? Entonces sí cierra la sesión 1.

Salida de emergencia: la consola del proveedor, comprobada antes de cualquier cambio.

Si te trabaste aquí, es normalNo necesitas tener una VPS para esta lección. La práctica es un caso para analizar en papel. Cuando alquiles la tuya, vuelve a este paso y sigue las tres rutas en el orden.

Practica ahora 0/3

Analiza el caso del puerto cambiado

Listo cuando hayas respondido las tres preguntas y hayas revisado en la guía de respuestas. Cerca de 8 minutos; anótalo en el papel o en el bloc de notas.

Es un caso, sin máquina real, así que nada se rompe. ¿Tienes una VPS de práctica? Haz también el test real: con la sesión abierta, abre otra ventana y entra de nuevo con el mismo comando ssh. No cambies el puerto ni la forma de entrar solo para practicar.

El caso. Rogério, un colega de Denise, alquiló una VPS de práctica. Entró por SSH y pegó un comando de internet que cambia el puerto de SSH. Lo ejecutó y cerró el terminal al instante. Al volver, ssh rogerio@ip-da-vps ya no conecta. Nunca abrió la consola del proveedor.

Ver guía de respuestas

1. La segunda sesión. Tenía que mantener la primera abierta y probar el nuevo puerto en otra ventana antes de cerrarla.

2. Por la consola de recuperación, en el panel del proveedor de la VPS. Desde ahí, deshace el cambio de puerto.

3. En la parte Acceso del plan de VPS (la segunda de las cinco partes de plano-vps.md): "Puerto SSH real", "Segunda sesión SSH probada" y "Consola de recuperación disponible", con la fecha de la prueba.

Acabas de encontrar el error que deja a una persona fuera de su propia VPS, y la ruta de vuelta.

Cola de la lección

Dos claves

  1. Dónde estoyel inicio de la línea y el pwd dicen la máquina.
  2. Identidadclave pública registrada; huella digital confirmada una vez.
  3. Ruta de vueltasesión 1 abierta, sesión 2 probada, consola confirmada.

Tu próximo paso

Ya sabes entrar a una VPS sin perder la ruta de vuelta.

En el plan de VPS, completa la parte Acceso: usuario de trabajo, puerto real y dónde está la consola. Donde no sepas, escribe "a revisar en el panel".

Ahí dentro, la máquina viene casi vacía. Próxima lección: qué poner en ella y qué dejar fuera.

Material complementario · Entra por SSH y preserva el accesoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

SSH crea una conexión protegida para administrar la máquina. Usa la clave pública registrada según el proveedor y verifica la identidad del servidor. Crea un usuario de trabajo con permisos administrativos cuando sea necesario. Mantén la sesión original abierta mientras pruebas una segunda conexión.

Por qué aprender

Cambiar firewall o la autenticación sin probar una ruta de recuperación puede bloquear tu propio acceso. La consola del proveedor es la alternativa cuando falla la conexión normal; verifica que funcione antes de restringir la red.

Conceptos clave

Clave pública; huella digital; usuario; sudo; recuperación.

En la práctica

El comando ssh usuario@ip-de-la-vps abre la sesión. usuario e ip-de-la-vps son campos para sustituir, no valores reales. El nombre del prompt y pwd ayudan a confirmar en qué máquina estás.

Experimenta ahora

Prueba la segunda sesión antes de cerrar la primera. No desactives login o cambia el puerto SSH siguiendo un comando sin saber cómo recuperar el acceso.

Lección 44 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 3 de 6

Maleta de mano: solo lo que el viaje pide

Una coordinadora acomoda una maleta de mano pequeña sobre la mesa de la coordinación, con pocas piezas adentro, mientras una pila de ropa y un sombrero quedan fuera, en una silla.

Puedes comprobar en el terminal si Python 3 y Git están en la máquina y crear la carpeta de proyectos, sin poner nada más.

Cada programa adicional es una cosa más para actualizar, explicar y corregir. Poner herramientas por costumbre da trabajo y no aumenta lo que el servicio puede hacer.

En 1 minuto

  1. En la VPS con Ubuntu, quien instala y actualiza programas es el apt.
  2. Antes de confirmar una actualización, lee la lista de lo que va a cambiar.
  3. El bot de práctica necesita Python 3; Git ayuda a llevar el proyecto.

1Actualiza la lista y léela antes de confirmar

Los ejemplos usan Ubuntu con apt. Primero, sudo apt update actualiza la lista de lo que hay en la máquina. Luego, sudo apt upgrade propone las actualizaciones y espera tu respuesta.

El sudo delante pide permiso de administrador, como en la lección anterior.

En la VPS de práctica, Denise se detuvo en la pregunta final y leyó toda la lista. Solo después respondió Y.

Terminal · en la VPS
$ sudo apt update
Reading package lists... Done
$ sudo apt upgrade
The following packages will be upgraded:
  [lista de programas que vão mudar]
Do you want to continue? [Y/n]

La pregunta final significa “¿quieres continuar?”. El Y en mayúscula es la respuesta predeterminada. Lee la lista de arriba antes de responder.

Un programa que no reconoces en la lista es motivo para investigar antes de responder Y.

2El bot de práctica pide solo dos cosas

El bot del kit del curso necesita Python 3. Git ayuda a llevar el proyecto desde tu computador a la VPS. El comando es sudo apt install git python3.

El bot usa solo lo que ya viene con Python, sin ningún complemento extra. Otras herramientas, como el Codex, son opcionales: solo entran si el programa las pide.

Un tutorial le sugirió a Lúcia instalar cinco herramientas “para garantizarlo”. Ella comprobó lo que pedía el bot y se quedó con dos.

Por hábito

En la máquina: Git, Python 3 y otras tres herramientas "porque un día puede que las necesites".

Resultado: cinco cosas para actualizar; tres sin uso.

En la medida

En la máquina: Git y Python 3.

Resultado: dos cosas para actualizar, y las dos funcionan.

Balance: tres herramientas menos para mantener, sin perder nada de lo que hace el bot.

3Revisa las versiones y crea la carpeta

Pregunta la versión de cada programa. Si responde, está en la máquina. Luego crea la carpeta projetos en tu carpeta personal, en la cuenta de trabajo.

Los comandos de versión solo leen. El de crear carpeta no borra nada: si la carpeta ya existe, la deja como está.

Lúcia ejecutó los mismos comandos en el notebook, antes de alquilar cualquier VPS. Los dos respondieron. Anotó las versiones en el plan, para comprobar que fueran las mismas en la VPS.

Terminal
$ python3 --version
Python 3.x.y
$ git --version
git version 2.x.y
$ mkdir -p ~/projetos
$ ls -d ~/projetos
/home/usuario/projetos

Donde dice x.y, aparece el número de la versión de tu máquina. El último comando confirma que la carpeta existe.

Cuatro comandos, ninguno cambia el sistema. El signo ~ quiere decir "mi carpeta personal".

Si te trabaste aquí, es normalSi aparece "command not found", o en Mac una ventana que ofrece herramientas de línea de comando, el programa no está en la máquina. No es un error tuyo. Anota "falta" en el plan: es exactamente lo que la VPS va a necesitar que se instale. En Windows, ejecuta en la terminal del WSL, del módulo 3.

Practica ahora 0/3

Revisa Python y Git y crea la carpeta de proyectos

Listo cuando tengas la respuesta de los dos comandos de versión y la carpeta proyectos exista. Unos 8 minutos, en la computadora, en la terminal.

Ningún comando de aquí cambia el sistema: dos solo leen la versión, el otro crea una carpeta vacía. No ejecutes la actualización de apt en la computadora del trabajo solo para practicar. En Windows, usa la terminal de WSL, preparada en el módulo 3: en PowerShell estos comandos responden diferente. ¿Tienes una VPS de práctica? Ejecuta los mismos comandos en ella.

python3 --version
git --version
mkdir -p ~/projetos
ls -d ~/projetos

Acabas de comprobar lo que tiene la máquina y decidir lo que necesita, sin instalar nada por hábito.

Cola de la lección

Bolsa de mano

  1. aptupdate actualiza la lista; upgrade propone y espera tu Y.
  2. Solo lo necesarioel bot de práctica pide Python 3; Git lleva el proyecto.
  3. Comprobar--version responde si está en la máquina.

Tu próximo paso

Ya puedes decidir qué entra en una máquina y comprobar que haya entrado.

Mira la lista de programas de tu computadora de trabajo y marca dos que no usas desde hace meses. Solo marca; no necesitas quitarlos.

Con el bot ahí dentro, falta la portería. Próxima lección: quién puede entrar a la VPS y dónde guardar la contraseña del bot.

Material complementario · Instala solo lo necesarioTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

Los ejemplos del laboratorio usan Ubuntu con apt. Actualice la lista de paquetes y revise la actualización propuesta. El bot base necesita Python 3; Git ayuda a transferir el proyecto. Node, Docker y Codex son opcionales según la aplicación, no una lista obligatoria para cualquier VPS.

Por qué aprender

Cada dependencia añade mantenimiento. Un servicio simple, con pocas piezas, es más fácil de explicar, actualizar y recuperar. Instalar herramientas por hábito crea trabajo sin aumentar la capacidad necesaria.

Conceptos clave

apt update; apt upgrade; dependencia; entorno virtual cuando sea necesario.

En la práctica

Secuencia de referencia: sudo apt update, sudo apt upgrade, sudo apt install git python3. El bot del kit usa solo la biblioteca estándar, sin instalar paquetes Python externos.

Secuencia para experimentar

  1. Prepara una copia de entrenamiento.
  2. Antes de confirmar la actualización, lee los paquetes involucrados. Verifica python3 --version y git --version, luego crea ~/projetos en la cuenta de trabajo.
  3. Registra el resultado observado y la próxima corrección.

Lección 45 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 4 de 6

El portón de la VPS: quién entra, quién sale

En la recepción de la escuela, una profesora revisa con el portero una lista corta de visitantes en una tablilla, con la reja cerrada al fondo, mientras el cartero deja las cartas en el mostrador.

Puedes listar los puertos de red que tu VPS necesita abrir. Y puedes dejar un archivo .env legible solo para ti, verificándolo en terminal.

Abrir todo "para que funcione" aumenta el riesgo y no encuentra la causa del problema. Y un .env que cualquier usuario de la máquina pueda leer deja la contraseña del bot a la vista.

En 1 minuto

  1. El firewall es el portón: decide qué entra y qué sale.
  2. El bot de entrenamiento solo sale para preguntar al Telegram. Ningún puerto del bot abierto.
  3. El .env se queda cerrado (chmod 600) y fuera de Git.

1El firewall es el portón de la máquina

El firewall filtra las conexiones de red, en ambos sentidos. Es como el portón de la escuela: tiene la lista de quién puede entrar, y el cartero sale a buscar la correspondencia.

El bot del kit usa long polling. Sale por una conexión segura para preguntarle al Telegram si llegó un mensaje nuevo. Nadie de afuera necesita tocarle la puerta.

Lúcia pensó que necesitaba abrir un puerto para que el bot reciba los mensajes del grupo. No hacía falta: quien entra a la máquina eres solo tú, por el SSH.

Você entrada: SSH VPS com o bot saída: o bot pergunta Telegram
Con long polling, el único puerto de entrada que la VPS necesita es el del SSH.

2Permite el SSH antes de encender el firewall

En Ubuntu, el ufw configura el firewall. Antes de encenderlo, permite la puerta del SSH que tu VPS realmente usa. Si es la 22, la regla es la del ejemplo. Si es otra, el número cambia.

Algunos proveedores tienen un firewall propio en el panel. Si el tuyo lo tiene, revisa también ahí que el puerto de SSH esté habilitado.

Denise solo encendió el firewall después de preparar las rutas de vuelta de la lección anterior sobre SSH: la segunda sesión probada y la consola del proveedor revisada. El propio ufw te avisó del riesgo.

Terminal · en la VPS
$ sudo ufw allow 22/tcp
Rules updated
Rules updated (v6)
$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?

"Rules updated" confirma la regla. La pregunta final avisa: "esto puede derribar las conexiones SSH abiertas; ¿continuar?".

Responde y solo después de liberar el puerto correcto y con la ruta de vuelta lista.

3El .env queda cerrado y fuera de Git

El token del bot vive en el .env. El comando chmod 600 deja ese archivo legible solo por el dueño.

Y el .env nunca entra en el Git: el archivo .gitignore, del módulo 4, ya se encarga de eso.

Lúcia revisó el .env antes y después del chmod. Al inicio de la línea, los trazos muestran quién no puede leer.

Terminal
$ ls -l .env
-rw-rw-r-- 1 usuario usuario 0 [data] .env
$ chmod 600 .env
$ ls -l .env
-rw------- 1 usuario usuario 0 [data] .env

Después de la primera señal vienen tres tríos: dueño, grupo y otros. r es leer, w es modificar, trazo es "no puede". Antes, el grupo y los otros leían (rw- y r--). Después, solo el dueño tiene rw.

Lo que importa es el inicio: -rw------- significa "solo el dueño".

4Red, token y proceso: tres verificaciones separadas

Si el bot no responde, no abras puertos para ver si así se arregla. Separa tres preguntas: ¿el proceso está en ejecución? ¿Se aceptó el token? ¿La red de salida funciona?

El log del bot del kit ayuda a separar, sin mostrar el token.

El bot de Denise se detuvo. El log decía "Falha HTTP 401": era el token, cambiado la semana anterior. No hacía falta cambiar ningún puerto.

Bot detenido · lo que dice el log
1 Ninguna línea nueva: ¿el proceso está en ejecución? (próxima lección)
2 "Falla HTTP 401 en Telegram; sin detalles que expongan token."
3 "Falla de red o respuesta; nuevo intento en 2 segundos."
  1. 1Proceso: revisa si está encendido.
  2. 2Token: Telegram rechazó la contraseña del bot.
  3. 3Red: falló la salida y el bot intenta de nuevo solo.

Si te trabaste aquí, es normal ¿No tienes VPS ni bot en ejecución? No pasa nada. La práctica es en tu computadora, en una carpeta de entrenamiento, con un .env vacío. ufw se queda para cuando tengas la máquina.

Practica ahora 0/3

Cierra un .env de entrenamiento y lista los puertos

Listo cuando el ls -l muestre -rw------- en el .env de entrenamiento y el plan tenga las puertas necesarias. Cerca de 8 minutos, en la computadora, en el terminal.

El archivo se crea vacío, en una carpeta nueva, solo para entrenar: no tiene ningún token. No toques el .env de un bot que ya funciona. En Windows, ejecútalo en el terminal del WSL, del módulo 3: fuera de él, es posible que no aparezca el -rw-------; no es un error tuyo, vuelve al WSL. Si el chmod da error, revisa con pwd si estás en la carpeta treino-rede.

mkdir -p ~/treino-rede
cd ~/treino-rede
touch .env
ls -l .env
chmod 600 .env
ls -l .env

Acabas de cerrar un archivo de secretos para que solo lo leas tú y reducir la exposición al mínimo.

Cola de la lección

Exposición

  1. Entradasolo la puerta real del SSH, liberada antes de encender el firewall.
  2. Salidael bot pregunta al Telegram; ninguna puerta del bot.
  3. .envchmod 600, verificado con ls -l, fuera de Git.

Tu próximo paso

Ya sabes decidir qué entra en el VPS y proteger el archivo con contraseñas del bot.

Busca, en tu computadora de trabajo, un archivo con contraseña anotada fuera de un gestor de contraseñas. Anota dónde está y decide hacia dónde va.

La exposición ya está lista, pero el bot todavía depende de ti para encenderse. Próxima lección: quién enciende el bot solo y lo vuelve a encender cuando se cae.

Material complementario · Protege la red y las credencialesTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

El firewall filtra las conexiones de red. Para el long polling, el bot necesita salir para HTTPS; no necesitas exponer una puerta del bot a internet. Antes de activar UFW, libera la puerta SSH realmente usada y verifica las reglas locales y del proveedor. Restringe el .env con chmod 600 y déjalo fuera de Git.

Por qué aprender

Abrir todos los puertos para “hacer funcionar” amplía el riesgo sin diagnosticar la causa. Si el proceso no responde, la salida de red, el token y la ejecución merecen verificaciones distintas.

Conceptos clave

Entrada y salida; puerto SSH; regla de firewall; permisos de archivo.

En la práctica

Si SSH usa el puerto 22, sudo ufw allow 22/tcp puede ser adecuado. Si usa otro puerto, la regla debe cambiar. Solo ejecuta sudo ufw enable después de probar la configuración y el acceso de recuperación.

✓ Hazlo

Lista los puertos realmente necesarios en el plan. Registra qué comandos varían por proveedor y nunca trates el ejemplo de puerto como universal.

✗ Evita

Mezclar la copia de entrenamiento con archivos privados o trabajo en producción.

  • SSH con clave
  • Firewall
  • Credenciales fuera del repo
  • Rutina de cuidado
La protección es una capa, no un comando único. La rutina de cuidado es la que más falta.

Lección 46 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 5 de 6

El cuidador del bot: lo enciende, lo reinicia y lo anota

A primera hora de la mañana, en el pasillo de la escuela, el conserje enciende las luces en el panel de la pared mientras la coordinadora observa con una taza de café, al lado de un libro de incidencias abierto en una mesita.

Puedes adaptar los cuatro campos de la unidad del kit y leer, en el estado y en el log, si el bot está en funcionamiento.

Un bot ejecutándose en una sesión SSH puede detenerse cuando cierras la conexión. La supervisión enciende el bot junto con la máquina y guarda los registros en un solo lugar. No sustituye alertas, límites ni la búsqueda de la causa.

En 1 minuto

  1. El systemd enciende el bot con la máquina y lo vuelve a encender después de una falla.
  2. La unidad indica qué programa, con qué usuario y en qué carpeta.
  3. Reiniciar no arregla el error que se repite: lee el log y pausa para diagnosticar.

1En la sesión abierta, el bot depende de la ventana

Hasta aquí, tú encendiste el bot a mano, con python3 bot.py en el terminal. En el VPS, eso amarra el bot a tu conexión.

El systemd es el cuidador de la máquina: enciende las luces toda mañana, vuelve a encender lo que se apagó y anota todo en el libro de incidencias.

Denise dejó el bot ejecutándose en una sesión SSH y se fue a casa. La conexión se cayó en el camino, y el bot se detuvo junto con ella.

En la sesión abierta

Enciende: cuando tú escribes el comando.

Si la conexión se cae: el bot puede detenerse junto.

Registro: guarda con la ventana.

Con systemd

Enciende: solo, junto con la máquina.

Si el bot falla: vuelve a encender después de 15 segundos.

Registro: guardado por systemd, para leer después.

Balance: el bot deja de depender de tu ventana abierta.

2La unidad dice qué, con quién y dónde

La unidad del kit es el archivo oswork-bot.service, en la carpeta bot. Cuatro campos necesitan tu usuario y tu ruta: User, WorkingDirectory, EnvironmentFile (donde está el .env) y ExecStart.

El campo Restart=on-failure vuelve a encender el bot después de una falla. En el kit, el usuario de ejemplo es oswork; el usuario y las carpetas necesitan existir en la VPS.

Lúcia cambió oswork por el usuario de trabajo suyo en los cuatro campos. Después mostró solo esas líneas en la pantalla para comprobar.

Terminal · carpeta bot del kit
$ grep -E "^(User|WorkingDirectory|EnvironmentFile|ExecStart|Restart)=" oswork-bot.service
User=oswork
WorkingDirectory=/home/oswork/projetos/oswork/materiais/bot
EnvironmentFile=/home/oswork/projetos/oswork/materiais/bot/.env
ExecStart=/usr/bin/python3 /home/oswork/projetos/oswork/materiais/bot/bot.py
Restart=on-failure

Así es como viene el kit. Las cuatro primeras líneas son las que tú adaptas; la última la mantienes.

User es quien ejecuta el bot. WorkingDirectory es la carpeta. EnvironmentFile es el .env. ExecStart es el comando que lo enciende.

3Enciende y verifica el estado

En la VPS, la unidad adaptada se coloca en la carpeta de systemd, /etc/systemd/system, con permiso de administrador. Luego, tres comandos encienden el bot. El systemctl lee las unidades, enciende el bot y muestra su estado.

O sudo aparece en los dos primeros porque cambian la máquina. El tercero solo lee.

Denise vio "active (running)" en el estado. Aun así, solo dio el paso por concluido después de enviar /status en el Telegram y recibir la respuesta.

Terminal · en la VPS
$ sudo cp oswork-bot.service /etc/systemd/system/
$ sudo systemctl daemon-reload
$ sudo systemctl enable --now oswork-bot
$ systemctl status oswork-bot --no-pager
● oswork-bot.service - OSWork bot de treino restrito
     Active: active (running) since [data e hora]

La primera línea copia la unidad. El daemon-reload hace que systemd relea las unidades. "active (running)" quiere decir "activo, en ejecución". El enable --now lo activa ahora y lo deja activado para los próximos reinicios.

En ejecución es la primera señal. La prueba es que el bot responda.
Telegram · conversación con el bot

Tú/status

BotOSWork activo. Acceso restringido. Bot determinístico de entrenamiento.

La respuesta real del bot del kit al /status.

4Reinicio controlado y lectura del log

Haz un reinicio a propósito, con systemctl restart, y envía /status de nuevo. Anota la hora. Luego lee el log con el journalctl.

Reencender no arregla un error que se repite. Si el bot cae de nuevo, detén el servicio y busca la causa antes de insistir.

En el log, Lúcia vio la detención y el regreso del bot, con hora. En otro día, vio "proceso cerrado para diagnóstico" y paró el servicio antes de intentar de nuevo.

Terminal · en la VPS
$ sudo systemctl restart oswork-bot
$ journalctl -u oswork-bot -n 50 --no-pager
[data] nome-da-vps systemd[1]: Stopped oswork-bot.service - OSWork bot de treino restrito.
[data] nome-da-vps systemd[1]: Started oswork-bot.service - OSWork bot de treino restrito.

Stopped y Started: paró y encendió, con fecha y hora. Con el bot funcionando, ya no escribe nada.

Si aparece una línea terminando en "proceso cerrado para diagnóstico", detente con sudo systemctl stop oswork-bot y lee la línea completa.

Si te trabaste aquí, es normalLos pasos 3 y 4 necesitan una VPS con el bot. Sin ella, la práctica de esta lección es solo la unidad, en tu computadora. Guarda los comandos: estarán en el plan cuando exista la máquina.

Practica ahora 0/3

Adapta la unidad del kit a tu usuario

Listo cuando el grep muestre tu usuario y tu ruta en los cuatro campos. Aproximadamente 10 minutos, en la computadora, con un editor de texto y el terminal.

Tú editas un archivo de texto, sin encender nada: sin VPS, nada se ejecuta. Trabaja sobre una copia descomprimida del kit. ¿La cagaste? Descomprime de nuevo. En Windows, haz todo en el terminal del WSL, del módulo 3.

Dónde está la unidad: en el kit del curso, el oswork-kit.zip de la página de materiales de OSWork. Descomprime en ~/projetos/oswork-kit: la unidad está en ~/projetos/oswork-kit/bot. En Windows, el zip se descarga en la carpeta Downloads; en WSL, tráelo con cp /mnt/c/Users/SeuNome/Downloads/oswork-kit.zip ~/projetos/ y luego cd ~/projetos y unzip oswork-kit.zip -d oswork-kit. La ruta que viene en el kit es la del repositorio del curso; cámbiala por el lugar donde el bot va a vivir en la VPS. En el molde queda /home tal cual, también en Mac: es la ruta de la VPS.

Pega en el archivo, en lugar de las cuatro líneas del kit:

User=<tu usuario de trabajo>
WorkingDirectory=/home/<usuario>/projetos/oswork-kit/bot
EnvironmentFile=/home/<usuario>/projetos/oswork-kit/bot/.env
ExecStart=/usr/bin/python3 /home/<usuario>/projetos/oswork-kit/bot/bot.py

Ejecuta en el terminal, para comprobar:

cd ~/projetos/oswork-kit/bot
grep -E "^(User|WorkingDirectory|EnvironmentFile|ExecStart)=" oswork-bot.service
Mira la unidad adaptada por una coordinadora

User=denise
WorkingDirectory=/home/denise/projetos/oswork-kit/bot
EnvironmentFile=/home/denise/projetos/oswork-kit/bot/.env
ExecStart=/usr/bin/python3 /home/denise/projetos/oswork-kit/bot/bot.py

Acabas de preparar la instrucción que mantiene el bot encendido sin depender de tu ventana.

Cola de la lección

Zelador

  1. UnidadUser, WorkingDirectory, EnvironmentFile y ExecStart con tu usuario y ruta.
  2. Activardaemon-reload, enable --now, status, y /status en Telegram.
  3. Falló de nuevolee el journalctl y para antes de repetir.

Tu próximo paso

Ya sabes entregar el bot a un zelador que lo enciende, lo reinicia y lo anota.

En el plan de VPS, completa la parte Servicio: ruta de trabajo, comando, nombre de la unidad, archivo de variables y política de reinicio.

Encendido y reiniciado todavía no es cuidado. Última lección: la rutina que comprueba que el servicio se recupera, y el fin del curso.

Material complementario · Systemd supervisa el procesoTexto completo del tema en OSWork v2. No cuenta en el tiempo de la lección.

Qué es

systemd es el gestor de servicios de muchas distribuciones Linux. Una unidad describe qué programa iniciar, con qué usuario y en qué carpeta. Restart=on-failure reinicia tras una falla, pero no corrige un error persistente. El kit proporciona una unidad parametrizada para el usuario oswork.

Por qué aprender

Ejecutar el bot en una sesión SSH puede terminar el trabajo al cerrar la conexión. La supervisión permite reiniciar con la máquina y centralizar logs. No reemplaza alertas, límites o el análisis de la causa.

Conceptos clave

Unidad; usuario de servicio; directorio; reinicio; journal.

En la práctica

Después de adaptar rutas, usa sudo systemctl daemon-reload y sudo systemctl enable --now oswork-bot. Consulta systemctl status y journalctl -u oswork-bot -n 50 --no-pager.

Experimenta ahora

Haz un reinicio controlado con systemctl restart, revisa /status y registra la hora. Si falla, detén el servicio antes de seguir repitiendo intentos sin diagnóstico.

  • Carpeta local
  • Repositorio
  • VPS
  • systemd
El mismo trabajo, cuatro lugares. systemd es lo que hace que la rutina sobreviva a un reinicio.

Lección 47 · OSWork v6.2 · INEMA.CLUB PRO

Módulo 8 · Lección 6 de 6

Simulacro de incendio: solo vale lo que se ensayó

En un patio de la escuela, soleado, la coordinadora sostiene una tablilla y un cronómetro durante un simulacro de incendio, mientras la profesora a su lado cuenta a los alumnos en fila cerca de la reja de salida.

¿Puedes hacer un backup de ventas.csv, el archivo de datos del bot de entrenamiento? Luego, restaura la copia en una carpeta separada y comprueba, con un comando y con el total, que está completa.

Sin que nadie mire, un servicio puede quedarse detenido por días. Sin una prueba de restauración, la copia puede estar incompleta, y solo te enteras el día en que la necesitas. La promesa real es una rutina que se recupera, no una máquina que nunca falla.

En 1 minuto

  1. Operar es una rutina: supervisión, actualización, checagem de fuera, copias y restauración probada.
  2. El backup solo vale después de restaurado y verificado.
  3. El proyecto cierra con cinco evidencias, y lo que no se hizo se declara.

1 Máquina encendida no es servicio funcionando

El systemd vuelve a encender el bot, pero no avisa a nadie si se queda callado. Por eso existe la checagem externa: alguien, desde fuera de la VPS, verifica si el servicio responde.

Una verificación diaria simple registra dos cosas: si el bot respondió y cuánto espacio queda en el disco. En la VPS, el comando df -h / muestra el espacio usado.

Denise manda /status al celular todos los días por la mañana, antes de la reunión de las ocho. Anota la hora de la respuesta y, una vez por semana, el espacio en disco.

Verificación diaria · [data]
1 /status por el Telegram: respondió a las [hora]
2 Espacio en disco: [percentual] usado
3 Verificado por: Denise
  1. 1Desde fuera: si el celular recibe la respuesta, todo el camino funciona.
  2. 2Disco lleno para cualquier servicio; mejor mirarlo antes.
  3. 3Un nombre: la checagem es de alguien.

2Copia fuera de la máquina, secreto fuera de la copia

Guarda las copias de los datos fuera de la VPS: por ejemplo, una carpeta protegida en el Drive de la escuela o un disco externo. Si la máquina desaparece, la copia no puede ir junto. Define también la retención: por cuánto tiempo se guarda cada copia.

El .env con el token del bot tiene tratamiento privado. No entra en una copia a la que otras personas acceden.

Lúcia guardaba la copia de los datos del grupo en la misma VPS. Luego la guardaba en un lugar protegido, fuera de ella, con tres copias mensuales. El .env quedó fuera.

En la misma VPS

Dónde: una carpeta al lado del bot.

Si la máquina desaparece: la copia desaparece junto con ella.

Secreto: el .env quedó junto en la copia.

Fuera de la VPS

Dónde: un lugar externo y protegido.

Si la máquina desaparece: los datos vuelven.

Secreto: el .env tratado por separado; retención de tres meses escrita en el plan.

Balance: perder la VPS deja de ser perder los datos.

3 El backup solo vale después del ensayo

Un simulacro de incendio demuestra que la escuela sale del edificio. La prueba de restauración demuestra que la copia vuelve. Un backup solo está validado cuando tú lo restauraste y verificaste el contenido.

El bot de entrenamiento del módulo 7 suma los valores de vendas.csv, un archivo de ventas ficticias, cuando recibe /relatorio. La prueba mensual restaura ese archivo en una carpeta separada y lo compara con el original. El diff muestra las diferencias; si no muestra nada, los dos son iguales.

En el primer test, la copia de Denise estaba vacía: el comando de copia apuntaba a la carpeta equivocada. El ensayo detectó el error antes de una pérdida real.

Terminal · carpeta bot del kit
$ cp ~/copias-oswork/vendas-copia-1.csv ~/restauracao-teste/vendas.csv
$ diff vendas.csv ~/restauracao-teste/vendas.csv
$ cat ~/restauracao-teste/vendas.csv
produto,valor
Caderno,35.50
Caneta,9.50
Agenda,55.00

El diff no mostró nada: la copia es igual al original. Suma los valores: 100,00, el mismo total que el /relatorio del bot muestra.

Dos pruebas: el diff en silencio y el total verificado a mano.

Si te trabaste aquí, es normalEl silencio del diff parece que "no pasó nada". Es lo contrario: solo habla cuando encuentra una diferencia. Si aparece "No such file or directory", la carpeta o el nombre de la copia son distintos; revisa con ls.

4 Cinco evidencias cierran el proyecto

El proyecto del curso termina con cinco evidencias: respuesta autorizada, bloqueo de desconocido, reinicio, log sin token y restauración verificada.

Sin una segunda cuenta en Telegram, el bloqueo de desconocido se puede comprobar con la prueba del kit, python3 bot.py --self-test. Para el log sin token, lee journalctl y confirma que el token no aparece. Si alguna etapa no se ejecutó, decláralo. Escrito "No hice" vale más que un "hecho" que nadie verificó.

Denise todavía no había alquilado la VPS. Registró las evidencias que pudo en el cuaderno y escribió, en la línea del reinicio, "no ejecutado: sin VPS".

plano-vps.md · Verificações observadas
1 Respuesta autorizada: /status respondió a las [hora]
2 Bloqueo de desconocido: self-test "OK: 11 escenarios offline"
3 Reinicio del servicio: no ejecutado: sin VPS
4 Logs sin token: leídos en [data]; ningún token
5 Backup restaurado en carpeta separada: diff igual; total 100,00
Una línea por evidencia, sin secretos. La línea 3 declara lo que falta, en vez de esconderlo.

Practica ahora 0/3

Haz y restaura un backup de verdad

Listo cuando el diff no muestre nada y el total de la copia restaurada sea 100,00. Cerca de 10 minutos, en el computador, en el terminal.

Tú solo copias un archivo de datos ficticios; nada se borra. Aquí la copia queda en tu computador; en una VPS de verdad, iría fuera de la máquina. En Windows, usa el terminal del WSL, del módulo 3: en PowerShell el diff responde diferente.

Dónde está el archivo: vendas.csv viene en la carpeta bot del kit del curso, el oswork-kit.zip de la página de materiales del OSWork. Las líneas de abajo suponen que el kit está descomprimido en ~/projetos/oswork-kit, como en la lección anterior; si está en otro lugar, cambia solo la primera línea. El terminal necesita responder vendas.csv con el ls.

cd ~/projetos/oswork-kit/bot
ls vendas.csv
mkdir -p ~/copias-oswork ~/restauracao-teste
cp vendas.csv ~/copias-oswork/vendas-copia-1.csv
cp ~/copias-oswork/vendas-copia-1.csv ~/restauracao-teste/vendas.csv
diff vendas.csv ~/restauracao-teste/vendas.csv
cat ~/restauracao-teste/vendas.csv

Acabas de comprobarlo, y no solo suponerlo: tu copia vuelve completa.

Cola de la lección

Simulación

  1. De fuera verificación diaria: el bot respondió y el disco tiene espacio.
  2. Copia fuera de la VPS, con retención escrita y sin el .env.
  3. Ensayo restaurar en carpeta separada; diff en silencio y total verificado.

Tu próximo paso

Terminas el OSWork. Te llevas una carpeta organizada con instrucciones verificables, una Skill, el historial en Git, un bot restringido y un plan de operación supervisada en una VPS.

Completa las cinco líneas de Verificaciones observadas del plan, con lo que ejecutaste y "no ejecutado" en el resto. Después marca en la agenda el próximo test de restauración, dentro de un mes.

A partir de ahora, el curso se vuelve rutina: la verificación diaria, el ensayo mensual y el plan actualizado en cada cambio. Cuando quieras ir más allá, el laboratorio de la lección, en el material complementario, lleva de la carpeta local al servicio supervisado.

Material complementario · La disponibilidad exige rutina de cuidadoTexto completo del tema en OSWork v2 y cierre del módulo. No cuenta en el tiempo de la lección.

Qué es

La operación continua combina supervisión, actualización, monitoreo, copias de seguridad y restauración probada. Haga copias de los datos fuera de la máquina, proteja credenciales y defina retención. Una copia de seguridad solo se valida cuando restaura una copia y verifica el contenido.

Por qué aprender

Sin monitoreo, un servicio puede quedar detenido durante días. Sin prueba de restauración, la copia puede estar incompleta. La promesa real es una rutina recuperable, no una máquina infalible.

Conceptos clave

Verificación externa; logs; copia de seguridad fuera de la VPS; restauración; límite de gasto.

En la práctica

Una verificación diaria registra la respuesta del bot y el espacio en disco. Un test mensual restaura ventas.csv en una carpeta separada y compara el total. Las credenciales tienen tratamiento privado, sin entrar en la copia pública.

Experimenta ahora

Finaliza el proyecto con cinco evidencias: respuesta autorizada, bloqueo de desconocido, reinicio, log sin token y restauración confirmada. Declara cualquier paso no ejecutado.

Laboratorio del módulo: De la carpeta local a un servicio supervisado

Usa archivos ficticios y una carpeta de entrenamiento. Las prácticas con instalación, Telegram o VPS pueden requerir tiempo adicional para registro y configuración.

  1. Elige una VPS Ubuntu soportada, define el presupuesto y confirma el acceso al console de recuperación.
  2. Crea el usuario de trabajo, prueba el acceso SSH en una segunda sesión y solo entonces configura el firewall.
  3. Transfiere el proyecto sin credenciales por Git y configura el .env privado en la VPS.
  4. Adapta la unidad de systemd, inicia el servicio y prueba la respuesta, reinicio controlado, logs y restauración de la copia de seguridad.

VPS Ubuntu · adapta rutas antes

Lea el bloque antes de usar. Campos como Su Nombre y usuario@ip-de-vps son ejemplos para adaptar; los comandos administrativos pertenecen solo a su entorno de entrenamiento.

sudo apt update
sudo apt upgrade
sudo apt install git python3
# Adapta la unidad del kit al usuario y ruta reales.
sudo systemctl daemon-reload
sudo systemctl enable --now oswork-bot
systemctl status oswork-bot --no-pager
journalctl -u oswork-bot -n 50 --no-pager

Criterio de listo

Prepare un plan de despliegue, supervisión, copia de seguridad y verificación del servicio. Registre el archivo producido, la prueba ejecutada y el resultado observado.

Criterios para revisar su entrega

Use esta rúbrica después del laboratorio. Cada línea pide una evidencia; marcar lectura no significa que la práctica se haya ejecutado.

  • Alcance — La entrega corresponde al objetivo de esta lección. Si no pasó: Reduce la tarea y nombra un solo resultado.
  • Entradas — Tú sabes qué archivos o datos se usaron. Si no pasó: Lista las fuentes y elimina material que no tenga relación.
  • Ejecución — El procedimiento se realizó en el entorno de entrenamiento. Si no pasó: Separa lo que se planeó de lo que se hizo.
  • Comprobación — Un resultado se comparó con una referencia. Si no pasó: Abre el archivo o repite una consulta verificable.
  • Secretos — No se compartió ningún token, contraseña ni dato privado. Si no pasó: Revisa la copia de trabajo antes de enviarla.
  • Continuidad — Otra persona puede encontrar el próximo paso. Si no pasó: Actualiza README y registra una pendiente concreta.

Compruebe lo que quedó

Instalar Codex en una VPS garantiza un agente activo 24 horas?

Ver respuesta comentada

No. Se necesita un servicio o programador, proceso supervisado, credenciales válidas, red y monitoreo.

Si su respuesta fue diferente, vuelva al tema correspondiente y escriba la diferencia en una frase. La verificación no bloquea su estudio.

Resumen del módulo

  • Servidor remoto; recursos; costo recurrente; responsabilidad operativa.
  • Clave pública; huella digital; usuario; sudo; recuperación.
  • apt update; apt upgrade; dependencia; entorno virtual cuando sea necesario.
  • Entrada y salida; puerto SSH; regla de firewall; permisos de archivo.
  • Unidad; usuario de servicio; directorio; reinicio; journal.
  • Chequeo externo; logs; copia de seguridad fuera de la VPS; restauración; límite de gasto.

Consulte la fuente

Herramientas verificadas el 20/09/2026; los nombres de pantallas y la disponibilidad pueden cambiar.

Términos de esta sección: systemctl, journalctl, ruta.

Lección 48 · OSWork v6.2 · INEMA.CLUB PRO