{"id":51175478,"url":"https://github.com/fcancela/compliance-uy","last_synced_at":"2026-06-27T03:30:40.311Z","repository":{"id":366904325,"uuid":"1278413239","full_name":"fcancela/compliance-uy","owner":"fcancela","description":"Cumplimiento de datos para tu SaaS uruguayo, desde la terminal — skill de Claude Code (Ley 18.331 + Ley 19.574)","archived":false,"fork":false,"pushed_at":"2026-06-23T19:28:32.000Z","size":268,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-23T21:11:52.069Z","etag":null,"topics":["aml","claude-code","compliance","data-protection","gdpr","ley-18331","privacy","skill","uruguay"],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fcancela.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-23T19:08:55.000Z","updated_at":"2026-06-23T19:28:36.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/fcancela/compliance-uy","commit_stats":null,"previous_names":["fcancela/compliance-uy"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/fcancela/compliance-uy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcancela%2Fcompliance-uy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcancela%2Fcompliance-uy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcancela%2Fcompliance-uy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcancela%2Fcompliance-uy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fcancela","download_url":"https://codeload.github.com/fcancela/compliance-uy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcancela%2Fcompliance-uy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34840899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-27T02:00:06.362Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aml","claude-code","compliance","data-protection","gdpr","ley-18331","privacy","skill","uruguay"],"created_at":"2026-06-27T03:30:39.215Z","updated_at":"2026-06-27T03:30:40.305Z","avatar_url":"https://github.com/fcancela.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"assets/hero.png\" alt=\"compliance-uy\" width=\"100%\"\u003e\n\n# compliance-uy\n\n### Cumplimiento de datos para tu SaaS uruguayo, desde la terminal\n\nUna skill de [Claude Code](https://claude.ai/code) que lee tu código, arma los documentos de\ncumplimiento y te deja listo para cumplir **sin abogado**. Cada conclusión apunta al artículo de la ley\nque la respalda; el abogado queda como un plus opcional, no como requisito para partir.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n![Status](https://img.shields.io/badge/status-alpha-orange)\n![Claude Code](https://img.shields.io/badge/Claude%20Code-skill-8A2BE2)\n![Uruguay](https://img.shields.io/badge/%F0%9F%87%BA%F0%9F%87%BE-Ley%2018.331%20%2B%2019.574-0038a8)\n\n\u003c/div\u003e\n\n---\n\n## Por qué\n\nLa Ley 18.331 de protección de datos **rige desde 2008** y casi nadie la cumple del todo: la\n**inscripción de las bases en la URCDP** (Art. 29) se ignora seguido, el reglamento moderno (Decreto\n64/020) agregó **brechas en 72 horas**, **DPO**, **evaluación de impacto** y **responsabilidad proactiva**,\ny la URCDP puede aplicar **multas de hasta 500.000 UI** más suspensión o clausura de la base. Para los\n**sujetos obligados**, la Ley 19.574 de prevención de lavado suma otro frente.\n\ncompliance-uy hace el trabajo completo en una corrida: el inventario, los documentos y el diagnóstico\ntécnico. La idea es que un founder arme su cumplimiento solo, sin equipo legal ni un estudio cobrándole\npor el trabajo mecánico.\n\n## Qué hace\n\nCorrés `/compliance-uy` sobre tu repo y:\n\n1. Te pregunta lo básico: empresa, si sos responsable o encargado de los datos, y qué marcos auditar.\n2. Lee el código y mapea qué datos personales guardás y a qué proveedores se van (las transferencias\n   fuera de Uruguay).\n3. Evalúa los controles con un catálogo que puntúa varias leyes a la vez.\n4. Arma los documentos: RAT, política de privacidad, DPA, plan de brechas, inscripción de bases en la\n   URCDP, evaluación de impacto y —si sos sujeto obligado— el programa de prevención de LA/FT.\n5. Guarda el estado en `.compliance/` y lo versiona, así ves qué mejora o qué se rompe entre corridas.\n6. Te explica cada decisión con su artículo y trae guías para cuando pase algo: un derecho de acceso, una\n   brecha, una inspección.\n7. **Construye las remediaciones**: como corre en Claude Code, puede implementar los arreglos (MFA,\n   cifrado en reposo, audit log, endpoints de acceso/supresión, retención) y **montar el monitoreo**\n   (secret scanning, HIBP, alertas), siguiendo recetas con librerías verificadas. Ver `references/build/`.\n\n## Marcos cubiertos\n\n| Pack | Ley | Estado | Cubre |\n|------|-----|--------|-------|\n| `ley-18331` | Protección de Datos Personales (+ Ley 19.670 / Decreto 64/020) | **ya vigente** | consentimiento, derechos de acceso/rectificación/supresión, RAT, DPA, seguridad, brechas (72h), DPO, DPIA, inscripción URCDP, transferencias |\n| `ley-19574` | Prevención de LA/FT (sujetos obligados) | **ya vigente** | debida diligencia, beneficiario final, PEP, ROS, oficial de cumplimiento, matriz de riesgos |\n| _próximos_ | RGPD · ISO 27001 · SOC 2 | extensible | agregar un marco es agregar un `pack` |\n\n## Quickstart\n\n```bash\n# 1. Instalar (la skill es este repo)\ngit clone https://github.com/compliance-uy/compliance-uy ~/.claude/skills/compliance-uy\n\n# 2. En Claude Code, dentro del repo a auditar:\n/compliance-uy\n```\n\n## Ejemplo de output\n\nLa skill escribe en el repo auditado un estado vivo y versionable:\n\n```text\n.compliance/\n├── state.json        # postura por marco + estado de cada control (con evidencia archivo:línea)\n├── RESUMEN.md        # brechas priorizadas + qué resolviste + diff vs la corrida anterior\n├── INSTRUCTIVO.md    # guías: habeas data · brecha 72h · inspección URCDP · ROS · calendario\n└── docs/\n    ├── 18331-rat.md  18331-politica-privacidad.md  18331-dpa.md  18331-plan-respuesta-brechas.md\n    │   18331-inscripcion-bases-urcdp.md  18331-dpia.md\n    └── 19574-programa-prevencion-laft.md  19574-procedimiento-debida-diligencia.md  19574-matriz-riesgos.md\n```\n\nCada corrida es un commit, así que git te queda como historial: ves cuándo subió o bajó tu postura y\nquién cambió qué.\n\n## Respaldado en la ley\n\nEl contenido legal se contrasta contra el texto oficial que viene en [`sources/`](sources/): el texto\nconsolidado de **IMPO** (Ley 18.331, Decretos 414/009 y 64/020, Ley 19.670, Ley 19.574, Decreto 379/018),\ncon [`FUENTES.md`](sources/FUENTES.md) (URL, SHA-256 y el comando para volver a bajarlos). En\n[`mapa-articulos-18331.md`](references/mapa-articulos-18331.md) y\n[`mapa-articulos-19574.md`](references/mapa-articulos-19574.md) cada artículo está chequeado contra el\ntexto, con la línea donde aparece. Lo que no se puede confirmar ahí queda marcado como\n`[verificar contra fuente oficial]`.\n\n\u003e Uruguay tiene **adecuación de la UE** (Decisión 2012/484/UE) y ratificó el **Convenio 108+** del Consejo\n\u003e de Europa: su régimen de datos es de los más sólidos de la región.\n\n## Estructura\n\n```text\nSKILL.md                          # el motor (multi-pack, se apoya en sources/)\nSECURITY.md                       # cómo maneja tus datos/secretos + reporte de vulnerabilidades + alcance\nreferences/\n  controls.md                     # catálogo de controles + crosswalk (un control cubre varias leyes)\n  output-model.md                 # formato del estado .compliance/\n  cuando-acudir-a-abogado.md      # por qué el abogado es opcional (lo armas vos)\n  instructivo-situaciones.md      # guías operativas\n  mapa-articulos-18331.md         # artículos de datos chequeados contra el texto oficial\n  mapa-articulos-19574.md         # artículos de LA/FT chequeados contra el texto oficial\n  build/                          # recetas de implementación (MFA, cifrado, audit log, derechos, monitoreo)\npacks/\n  ley-18331/  ley-19574/          # obligaciones + plantillas por marco\nsources/                          # textos legales oficiales (IMPO) + FUENTES.md (reproducible)\n```\n\n## Roadmap\n\n- [ ] Completar el mapa de artículos (habeas data, transferencias, reformas recientes de la 19.574).\n- [ ] Packs nuevos: RGPD, ISO 27001, SOC 2.\n- [ ] Mejor detección de cambios entre corridas.\n- [ ] Revisión legal opcional de las plantillas (un plus, no un requisito).\n\n## Contribuir\n\nSe agradecen issues y PRs, sobre todo packs nuevos, correcciones de artículos chequeadas contra el\ntexto oficial, y mejoras a las guías. Leé [`CONTRIBUTING.md`](CONTRIBUTING.md).\n\n## Qué no hace\n\n- **Auditar lo que no está en el código.** La privacidad **no vive solo en el repo**: también fluye por\n  correo, WhatsApp, CRM, planillas, herramientas SaaS, formularios en papel y procesos manuales. La skill\n  escanea el código y te lo recuerda, pero esos canales quedan a cargo del responsable (ver [`SECURITY.md`](SECURITY.md)).\n- **Monitoreo / detección de filtraciones en tiempo real** (DLP, alertas 24/7): es un servicio corriendo\n  siempre, no una skill on-demand. La skill prepara el plan de respuesta y puede configurar alertas sobre\n  el audit log, pero la vigilancia en vivo es otra categoría.\n- **Ser el DPO ni generar cultura interna.** El delegado de protección de datos (cuando es obligatorio) es\n  **una persona**, no la skill: ayudamos a designarlo y documentarlo, pero el rol lo sostiene un humano.\n- **Representarte** ante la URCDP, SENACLAFT o tribunales (eso es de un abogado) ni reemplazar la auditoría\n  independiente del programa de LA/FT donde se exija (la hace un tercero).\n\nNo reemplaza a un abogado ni **garantiza** cumplimiento: te deja **borradores y un diagnóstico** que te\nacercan, te dicen qué falta, y la decisión final (con revisión humana) es tuya.\n\n## Agradecimientos\n\n`compliance-uy` es una adaptación al marco legal uruguayo de\n**[compliance-cl](https://github.com/Lelemon-studio/compliance-cl)**, creado por\n**[Lelemon Studio](https://github.com/Lelemon-studio)** 🇨🇱. Gracias por abrir el camino, publicarlo open\nsource bajo MIT y por la discusión que generó en la comunidad —de la que salieron varias de las mejoras de\neste repo (manejo de secretos, límites de alcance, claridad sobre el rol del DPO). 🙏\n\nLa arquitectura del motor (packs, controles + crosswalk, estado versionado en `.compliance/`, fuentes\noficiales como verdad) es suya; acá se reescribió el contenido legal para Uruguay (Ley 18.331 + Ley 19.574)\ncontrastándolo contra el texto oficial de IMPO.\n\n## Aviso\n\nEsto no es asesoría legal: un software no asume tu responsabilidad legal, la decisión final es tuya. Te\ndeja listo para cumplir solo. Un abogado es un plus opcional si querés una revisión, y solo es\nimprescindible si te inspeccionan y escala a una disputa (la representación, por ley, la hace un abogado).\nVer [`NOTICE.md`](NOTICE.md).\n\n## Licencia\n\n[MIT](LICENSE) © 2026 compliance-uy contributors\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcancela%2Fcompliance-uy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffcancela%2Fcompliance-uy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcancela%2Fcompliance-uy/lists"}