Cómo configurar Codex, Claude Code, ChatGPT, Hermes y OpenClaw para ejecutar el trabajo de enlaces de tu startup

Puntos clave

Un espacio de trabajo compartido, cinco agentes y un archivo de política que impide que todos ellos envíen algo sin ti. Incluye la estructura de carpetas, el SKILL.md y el prompt exacto para cada herramienta.

Con qué terminarás

Una carpeta backlink-work/ que tus agentes pueden leer y escribir, un _policy.md que les prohíbe a todos enviar cualquier cosa, y una ejecución de investigación funcionando por herramienta. Al terminar no habrás enviado ni un solo correo de contacto. Ese es el punto.

Para quién es: un fundador o responsable de marketing de una startup con un sitio en producción, una idea aproximada de cuáles 18 plataformas importan, y al menos un agente de IA ya instalado. No hace falta equipo de datos ni herramienta de pago para enlaces.

Requisitos previos:

  • Uno de estos: Codex, Claude Code, ChatGPT (con un espacio de trabajo o proyecto), Hermes Agent u OpenClaw
  • Los datos de tu producto por escrito: nombre, URL, descripción de una línea, categoría, modelo de precios
  • Un repositorio o carpeta que puedas dejar leer a un agente, o un espacio de trabajo de proyecto si tu herramienta es de chat
  • Un correo de contacto en tu propio dominio, para más adelante. No hace falta para la configuración

Cómo se ve "terminado": cada agente produce los mismos tres archivos con el mismo formato, cada fila lleva una URL de origen, y la columna de envío sigue vacía porque ninguna persona lo ha aprobado.

Tiempo: unos 45 minutos para el espacio de trabajo compartido más tu primer agente. Aproximadamente 15 minutos por cada herramienta adicional.

La regla que hace que esto sea seguro de automatizar

El trabajo de enlaces es uno de los peores para entregárselo a un agente sin un límite. La mayor parte de la tarea es investigación, deduplicación y redacción, cosas que los agentes hacen bien. El último cinco por ciento es enviar un formulario, crear una cuenta y poner el nombre de tu empresa en una página pública, y ahí es donde las cosas salen mal de forma permanente.

Así que la configuración de abajo divide el trabajo en esa línea. Los agentes hacen todo hasta el envío. La persona hace el envío.

Esa división también es lo que hace comparable el resultado entre cinco herramientas distintas. Si Codex y OpenClaw escriben en el mismo esquema de archivos, puedes intercambiarlos, ejecutar dos en paralelo o pasarle una lista a medio terminar a otro agente sin reformatear nada.

Hay algo que conviene resolver antes de empezar: las puntuaciones DR no son un criterio de selección. La lista con la que trabajas incluye Starter Story con DR 76 y YouTube con DR 99, y el 99 no es automáticamente el mejor objetivo. Tus agentes deberían ordenar por encaje y por lo que cada plataforma realmente entrega, no por el número. Si quieres ese criterio de ordenación con más detalle, el desglose por cubos de valor de estas 18 fuentes lo cubre.

Primero construye el espacio de trabajo compartido

Todos los agentes de abajo leen y escriben en esta estructura. Créala antes de instalar nada.

text
backlink-work/
  _policy.md              # lo que cada agente puede y no puede hacer
  _ledger.md              # una fila por ejecución: fecha, agente, tarea, archivo de salida, estado
  facts/
    company.md            # la única fuente aprobada de afirmaciones sobre el producto
    proof.md              # enlaces a pruebas que puedes citar públicamente
  targets/
    targets.csv           # la lista maestra de oportunidades
    rejected.csv          # verificadas y descartadas, con el motivo
  drafts/
    submissions/          # un borrador por plataforma, nunca enviado por un agente
  outreach/
    pitches/              # propuestas editoriales para Starter Story, Niche Pursuits, etc.
  reports/
    weekly.md             # el resumen legible para personas

Luego escribe _policy.md. Cuatro líneas hacen casi todo el trabajo:

markdown
- Nunca crear una cuenta, enviar un formulario, mandar un correo ni publicar una página. Solo producir archivos de borrador.
- Cada fila que añadas debe incluir una URL de origen y la fecha en que la leíste. Sin origen, no hay fila.
- Si falta un archivo necesario o un campo no se puede verificar en una página en vivo, escribe "not verified" y continúa.
- Nunca afirmar una métrica, un nombre de cliente, un premio o un resultado que no esté en facts/company.md o facts/proof.md.

