@saulwade/swl-ses 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +238 -0
- package/README.md +560 -0
- package/_userland/agentes/.gitkeep +0 -0
- package/_userland/habilidades/.gitkeep +0 -0
- package/agentes/.evolved.json +9 -0
- package/agentes/accesibilidad-wcag-swl.md +692 -0
- package/agentes/arquitecto-swl.md +238 -0
- package/agentes/auto-evolucion-swl.md +854 -0
- package/agentes/backend-api-swl.md +470 -0
- package/agentes/backend-csharp-swl.md +418 -0
- package/agentes/backend-go-swl.md +388 -0
- package/agentes/backend-java-swl.md +279 -0
- package/agentes/backend-node-swl.md +477 -0
- package/agentes/backend-python-swl.md +608 -0
- package/agentes/backend-rust-swl.md +362 -0
- package/agentes/backend-workers-swl.md +480 -0
- package/agentes/cloud-infra-swl.md +485 -0
- package/agentes/consolidador-swl.md +539 -0
- package/agentes/datos-swl.md +584 -0
- package/agentes/depurador-swl.md +349 -0
- package/agentes/devops-ci-swl.md +374 -0
- package/agentes/disenador-ui-swl.md +558 -0
- package/agentes/documentador-swl.md +343 -0
- package/agentes/evals/arquitecto-swl.evals.json +56 -0
- package/agentes/evals/auto-evolucion-swl.evals.json +68 -0
- package/agentes/evals/implementador-swl.evals.json +56 -0
- package/agentes/evals/orquestador-swl.evals.json +60 -0
- package/agentes/evals/perfilador-usuario-swl.evals.json +60 -0
- package/agentes/evals/red-team-swl.evals.json +59 -0
- package/agentes/evals/revisor-codigo-swl.evals.json +59 -0
- package/agentes/frontend-angular-swl.md +627 -0
- package/agentes/frontend-css-swl.md +720 -0
- package/agentes/frontend-react-swl.md +696 -0
- package/agentes/frontend-swl.md +500 -0
- package/agentes/frontend-tailwind-swl.md +830 -0
- package/agentes/implementador-swl.md +328 -0
- package/agentes/investigador-swl.md +430 -0
- package/agentes/investigador-ux-swl.md +500 -0
- package/agentes/llm-apps-swl.md +276 -0
- package/agentes/migrador-swl.md +417 -0
- package/agentes/mobile-android-swl.md +509 -0
- package/agentes/mobile-cross-swl.md +539 -0
- package/agentes/mobile-ios-swl.md +500 -0
- package/agentes/mobile-testing-swl.md +300 -0
- package/agentes/notificador-swl.md +916 -0
- package/agentes/observabilidad-swl.md +436 -0
- package/agentes/orquestador-swl.md +884 -0
- package/agentes/pagos-swl.md +283 -0
- package/agentes/perfilador-usuario-swl.md +306 -0
- package/agentes/planificador-swl.md +402 -0
- package/agentes/producto-prd-swl.md +587 -0
- package/agentes/red-team-swl.md +216 -0
- package/agentes/release-manager-swl.md +568 -0
- package/agentes/rendimiento-swl.md +714 -0
- package/agentes/resolutor-build-swl.md +243 -0
- package/agentes/revisor-angular-swl.md +276 -0
- package/agentes/revisor-codigo-swl.md +348 -0
- package/agentes/revisor-csharp-swl.md +262 -0
- package/agentes/revisor-go-swl.md +257 -0
- package/agentes/revisor-java-swl.md +255 -0
- package/agentes/revisor-kotlin-swl.md +271 -0
- package/agentes/revisor-nextjs-swl.md +279 -0
- package/agentes/revisor-php-swl.md +269 -0
- package/agentes/revisor-react-swl.md +276 -0
- package/agentes/revisor-rust-swl.md +344 -0
- package/agentes/revisor-seguridad-swl.md +390 -0
- package/agentes/revisor-swift-swl.md +266 -0
- package/agentes/revisor-typescript-swl.md +344 -0
- package/agentes/sre-swl.md +265 -0
- package/agentes/tdd-qa-swl.md +354 -0
- package/agentes/ux-disenador-swl.md +501 -0
- package/bin/lib/bot-comandos.js +1030 -0
- package/bin/lib/bot-discovery.js +182 -0
- package/bin/lib/bot-git.js +142 -0
- package/bin/swl-ses.js +325 -0
- package/bin/swl-telegram-bot.js +442 -0
- package/bin/swl-telegram-bot.plist +21 -0
- package/bin/swl-telegram-bot.service +14 -0
- package/comandos/swl/.evolved.json +23 -0
- package/comandos/swl/actualizar.md +174 -0
- package/comandos/swl/adoptar-proyecto.md +207 -0
- package/comandos/swl/aprender.md +701 -0
- package/comandos/swl/auditar-deps.md +134 -0
- package/comandos/swl/autoresearch.md +170 -0
- package/comandos/swl/ayuda.md +224 -0
- package/comandos/swl/brainstorm.md +50 -0
- package/comandos/swl/checkpoint.md +330 -0
- package/comandos/swl/compactar.md +283 -0
- package/comandos/swl/configurar-ci.md +227 -0
- package/comandos/swl/contexto.md +112 -0
- package/comandos/swl/contribuir.md +233 -0
- package/comandos/swl/crear-skill.md +292 -0
- package/comandos/swl/cron.md +196 -0
- package/comandos/swl/dashboard.md +146 -0
- package/comandos/swl/discutir-fase.md +230 -0
- package/comandos/swl/ejecutar-fase.md +135 -0
- package/comandos/swl/evaluar-skill.md +487 -0
- package/comandos/swl/evolucion-estado.md +142 -0
- package/comandos/swl/evolucionar.md +259 -0
- package/comandos/swl/exportar-vault.md +189 -0
- package/comandos/swl/gateway.md +158 -0
- package/comandos/swl/inbox.md +116 -0
- package/comandos/swl/instalar.md +220 -0
- package/comandos/swl/instintos.md +86 -0
- package/comandos/swl/mapear-codebase.md +312 -0
- package/comandos/swl/mcp-status.md +175 -0
- package/comandos/swl/metricas.md +270 -0
- package/comandos/swl/modelo.md +102 -0
- package/comandos/swl/notificaciones.md +396 -0
- package/comandos/swl/nuevo-proyecto.md +154 -0
- package/comandos/swl/planear-fase.md +221 -0
- package/comandos/swl/plugins.md +256 -0
- package/comandos/swl/reflect-skills.md +125 -0
- package/comandos/swl/release.md +217 -0
- package/comandos/swl/revisar-impacto.md +206 -0
- package/comandos/swl/revisar.md +330 -0
- package/comandos/swl/salud.md +363 -0
- package/comandos/swl/sesiones.md +200 -0
- package/comandos/swl/skill-search.md +113 -0
- package/comandos/swl/verificar.md +585 -0
- package/comandos/swl/wiki.md +620 -0
- package/contextos/dev.md +32 -0
- package/contextos/research.md +30 -0
- package/contextos/review.md +31 -0
- package/habilidades/accesibilidad-a11y/SKILL.md +201 -0
- package/habilidades/accesibilidad-a11y/evals/evals.json +56 -0
- package/habilidades/accesibilidad-a11y/recursos/ejemplos-y-checklist-completo.md +441 -0
- package/habilidades/agent-browser/SKILL.md +218 -0
- package/habilidades/agentes-como-servicio/SKILL.md +218 -0
- package/habilidades/ai-runtime-security/SKILL.md +273 -0
- package/habilidades/angular-avanzado/SKILL.md +164 -0
- package/habilidades/angular-avanzado/recursos/ejemplos-avanzados.md +219 -0
- package/habilidades/angular-moderno/SKILL.md +186 -0
- package/habilidades/angular-moderno/evals/evals.json +45 -0
- package/habilidades/angular-moderno/recursos/ejemplos-avanzados.md +106 -0
- package/habilidades/api-rest-diseno/SKILL.md +191 -0
- package/habilidades/api-rest-diseno/recursos/openapi-template.yaml +506 -0
- package/habilidades/api-rest-diseno/recursos/referencia-api.md +140 -0
- package/habilidades/aprendizaje-continuo/SKILL.md +151 -0
- package/habilidades/aprendizaje-continuo/evals/evals.json +53 -0
- package/habilidades/aprendizaje-continuo/recursos/referencia-instintos.md +290 -0
- package/habilidades/async-python/SKILL.md +149 -0
- package/habilidades/async-python/evals/evals.json +47 -0
- package/habilidades/async-python/recursos/patrones-y-ejemplos-completos.md +292 -0
- package/habilidades/auth-patrones/.evolved.json +9 -0
- package/habilidades/auth-patrones/SKILL.md +413 -0
- package/habilidades/auth-patrones/recursos/implementaciones-completas.md +229 -0
- package/habilidades/auto-evolucion-protocolo/SKILL.md +276 -0
- package/habilidades/auto-evolucion-protocolo/evals/evals.json +55 -0
- package/habilidades/auto-evolucion-protocolo/recursos/referencia-completa.md +145 -0
- package/habilidades/autoresearch/SKILL.md +268 -0
- package/habilidades/autoresearch/evals/evals.json +41 -0
- package/habilidades/autoresearch/recursos/checklist-template.md +191 -0
- package/habilidades/autoresearch/scripts/calcular-score.js +88 -0
- package/habilidades/azure-cloud/SKILL.md +308 -0
- package/habilidades/azure-cloud/recursos/aks.md +327 -0
- package/habilidades/backend-mcp-servidor/SKILL.md +270 -0
- package/habilidades/backend-production-resilience/SKILL.md +288 -0
- package/habilidades/brainstorming/SKILL.md +295 -0
- package/habilidades/brainstorming/recursos/componentes-html.md +247 -0
- package/habilidades/build-errors-cpp/SKILL.md +270 -0
- package/habilidades/build-errors-csharp/SKILL.md +265 -0
- package/habilidades/build-errors-go/SKILL.md +306 -0
- package/habilidades/build-errors-java/SKILL.md +278 -0
- package/habilidades/build-errors-kotlin/SKILL.md +303 -0
- package/habilidades/build-errors-nextjs/SKILL.md +312 -0
- package/habilidades/build-errors-php/SKILL.md +270 -0
- package/habilidades/build-errors-python/SKILL.md +292 -0
- package/habilidades/build-errors-rust/SKILL.md +284 -0
- package/habilidades/build-errors-swift/SKILL.md +272 -0
- package/habilidades/build-errors-typescript/SKILL.md +369 -0
- package/habilidades/checklist-calidad/SKILL.md +271 -0
- package/habilidades/checklist-calidad/recursos/quality-report-template.md +148 -0
- package/habilidades/checklist-seguridad/SKILL.md +285 -0
- package/habilidades/checkpoints-verificacion/SKILL.md +298 -0
- package/habilidades/checkpoints-verificacion/recursos/checkpoint-templates.md +360 -0
- package/habilidades/ci-cd-pipelines/SKILL.md +157 -0
- package/habilidades/ci-cd-pipelines/recursos/github-actions-template.yaml +403 -0
- package/habilidades/ci-cd-pipelines/recursos/pipelines-completos.md +487 -0
- package/habilidades/cloud-aws/SKILL.md +142 -0
- package/habilidades/cloud-aws/recursos/servicios-aws-referencia.md +321 -0
- package/habilidades/compactacion-contexto/SKILL.md +247 -0
- package/habilidades/contenedores-docker/SKILL.md +137 -0
- package/habilidades/contenedores-docker/recursos/dockerfile-template.dockerfile +160 -0
- package/habilidades/contenedores-docker/recursos/ejemplos-y-configuraciones.md +327 -0
- package/habilidades/context-builder/SKILL.md +170 -0
- package/habilidades/control-profundidad/SKILL.md +128 -0
- package/habilidades/csharp-experto/SKILL.md +322 -0
- package/habilidades/csharp-patrones/SKILL.md +316 -0
- package/habilidades/csharp-testing/SKILL.md +286 -0
- package/habilidades/css-moderno/SKILL.md +166 -0
- package/habilidades/css-moderno/evals/evals.json +43 -0
- package/habilidades/css-moderno/recursos/ejemplos-y-patrones-completos.md +337 -0
- package/habilidades/datos-etl/SKILL.md +129 -0
- package/habilidades/datos-etl/recursos/implementaciones-completas.md +322 -0
- package/habilidades/dbml-experto/SKILL.md +339 -0
- package/habilidades/dbml-experto/evals/evals.json +56 -0
- package/habilidades/dependencias-auditoria/SKILL.md +320 -0
- package/habilidades/deprecacion-migracion/SKILL.md +169 -0
- package/habilidades/deprecacion-migracion/recursos/implementaciones-completas.md +220 -0
- package/habilidades/design-tokens/SKILL.md +158 -0
- package/habilidades/design-tokens/recursos/tokens-y-configuracion.md +363 -0
- package/habilidades/devsecops-pipeline-security/SKILL.md +309 -0
- package/habilidades/diagrama-arquitectura/SKILL.md +165 -0
- package/habilidades/diagrama-arquitectura/assets/template.html +276 -0
- package/habilidades/discutir-fase/SKILL.md +188 -0
- package/habilidades/diseno-herramientas-agente/SKILL.md +199 -0
- package/habilidades/diseno-responsivo/SKILL.md +186 -0
- package/habilidades/diseno-responsivo/recursos/ejemplos-layouts.md +156 -0
- package/habilidades/django-experto/SKILL.md +205 -0
- package/habilidades/django-experto/recursos/async-django.md +390 -0
- package/habilidades/django-experto/recursos/drf-patrones.md +438 -0
- package/habilidades/django-experto/recursos/orm-avanzado.md +382 -0
- package/habilidades/django-experto/recursos/referencia-completa.md +188 -0
- package/habilidades/django-experto/recursos/testing-django.md +415 -0
- package/habilidades/doc-sync/SKILL.md +280 -0
- package/habilidades/drift-detection/SKILL.md +179 -0
- package/habilidades/ejecutar-fase/SKILL.md +468 -0
- package/habilidades/estilo-sin-ai-isms/SKILL.md +775 -0
- package/habilidades/estilo-sin-ai-isms/evals/evals.json +63 -0
- package/habilidades/estilo-sin-ai-isms/scripts/detectar_aiisms.py +500 -0
- package/habilidades/estructura-proyecto-claude/SKILL.md +215 -0
- package/habilidades/estructura-proyecto-claude/recursos/claude-md-template.md +261 -0
- package/habilidades/estructura-proyecto-claude/recursos/configuracion-y-extensiones.md +176 -0
- package/habilidades/estructura-proyecto-claude/recursos/frontmatter-y-hooks-referencia.md +289 -0
- package/habilidades/estructura-proyecto-claude/recursos/mcp-json-template.json +77 -0
- package/habilidades/estructura-proyecto-claude/recursos/variantes-por-stack.md +177 -0
- package/habilidades/evaluacion-agentes/SKILL.md +314 -0
- package/habilidades/event-driven/SKILL.md +153 -0
- package/habilidades/event-driven/recursos/implementaciones-completas.md +423 -0
- package/habilidades/extraccion-documentos/SKILL.md +221 -0
- package/habilidades/extractor-de-aprendizajes/.evolved.json +9 -0
- package/habilidades/extractor-de-aprendizajes/SKILL.md +311 -0
- package/habilidades/extractor-de-aprendizajes/evals/evals.json +55 -0
- package/habilidades/fastapi-experto/SKILL.md +221 -0
- package/habilidades/fastapi-experto/recursos/async-patterns.md +438 -0
- package/habilidades/fastapi-experto/recursos/dependency-injection.md +330 -0
- package/habilidades/fastapi-experto/recursos/referencia-completa.md +79 -0
- package/habilidades/fastapi-experto/recursos/testing-httpx.md +420 -0
- package/habilidades/filament-admin/SKILL.md +290 -0
- package/habilidades/frontend-avanzado/SKILL.md +257 -0
- package/habilidades/frontend-avanzado/recursos/apis-nativas-ejemplos.md +341 -0
- package/habilidades/gcp-cloud/SKILL.md +260 -0
- package/habilidades/gcp-cloud/recursos/gke.md +234 -0
- package/habilidades/gcp-cloud/recursos/terraform-gcp.md +307 -0
- package/habilidades/generacion-mermaid/SKILL.md +229 -0
- package/habilidades/git-worktrees-paralelo/SKILL.md +270 -0
- package/habilidades/go-experto/SKILL.md +305 -0
- package/habilidades/go-patrones/SKILL.md +299 -0
- package/habilidades/go-testing/SKILL.md +291 -0
- package/habilidades/graphql-experto/SKILL.md +323 -0
- package/habilidades/guardrail-semantico/SKILL.md +282 -0
- package/habilidades/harness-claude-code/SKILL.md +299 -0
- package/habilidades/iam-secretos/SKILL.md +265 -0
- package/habilidades/iam-secretos/recursos/implementaciones-completas.md +356 -0
- package/habilidades/infra-github-actions/SKILL.md +166 -0
- package/habilidades/instalar-sistema/.evolved.json +9 -0
- package/habilidades/instalar-sistema/SKILL.md +221 -0
- package/habilidades/java-experto/SKILL.md +290 -0
- package/habilidades/java-patrones/SKILL.md +275 -0
- package/habilidades/java-testing/SKILL.md +288 -0
- package/habilidades/kotlin-compose/SKILL.md +278 -0
- package/habilidades/kotlin-compose/recursos/animaciones-performance.md +93 -0
- package/habilidades/kotlin-experto/SKILL.md +318 -0
- package/habilidades/kotlin-testing/SKILL.md +267 -0
- package/habilidades/kotlin-testing/recursos/testing-avanzado.md +74 -0
- package/habilidades/kubernetes-orquestacion/SKILL.md +152 -0
- package/habilidades/kubernetes-orquestacion/recursos/manifiestos-completos.md +452 -0
- package/habilidades/langchain-langraph/SKILL.md +386 -0
- package/habilidades/langchain-langraph/recursos/evaluacion-rag.md +321 -0
- package/habilidades/langchain-langraph/recursos/rag-maturity-model.md +225 -0
- package/habilidades/langchain-langraph/recursos/vectorstores.md +306 -0
- package/habilidades/legacy-code-rescue/SKILL.md +267 -0
- package/habilidades/likec4-experto/SKILL.md +412 -0
- package/habilidades/likec4-experto/evals/evals.json +69 -0
- package/habilidades/manejo-errores/.evolved.json +9 -0
- package/habilidades/manejo-errores/SKILL.md +407 -0
- package/habilidades/manejo-errores/recursos/implementaciones-completas.md +248 -0
- package/habilidades/mapear-codebase/SKILL.md +275 -0
- package/habilidades/memoria-busqueda/SKILL.md +194 -0
- package/habilidades/memoria-busqueda/evals/evals.json +44 -0
- package/habilidades/meta-skills-estandar/SKILL.md +298 -0
- package/habilidades/meta-skills-estandar/recursos/anti-patrones-y-leyes.md +205 -0
- package/habilidades/meta-skills-estandar/recursos/frameworks-seguridad.md +107 -0
- package/habilidades/meta-skills-estandar/recursos/idiomas-framework.md +60 -0
- package/habilidades/meta-skills-estandar/recursos/skills-as-agents.md +163 -0
- package/habilidades/microservicios/SKILL.md +155 -0
- package/habilidades/microservicios/recursos/patrones-y-ejemplos-completos.md +325 -0
- package/habilidades/mobile-flutter/SKILL.md +199 -0
- package/habilidades/mobile-flutter/recursos/ejemplos-completos.md +319 -0
- package/habilidades/mobile-react-native/SKILL.md +176 -0
- package/habilidades/mobile-react-native/recursos/ejemplos-completos.md +216 -0
- package/habilidades/mongodb-experto/SKILL.md +302 -0
- package/habilidades/monitoring-alertas/SKILL.md +201 -0
- package/habilidades/monitoring-alertas/recursos/instrumentacion-y-alertas.md +301 -0
- package/habilidades/nestjs-experto/SKILL.md +307 -0
- package/habilidades/nestjs-experto/recursos/guards-interceptors.md +339 -0
- package/habilidades/nestjs-experto/recursos/modulos-di.md +287 -0
- package/habilidades/nestjs-experto/recursos/testing-nestjs.md +354 -0
- package/habilidades/nextjs-experto/SKILL.md +335 -0
- package/habilidades/nextjs-patrones/SKILL.md +303 -0
- package/habilidades/nextjs-testing/SKILL.md +331 -0
- package/habilidades/node-experto/.evolved.json +9 -0
- package/habilidades/node-experto/SKILL.md +266 -0
- package/habilidades/node-experto/recursos/patrones-completos.md +283 -0
- package/habilidades/notificaciones-multicanal/SKILL.md +159 -0
- package/habilidades/notificaciones-multicanal/recursos/config-template.json +115 -0
- package/habilidades/notificaciones-multicanal/recursos/configuracion-y-templates.md +303 -0
- package/habilidades/nuevo-proyecto/SKILL.md +204 -0
- package/habilidades/orquestacion-async/SKILL.md +303 -0
- package/habilidades/paid-media-tracking/SKILL.md +269 -0
- package/habilidades/paid-media-tracking/recursos/auditoria-tracking.md +220 -0
- package/habilidades/paid-media-tracking/recursos/google-ads-api.md +215 -0
- package/habilidades/patrones-python/SKILL.md +228 -0
- package/habilidades/patrones-python/evals/evals.json +56 -0
- package/habilidades/patrones-python/recursos/patrones-avanzados.md +469 -0
- package/habilidades/patrones-python/recursos/referencia-completa.md +202 -0
- package/habilidades/perfil-usuario/SKILL.md +200 -0
- package/habilidades/perfil-usuario/evals/evals.json +55 -0
- package/habilidades/performance-baseline/SKILL.md +297 -0
- package/habilidades/php-experto/SKILL.md +291 -0
- package/habilidades/php-patrones/SKILL.md +306 -0
- package/habilidades/php-testing/SKILL.md +280 -0
- package/habilidades/planear-fase/SKILL.md +269 -0
- package/habilidades/postgresql-experto/SKILL.md +151 -0
- package/habilidades/postgresql-experto/evals/evals.json +53 -0
- package/habilidades/postgresql-experto/recursos/referencia-completa.md +215 -0
- package/habilidades/prevencion-racionalizacion/SKILL.md +175 -0
- package/habilidades/prevencion-sobreingenieria/SKILL.md +323 -0
- package/habilidades/privacy-memoria/SKILL.md +141 -0
- package/habilidades/privacy-memoria/evals/evals.json +43 -0
- package/habilidades/prompt-engineering/SKILL.md +518 -0
- package/habilidades/prompt-engineering/recursos/patrones-avanzados.md +467 -0
- package/habilidades/rag-arquitectura/SKILL.md +338 -0
- package/habilidades/rails-experto/SKILL.md +237 -0
- package/habilidades/rails-experto/recursos/active-record.md +260 -0
- package/habilidades/rails-experto/recursos/hotwire-turbo.md +293 -0
- package/habilidades/rails-experto/recursos/testing-rspec.md +362 -0
- package/habilidades/react-experto/SKILL.md +209 -0
- package/habilidades/react-experto/evals/evals.json +55 -0
- package/habilidades/react-experto/recursos/patrones-y-ejemplos-completos.md +240 -0
- package/habilidades/react-optimizacion/SKILL.md +174 -0
- package/habilidades/react-optimizacion/recursos/patrones-avanzados.md +138 -0
- package/habilidades/redis-experto/SKILL.md +305 -0
- package/habilidades/release-semver/.evolved.json +9 -0
- package/habilidades/release-semver/SKILL.md +248 -0
- package/habilidades/release-semver/scripts/generar-changelog.sh +238 -0
- package/habilidades/rust-experto/SKILL.md +400 -0
- package/habilidades/rust-patrones/SKILL.md +296 -0
- package/habilidades/rust-testing/SKILL.md +311 -0
- package/habilidades/seguridad-skills-ia/SKILL.md +262 -0
- package/habilidades/sql-optimizacion/SKILL.md +200 -0
- package/habilidades/sql-optimizacion/evals/evals.json +54 -0
- package/habilidades/sql-optimizacion/recursos/patrones-sql-avanzados.md +131 -0
- package/habilidades/sre-patrones/SKILL.md +333 -0
- package/habilidades/sre-patrones/recursos/chaos-engineering.md +241 -0
- package/habilidades/sre-patrones/recursos/oncall-design.md +236 -0
- package/habilidades/stripe-pagos/SKILL.md +550 -0
- package/habilidades/stripe-pagos/recursos/errores-reintentos.md +390 -0
- package/habilidades/stripe-pagos/recursos/stripe-connect.md +290 -0
- package/habilidades/structured-outputs/SKILL.md +343 -0
- package/habilidades/swift-experto/SKILL.md +320 -0
- package/habilidades/swift-experto/recursos/keychain-y-wrappers.md +110 -0
- package/habilidades/swift-patrones/SKILL.md +313 -0
- package/habilidades/swift-patrones/recursos/tca-ejemplo-completo.md +113 -0
- package/habilidades/swift-testing/SKILL.md +254 -0
- package/habilidades/swift-testing/recursos/xcuitest-planes.md +143 -0
- package/habilidades/swl-dashboard/SKILL.md +370 -0
- package/habilidades/swl-markitdown/SKILL.md +285 -0
- package/habilidades/swl-markitdown/evals/evals.json +52 -0
- package/habilidades/swl-revisar-impacto/SKILL.md +233 -0
- package/habilidades/tailwind-experto/SKILL.md +240 -0
- package/habilidades/tailwind-experto/recursos/referencia-completa.md +184 -0
- package/habilidades/tdd-workflow/SKILL.md +293 -0
- package/habilidades/terraform-experto/SKILL.md +321 -0
- package/habilidades/testing-python/SKILL.md +340 -0
- package/habilidades/testing-python/recursos/ejemplos-completos.md +167 -0
- package/habilidades/threat-model-lite/SKILL.md +246 -0
- package/habilidades/tracing-processor/SKILL.md +212 -0
- package/habilidades/tracking-measurement/SKILL.md +239 -0
- package/habilidades/tracking-measurement/recursos/consent-mode.md +231 -0
- package/habilidades/tracking-measurement/recursos/gtm-datalayer.md +216 -0
- package/habilidades/tracking-measurement/recursos/meta-capi.md +262 -0
- package/habilidades/typescript-avanzado/SKILL.md +144 -0
- package/habilidades/typescript-avanzado/evals/evals.json +55 -0
- package/habilidades/typescript-avanzado/recursos/patrones-y-ejemplos-completos.md +298 -0
- package/habilidades/typescript-diagnosticos/SKILL.md +513 -0
- package/habilidades/ux-diseno/SKILL.md +116 -0
- package/habilidades/ux-diseno/evals/evals.json +43 -0
- package/habilidades/ux-diseno/recursos/patrones-ux-referencia.md +214 -0
- package/habilidades/validacion-ci-sistema/SKILL.md +136 -0
- package/habilidades/validacion-ci-sistema/recursos/validadores-completos.md +369 -0
- package/habilidades/validacion-ci-sistema/scripts/validar-sistema.sh +286 -0
- package/habilidades/verificacion-evidencia/SKILL.md +160 -0
- package/habilidades/verificar-trabajo/SKILL.md +303 -0
- package/habilidades/verificar-trabajo/recursos/plantilla-verificacion.md +60 -0
- package/habilidades/wiki-conocimiento/SKILL.md +276 -0
- package/habilidades/wireframes-flujos/SKILL.md +212 -0
- package/habilidades/wireframes-flujos/recursos/referencia-completa.md +192 -0
- package/habilidades/workflow-claude-code/SKILL.md +260 -0
- package/habilidades/workflow-claude-code/recursos/referencia-completa.md +109 -0
- package/hooks/_run-hook.sh +57 -0
- package/hooks/actualizar-perfil-usuario.js +364 -0
- package/hooks/agente-lifecycle.js +71 -0
- package/hooks/aiisms-detector.js +173 -0
- package/hooks/audit-trail.js +204 -0
- package/hooks/auto-background.js +97 -0
- package/hooks/auto-consolidacion.js +178 -0
- package/hooks/auto-evolucion.js +666 -0
- package/hooks/auto-restaurar-settings.js +360 -0
- package/hooks/calidad-pre-commit.js +929 -0
- package/hooks/calidad-typescript.js +511 -0
- package/hooks/captura-feedback-usuario.js +148 -0
- package/hooks/check-update.js +211 -0
- package/hooks/clasificador-mensajes.js +271 -0
- package/hooks/degradacion-instintos.js +272 -0
- package/hooks/escaneo-secretos.js +389 -0
- package/hooks/extraccion-aprendizajes.js +763 -0
- package/hooks/grafo-contexto.js +129 -0
- package/hooks/graph-update.js +67 -0
- package/hooks/guardrail-modelo.js +247 -0
- package/hooks/inbox-aviso.js +75 -0
- package/hooks/inyeccion-contexto.js +246 -0
- package/hooks/lib/abort-registry.js +214 -0
- package/hooks/lib/agent-backend.js +210 -0
- package/hooks/lib/agent-comms.js +263 -0
- package/hooks/lib/agent-issue-codes.js +284 -0
- package/hooks/lib/agent-matcher.js +189 -0
- package/hooks/lib/async-hook-registry.js +252 -0
- package/hooks/lib/atomic-write.js +130 -0
- package/hooks/lib/auto-consolidator.js +335 -0
- package/hooks/lib/canary-skills.js +187 -0
- package/hooks/lib/consolidation-lock.js +291 -0
- package/hooks/lib/context-builder.js +430 -0
- package/hooks/lib/context-compressor.js +657 -0
- package/hooks/lib/convergence-detector.js +105 -0
- package/hooks/lib/delegation-tracker.js +198 -0
- package/hooks/lib/detectar-package-manager.js +423 -0
- package/hooks/lib/edit-accumulator.js +171 -0
- package/hooks/lib/error-classifier.js +308 -0
- package/hooks/lib/event-bus.js +112 -0
- package/hooks/lib/evolution-tracker.js +442 -0
- package/hooks/lib/execution-state.js +316 -0
- package/hooks/lib/fingerprint-id.js +135 -0
- package/hooks/lib/gateway-notify.js +116 -0
- package/hooks/lib/graph-security.js +75 -0
- package/hooks/lib/guardrail-metrics.js +202 -0
- package/hooks/lib/hook-circuit-breaker.js +206 -0
- package/hooks/lib/loop-detector.js +267 -0
- package/hooks/lib/mcp-health.js +184 -0
- package/hooks/lib/mcp-pool.js +436 -0
- package/hooks/lib/memory-search.js +506 -0
- package/hooks/lib/merkle-audit.js +96 -0
- package/hooks/lib/model-router.js +222 -0
- package/hooks/lib/normalize-error.js +324 -0
- package/hooks/lib/normalize-input.js +65 -0
- package/hooks/lib/nudge-tracker.js +306 -0
- package/hooks/lib/otlp-exporter.js +365 -0
- package/hooks/lib/performance-marks.js +239 -0
- package/hooks/lib/privacy-filter.js +128 -0
- package/hooks/lib/prompt-injection-scanner.js +209 -0
- package/hooks/lib/provenance-tracker.js +183 -0
- package/hooks/lib/rate-limit-tracker.js +253 -0
- package/hooks/lib/reflect-classifier.js +164 -0
- package/hooks/lib/resource-quota.js +122 -0
- package/hooks/lib/retry-jitter.js +165 -0
- package/hooks/lib/risk-engine.js +368 -0
- package/hooks/lib/run-log.js +408 -0
- package/hooks/lib/session-fts.js +379 -0
- package/hooks/lib/session-store.js +293 -0
- package/hooks/lib/singleton-guard.js +159 -0
- package/hooks/lib/skill-auditor.js +588 -0
- package/hooks/lib/sync-status.js +228 -0
- package/hooks/lib/taint-tracker.js +107 -0
- package/hooks/lib/task-service.js +295 -0
- package/hooks/lib/tech-skills-map.js +146 -0
- package/hooks/lib/telegram-cliente.js +159 -0
- package/hooks/lib/telegram-config.js +170 -0
- package/hooks/lib/token-budget.js +156 -0
- package/hooks/lib/token-estimator.js +420 -0
- package/hooks/lib/toon-compressor.js +245 -0
- package/hooks/lib/usage-model.js +183 -0
- package/hooks/lib/variable-resolver.js +230 -0
- package/hooks/linea-estado.js +324 -0
- package/hooks/metricas-evolucion.js +209 -0
- package/hooks/monitor-contexto.js +325 -0
- package/hooks/notificacion-sesion-stop.js +198 -0
- package/hooks/notificacion-telegram-notification.js +4 -0
- package/hooks/notificacion-telegram-subagent.js +4 -0
- package/hooks/notificacion-telegram.js +267 -0
- package/hooks/preservar-estado-pre-compact.js +150 -0
- package/hooks/proteccion-rutas.js +366 -0
- package/hooks/registro-turnos.js +209 -0
- package/hooks/resumen-sesion.js +249 -0
- package/hooks/risk-scoring.js +323 -0
- package/hooks/rotar-audit-auto.js +122 -0
- package/hooks/sugerir-regenerar-inventario.js +170 -0
- package/hooks/telemetria-agentes.js +167 -0
- package/hooks/tracking-costos.js +688 -0
- package/instintos/global.yaml +8 -0
- package/instintos/perfil-usuario.yaml +53 -0
- package/instintos/prompt-appendices.yaml +57 -0
- package/instintos/proyecto.yaml +372 -0
- package/manifiestos/gateway-config.json +77 -0
- package/manifiestos/handoff-context.json +223 -0
- package/manifiestos/hook-profiles.json +44 -0
- package/manifiestos/hooks-config.json +360 -0
- package/manifiestos/modulos.json +1173 -0
- package/manifiestos/perfiles.json +404 -0
- package/package.json +86 -0
- package/plantillas/ESTADO.md +109 -0
- package/plantillas/HOJA-RUTA.md +143 -0
- package/plantillas/PROYECTO.md +122 -0
- package/plantillas/REQUISITOS.md +132 -0
- package/plantillas/auditor-veto-template.md +105 -0
- package/plantillas/github-workflows/README.md +47 -0
- package/plantillas/github-workflows/release-please.yml +44 -0
- package/plantillas/github-workflows/swl-ci.yml +107 -0
- package/plantillas/github-workflows/swl-security.yml +51 -0
- package/plantillas/mcp-mineru.json +13 -0
- package/plantillas/research/ARQUITECTURA.md +220 -0
- package/plantillas/research/FUNCIONALIDADES.md +175 -0
- package/plantillas/research/RESUMEN.md +165 -0
- package/plantillas/research/STACK.md +233 -0
- package/plantillas/research/TRAMPAS.md +299 -0
- package/plantillas/skill-evals-template.json +44 -0
- package/plugin.json +343 -0
- package/reglas/accesibilidad.md +269 -0
- package/reglas/api-diseno.md +400 -0
- package/reglas/arquitectura.md +352 -0
- package/reglas/brevedad-output.md +124 -0
- package/reglas/cloud-infra.md +247 -0
- package/reglas/docs.md +245 -0
- package/reglas/estilo-codigo.md +201 -0
- package/reglas/git-workflow.md +245 -0
- package/reglas/gobernanza.md +271 -0
- package/reglas/harness-claude-code.md +213 -0
- package/reglas/hooks.md +186 -0
- package/reglas/lenguajes/csharp/estilo-codigo.md +231 -0
- package/reglas/lenguajes/csharp/hooks.md +281 -0
- package/reglas/lenguajes/csharp/patrones.md +226 -0
- package/reglas/lenguajes/csharp/seguridad.md +258 -0
- package/reglas/lenguajes/csharp/testing.md +176 -0
- package/reglas/lenguajes/go/estilo-codigo.md +195 -0
- package/reglas/lenguajes/go/hooks.md +249 -0
- package/reglas/lenguajes/go/patrones.md +249 -0
- package/reglas/lenguajes/go/seguridad.md +225 -0
- package/reglas/lenguajes/go/testing.md +272 -0
- package/reglas/lenguajes/java/estilo-codigo.md +217 -0
- package/reglas/lenguajes/java/hooks.md +251 -0
- package/reglas/lenguajes/java/patrones.md +226 -0
- package/reglas/lenguajes/java/seguridad.md +233 -0
- package/reglas/lenguajes/java/testing.md +238 -0
- package/reglas/lenguajes/kotlin/estilo-codigo.md +208 -0
- package/reglas/lenguajes/kotlin/hooks.md +245 -0
- package/reglas/lenguajes/kotlin/patrones.md +201 -0
- package/reglas/lenguajes/kotlin/seguridad.md +202 -0
- package/reglas/lenguajes/kotlin/testing.md +236 -0
- package/reglas/lenguajes/nextjs/estilo-codigo.md +175 -0
- package/reglas/lenguajes/nextjs/hooks.md +186 -0
- package/reglas/lenguajes/nextjs/patrones.md +225 -0
- package/reglas/lenguajes/nextjs/seguridad.md +216 -0
- package/reglas/lenguajes/nextjs/testing.md +193 -0
- package/reglas/lenguajes/php/estilo-codigo.md +228 -0
- package/reglas/lenguajes/php/hooks.md +165 -0
- package/reglas/lenguajes/php/patrones.md +233 -0
- package/reglas/lenguajes/php/seguridad.md +186 -0
- package/reglas/lenguajes/php/testing.md +205 -0
- package/reglas/lenguajes/rust/estilo-codigo.md +207 -0
- package/reglas/lenguajes/rust/hooks.md +240 -0
- package/reglas/lenguajes/rust/patrones.md +250 -0
- package/reglas/lenguajes/rust/seguridad.md +221 -0
- package/reglas/lenguajes/rust/testing.md +194 -0
- package/reglas/lenguajes/swift/estilo-codigo.md +238 -0
- package/reglas/lenguajes/swift/hooks.md +257 -0
- package/reglas/lenguajes/swift/patrones.md +235 -0
- package/reglas/lenguajes/swift/seguridad.md +248 -0
- package/reglas/lenguajes/swift/testing.md +242 -0
- package/reglas/markitdown.md +60 -0
- package/reglas/memoria-consolidada.md +209 -0
- package/reglas/patrones.md +225 -0
- package/reglas/performance.md +195 -0
- package/reglas/pruebas.md +159 -0
- package/reglas/seguridad-agentes.md +351 -0
- package/reglas/seguridad.md +151 -0
- package/reglas/skills-estandar.md +373 -0
- package/reglas/testing.md +193 -0
- package/schemas/agent-contract.json +176 -0
- package/schemas/agent-frontmatter.schema.json +149 -0
- package/schemas/agent-message.schema.json +53 -0
- package/schemas/agent-output-implementacion.schema.json +85 -0
- package/schemas/agent-output-planificacion.schema.json +113 -0
- package/schemas/agent-output-review.schema.json +78 -0
- package/schemas/diary-entry.schema.json +80 -0
- package/schemas/hook-profiles.schema.json +39 -0
- package/schemas/hooks-config.schema.json +74 -0
- package/schemas/instinct.schema.json +115 -0
- package/schemas/modulos.schema.json +29 -0
- package/schemas/perfiles.schema.json +28 -0
- package/schemas/plugin.schema.json +64 -0
- package/schemas/skill-evals.schema.json +95 -0
- package/schemas/skill-frontmatter.schema.json +170 -0
- package/scripts/actualizar.js +145 -0
- package/scripts/audit-skills.sh +78 -0
- package/scripts/auditar-agentes-gaps.js +149 -0
- package/scripts/auditar-cobertura-frameworks.js +241 -0
- package/scripts/auditar-skills-gaps.js +206 -0
- package/scripts/bootstrap-instintos.js +259 -0
- package/scripts/check-update.js +109 -0
- package/scripts/comandos/agents.js +105 -0
- package/scripts/comandos/info.js +108 -0
- package/scripts/comandos/install-asistido.js +186 -0
- package/scripts/comandos/skills.js +211 -0
- package/scripts/configurar-branch-protection.js +418 -0
- package/scripts/daemon-swl.py +388 -0
- package/scripts/desinstalar.js +130 -0
- package/scripts/doctor.js +559 -0
- package/scripts/field-report.js +199 -0
- package/scripts/generar-inventario.js +317 -0
- package/scripts/inbox-tmux-inject.js +161 -0
- package/scripts/inferir-herramientas-permitidas.js +586 -0
- package/scripts/inicializar.js +133 -0
- package/scripts/instalador.js +1031 -0
- package/scripts/instalar-git-hook.js +122 -0
- package/scripts/lib/agp-frontmatter.js +222 -0
- package/scripts/lib/append-con-marcadores.js +199 -0
- package/scripts/lib/artefactos-python.js +43 -0
- package/scripts/lib/audit-query.js +221 -0
- package/scripts/lib/autostart-linux.js +347 -0
- package/scripts/lib/autostart-macos.js +360 -0
- package/scripts/lib/autostart-windows.js +307 -0
- package/scripts/lib/budget-enforcer.js +252 -0
- package/scripts/lib/claude-sessions.js +285 -0
- package/scripts/lib/configurar-ci.js +380 -0
- package/scripts/lib/console-span-exporter.js +92 -0
- package/scripts/lib/contadores-inventario.js +217 -0
- package/scripts/lib/dashboard-widgets.js +290 -0
- package/scripts/lib/detectar-runtime.js +279 -0
- package/scripts/lib/detectar-stack.js +187 -0
- package/scripts/lib/diary-entry.js +234 -0
- package/scripts/lib/drift-detector.js +545 -0
- package/scripts/lib/estado.js +124 -0
- package/scripts/lib/gestor-componentes.js +243 -0
- package/scripts/lib/gitignore-manifest.js +305 -0
- package/scripts/lib/graph-analyze.py +556 -0
- package/scripts/lib/graph-builder.py +485 -0
- package/scripts/lib/graph-cluster.py +259 -0
- package/scripts/lib/health-row.js +168 -0
- package/scripts/lib/hooks-settings.js +789 -0
- package/scripts/lib/manifiestos.js +138 -0
- package/scripts/lib/mc-client.js +137 -0
- package/scripts/lib/notificaciones-telegram.js +1107 -0
- package/scripts/lib/npm-version.js +261 -0
- package/scripts/lib/paquetes-conocidos.js +50 -0
- package/scripts/lib/preservar-usuario.js +586 -0
- package/scripts/lib/prompt-builder.js +264 -0
- package/scripts/lib/resolver-externo.js +332 -0
- package/scripts/lib/schedule-parser.js +305 -0
- package/scripts/lib/scoring-instintos.js +240 -0
- package/scripts/lib/seguridad.js +160 -0
- package/scripts/lib/selector-interactivo.js +152 -0
- package/scripts/lib/semantic-search.js +242 -0
- package/scripts/lib/skill-discovery.js +234 -0
- package/scripts/lib/skill-metrics.js +246 -0
- package/scripts/lib/skill-normalizer.js +112 -0
- package/scripts/lib/skills-hub.js +340 -0
- package/scripts/lib/span-schema.js +134 -0
- package/scripts/lib/tool-cost-analyzer.js +255 -0
- package/scripts/lib/tracing-processor-interface.js +286 -0
- package/scripts/lib/transformadores/base.js +80 -0
- package/scripts/lib/transformadores/claude.js +124 -0
- package/scripts/lib/transformadores/codex.js +115 -0
- package/scripts/lib/transformadores/copilot.js +106 -0
- package/scripts/lib/transformadores/gemini.js +74 -0
- package/scripts/lib/transformadores/index.js +35 -0
- package/scripts/lib/transformadores/opencode.js +75 -0
- package/scripts/lib/ui.js +259 -0
- package/scripts/limpiar-artefactos-python.js +131 -0
- package/scripts/mcp-orchestrator.py +386 -0
- package/scripts/mcp-pool-manager.py +352 -0
- package/scripts/mcp-telemetry.py +378 -0
- package/scripts/poblar-evolvable.js +226 -0
- package/scripts/publicar.js +287 -0
- package/scripts/reflect-skills.js +403 -0
- package/scripts/rotar-audit-logs.js +185 -0
- package/scripts/run-skill-evals.js +242 -0
- package/scripts/smoke-test.js +374 -0
- package/scripts/token-analysis.py +471 -0
- package/scripts/validar-manifest.js +195 -0
- package/scripts/validar-memoria.js +321 -0
- package/scripts/validar-tests-aislamiento.js +184 -0
- package/scripts/validar-tokens-test.js +208 -0
- package/scripts/validar.js +147 -0
- package/scripts/validate-markdown.py +339 -0
- package/scripts/validate-skills.py +385 -0
- package/scripts/vendor/claude-usage/README.md +116 -0
- package/scripts/vendor/claude-usage/cli.py +334 -0
- package/scripts/vendor/claude-usage/dashboard.py +795 -0
- package/scripts/vendor/claude-usage/scanner.py +467 -0
- package/scripts/vendor/markitdown/cli.py +194 -0
- package/scripts/verificar-evolucion.js +289 -0
- package/scripts/verificar-release.js +494 -0
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
# Referencia Completa: Frontmatter de Skills y Hook Events
|
|
2
|
+
|
|
3
|
+
Fuente: https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Frontmatter completo de SKILL.md (12 campos)
|
|
8
|
+
|
|
9
|
+
| Campo | Requerido | Tipo | Descripción |
|
|
10
|
+
|-------|-----------|------|-------------|
|
|
11
|
+
| `name` | No* | string | Nombre kebab-case, max 64 chars. Se convierte en `/nombre` para invocación. *Si se omite, usa el nombre del directorio |
|
|
12
|
+
| `description` | Recomendado | string | Max 1024 chars. QUÉ hace + CUÁNDO usar. Guía la auto-activación de Claude |
|
|
13
|
+
| `argument-hint` | Opcional | string | Hint de autocompletado: `[archivo]`, `[issue-num]`, `[file] [format]` |
|
|
14
|
+
| `allowed-tools` | Opcional | array | Tools que Claude puede usar sin pedir permiso cuando la skill está activa |
|
|
15
|
+
| `paths` | Opcional | array/string | Patrones glob: cargar skill SOLO al trabajar con archivos que coinciden |
|
|
16
|
+
| `context` | Opcional | string | `fork` = ejecutar en subagente aislado con su propia conversación |
|
|
17
|
+
| `agent` | Opcional | string | Tipo de subagente si `context: fork` (Explore, Plan, general-purpose) |
|
|
18
|
+
| `model` | Opcional | string | Override de modelo para esta skill |
|
|
19
|
+
| `effort` | Opcional | string | Nivel de esfuerzo: `low`, `medium`, `high`, `max` (Opus only) |
|
|
20
|
+
| `shell` | Opcional | string | `bash` o `powershell`. Controla bloques `!comando` embebidos |
|
|
21
|
+
| `disable-model-invocation` | Opcional | boolean | `true` = solo el usuario puede invocar (no auto-trigger). Usar para skills con side-effects como `/deploy` |
|
|
22
|
+
| `user-invocable` | Opcional | boolean | `false` = solo Claude la ve (conocimiento de background). No aparece en menú `/` |
|
|
23
|
+
|
|
24
|
+
### Ejemplo completo
|
|
25
|
+
|
|
26
|
+
```yaml
|
|
27
|
+
---
|
|
28
|
+
name: api-test-generator
|
|
29
|
+
description: >
|
|
30
|
+
Genera tests de integracion para endpoints REST. Auto-activar cuando el usuario
|
|
31
|
+
crea o modifica un endpoint en src/api/. Produce tests con httpx y pytest que
|
|
32
|
+
cubren happy path, validacion de input, auth y error handling.
|
|
33
|
+
argument-hint: "[endpoint-path]"
|
|
34
|
+
allowed-tools: ["Read", "Grep", "Glob", "Write"]
|
|
35
|
+
paths:
|
|
36
|
+
- "src/api/**/*.py"
|
|
37
|
+
- "tests/integration/**/*.py"
|
|
38
|
+
model: claude-sonnet-4-6
|
|
39
|
+
effort: high
|
|
40
|
+
disable-model-invocation: false
|
|
41
|
+
user-invocable: true
|
|
42
|
+
---
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Sustituciones de string disponibles
|
|
46
|
+
|
|
47
|
+
| Variable | Valor |
|
|
48
|
+
|----------|-------|
|
|
49
|
+
| `$ARGUMENTS` | Argumentos pasados al invocar la skill |
|
|
50
|
+
| `$0`, `$1`, `$2`... | Argumentos posicionales |
|
|
51
|
+
| `${CLAUDE_SESSION_ID}` | ID unico de la sesion actual |
|
|
52
|
+
| `${CLAUDE_SKILL_DIR}` | Path absoluto al directorio de la skill |
|
|
53
|
+
| `${env:VAR_NAME}` | Variable de entorno del sistema |
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 25 Hook Events oficiales
|
|
58
|
+
|
|
59
|
+
### Ciclo de vida de sesión
|
|
60
|
+
|
|
61
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
62
|
+
|--------|-------------------|----------|-----------|
|
|
63
|
+
| `SessionStart` | Al iniciar o resumir sesión | `startup`, `resume`, `clear`, `compact` | Cargar contexto, setup env |
|
|
64
|
+
| `SessionEnd` | Al terminar sesión | `clear`, `resume`, `logout`, `other` | Cleanup, archivado |
|
|
65
|
+
| `InstructionsLoaded` | CLAUDE.md o rules/ cargados | `session_start`, `nested_traversal`, `path_glob_match`, `include`, `compact` | Log que instrucciones se cargaron |
|
|
66
|
+
|
|
67
|
+
### Ejecución de herramientas
|
|
68
|
+
|
|
69
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
70
|
+
|--------|-------------------|----------|-----------|
|
|
71
|
+
| `PreToolUse` | Antes de ejecutar herramienta | Nombre de tool (Bash, Edit, Read, mcp__*) | Bloquear ops inseguras, validar |
|
|
72
|
+
| `PostToolUse` | Después de ejecutar herramienta (éxito) | Nombre de tool | Auto-lint, format, log |
|
|
73
|
+
| `PostToolUseFailure` | Cuando falla herramienta | Nombre de tool | Notificar, reintentar |
|
|
74
|
+
| `PermissionRequest` | Se muestra diálogo de permiso | Nombre de tool | Auto-aprobar acciones seguras |
|
|
75
|
+
|
|
76
|
+
### Respuesta y control
|
|
77
|
+
|
|
78
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
79
|
+
|--------|-------------------|----------|-----------|
|
|
80
|
+
| `Stop` | Claude termina de responder | Ninguno (siempre se dispara) | Verificar tarea completa |
|
|
81
|
+
| `StopFailure` | Error de API en Stop | `rate_limit`, `authentication_failed`, `billing_error`, `server_error` | Notificar fallos |
|
|
82
|
+
| `UserPromptSubmit` | Usuario envía prompt | Ninguno | Interceptar/enriquecer input |
|
|
83
|
+
|
|
84
|
+
### Compactación de contexto
|
|
85
|
+
|
|
86
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
87
|
+
|--------|-------------------|----------|-----------|
|
|
88
|
+
| `PreCompact` | Antes de compactar | `manual`, `auto` | Salvar estado crítico |
|
|
89
|
+
| `PostCompact` | Después de compactar | `manual`, `auto` | Re-inyectar contexto |
|
|
90
|
+
|
|
91
|
+
### Subagentes
|
|
92
|
+
|
|
93
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
94
|
+
|--------|-------------------|----------|-----------|
|
|
95
|
+
| `SubagentStart` | Al spawnar subagente | `Explore`, `Plan`, `general-purpose`, nombres custom | Log creación |
|
|
96
|
+
| `SubagentStop` | Al terminar subagente | Mismos que SubagentStart | Cleanup worktrees |
|
|
97
|
+
| `TeammateIdle` | Miembro de equipo idle | Ninguno | Keep alive, escalar |
|
|
98
|
+
|
|
99
|
+
### Tasks
|
|
100
|
+
|
|
101
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
102
|
+
|--------|-------------------|----------|-----------|
|
|
103
|
+
| `TaskCreated` | Al crear tarea | Ninguno | Log, validar tasks |
|
|
104
|
+
| `TaskCompleted` | Al completar tarea | Ninguno | Notificar, log |
|
|
105
|
+
|
|
106
|
+
### Configuración y archivos
|
|
107
|
+
|
|
108
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
109
|
+
|--------|-------------------|----------|-----------|
|
|
110
|
+
| `ConfigChange` | Cambio en settings | `user_settings`, `project_settings`, `local_settings`, `policy_settings`, `skills` | Auditar, bloquear no autorizado |
|
|
111
|
+
| `CwdChanged` | Cambio de directorio de trabajo | Ninguno | Recargar direnv, actualizar env |
|
|
112
|
+
| `FileChanged` | Archivo observado cambia | Patrón de nombre (`.envrc`, `.env`) | Recargar config, re-lint |
|
|
113
|
+
|
|
114
|
+
### Git worktrees
|
|
115
|
+
|
|
116
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
117
|
+
|--------|-------------------|----------|-----------|
|
|
118
|
+
| `WorktreeCreate` | Git worktree creado | Ninguno | Setup custom |
|
|
119
|
+
| `WorktreeRemove` | Git worktree removido | Ninguno | Cleanup recursos |
|
|
120
|
+
|
|
121
|
+
### MCP
|
|
122
|
+
|
|
123
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
124
|
+
|--------|-------------------|----------|-----------|
|
|
125
|
+
| `Elicitation` | Servidor MCP pide input | Nombre del servidor MCP | Gate user input |
|
|
126
|
+
| `ElicitationResult` | Usuario responde a MCP | Nombre del servidor MCP | Validar/transformar respuesta |
|
|
127
|
+
|
|
128
|
+
### Notificaciones
|
|
129
|
+
|
|
130
|
+
| Evento | Cuándo se dispara | Matchers | Uso típico |
|
|
131
|
+
|--------|-------------------|----------|-----------|
|
|
132
|
+
| `Notification` | Claude espera input | `permission_prompt`, `idle_prompt`, `auth_success` | Alertas desktop, sonidos |
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Frontmatter completo de agents (.claude/agents/*.md) — 16 campos
|
|
137
|
+
|
|
138
|
+
| Campo | Tipo | Descripción |
|
|
139
|
+
|-------|------|-------------|
|
|
140
|
+
| `name` | string | Nombre kebab-case del agente |
|
|
141
|
+
| `description` | string | Cuándo invocarlo — usar `"PROACTIVELY"` para invocación eager |
|
|
142
|
+
| `model` | string | Override de modelo (`sonnet`, `haiku`, `opus`) |
|
|
143
|
+
| `color` | string | Color del agente en terminal (green, blue, red, etc.) |
|
|
144
|
+
| `maxTurns` | number | Máximo de turnos antes de terminar |
|
|
145
|
+
| `permissionMode` | string | `acceptEdits`, `dontAsk`, `plan`, `default` |
|
|
146
|
+
| `memory` | string | `project`, `user`, `local`, `none` |
|
|
147
|
+
| `skills` | array | Skills precargados como conocimiento de background |
|
|
148
|
+
| `isolation` | string | `worktree` = rama git aislada por ejecución |
|
|
149
|
+
| `allowed-tools` | array | Herramientas permitidas sin pedir permiso |
|
|
150
|
+
| `hooks` | object | Hooks específicos del agente (SubagentStop, PreToolUse, etc.) |
|
|
151
|
+
| `stop` | string | Instrucción de cuándo detenerse |
|
|
152
|
+
| `shell` | string | `bash` o `powershell` |
|
|
153
|
+
| `effort` | string | `low`, `medium`, `high`, `max` |
|
|
154
|
+
| `disable-model-invocation` | boolean | Solo invocación manual |
|
|
155
|
+
| `user-invocable` | boolean | Visible en menú o solo invocable por Claude |
|
|
156
|
+
|
|
157
|
+
**Gotcha**: El evento `Stop` en frontmatter de agente se dispara como `SubagentStop`, no como `Stop`.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Frontmatter de commands (.claude/commands/*.md) — 13 campos
|
|
162
|
+
|
|
163
|
+
| Campo | Tipo | Descripción |
|
|
164
|
+
|-------|------|-------------|
|
|
165
|
+
| `name` | string | Se convierte en `/nombre` (o subcarpeta: `/dir:nombre`) |
|
|
166
|
+
| `description` | string | Descripción mostrada en autocompletado |
|
|
167
|
+
| `argument-hint` | string | Hint visual: `[archivo]`, `[issue-num]` |
|
|
168
|
+
| `allowed-tools` | array | Tools permitidos sin pedir permiso |
|
|
169
|
+
| `model` | string | Override de modelo |
|
|
170
|
+
| `effort` | string | Nivel de esfuerzo |
|
|
171
|
+
| `shell` | string | `bash` o `powershell` |
|
|
172
|
+
| `user-invocable` | boolean | Default `true` — commands siempre son user-invocable |
|
|
173
|
+
| `disable-model-invocation` | boolean | `true` = Claude no puede auto-invocar |
|
|
174
|
+
|
|
175
|
+
**Diferencia clave**: commands NUNCA se auto-invocan — siempre requieren `/nombre` del usuario.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Orden de resolución (cuando múltiples coinciden)
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
Skill (inline, preferido) > Agent (contexto separado) > Command (nunca auto-invocado)
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Si un skill y un agent tienen descripciones similares, Claude prefiere el skill
|
|
186
|
+
porque se ejecuta inline sin el overhead de un subagente.
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Tipos de handler para hooks
|
|
191
|
+
|
|
192
|
+
| Tipo | Descripción | Ejemplo |
|
|
193
|
+
|------|-------------|---------|
|
|
194
|
+
| `command` | Ejecuta comando shell | `"command": "node .claude/hooks/lint.js"` |
|
|
195
|
+
| `prompt` | Claude decide qué hacer | `"prompt": "Verifica que el archivo..."` |
|
|
196
|
+
| `agent` | Claude con herramientas propias | `"agent": "Analiza y corrige..."` |
|
|
197
|
+
| `http` | POST a endpoint HTTP | `"url": "https://webhook.example.com/hook"` |
|
|
198
|
+
|
|
199
|
+
### Códigos de retorno para hooks command
|
|
200
|
+
|
|
201
|
+
| Código | Significado |
|
|
202
|
+
|--------|-------------|
|
|
203
|
+
| `0` | Permitir (allow) |
|
|
204
|
+
| `2` | Bloquear (block) — la operación no se ejecuta |
|
|
205
|
+
| Otro | Error — Claude decide qué hacer |
|
|
206
|
+
|
|
207
|
+
### Opciones avanzadas de hooks
|
|
208
|
+
|
|
209
|
+
| Opción | Tipo | Descripción |
|
|
210
|
+
|--------|------|-------------|
|
|
211
|
+
| `async` | boolean | Ejecutar en background sin bloquear — fire-and-forget |
|
|
212
|
+
| `timeout` | number | Timeout en ms (default varía por evento) |
|
|
213
|
+
| `once` | boolean | Ejecutar solo la primera vez que el evento ocurre |
|
|
214
|
+
| `asyncRewake` | boolean | Re-despertar al agente cuando el hook async termina |
|
|
215
|
+
| `statusMessage` | string | Mensaje mostrado mientras el hook ejecuta |
|
|
216
|
+
| `if` | string | Condicional (v2.1.85+) — solo ejecutar si la condición se cumple |
|
|
217
|
+
|
|
218
|
+
### Campos JSON de retorno del hook
|
|
219
|
+
|
|
220
|
+
| Campo | Tipo | Efecto |
|
|
221
|
+
|-------|------|--------|
|
|
222
|
+
| `continue` | boolean | `false` = detener la cadena de hooks |
|
|
223
|
+
| `stopReason` | string | Razón de detención (si `continue: false`) |
|
|
224
|
+
| `suppressOutput` | boolean | No mostrar output del hook al usuario |
|
|
225
|
+
| `systemMessage` | string | Inyectar mensaje al contexto del sistema |
|
|
226
|
+
| `additionalContext` | string | Agregar contexto adicional a la conversación |
|
|
227
|
+
| `updatedInput` | object | Solo PreToolUse — modificar el input de la herramienta antes de ejecución |
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Patrones de permisos en settings.json
|
|
232
|
+
|
|
233
|
+
### Patrones comunes de allow
|
|
234
|
+
|
|
235
|
+
```json
|
|
236
|
+
"allow": [
|
|
237
|
+
"Bash(git:*)",
|
|
238
|
+
"Bash(npm:*)",
|
|
239
|
+
"Bash(python:*)",
|
|
240
|
+
"Bash(uv:*)",
|
|
241
|
+
"Bash(pytest:*)",
|
|
242
|
+
"Read(**/src/**)",
|
|
243
|
+
"Write(**/src/**)",
|
|
244
|
+
"Read(**/tests/**)",
|
|
245
|
+
"Write(**/tests/**)"
|
|
246
|
+
]
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Patrones comunes de deny
|
|
250
|
+
|
|
251
|
+
```json
|
|
252
|
+
"deny": [
|
|
253
|
+
"Bash(rm -rf:*)",
|
|
254
|
+
"Bash(curl * | bash:*)",
|
|
255
|
+
"Bash(sudo:*)",
|
|
256
|
+
"Read(**/env:*)",
|
|
257
|
+
"Read(**/.env*)",
|
|
258
|
+
"Write(**/node_modules/**)"
|
|
259
|
+
]
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## Estructura de plugin.json
|
|
265
|
+
|
|
266
|
+
```json
|
|
267
|
+
{
|
|
268
|
+
"name": "mi-plugin",
|
|
269
|
+
"version": "1.0.0",
|
|
270
|
+
"description": "Descripción del plugin",
|
|
271
|
+
"author": "Tu nombre",
|
|
272
|
+
"skills": ["skills/mi-skill"],
|
|
273
|
+
"agents": ["agents/mi-agent.md"],
|
|
274
|
+
"hooks": {
|
|
275
|
+
"PreToolUse": [
|
|
276
|
+
{
|
|
277
|
+
"matcher": "Bash",
|
|
278
|
+
"command": "node hooks/validate.js"
|
|
279
|
+
}
|
|
280
|
+
]
|
|
281
|
+
},
|
|
282
|
+
"mcpServers": {
|
|
283
|
+
"mi-server": {
|
|
284
|
+
"command": "node",
|
|
285
|
+
"args": ["mcp-servers/server.js"]
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
```
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comentario": "Template de .mcp.json para proyectos Claude-ready. Eliminar los servidores que no se usen. Las variables de entorno con valor vacío deben completarse en .env o exportarse antes de correr claude.",
|
|
3
|
+
"_instrucciones": [
|
|
4
|
+
"1. Copiar este archivo a la raíz del proyecto como .mcp.json",
|
|
5
|
+
"2. Eliminar el bloque _comentario y _instrucciones (no son JSON válido en producción)",
|
|
6
|
+
"3. Configurar las variables de entorno requeridas por cada servidor activo",
|
|
7
|
+
"4. Agregar .mcp.json al repositorio (no contiene secretos — los secretos van en env vars)",
|
|
8
|
+
"5. Agregar a .gitignore cualquier archivo .mcp.local.json con credenciales"
|
|
9
|
+
],
|
|
10
|
+
"mcpServers": {
|
|
11
|
+
"context7": {
|
|
12
|
+
"_descripcion": "Documentación actualizada de librerías. Uso: 'use context7' en el prompt.",
|
|
13
|
+
"command": "npx",
|
|
14
|
+
"args": ["-y", "@upstash/context7-mcp@latest"]
|
|
15
|
+
},
|
|
16
|
+
"github": {
|
|
17
|
+
"_descripcion": "Acceso a GitHub: issues, PRs, repos, commits. Requiere token con permisos repo.",
|
|
18
|
+
"command": "npx",
|
|
19
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
20
|
+
"env": {
|
|
21
|
+
"GITHUB_PERSONAL_ACCESS_TOKEN": ""
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"filesystem": {
|
|
25
|
+
"_descripcion": "Acceso a sistema de archivos fuera del directorio de trabajo. Usar con cuidado.",
|
|
26
|
+
"_activar": "Descomentar solo si se necesita acceso a paths fuera del proyecto",
|
|
27
|
+
"command": "npx",
|
|
28
|
+
"args": [
|
|
29
|
+
"-y",
|
|
30
|
+
"@modelcontextprotocol/server-filesystem",
|
|
31
|
+
"/ruta/al/directorio/permitido"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
"postgres": {
|
|
35
|
+
"_descripcion": "Acceso de solo lectura a PostgreSQL. Útil para explorar esquemas y datos.",
|
|
36
|
+
"_activar": "Descomentar si el proyecto usa PostgreSQL y se requiere introspección de BD",
|
|
37
|
+
"command": "npx",
|
|
38
|
+
"args": ["-y", "@modelcontextprotocol/server-postgres"],
|
|
39
|
+
"env": {
|
|
40
|
+
"POSTGRES_CONNECTION_STRING": "postgresql://usuario:password@localhost:5432/nombre_bd"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"sqlite": {
|
|
44
|
+
"_descripcion": "Acceso a base de datos SQLite. Alternativa ligera a postgres para proyectos pequeños.",
|
|
45
|
+
"_activar": "Descomentar si el proyecto usa SQLite",
|
|
46
|
+
"command": "npx",
|
|
47
|
+
"args": ["-y", "@modelcontextprotocol/server-sqlite", "--db-path", "./data.db"]
|
|
48
|
+
},
|
|
49
|
+
"brave-search": {
|
|
50
|
+
"_descripcion": "Búsqueda web con Brave Search API. Útil para investigación técnica durante desarrollo.",
|
|
51
|
+
"_activar": "Requiere API key de Brave Search (plan gratuito disponible)",
|
|
52
|
+
"command": "npx",
|
|
53
|
+
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
54
|
+
"env": {
|
|
55
|
+
"BRAVE_API_KEY": ""
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"memory": {
|
|
59
|
+
"_descripcion": "Memoria persistente entre sesiones. Almacena entidades y relaciones en grafo.",
|
|
60
|
+
"_activar": "Útil para proyectos largos donde se quiere persistir contexto entre sesiones",
|
|
61
|
+
"command": "npx",
|
|
62
|
+
"args": ["-y", "@modelcontextprotocol/server-memory"]
|
|
63
|
+
},
|
|
64
|
+
"puppeteer": {
|
|
65
|
+
"_descripcion": "Control de navegador. Útil para testing E2E, scraping o automatización web.",
|
|
66
|
+
"_activar": "Requiere Chrome/Chromium instalado",
|
|
67
|
+
"command": "npx",
|
|
68
|
+
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]
|
|
69
|
+
},
|
|
70
|
+
"sequential-thinking": {
|
|
71
|
+
"_descripcion": "Herramienta de razonamiento estructurado para problemas complejos.",
|
|
72
|
+
"_activar": "Útil para arquitectura, debugging complejo, decisiones de diseño",
|
|
73
|
+
"command": "npx",
|
|
74
|
+
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# Variantes de estructura por stack tecnológico
|
|
2
|
+
|
|
3
|
+
Referencia completa de estructura de proyecto Claude-ready para cada stack.
|
|
4
|
+
Todos los stacks incluyen la estructura base `.claude/`, `.planning/` y `.mcp.json`.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Python backend (FastAPI / Django)
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
proyecto/
|
|
12
|
+
├── CLAUDE.md
|
|
13
|
+
├── .claude/ # Ver estructura base en SKILL.md
|
|
14
|
+
├── .planning/ # Ver estructura base en SKILL.md
|
|
15
|
+
├── .mcp.json
|
|
16
|
+
├── pyproject.toml # Dependencias y metadata del paquete
|
|
17
|
+
├── .env.example # Variables de entorno (sin valores reales)
|
|
18
|
+
├── alembic/ # Migraciones de base de datos
|
|
19
|
+
│ ├── alembic.ini
|
|
20
|
+
│ ├── env.py
|
|
21
|
+
│ └── versions/
|
|
22
|
+
├── app/
|
|
23
|
+
│ ├── main.py
|
|
24
|
+
│ ├── routers/
|
|
25
|
+
│ ├── models/
|
|
26
|
+
│ ├── schemas/
|
|
27
|
+
│ ├── services/
|
|
28
|
+
│ ├── dependencies/
|
|
29
|
+
│ └── core/
|
|
30
|
+
│ ├── config.py
|
|
31
|
+
│ └── security.py
|
|
32
|
+
└── tests/
|
|
33
|
+
├── conftest.py
|
|
34
|
+
├── unit/
|
|
35
|
+
└── integration/
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**Qué agregar en CLAUDE.md para proyectos Python**:
|
|
39
|
+
- Versión de Python y gestor de paquetes (`uv` o `pip`)
|
|
40
|
+
- Comando para activar entorno virtual
|
|
41
|
+
- Comandos de migración Alembic
|
|
42
|
+
- Comando para correr tests con cobertura (`pytest --cov`)
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Node.js backend (Express / Fastify / NestJS)
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
proyecto/
|
|
50
|
+
├── CLAUDE.md
|
|
51
|
+
├── .claude/
|
|
52
|
+
├── .planning/
|
|
53
|
+
├── .mcp.json
|
|
54
|
+
├── package.json
|
|
55
|
+
├── tsconfig.json
|
|
56
|
+
├── .env.example
|
|
57
|
+
├── src/
|
|
58
|
+
│ ├── index.ts # Entry point
|
|
59
|
+
│ ├── routes/
|
|
60
|
+
│ ├── controllers/
|
|
61
|
+
│ ├── services/
|
|
62
|
+
│ ├── models/
|
|
63
|
+
│ └── middleware/
|
|
64
|
+
├── prisma/ # Si usa Prisma ORM
|
|
65
|
+
│ └── schema.prisma
|
|
66
|
+
└── tests/
|
|
67
|
+
├── unit/
|
|
68
|
+
└── integration/
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**Qué agregar en CLAUDE.md para proyectos Node**:
|
|
72
|
+
- Versión de Node.js y gestor de paquetes (`npm`, `pnpm`, `yarn`)
|
|
73
|
+
- Comando de dev con hot-reload
|
|
74
|
+
- Comando de build de producción
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Angular frontend
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
proyecto/
|
|
82
|
+
├── CLAUDE.md
|
|
83
|
+
├── .claude/
|
|
84
|
+
├── .planning/
|
|
85
|
+
├── .mcp.json
|
|
86
|
+
├── angular.json
|
|
87
|
+
├── package.json
|
|
88
|
+
├── tsconfig.json
|
|
89
|
+
└── src/
|
|
90
|
+
├── app/
|
|
91
|
+
│ ├── core/ # Servicios singleton, guards, interceptors
|
|
92
|
+
│ ├── shared/ # Componentes, pipes, directivas compartidas
|
|
93
|
+
│ ├── features/ # Módulos de features (lazy loaded)
|
|
94
|
+
│ └── app.config.ts
|
|
95
|
+
├── assets/
|
|
96
|
+
└── environments/
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Qué agregar en CLAUDE.md para proyectos Angular**:
|
|
100
|
+
- Versión de Angular y Node
|
|
101
|
+
- Convención de signals vs RxJS
|
|
102
|
+
- Estructura de features (feature-based o type-based)
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## React / Next.js frontend
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
proyecto/
|
|
110
|
+
├── CLAUDE.md
|
|
111
|
+
├── .claude/
|
|
112
|
+
├── .planning/
|
|
113
|
+
├── .mcp.json
|
|
114
|
+
├── next.config.js # Si usa Next.js
|
|
115
|
+
├── package.json
|
|
116
|
+
├── tsconfig.json
|
|
117
|
+
├── tailwind.config.ts # Si usa Tailwind CSS
|
|
118
|
+
├── app/ # App Router (Next.js 13+)
|
|
119
|
+
│ ├── layout.tsx
|
|
120
|
+
│ ├── page.tsx
|
|
121
|
+
│ └── [rutas de la app]
|
|
122
|
+
├── components/
|
|
123
|
+
│ ├── ui/ # Componentes genéricos
|
|
124
|
+
│ └── [dominio]/ # Componentes de dominio
|
|
125
|
+
└── lib/
|
|
126
|
+
├── utils.ts
|
|
127
|
+
└── api.ts
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Mobile (React Native con Expo)
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
proyecto/
|
|
136
|
+
├── CLAUDE.md
|
|
137
|
+
├── .claude/
|
|
138
|
+
├── .planning/
|
|
139
|
+
├── .mcp.json
|
|
140
|
+
├── app.json # Configuración de Expo
|
|
141
|
+
├── package.json
|
|
142
|
+
├── tsconfig.json
|
|
143
|
+
└── src/
|
|
144
|
+
├── app/ # Expo Router
|
|
145
|
+
├── components/
|
|
146
|
+
├── hooks/
|
|
147
|
+
├── services/
|
|
148
|
+
├── stores/ # Estado global (Zustand, Jotai)
|
|
149
|
+
└── utils/
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Full-stack (monorepo: backend + frontend + mobile)
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
proyecto/
|
|
158
|
+
├── CLAUDE.md # Instrucciones del monorepo completo
|
|
159
|
+
├── .claude/
|
|
160
|
+
├── .planning/
|
|
161
|
+
├── .mcp.json
|
|
162
|
+
├── package.json # Workspace root (si usa monorepo JS)
|
|
163
|
+
│ o pyproject.toml # Si el backend es Python
|
|
164
|
+
├── apps/
|
|
165
|
+
│ ├── backend/ # Ver estructura Python o Node arriba
|
|
166
|
+
│ ├── web/ # Ver estructura React/Angular arriba
|
|
167
|
+
│ └── mobile/ # Ver estructura Mobile arriba
|
|
168
|
+
└── packages/ # Código compartido entre apps
|
|
169
|
+
├── types/ # TypeScript types compartidos
|
|
170
|
+
└── ui/ # Componentes UI compartidos
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**Consideraciones para monorepos**:
|
|
174
|
+
- El CLAUDE.md raíz describe el monorepo completo
|
|
175
|
+
- Cada app puede tener su propio CLAUDE.md con instrucciones específicas
|
|
176
|
+
- Los comandos de desarrollo suelen incluir scripts de workspace (`npm -w apps/backend dev`)
|
|
177
|
+
- Considerar Turborepo o Nx para gestión de builds en monorepos grandes
|