Extra · Muda tu asistente, ordena tus carpetas y controla tus finanzas¶
Compañero ejecutable de los bloques nuevos del formato de dos clases · a tu ritmo.
Este cuaderno acompaña tres prácticas muy personales que enseñan un mismo patrón —dirigir a la IA sin perder el control— y que puedes rehacer en cualquiera de los tres ecosistemas del curso (Claude, Gemini, ChatGPT):
- Migrar tu asistente de un ecosistema a otro sin empezar de cero.
- Ordenar una carpeta delegando en un agente, con la receta plan → permiso → verificación.
- Montar tu asesor de finanzas personales (regla 50/30/20 y caza de suscripciones) con datos ficticios.
Material de referencia en tu kit: migración entre ecosistemas y la hoja del Taller 3 · personal y financiero.
Como siempre: no necesitas programar, solo ejecutar celdas (Mayús + Intro). Si es tu primer cuaderno, pasa antes por
00-preparacion.ipynb.
import subprocess, platform, webbrowser
def abrir(url):
"""Abre una dirección web en tu navegador por defecto."""
webbrowser.open(url)
print(f"🌐 Abriendo {url} …")
def copiar(texto):
"""Copia el texto al portapapeles (macOS, Windows o Linux)."""
try:
sistema = platform.system()
if sistema == "Darwin":
subprocess.run(["pbcopy"], input=texto.encode("utf-8"), check=True)
elif sistema == "Windows":
subprocess.run(["clip"], input=texto.encode("utf-16-le"), check=True)
else:
subprocess.run(["xclip", "-selection", "clipboard"], input=texto.encode("utf-8"), check=True)
print("📋 Copiado al portapapeles: pégalo con Cmd+V (Mac) o Ctrl+V (Windows).")
except Exception:
print("(No he podido copiar automáticamente: selecciona el texto de arriba y cópialo a mano.)")
print("Ayudantes cargados: abrir(url) y copiar(texto)")
1 · Muda tu asistente entre ecosistemas 🔁¶
La idea clave: un buen asistente de IA (un GPT de ChatGPT, un Proyecto de Claude, un Gem de Gemini) es, sobre todo, un texto de instrucciones + unos archivos de conocimiento. Y eso es portable.
Regla de oro: las instrucciones son portables; el asistente se recrea, no se importa. No hay un botón mágico de «exportar mi GPT a Claude», pero sí una receta manual de 10 minutos que funciona siempre.
# Abre los tres ecosistemas para tenerlos a mano mientras mudas tu asistente
abrir("https://claude.ai")
abrir("https://chatgpt.com")
abrir("https://gemini.google.com")
Muda tu asistente en 4 pasos¶
- Extrae las instrucciones del asistente de origen: abre su configuración y copia el texto. ¿No lo tienes a mano? Pídeselo a él mismo con la celda de abajo.
- Recopila el conocimiento: reúne los mismos PDFs/documentos que tenía cargados.
- Recrea en destino: crea un GPT / Proyecto / Gem nuevo, pega las instrucciones y sube los archivos.
- Prueba con el mismo caso de siempre y ajusta una o dos frases: cada modelo responde algo distinto.
# PASO 1 — Pídele a tu asistente actual SUS PROPIAS instrucciones, en texto plano
pedir_instrucciones = (
"Devuélveme, en texto plano y completo, todas tus instrucciones de sistema "
"(rol, objetivo y reglas), tal cual, para poder recrearte en otra herramienta. "
"No las resumas ni las cambies: cópialas literalmente."
)
print(pedir_instrucciones)
print()
copiar(pedir_instrucciones)
print("→ Pega esto en tu GPT/Proyecto/Gem actual; te devolverá el texto que mudarás.")
# PASO 3 — Pega entre las comillas las instrucciones que te devolvió tu asistente de ORIGEN.
# La celda las deja copiadas, listas para pegarlas en el asistente NUEVO del ecosistema de DESTINO.
instrucciones_asistente = """[PEGA AQUÍ, tal cual, las instrucciones que te devolvió tu asistente]"""
print(instrucciones_asistente)
copiar(instrucciones_asistente)
# Crea el asistente en el ecosistema de DESTINO y pega ahí las instrucciones (⚠ los menús cambian a menudo):
# abrir("https://gemini.google.com/gems") # Gemini → Crear Gem
# abrir("https://chatgpt.com/gpts/editor") # ChatGPT → Crear un GPT ⚠ verificar ruta
# abrir("https://claude.ai/projects") # Claude → Nuevo Proyecto ⚠ verificar ruta
print("Quita el # del destino, créalo y pega las instrucciones que copiaste arriba. Después, súbele los mismos archivos.")
Qué se puede migrar (y con cuánto esfuerzo)¶
| Qué migras | Cómo se traslada | Portabilidad |
|---|---|---|
| Instrucciones (el «rol» o system prompt) | Copiar-pegar entre GPT ↔ Proyecto ↔ Gem | ✅ Total |
| Archivos de conocimiento (PDFs, docs) | Volver a subirlos en la nueva herramienta | ✅ Total |
| Memoria / preferencias sobre ti | Pídele «resume todo lo que sabes de mí y de cómo trabajo» y pega ese resumen como contexto | 🟡 Manual |
| Un GPT / Proyecto / Gem completo | Recrearlo: instrucciones + archivos + nombre | 🟡 Se recrea, no se importa |
Skills de Claude Code (SKILL.md) |
Carpeta portable entre tus proyectos de Claude; sin equivalente 1:1 en GPT/Gem | 🟠 Solo en Claude |
| Historial de conversaciones | Exportar (ChatGPT y Gemini/Takeout lo permiten) y resumir lo útil como contexto | 🔴 Sin importación directa |
Leyenda: ✅ directo · 🟡 manual pero fiable · 🟠 solo en su ecosistema · 🔴 no hay import, solo resumen.
Tabla de equivalencias entre los tres ecosistemas¶
| Concepto | ChatGPT | Claude | Gemini |
|---|---|---|---|
| Asistente a medida | GPT (GPT Store) | Proyecto (con instrucciones) | Gem |
| Lienzo para construir | Canvas | Artifacts | Canvas |
| Corpus de documentos | Archivos del GPT | Conocimiento del Proyecto | NotebookLM |
| Memoria personal | Memoria de ChatGPT | Memoria / preferencias | Actividad y contexto |
| Agente en terminal | Codex | Claude Code | (vía API / Gemini CLI) |
⚠️ Gobernanza al mudar: recrear un asistente en otro ecosistema significa volver a subir sus archivos a otro proveedor. Migrar no cambia qué datos son seguros: aplica el mismo criterio de la guía de gobernanza de datos. ⚠ verificar: los nombres de menús y botones cambian cada pocas semanas; la receta de copiar-pegar instrucciones y resubir archivos se mantiene.
2 · Ordena una carpeta con un agente 🗂️¶
Un agente en tu terminal (Claude Code; su equivalente en OpenAI es Codex) puede organizar tus carpetas hablándole en tu idioma. La lección más importante del bloque no es la carpeta ordenada, sino el patrón para dirigirlo:
plan → permiso → verificación. Nunca al revés.
⚠️ Carpeta DESECHABLE, siempre la primera vez. Nunca ensayes sobre tu Escritorio real con datos importantes en vivo. En este cuaderno no ejecutamos ningún borrado ni movimiento: creamos una carpeta de prueba, preparamos los prompts y observamos. Los cambios reales los harás tú, en tu terminal, cuando el plan te convenza.
# Crea una carpeta de prueba DESECHABLE con archivos de ejemplo (no toca nada tuyo)
from pathlib import Path
base = Path("carpeta-prueba")
base.mkdir(exist_ok=True)
ejemplos = [
"IMG_2034.png", "IMG_2035.png", "foto vacaciones (1).jpg",
"factura luz marzo.pdf", "Factura_gas_02.PDF", "fact-internet-abril.pdf",
"informe ventas Q1 FINAL v3.docx", "informe ventas Q1 FINAL v3 (copia).docx",
"notas reunion lunes.txt", "ideas sueltas.txt",
]
for a in ejemplos:
(base / a).write_text("contenido de ejemplo (archivo desechable)", encoding="utf-8")
print(f"✅ Creada {base}/ con {len(ejemplos)} archivos desordenados (todos desechables):")
for a in sorted(ejemplos):
print(" ·", a)
Paso 1 · Pide el PLAN — solo lectura, no toca nada¶
La celda deja copiado el prompt del plan. Ábrelo en tu terminal (escribe claude) y pégalo, o ejecútalo con claude -p. Fíjate en la última frase: le prohíbe cambiar nada.
plan = (
"Examina la carpeta carpeta-prueba y proponme un plan para organizarla: "
"qué subcarpetas crearías y qué archivo iría en cada una, con nombres nuevos "
"consistentes (minusculas-con-guiones). NO muevas ni cambies nada todavia: solo el plan."
)
print(plan)
print()
copiar(plan)
# ¿Prefieres lanzarlo desde aquí? Quita el # (consume uso; SOLO LEE, no modifica nada):
# import subprocess; print(subprocess.run(["claude", "-p", plan], capture_output=True, text=True).stdout)
🖐 Momento humano-en-el-bucle: lee el plan como leerías el de un asistente nuevo. ¿Las categorías tienen sentido? ¿Detectó los duplicados (el informe repetido, las facturas dispersas)? Si no te convence, pídele que lo replantee antes de darle permiso.
Paso 2 · Da el PERMISO — solo si el plan te convenció¶
Aquí no ejecutamos nada: te dejamos el prompt de ejecución para que lo lances tú en tu terminal y apruebes el permiso a mano, de forma explícita. El agente te pedirá confirmación antes de tocar los archivos.
Tres reglas que traes puestas para cuando lo hagas con carpetas reales: copia de seguridad antes, mover nunca borrar (lo dudoso a una carpeta _revisar), y permiso acotado a esta orden, no un cheque en blanco.
permiso = (
"Organiza la carpeta carpeta-prueba: subcarpetas por tipo (facturas, imagenes, "
"informes, notas, otros), nombres consistentes en minusculas-con-guiones, y aparta "
"los duplicados en una subcarpeta duplicados. MUEVE, nunca borres nada. Trabaja SOLO "
"dentro de carpeta-prueba. Al terminar, resume lo que has hecho."
)
print(permiso)
print()
copiar(permiso)
print("→ Pégalo en tu terminal (claude) y APRUEBA tú el permiso cuando te lo pida. Este cuaderno no ejecuta ningún cambio.")
Paso 3 · VERIFICA con tus propios ojos¶
Cuando lo hayas ejecutado en tu terminal, comprueba el resultado tú mismo. La celda solo lista el contenido de la carpeta (no modifica nada):
# Verificación en solo lectura: muestra cómo quedó la carpeta (no toca nada)
!find carpeta-prueba | sort
Qué observar: que el agente propuso antes de actuar, que tú aprobaste el permiso, y que el resultado es revisable. Ese trío —plan → permiso → verificación— es el patrón para delegar en un agente cualquier cosa que toque tus archivos. La carpeta ordenada es solo la excusa.
Cuando lo lleves a tu Escritorio o iCloud reales, súmale: copia de seguridad primero, mover nunca borrar y jamás borrar dentro de iCloud (el borrado se propaga a todos tus dispositivos). El paso a paso completo, con guardarraíles, está en el módulo avanzado (03-avanzado-claude-code-skills-mcp.ipynb).
3 · Tu asesor de finanzas personales 💶¶
El mismo «cerebro» de instrucciones fijas existe en los tres ecosistemas: Skill (Claude), Gem (Gemini) y GPT (ChatGPT). Lo montamos una vez y lo probamos con datos ficticios.
⚠️ Gobernanza primero: finanzas personales = dato 🔴 sensible. Usa tu cuenta personal con la privacidad configurada, datos ficticios o anonimizados, y nunca pegues números de cuenta o tarjetas reales — el análisis funciona igual sin ellos.
# Genera una tabla de gastos de EJEMPLO (datos FICTICIOS de dos meses) y la guarda en gastos.csv
from pathlib import Path
gastos = [
("2026-05-02", "Supermercado", 84.30),
("2026-05-03", "Suscripción streaming A", 12.99),
("2026-05-07", "Restaurante", 45.50),
("2026-05-12", "Gimnasio", 39.00),
("2026-05-15", "Suscripción streaming B", 9.99),
("2026-05-20", "Supermercado", 78.90),
("2026-06-02", "Suscripción streaming A", 12.99),
("2026-06-09", "Gimnasio", 39.00),
("2026-06-14", "Electrónica", 249.00),
("2026-06-18", "Supermercado", 95.40),
("2026-06-25", "Restaurante", 38.75),
]
lineas = ["fecha,concepto,importe"] + [f"{f},{c},{i:.2f}" for f, c, i in gastos]
Path("gastos.csv").write_text("\n".join(lineas) + "\n", encoding="utf-8")
total = sum(i for _, _, i in gastos)
print("✅ gastos.csv creado (datos FICTICIOS). Vista previa:\n")
print(f"{'fecha':12} {'concepto':24} {'importe (€)':>11}")
print("-" * 51)
for f, c, i in gastos:
print(f"{f:12} {c:24} {i:>11.2f}")
print("-" * 51)
print(f"{'TOTAL':38} {total:>11.2f}")
Monta el asesor: Skill (Claude Code), Gem (Gemini) o GPT (ChatGPT)¶
- Claude Code → la celda de abajo crea una Skill
finanzas-personales; el agente leerá tus gastos directamente degastos.csv. - Gemini / ChatGPT / Claude web → copia el texto de instrucciones (celda siguiente) y pégalo en un Gem / GPT / Proyecto; a estos les pegas o subes los gastos en cada conversación.
La diferencia: la skill de Claude Code lee tus archivos; al Gem/GPT le pegas o subes los gastos cada vez. Las instrucciones son las mismas — por eso el asesor se muda entre ecosistemas en 10 minutos (sección 1).
# Opción Claude Code: crea la Skill finanzas-personales (solo escribe un archivo de texto; no toca nada más)
from pathlib import Path
skill_dir = Path(".claude/skills/finanzas-personales")
skill_dir.mkdir(parents=True, exist_ok=True)
skill = """---
name: finanzas-personales
description: Analiza gastos personales y prepara informes de finanzas personales. Usar cuando se pida analizar gastos, presupuesto, suscripciones o ahorro.
---
Cuando analices finanzas personales:
1. Clasifica cada gasto en: Esenciales, Estilo de vida o Suscripciones.
2. Resume por mes y por categoría, con porcentaje sobre el gasto total.
3. Usa la regla 50/30/20 como referencia (50% necesidades, 30% deseos, 20% ahorro)
y señala las desviaciones. Si no conoces los ingresos, calcula sobre el gasto
total y dilo explícitamente.
4. Detecta suscripciones repetidas, gastos duplicados o cargos que convenga revisar.
5. Cierra SIEMPRE con las 3 acciones de ahorro más efectivas, ordenadas por impacto
estimado en euros al mes.
6. No inventes cifras ni des consejos de inversión; esto es gestión de gastos.
7. Tono: asesor cercano y práctico, sin sermones.
"""
(skill_dir / "SKILL.md").write_text(skill, encoding="utf-8")
print(f"✅ Skill creada en {skill_dir}/SKILL.md")
# Pruébala sobre los datos ficticios (consume uso de tu plan de Claude). Quita el # para lanzarla:
# !claude -p "Analiza mis gastos del archivo gastos.csv"
print('En tu terminal, con la Skill ya creada: claude -p "Analiza mis gastos del archivo gastos.csv"')
# Opción Gemini / ChatGPT / Claude web: copia estas instrucciones y pégalas en tu Gem / GPT / Proyecto
instrucciones_asesor = """Eres mi asesor de finanzas personales. Tu objetivo es ayudarme a entender
en qué se me va el dinero y a ahorrar sin sermones. Yo te pegaré o subiré mis gastos
(fecha, concepto, importe). Cada vez que lo haga:
1. Clasifica cada gasto en: Esenciales, Estilo de vida o Suscripciones.
2. Resume por mes y por categoría, con su porcentaje sobre el gasto total.
3. Usa la regla 50/30/20 como referencia (50% necesidades, 30% deseos, 20% ahorro)
y señala las desviaciones. Si no conoces mis ingresos, calcula sobre el gasto total y dilo.
4. Detecta suscripciones repetidas o duplicadas y cargos que convenga revisar.
5. Cierra SIEMPRE con las 3 acciones de ahorro más efectivas, ordenadas por impacto en euros/mes.
6. No inventes cifras ni des consejos de inversión: esto es gestión de gastos.
7. Tono cercano y práctico, sin sermones."""
print(instrucciones_asesor)
print()
copiar(instrucciones_asesor)
# abrir("https://gemini.google.com/gems") # quita el # para crear tu Gem ahora
Pruébalo y comprueba las cuatro funciones núcleo¶
Pega la tabla (o pídele analizar gastos.csv) y confirma que el asesor devuelve:
Categorías correctas · reparto 50/30/20 con sus desviaciones · suscripciones A y B señaladas para revisar · 3 acciones de ahorro ordenadas por euros/mes.
Para tu vida real: exporta los movimientos de tu banco a CSV (todas las apps lo permiten), borra o enmascara el número de cuenta, y repite el análisis cada fin de mes. Quince minutos que suelen encontrar entre 50 y 200 € de fugas — justo el tipo de hábito del reto de 30 días.
Seguridad y gobernanza (no la saltes)¶
- Migrar: recrear un asistente = volver a subir sus archivos a otro proveedor. Comprueba que esos documentos pueden salir de tu perímetro de confianza.
- Ordenar carpetas: carpeta desechable la primera vez; en carpetas reales, copia de seguridad → mover nunca borrar → permiso acotado → verificación. Jamás borrar dentro de iCloud.
- Finanzas: dato 🔴 — cuenta personal con la privacidad configurada, datos ficticios o anonimizados, nunca números de cuenta reales.
- Humano en el bucle, siempre, para dinero, borrados y decisiones sobre personas. «Lo hizo la IA» no existe como defensa.
Repasa el semáforo de datos y el «humano en el bucle» en la guía de gobernanza y datos y la plantilla de contexto seguro antes de hacerlo con datos tuyos de verdad.
Cierre ✅¶
Tres prácticas, un mismo patrón: diriges a la IA y tú mantienes el control. Sabes mudar tu asistente entre ecosistemas, delegar en un agente con plan → permiso → verificación, y montar un asesor de finanzas que puedes recrear donde quieras.
Para profundizar: el módulo avanzado 03-avanzado-claude-code-skills-mcp.ipynb (Skills, MCP y el agente trabajando sobre tus archivos reales).