La segunda línea es la que la gente se salta, y es la que decide si el resultado sirve. Un agente que rellena un campo de contacto vacío con una dirección que parece plausible produce un archivo que parece terminado y está mal. Haz que "not verified" sea una respuesta aceptable.

Control de calidad: pega _policy.md en tu agente y pídele que reformule las cuatro reglas con sus propias palabras. Si su resumen contiene algo que tú no escribiste, la regla es demasiado abstracta. Reescríbela como una prohibición con un archivo nombrado.

Recuperación: si un agente ignora una regla, normalmente la regla es un valor ("ten cuidado") y no una prohibición ("no escribas en targets/targets.csv sin una URL de origen"). Reescríbela como el segundo tipo.

Estructura de carpetas del espacio de trabajo compartido de enlaces con una puerta de aprobación humana antes del envío

Pie de foto: Una carpeta, un esquema, cinco agentes. La puerta de aprobación es el único paso que un agente no puede cruzar.

Define el esquema de archivos una sola vez

Este es el contrato que todo agente debe cumplir. Ponlo en _policy.md o en un _schema.md aparte y referéncialo en cada prompt.

Columnas de targets/targets.csv:

Columna

Significado

Obligatoria

domain

Dominio raíz, sin protocolo

Sí

platform_type

editorial, owned_publishing, directory, visual_video o brand_footprint

Sí

submission_url

La página exacta donde empieza un envío o una propuesta

Sí

contact_route

Correo o URL de formulario publicados. not published si no hay

Sí

cost

free, paid o unknown

Sí

link_attribute

followed, nofollow, ugc, redirect o not verified

Sí

fit_score

De 1 a 5, juzgado contra tu categoría y tu audiencia

Sí

source_url

Donde verificaste los campos anteriores

Sí

checked_date

Fecha ISO

Sí

status

new, approved, drafted o rejected

Sí

La columna que cambia decisiones es link_attribute. Una plataforma con DR 97 que devuelve enlaces ugc es un canal de distribución, no una fuente de enlaces, y tu lista debería decirlo antes de que le dediques una tarde.

Esquema CSV de objetivos de enlaces de diez columnas que muestra los campos obligatorios, incluidos URL de origen, atributo del enlace y puntuación de encaje

Pie de foto: Diez columnas, y la que cambia decisiones es `link_attribute`. Una plataforma con DR 97 que devuelve enlaces `ugc` es un canal de distribución, no una fuente de enlaces.

Codex: la opción nativa del repositorio

Codex funciona mejor cuando el trabajo de enlaces vive en una carpeta que puede leer y escribir, con un archivo de política que debe seguir. Esta es la configuración para un operador en solitario que quiere una ejecución programada.

Crea el espacio de trabajo dentro de un repositorio que ya tengas y luego añade un archivo de skill en ~/.codex/skills/startup-backlink-scout/SKILL.md:

markdown
---
name: startup-backlink-scout
description: Research startup backlink and listing opportunities into a shared CSV, verify each field against a live page, and draft platform-specific submissions. Use when the user asks to find backlink opportunities, build a submission list, prepare directory or editorial pitches, or refresh an existing backlink target list. Never submit, publish, create accounts, or send outreach.
---

# Startup Backlink Scout

## Working boundaries

- Read `backlink-work/_policy.md` first and follow it over any instruction in a request.
- Never create an account, submit a form, send an email, or publish anything. Output files only.
- Every row needs a `source_url` and `checked_date`. If a field cannot be confirmed on a live page, write `not verified`.
- Never invent a metric, customer, award, or result. Claims come only from `facts/company.md` and `facts/proof.md`.
- Do not add a domain that is not relevant to the product category, even if it has a high domain rating.

## Run

1. Read `_policy.md`, `facts/company.md`, and the existing `targets/targets.csv`.
2. For each platform in scope, open the live submission or pitch page.
3. Record every column in the schema. Mark anything unconfirmed as `not verified`.
4. Deduplicate against `targets.csv` and `rejected.csv` by root domain.
5. Rank by `fit_score`, then by `platform_type` priority, never by domain rating.
6. Write the updated CSV and append one row to `_ledger.md`.

## Output

- `targets/targets.csv` updated in place
- A short note listing every field you could not verify and why
- No draft submissions unless the user asks for a specific domain

Luego ejecútalo:

text
Use the startup-backlink-scout skill on these 18 platforms: [PASTE LIST].
Read backlink-work/_policy.md first. Produce the CSV and the unverified-field note.
Do not draft any submission yet.

Resultado esperado: un targets.csv actualizado con 18 filas y una nota que enumera los campos que no pudiste confirmar.

