elsabro 2.3.0 → 3.8.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/README.md +698 -20
- package/bin/install.js +0 -0
- package/flows/development-flow.json +452 -0
- package/flows/quick-flow.json +118 -0
- package/hooks/hooks-config-updated.json +285 -0
- package/hooks/skill-discovery.sh +539 -0
- package/package.json +3 -2
- package/references/SYSTEM_INDEX.md +400 -5
- package/references/agent-marketplace.md +2274 -0
- package/references/agent-protocol.md +1126 -0
- package/references/ai-code-suggestions.md +2413 -0
- package/references/checkpointing.md +595 -0
- package/references/collaboration-patterns.md +851 -0
- package/references/collaborative-sessions.md +1081 -0
- package/references/configuration-management.md +1810 -0
- package/references/cost-tracking.md +1095 -0
- package/references/enterprise-sso.md +2001 -0
- package/references/error-contracts-v2.md +968 -0
- package/references/event-driven.md +1031 -0
- package/references/flow-orchestration.md +940 -0
- package/references/flow-visualization.md +1557 -0
- package/references/ide-integrations.md +3513 -0
- package/references/interrupt-system.md +681 -0
- package/references/kubernetes-deployment.md +3099 -0
- package/references/memory-system.md +683 -0
- package/references/mobile-companion.md +3236 -0
- package/references/multi-llm-providers.md +2494 -0
- package/references/multi-project-memory.md +1182 -0
- package/references/observability.md +793 -0
- package/references/output-schemas.md +858 -0
- package/references/performance-profiler.md +955 -0
- package/references/plugin-system.md +1526 -0
- package/references/prompt-management.md +292 -0
- package/references/sandbox-execution.md +303 -0
- package/references/security-system.md +1253 -0
- package/references/skill-marketplace-integration.md +3901 -0
- package/references/streaming.md +696 -0
- package/references/testing-framework.md +1151 -0
- package/references/time-travel.md +802 -0
- package/references/tool-registry.md +886 -0
- package/references/voice-commands.md +3296 -0
- package/templates/agent-marketplace-config.json +220 -0
- package/templates/agent-protocol-config.json +136 -0
- package/templates/ai-suggestions-config.json +100 -0
- package/templates/checkpoint-state.json +61 -0
- package/templates/collaboration-config.json +157 -0
- package/templates/collaborative-sessions-config.json +153 -0
- package/templates/configuration-config.json +245 -0
- package/templates/cost-tracking-config.json +148 -0
- package/templates/enterprise-sso-config.json +438 -0
- package/templates/events-config.json +148 -0
- package/templates/flow-visualization-config.json +196 -0
- package/templates/ide-integrations-config.json +442 -0
- package/templates/kubernetes-config.json +764 -0
- package/templates/memory-state.json +84 -0
- package/templates/mobile-companion-config.json +600 -0
- package/templates/multi-llm-config.json +544 -0
- package/templates/multi-project-memory-config.json +145 -0
- package/templates/observability-config.json +109 -0
- package/templates/performance-profiler-config.json +125 -0
- package/templates/plugin-config.json +170 -0
- package/templates/prompt-management-config.json +86 -0
- package/templates/sandbox-config.json +185 -0
- package/templates/schemas-config.json +65 -0
- package/templates/security-config.json +120 -0
- package/templates/skill-marketplace-config.json +441 -0
- package/templates/streaming-config.json +72 -0
- package/templates/testing-config.json +81 -0
- package/templates/timetravel-config.json +62 -0
- package/templates/tool-registry-config.json +109 -0
- package/templates/voice-commands-config.json +658 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"description": "ELSABRO Hooks Configuration v2.0 - Con integración de Skill Discovery",
|
|
4
|
+
"version": "2.0.0",
|
|
5
|
+
|
|
6
|
+
"hooks": {
|
|
7
|
+
"PreFlow": [
|
|
8
|
+
{
|
|
9
|
+
"id": "skill-discovery-pre-flow",
|
|
10
|
+
"name": "skill-discovery",
|
|
11
|
+
"description": "Descubrir y cargar skills antes de ejecutar flujo",
|
|
12
|
+
"matcher": "FlowStart",
|
|
13
|
+
"flows": ["start", "plan", "execute", "verify"],
|
|
14
|
+
"command": "bash ./hooks/skill-discovery.sh \"{{inputs.task}}\" \"{{inputs.complexity}}\"",
|
|
15
|
+
"timeout": 30000,
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"output": {
|
|
18
|
+
"type": "json",
|
|
19
|
+
"inject_into": ["state.discoveredSkills", "state.skillContext"]
|
|
20
|
+
},
|
|
21
|
+
"errorPolicy": "continue",
|
|
22
|
+
"cacheable": true,
|
|
23
|
+
"cache_ttl": 3600
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
|
|
27
|
+
"PostToolUse": [
|
|
28
|
+
{
|
|
29
|
+
"id": "auto-test-on-edit",
|
|
30
|
+
"name": "auto-test-on-edit",
|
|
31
|
+
"description": "Ejecuta tests automaticamente despues de editar codigo",
|
|
32
|
+
"matcher": "Write|Edit",
|
|
33
|
+
"command": "./hooks/post-edit-test.sh",
|
|
34
|
+
"timeout": 30000,
|
|
35
|
+
"enabled": true
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"id": "lint-on-save",
|
|
39
|
+
"name": "lint-on-save",
|
|
40
|
+
"description": "Ejecuta linter automaticamente despues de escribir",
|
|
41
|
+
"matcher": "Write",
|
|
42
|
+
"command": "./hooks/lint-check.sh",
|
|
43
|
+
"timeout": 10000,
|
|
44
|
+
"enabled": true
|
|
45
|
+
}
|
|
46
|
+
],
|
|
47
|
+
|
|
48
|
+
"PreToolUse": [
|
|
49
|
+
{
|
|
50
|
+
"id": "confirm-destructive",
|
|
51
|
+
"name": "confirm-destructive",
|
|
52
|
+
"description": "Confirmar antes de operaciones destructivas",
|
|
53
|
+
"matcher": "Bash",
|
|
54
|
+
"pattern": "rm -rf|git reset --hard|git clean -fd|git push --force|drop table|truncate",
|
|
55
|
+
"command": "./hooks/confirm-destructive.sh",
|
|
56
|
+
"timeout": 60000,
|
|
57
|
+
"enabled": true
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
|
|
61
|
+
"Notification": [
|
|
62
|
+
{
|
|
63
|
+
"id": "task-complete-notify",
|
|
64
|
+
"name": "task-complete-notify",
|
|
65
|
+
"description": "Notifica cuando una tarea larga termina",
|
|
66
|
+
"command": "./hooks/notify-complete.sh",
|
|
67
|
+
"enabled": false
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
|
|
72
|
+
"profiles": {
|
|
73
|
+
"development": {
|
|
74
|
+
"description": "Perfil balanceado para desarrollo diario con skill discovery",
|
|
75
|
+
"auto-test-on-edit": true,
|
|
76
|
+
"lint-on-save": true,
|
|
77
|
+
"confirm-destructive": true,
|
|
78
|
+
"skill-discovery": true
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
"fast": {
|
|
82
|
+
"description": "Perfil rápido sin verificaciones (skill discovery deshabilitado)",
|
|
83
|
+
"auto-test-on-edit": false,
|
|
84
|
+
"lint-on-save": false,
|
|
85
|
+
"confirm-destructive": false,
|
|
86
|
+
"skill-discovery": false
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
"careful": {
|
|
90
|
+
"description": "Perfil estricto con todas las verificaciones y skill discovery",
|
|
91
|
+
"auto-test-on-edit": true,
|
|
92
|
+
"lint-on-save": true,
|
|
93
|
+
"confirm-destructive": true,
|
|
94
|
+
"skill-discovery": true,
|
|
95
|
+
"skill-discovery-strict": true
|
|
96
|
+
},
|
|
97
|
+
|
|
98
|
+
"ci": {
|
|
99
|
+
"description": "Perfil para integración continua (skill discovery habilitado)",
|
|
100
|
+
"auto-test-on-edit": true,
|
|
101
|
+
"lint-on-save": true,
|
|
102
|
+
"confirm-destructive": false,
|
|
103
|
+
"skill-discovery": true
|
|
104
|
+
},
|
|
105
|
+
|
|
106
|
+
"skills-only": {
|
|
107
|
+
"description": "Perfil para solo usar skill discovery sin otros hooks",
|
|
108
|
+
"skill-discovery": true,
|
|
109
|
+
"auto-test-on-edit": false,
|
|
110
|
+
"lint-on-save": false,
|
|
111
|
+
"confirm-destructive": false
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
|
|
115
|
+
"settings": {
|
|
116
|
+
"defaultProfile": "development",
|
|
117
|
+
"logHookExecution": true,
|
|
118
|
+
"continueOnHookFailure": true,
|
|
119
|
+
"parallelHooks": false,
|
|
120
|
+
"skillDiscovery": {
|
|
121
|
+
"enabled": true,
|
|
122
|
+
"maxSkills": 10,
|
|
123
|
+
"minKeywordMatch": 1,
|
|
124
|
+
"externalApiTimeout": 15000,
|
|
125
|
+
"cacheTtl": 3600,
|
|
126
|
+
"sources": ["elsabro", "external", "cache"],
|
|
127
|
+
"rankingAlgorithm": "weighted_score"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
|
|
131
|
+
"skillDiscoveryConfig": {
|
|
132
|
+
"description": "Configuración específica para skill discovery",
|
|
133
|
+
"keywords": {
|
|
134
|
+
"categories": [
|
|
135
|
+
{
|
|
136
|
+
"id": "api",
|
|
137
|
+
"keywords": ["api", "backend", "endpoint", "rest", "graphql", "http", "server"]
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"id": "auth",
|
|
141
|
+
"keywords": ["auth", "login", "signin", "oauth", "jwt", "session", "password"]
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"id": "db",
|
|
145
|
+
"keywords": ["database", "db", "postgres", "mysql", "mongodb", "firebase"]
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"id": "payments",
|
|
149
|
+
"keywords": ["payment", "stripe", "paypal", "billing", "checkout", "commerce"]
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"id": "mobile",
|
|
153
|
+
"keywords": ["mobile", "expo", "react-native", "ios", "android", "app"]
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"id": "web",
|
|
157
|
+
"keywords": ["website", "web", "nextjs", "react", "vue", "angular", "frontend"]
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"id": "devops",
|
|
161
|
+
"keywords": ["devops", "docker", "kubernetes", "ci", "cd", "github", "deploy"]
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"id": "testing",
|
|
165
|
+
"keywords": ["test", "jest", "vitest", "mocha", "pytest", "coverage"]
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"id": "security",
|
|
169
|
+
"keywords": ["security", "encrypt", "https", "cors", "ssl", "auth"]
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"id": "monitoring",
|
|
173
|
+
"keywords": ["monitor", "sentry", "logging", "error", "analytics"]
|
|
174
|
+
}
|
|
175
|
+
]
|
|
176
|
+
},
|
|
177
|
+
"ranking": {
|
|
178
|
+
"algorithm": "weighted_score",
|
|
179
|
+
"weights": {
|
|
180
|
+
"match_score": 100,
|
|
181
|
+
"difficulty_beginner": 50,
|
|
182
|
+
"difficulty_intermediate": 30,
|
|
183
|
+
"difficulty_advanced": 10,
|
|
184
|
+
"source_elsabro": 20,
|
|
185
|
+
"source_external": 5,
|
|
186
|
+
"requires_installation": -10
|
|
187
|
+
},
|
|
188
|
+
"maxSkills": 10,
|
|
189
|
+
"minScore": 0
|
|
190
|
+
},
|
|
191
|
+
"sources": {
|
|
192
|
+
"elsabro": {
|
|
193
|
+
"enabled": true,
|
|
194
|
+
"path": "./skills",
|
|
195
|
+
"filePattern": "*.md",
|
|
196
|
+
"metadataFormat": "yaml_frontmatter",
|
|
197
|
+
"priority": 1
|
|
198
|
+
},
|
|
199
|
+
"external": {
|
|
200
|
+
"enabled": true,
|
|
201
|
+
"api_url": "https://api.skills.sh/v1/discover",
|
|
202
|
+
"api_timeout": 15000,
|
|
203
|
+
"priority": 2,
|
|
204
|
+
"fallback_to_cache": true
|
|
205
|
+
},
|
|
206
|
+
"cache": {
|
|
207
|
+
"enabled": true,
|
|
208
|
+
"path": "./.cache/skills-discovery-cache.json",
|
|
209
|
+
"ttl": 3600
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
"output": {
|
|
213
|
+
"format": "json",
|
|
214
|
+
"includeMetadata": true,
|
|
215
|
+
"includeTags": true,
|
|
216
|
+
"includeRanking": true,
|
|
217
|
+
"maxRecommendations": 5
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
|
|
221
|
+
"flowEngineIntegration": {
|
|
222
|
+
"description": "Configuración de integración con Flow Engine",
|
|
223
|
+
"enabled": true,
|
|
224
|
+
"nodePosition": "before:load_context",
|
|
225
|
+
"nodeId": "skill_discovery",
|
|
226
|
+
"injectInto": [
|
|
227
|
+
{
|
|
228
|
+
"node": "load_context",
|
|
229
|
+
"field": "context.availableSkills"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"node": "load_context",
|
|
233
|
+
"field": "context.skillContext"
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"branches": ["standard_analyze", "careful_analyze"],
|
|
237
|
+
"inputs": {
|
|
238
|
+
"available_skills": "state.skillContext",
|
|
239
|
+
"skill_recommendations": "state.discoveredSkills[*].id"
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
],
|
|
243
|
+
"displayResults": true,
|
|
244
|
+
"displayNode": {
|
|
245
|
+
"id": "display_skill_discovery",
|
|
246
|
+
"type": "display",
|
|
247
|
+
"position": "after:skill_discovery",
|
|
248
|
+
"title": "🎯 Skills Descubiertos",
|
|
249
|
+
"showKeywords": true,
|
|
250
|
+
"showCount": true,
|
|
251
|
+
"showRecommendations": true,
|
|
252
|
+
"showSources": true
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
|
|
256
|
+
"installation": {
|
|
257
|
+
"instructions": [
|
|
258
|
+
"1. Copiar este archivo a ~/.claude/hooks/hooks-config.json",
|
|
259
|
+
"2. O referenciar desde settings.json: \"hooks\": {\"configPath\": \".planning/hooks/hooks-config-updated.json\"}",
|
|
260
|
+
"3. Otorgar permisos al hook: chmod +x ./hooks/skill-discovery.sh",
|
|
261
|
+
"4. Verificar instalación: bash ./hooks/skill-discovery.sh 'test api' 'medium'"
|
|
262
|
+
],
|
|
263
|
+
"settingsPath": "~/.claude/settings.json",
|
|
264
|
+
"elsabroPath": ".planning/hooks/",
|
|
265
|
+
"requirements": {
|
|
266
|
+
"bash": "4.0+",
|
|
267
|
+
"jq": "latest (para JSON processing)",
|
|
268
|
+
"curl": "latest (para API calls)",
|
|
269
|
+
"md5": "para hash de caché"
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
"migration": {
|
|
274
|
+
"description": "Guía para migrar desde hooks-config.json (v1) a v2",
|
|
275
|
+
"steps": [
|
|
276
|
+
"1. Respaldar hooks-config.json actual",
|
|
277
|
+
"2. Reemplazar con hooks-config-updated.json",
|
|
278
|
+
"3. Otorgar permisos a skill-discovery.sh: chmod +x ./hooks/skill-discovery.sh",
|
|
279
|
+
"4. Actualizar development-flow.json con nodo skill_discovery",
|
|
280
|
+
"5. Probar: /elsabro:plan 'test api' con profile=development",
|
|
281
|
+
"6. Si todo funciona, renombrar a hooks-config.json"
|
|
282
|
+
],
|
|
283
|
+
"rollback": "Restaurar hooks-config.json anterior si hay errores"
|
|
284
|
+
}
|
|
285
|
+
}
|