Semi-automatiza actualizaciones inmobiliarias con Claude Code: CSV y revisión previa
Revisa CSV inmobiliarios, páginas obsoletas, URLs duplicadas, fotos y CTA de consulta antes de publicar.
En una agencia inmobiliaria, el riesgo no es solo publicar tarde. El riesgo serio es dejar activa una propiedad que ya no está disponible o mostrar un precio antiguo. Claude Code debe empezar como revisor previo a publicación: campos CSV, estado, fechas, URLs, fotos y CTA.
Duplicate property pages and copied portal text can weaken trust and search performance. Google’s guide to canonical URLs is the baseline, and people-first content is the editorial direction. For Claude Code permissions, see settings and hooks.
Key Takeaways
- Check CSV fields, publication status, photos, URLs, and inquiry links before writing listing copy.
- Claude Code can flag stale published rows, missing fields, and canonical mismatches.
- Humans verify price, availability, owner data, key notes, and advertising permission.
- Agency pages need local context beyond copied portal text.
- Track stale listings, missed price changes, missing photos, wrong canonicals, and wrong CTA links.
Workflow From CSV To Publication
| Stage | Review target | Stop condition |
|---|---|---|
| CSV received | columns, listing ID, update date | required column missing |
| Data review | price, area, address, station | blank, zero, stale date |
| Image review | exterior, interior, floor plan | missing folder or floor plan |
| SEO review | title, description, canonical | duplicate title or wrong canonical |
| Inquiry review | CTA, form, phone | outdated destination |
This table gives Claude Code a bounded job. It is not asked to sell the property. It is asked to stop rows that are not ready.
Claude Code And Human Review
Claude Code handles repeatable checks: CSV column inventory, stale published rows, missing image notes, duplicate titles, canonical mismatch, and outdated inquiry links. Keep private phone numbers, owner names, key locations, and negotiation notes out of the input.
Humans keep the publication decisions. Price, area, availability, ad permission, and owner approval cannot be guessed. The same rule appears in permission decision logs and safe autonomy ladder.
Three Use Cases
Use case 1: CSV field review
Split columns into required, optional, and forbidden. Required fields include listing ID, status, price, address, station, update date, inquiry destination, and canonical URL. Forbidden fields include owner information, private phone numbers, key notes, and unpublished negotiation notes.
Use case 2: Stale listing detection
Published rows with old update dates should appear in a daily review. This is not for blaming agents. It gives the team a calm list: unpublish, confirm price, add photos, or keep live.
Use case 3: Duplicate URL and canonical cleanup
The same property may appear in station pages, branch pages, campaign pages, and listing pages. Group URLs by listing ID and mark the preferred URL. That helps SEO and also gives sales staff one URL to send.
Copy-Paste Prompt
Act as a listing-operations editor for a small real estate agency.
Create a pre-publication check from a property CSV. Do not invent price, area, owner data, or availability.
Input:
- CSV column names:
- current property page URL:
- inquiry destination:
- conditions for unpublishing:
Return:
1. required, optional, and forbidden CSV fields
2. stop-before-publish rules
3. duplicate URL and canonical checklist
4. missing photo, floor plan, and neighborhood checks
5. inquiry CTA copy
6. final human review table
Working Check
const listings = [
{
id: "A-101",
title: "南向き2LDK 駅徒歩7分",
status: "published",
price: 128000,
address: "東京都サンプル区",
station: "サンプル駅",
updatedAt: "2026-07-19",
canonicalUrl: "/properties/a-101/",
sourceUrl: "/properties/a-101/",
},
{
id: "B-204",
title: "",
status: "published",
price: 0,
address: "東京都サンプル区",
station: "サンプル駅",
updatedAt: "2026-07-10",
canonicalUrl: "/properties/b-204/",
sourceUrl: "/rent/b-204/",
},
];
const today = new Date("2026-07-19");
const required = ["id", "title", "status", "price", "address", "station", "updatedAt", "canonicalUrl"];
const report = listings.map((listing) => {
const missing = required.filter((field) => !listing[field]);
const daysOld = Math.floor((today - new Date(listing.updatedAt)) / 86400000);
return {
id: listing.id,
missing,
stale: listing.status === "published" && daysOld > 5,
canonicalMismatch: listing.canonicalUrl !== listing.sourceUrl,
};
});
const failures = report.filter((row) => row.missing.length || row.stale || row.canonicalMismatch);
if (failures.length) {
console.table(failures);
process.exit(1);
}
console.log("Listing CSV is ready for publication review.");
This script is a small gate. It does not verify the property itself, but it catches missing fields, stale published rows, and canonical mismatch before humans spend time on copy.
Pitfall: Common Mistakes
Pitfall 1: sending internal data to AI. Remove owner names, key notes, private phone numbers, and negotiation memos.
Pitfall 2: writing copy before checking status. A beautiful listing with the wrong price is still a publication failure.
Pitfall 3: copying portal text unchanged. Add local viewing notes, neighborhood context, and inquiry guidance from real agency knowledge.
Pitfall 4: relying on memory for unpublishing. A daily stale listing report is easier than apologizing after inquiry.
ROI Signal
Measure stale listing count, missed price updates, missing photos, canonical mismatches, wrong CTA links, page views, and inquiries. These numbers show whether the publishing workflow is creating trust or creating avoidable support work.
CTA
If your agency has recurring listing update mistakes, bring CSV columns, public URLs, inquiry forms, and unpublish rules to training and consultation. For listing copy, read real estate listing descriptions.
What Happened When I Tried It
I modeled a listing CSV with ID, status, price, address, station, update date, and canonical URL. The Node.js check detected blank title, zero price, stale published rows, and canonical mismatch. The strongest lesson is that Claude Code creates value before copywriting: it stops listings that should not be published yet.
Artículos relacionados
Redactar fichas inmobiliarias con Claude Code: de medio sábado a 10 minutos
Para agentes inmobiliarios: produce fichas de propiedades con Claude Code. Prompt listo para copiar y script de verificación.
Claude Code para administradores de fincas: responder a inquilinos y revisar contratos en menos tiempo
Borradores de respuestas a inquilinos y revisión de contratos de alquiler con Claude Code. Incluye prompts y un script de verificación.
SaaS multi-tenant seguro con Claude Code: RLS, autenticacion, facturacion y logs
Implementa SaaS multi-tenant con Claude Code: tenant_id, RLS, auth, limites de plan, jobs, logs y pruebas.
PDF gratis: cheatsheet de Claude Code
Introduce tu email y descarga una hoja con comandos, hábitos de revisión y flujos seguros.
Cuidamos tus datos y no enviamos spam.
Sobre el autor
Masa
Ingeniero enfocado en workflows prácticos con Claude Code.