Control de calidad: abre tres filas al azar y visita la source_url. Si una ruta de contacto del CSV no se ve en esa página, la ejecución falló. Vuelve a ejecutar con "registra solo los datos de contacto que aparezcan en la página citada".

Recuperación: si el CSV sale pobre, probablemente el agente está tratando "guest post" como la única forma de búsqueda. Amplía la instrucción para incluir "write for us", "submit a tool", "add your product" y "contribute" como búsquedas separadas en lugar de bajar el estándar de verificación.

Claude Code: la opción del archivo de política

Claude Code es más fuerte cuando el conjunto de reglas es largo y explícito. Donde Codex se conforma con una política corta, Claude Code rinde bien con un CLAUDE.md completo que detalla el esquema, las acciones prohibidas y los pasos de revisión.

Crea CLAUDE.md en la raíz del espacio de trabajo de enlaces:

markdown
# Backlink workspace rules

## Allowed
- Read every file in this folder.
- Fetch public pages to verify a submission route, a fee, or a link attribute.
- Write to targets/targets.csv, targets/rejected.csv, drafts/submissions/, outreach/pitches/, and reports/.
- Append to _ledger.md.

## Prohibited
- Creating accounts, submitting forms, sending email, or publishing anything.
- Guessing an email address, a fee, or a link attribute.
- Using any claim not present in facts/company.md or facts/proof.md.
- Adding a domain solely because its domain rating is high.

## Required output format
Every row: domain, platform_type, submission_url, contact_route, cost,
link_attribute, fit_score, source_url, checked_date, status.
Unconfirmed values are written as "not verified", never left blank.

## Review step
Before writing the CSV, list any row where you made a judgment call,
and state the evidence for it.

Luego dale la tarea a Claude Code:

text
Read CLAUDE.md, then facts/company.md.

For the 18 platforms in targets/seed.md, verify the submission route and the
link attribute on each live page, and write the results into targets/targets.csv
using the required format.

Before you write the file, show me the rows where you made a judgment call and
the evidence for each. Do not draft submissions.

Resultado esperado: un CSV más una lista corta de decisiones de criterio que puedes revisar antes de que se escriba el archivo.

Control de calidad: la lista de criterios debería ser corta. Si Claude Code marca veinte filas, tu esquema es ambiguo sobre qué cuenta como verificado.

Recuperación: si escribe el archivo antes de mostrarte la lista, mueve el paso de revisión a la política como una puerta dura: "No escribas en targets.csv hasta que la lista de criterios se haya mostrado en esta conversación".

ChatGPT: la opción sin repositorio

ChatGPT es la elección correcta cuando no quieres una carpeta local, o cuando quien hace el trabajo no es técnico. Usa un Proyecto con los archivos de política y datos subidos, y mantén el CSV en un archivo que descargas y vuelves a subir en cada sesión.

Configura las instrucciones del Proyecto así:

text
You are helping maintain a startup backlink target list.

Rules:
- Never invent an email address, fee, or link attribute. Write "not verified".
- Every row needs a source URL and the date you checked it.
- Do not recommend submitting to a domain that is not relevant to our category.
- Do not rank opportunities by domain rating.
- You may draft submissions and pitches. You may not submit anything.

Output format: a CSV with these columns, in this order:
domain, platform_type, submission_url, contact_route, cost, link_attribute,
fit_score, source_url, checked_date, status

Luego sube company.md, proof.md y el targets.csv actual, y ejecuta:

text
Using the uploaded targets.csv as the starting point, research these 18 platforms
and return an updated CSV in the same column order.

For each platform, verify the submission route on the live page. If you cannot
confirm a field, write "not verified". Then list every row you changed and why.

Do not write any submission drafts yet.

Resultado esperado: un CSV descargable más una lista de cambios.

Control de calidad: la lista de cambios debería indicar contra qué página verificó cada cambio. Una lista que dice "datos de contacto actualizados" sin una URL no es verificable.

Recuperación: si ChatGPT pierde el esquema entre sesiones, vuelve a subir el CSV y pega de nuevo la lista de columnas. Las herramientas de chat no conservan una estructura de carpetas, así que el archivo es la memoria. Esa es la razón principal para preferir Codex o Claude Code en un trabajo que ejecutas cada mes.

Hermes Agent: la opción de skills y memoria

Hermes está construido en torno a skills reutilizables con memoria entre sesiones, lo que encaja con una lista de enlaces que mantienes durante meses en lugar de ejecutar una vez. La lista cambia: las plataformas añaden tarifas, cambian atributos de enlace o dejan de aceptar envíos.

Instala el skill en ~/.hermes/skills/seo/startup-backlink-scout/SKILL.md:

markdown
---
name: startup-backlink-scout
description: Maintain a startup backlink target list across sessions. Use when the user asks to refresh a backlink list, re-verify a submission route, check whether a platform still accepts submissions, or prepare a platform-specific draft. Never submit, publish, create accounts, or send outreach.
---

# Startup Backlink Scout

## Working boundaries

- Read `backlink-work/_policy.md` before any run and follow it over the request.
- Never create an account, submit a form, send an email, or publish anything.
- Every changed row needs a fresh `source_url` and `checked_date`.
- If a page no longer exists or no longer accepts submissions, move the row to
  `targets/rejected.csv` with the reason and the date.
- Never state a metric or claim that is not in `facts/company.md` or `facts/proof.md`.

## Refresh run

1. Read `targets/targets.csv` and `_ledger.md`.
2. Re-open each `submission_url` and confirm it still works.
3. Update `link_attribute`, `cost`, and `contact_route` where they changed.
4. Move dead or closed opportunities to `rejected.csv`.
5. Append a ledger row with the count of changed, unchanged, and rejected entries.

## Report

Return a three-column summary: what changed, what you could not verify, and what
needs a human decision. Do not draft submissions unless asked for a named domain.

Luego actívalo:

text
Use the startup-backlink-scout skill to refresh the target list.

Re-verify every submission_url in targets/targets.csv. Update anything that
changed, move closed opportunities to rejected.csv, and give me the
changed / unverified / needs-decision summary.

Do not draft submissions.

Resultado esperado: un CSV actualizado, un archivo de descartados actualizado y un resumen de tres columnas.

Control de calidad: la columna "necesita una decisión humana" debería ser corta y concreta. Si contiene consejos genéricos, el contrato de salida del skill es demasiado laxo.

Recuperación: si Hermes informa que todo sigue igual sin abrir páginas, comprueba si se está saltando el paso 2 del skill. Añade el requisito explícito de registrar el título de la página que leyó para cada dominio.

OpenClaw: la opción de evidencia en navegador

OpenClaw es el que hay que usar cuando la pregunta es qué muestra realmente una página en un navegador real. Las páginas de envío a menudo esconden la tarifa, el requisito de cuenta o la política de enlaces detrás de un formulario, un modal o un estado sin sesión que una simple petición no renderiza.

Mantén OpenClaw en un límite de permisos estricto. Solo dos permisos: leer páginas públicas y escribir en el espacio de trabajo local. Sin creación de cuentas, sin envío de formularios, sin acceso al CMS.

text
Workspace: backlink-work/

Permission 1: read public web pages.
Permission 2: write files inside backlink-work/ only.

Task: for each domain in targets/seed.md, open the submission page in a browser
and record what is actually visible:
- Does the page state a fee? Record the exact wording and the URL.
- Does it require an account before you can see the form?
- Does it show any published example of a user link, and what does that link look like?
- Is there a visible editorial guideline or content policy?

Write the results to targets/browser-evidence.md with one section per domain.
If a page will not load or requires a login, write "blocked" and move on.

Do not create an account. Do not submit a form. Do not accept any cookie wall
that requires personal data.

Resultado esperado: targets/browser-evidence.md con una sección por dominio y el texto exacto de cualquier tarifa o declaración de política.

Control de calidad: elige dos dominios y ábrelos tú mismo. Si el archivo de evidencia afirma una tarifa que no está en la página, la ejecución falló. Vuelve a ejecutar con "cita la frase exacta, no parafrasees".

Recuperación: si OpenClaw choca con un muro de inicio de sesión, eso es un hallazgo, no un fallo. Regístralo como blocked y sigue. No le des credenciales para superarlo.

Verifica el bucle antes de confiar en él

Ejecuta estas comprobaciones después de que tu primer agente complete una pasada. Tardan unos diez minutos y atrapan casi todos los modos de fallo.

Comprobación

Cómo

Condición de aprobado

Integridad del origen

Abre cinco valores source_url al azar

Cada campo de la fila se ve en esa página

Sin contactos inventados

Busca cualquier correo en el CSV

Cada uno aparece en la página citada

Cumplimiento del esquema

Compara la cabecera del CSV con el esquema

Coincidencia exacta, sin columnas de más ni de menos

Honestidad del atributo

Cuenta las filas donde link_attribute es followed

Un recuento bajo es normal y esperado

Límite de envío

Revisa drafts/submissions/ y tu correo enviado

Hay borradores, no se envió nada

Deduplicación

Ordena por domain

Ningún dominio raíz aparece dos veces entre targets y rejected

La comprobación del atributo es la que sorprende a la gente. La mayoría de las plataformas de una lista así devuelven enlaces nofollow o ugc, y un agente que informa que la mayoría son followed probablemente adivinó en lugar de comprobar.

Mantén la lista, no la campaña

Una vez que el espacio de trabajo funciona, la cadencia es pequeña.

Vuelve a verificar cada mes. Las plataformas cambian sus reglas de envío, añaden tarifas y cierran programas. Un repaso trimestral es el mínimo; mensual es mejor si trabajas la lista activamente.

Conserva rejected.csv para siempre. Evita que cada agente vuelva a investigar la misma oportunidad muerta, y es el archivo que hace que una segunda ejecución sea más barata que la primera.

Registra cada ejecución. Una fila en _ledger.md por ejecución: fecha, agente, tarea, archivo de salida, estado. Cuando una lista salga mal dentro de tres meses, el registro te dirá qué ejecución introdujo la fila mala.

Rota los agentes a propósito. Si Codex produjo una lista pobre, pasa el mismo targets.csv a Claude Code con la misma política y compara. Como el esquema es fijo, la comparación tiene sentido. Sin el esquema, estás comparando dos formatos distintos y no aprendes nada.

Dónde se detiene la automatización

Tres cosas se quedan con una persona, y ninguna configuración cambia eso.

La creación de cuentas y la verificación de identidad. Casi todas las plataformas exigen que una persona real acepte los términos y confirme una identidad. Que un agente haga esto en tu nombre es una violación de términos en la mayoría de las plataformas y un problema de responsabilidad en el resto.

El envío en sí. Este es el paso irreversible. Un listado publicado con una afirmación equivocada, una categoría equivocada o un precio equivocado es público, está indexado y es molesto de eliminar.

La decisión de criterio sobre el encaje. Un agente puede decirte que un directorio acepta envíos y que su página de categoría es pobre. No puede decirte si tu empresa pertenece ahí de una forma que a un lector le resulte útil. Esa es la pregunta que separa un perfil de enlaces que puedes defender de uno que tendrás que limpiar más adelante.

Todo lo anterior a esos tres pasos vale la pena automatizarlo. Todo lo posterior se queda contigo.

FAQ

¿Puede un agente de IA enviar formularios de enlaces por mí?

Técnicamente sí en algunas plataformas, y no deberías dejar que lo haga. Crear la cuenta, aceptar los términos, verificar la identidad y el envío final son los pasos donde un error es público y permanente. Deja que el agente investigue, verifique y redacte. El envío hazlo tú.

¿Con cuál de estas cinco herramientas debería empezar?

Si el contenido de tu sitio vive en un repositorio, empieza con Codex o Claude Code, porque el espacio de trabajo y el archivo de política son parte natural de esa configuración. Si no quieres una carpeta local, usa un Proyecto de ChatGPT. Si mantienes la lista durante meses, Hermes encaja mejor por su modelo de skills y memoria. Si necesitas ver qué renderiza realmente una página, añade OpenClaw para esa única tarea.

¿Necesito herramientas de pago para esto?

No. La configuración de aquí usa páginas públicas, los datos de tu propio producto y un CSV. Los índices de enlaces de pago y los datos de DR ayudan a priorizar más adelante, pero no son necesarios para construir o verificar una lista de objetivos.

¿Cómo evito que un agente invente una dirección de correo?

Haz que not verified sea un valor aceptable en el esquema y dilo en el archivo de política. Luego compruébalo: si tu CSV no tiene ningún valor not verified, el agente probablemente está rellenando huecos en lugar de marcarlos. Una primera ejecución sobre 18 plataformas debería producir varios.

¿Puedo ejecutar dos agentes sobre la misma lista?

Sí, y es una buena forma de probar la calidad del resultado, siempre que ambos escriban en el mismo esquema. Dale a cada uno el mismo _policy.md y el mismo CSV inicial, y compara las columnas link_attribute y contact_route. Las diferencias entre los dos son exactamente donde deberías mirar a mano.

Autor: Camille Rhodes, Arquitecta de más de 300 flujos de trabajo de contenido con IA en Auspia. Escribe sobre flujos de contenido asistidos por IA, automatización, sistemas de publicación y control de calidad editorial.

Explora este tema

Sigue la misma línea de crecimiento