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.
Files changed (71) hide show
  1. package/README.md +698 -20
  2. package/bin/install.js +0 -0
  3. package/flows/development-flow.json +452 -0
  4. package/flows/quick-flow.json +118 -0
  5. package/hooks/hooks-config-updated.json +285 -0
  6. package/hooks/skill-discovery.sh +539 -0
  7. package/package.json +3 -2
  8. package/references/SYSTEM_INDEX.md +400 -5
  9. package/references/agent-marketplace.md +2274 -0
  10. package/references/agent-protocol.md +1126 -0
  11. package/references/ai-code-suggestions.md +2413 -0
  12. package/references/checkpointing.md +595 -0
  13. package/references/collaboration-patterns.md +851 -0
  14. package/references/collaborative-sessions.md +1081 -0
  15. package/references/configuration-management.md +1810 -0
  16. package/references/cost-tracking.md +1095 -0
  17. package/references/enterprise-sso.md +2001 -0
  18. package/references/error-contracts-v2.md +968 -0
  19. package/references/event-driven.md +1031 -0
  20. package/references/flow-orchestration.md +940 -0
  21. package/references/flow-visualization.md +1557 -0
  22. package/references/ide-integrations.md +3513 -0
  23. package/references/interrupt-system.md +681 -0
  24. package/references/kubernetes-deployment.md +3099 -0
  25. package/references/memory-system.md +683 -0
  26. package/references/mobile-companion.md +3236 -0
  27. package/references/multi-llm-providers.md +2494 -0
  28. package/references/multi-project-memory.md +1182 -0
  29. package/references/observability.md +793 -0
  30. package/references/output-schemas.md +858 -0
  31. package/references/performance-profiler.md +955 -0
  32. package/references/plugin-system.md +1526 -0
  33. package/references/prompt-management.md +292 -0
  34. package/references/sandbox-execution.md +303 -0
  35. package/references/security-system.md +1253 -0
  36. package/references/skill-marketplace-integration.md +3901 -0
  37. package/references/streaming.md +696 -0
  38. package/references/testing-framework.md +1151 -0
  39. package/references/time-travel.md +802 -0
  40. package/references/tool-registry.md +886 -0
  41. package/references/voice-commands.md +3296 -0
  42. package/templates/agent-marketplace-config.json +220 -0
  43. package/templates/agent-protocol-config.json +136 -0
  44. package/templates/ai-suggestions-config.json +100 -0
  45. package/templates/checkpoint-state.json +61 -0
  46. package/templates/collaboration-config.json +157 -0
  47. package/templates/collaborative-sessions-config.json +153 -0
  48. package/templates/configuration-config.json +245 -0
  49. package/templates/cost-tracking-config.json +148 -0
  50. package/templates/enterprise-sso-config.json +438 -0
  51. package/templates/events-config.json +148 -0
  52. package/templates/flow-visualization-config.json +196 -0
  53. package/templates/ide-integrations-config.json +442 -0
  54. package/templates/kubernetes-config.json +764 -0
  55. package/templates/memory-state.json +84 -0
  56. package/templates/mobile-companion-config.json +600 -0
  57. package/templates/multi-llm-config.json +544 -0
  58. package/templates/multi-project-memory-config.json +145 -0
  59. package/templates/observability-config.json +109 -0
  60. package/templates/performance-profiler-config.json +125 -0
  61. package/templates/plugin-config.json +170 -0
  62. package/templates/prompt-management-config.json +86 -0
  63. package/templates/sandbox-config.json +185 -0
  64. package/templates/schemas-config.json +65 -0
  65. package/templates/security-config.json +120 -0
  66. package/templates/skill-marketplace-config.json +441 -0
  67. package/templates/streaming-config.json +72 -0
  68. package/templates/testing-config.json +81 -0
  69. package/templates/timetravel-config.json +62 -0
  70. package/templates/tool-registry-config.json +109 -0
  71. package/templates/voice-commands-config.json +658 -0
@@ -0,0 +1,153 @@
1
+ {
2
+ "collaborativeSessions": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "session": {
7
+ "maxParticipants": 10,
8
+ "idleTimeout": 300000,
9
+ "sessionTimeout": 86400000,
10
+ "requireApproval": false,
11
+ "allowAnonymous": false,
12
+ "autoSave": true,
13
+ "saveInterval": 30000,
14
+ "defaultType": "flow"
15
+ },
16
+
17
+ "realtime": {
18
+ "serverUrl": "wss://collab.elsabro.dev",
19
+ "reconnectBaseDelay": 1000,
20
+ "reconnectMaxDelay": 30000,
21
+ "maxReconnectAttempts": 10,
22
+ "heartbeatInterval": 30000,
23
+ "messageTimeout": 5000
24
+ },
25
+
26
+ "sync": {
27
+ "algorithm": "ot",
28
+ "batchUpdates": true,
29
+ "batchInterval": 100,
30
+ "maxBatchSize": 50,
31
+ "compressMessages": true,
32
+ "persistHistory": true,
33
+ "maxHistorySize": 1000
34
+ },
35
+
36
+ "conflict": {
37
+ "defaultStrategy": "last-write-wins",
38
+ "autoResolve": true,
39
+ "notifyOnConflict": true,
40
+ "retainConflictHistory": true,
41
+ "maxConflictAge": 3600000
42
+ },
43
+
44
+ "presence": {
45
+ "enabled": true,
46
+ "idleTimeout": 60000,
47
+ "awayTimeout": 300000,
48
+ "cursorBroadcastInterval": 50,
49
+ "showTypingIndicator": true,
50
+ "typingTimeout": 3000
51
+ },
52
+
53
+ "permissions": {
54
+ "defaultRole": "viewer",
55
+ "roles": {
56
+ "host": {
57
+ "canEdit": true,
58
+ "canInvite": true,
59
+ "canKick": true,
60
+ "canLock": true,
61
+ "canClose": true,
62
+ "canTransferHost": true
63
+ },
64
+ "editor": {
65
+ "canEdit": true,
66
+ "canInvite": false,
67
+ "canKick": false,
68
+ "canLock": true,
69
+ "canClose": false,
70
+ "canTransferHost": false
71
+ },
72
+ "viewer": {
73
+ "canEdit": false,
74
+ "canInvite": false,
75
+ "canKick": false,
76
+ "canLock": false,
77
+ "canClose": false,
78
+ "canTransferHost": false
79
+ }
80
+ }
81
+ },
82
+
83
+ "invitations": {
84
+ "enabled": true,
85
+ "expiresIn": 86400000,
86
+ "maxPending": 20,
87
+ "allowRevoke": true,
88
+ "notifyOnAccept": true
89
+ },
90
+
91
+ "locking": {
92
+ "enabled": true,
93
+ "autoRelease": true,
94
+ "autoReleaseTimeout": 60000,
95
+ "notifyOnLock": true,
96
+ "allowForceUnlock": true
97
+ },
98
+
99
+ "history": {
100
+ "enabled": true,
101
+ "maxEvents": 500,
102
+ "retentionDays": 30,
103
+ "exportEnabled": true
104
+ },
105
+
106
+ "ui": {
107
+ "showPresenceAvatars": true,
108
+ "showCursors": true,
109
+ "showActivityFeed": true,
110
+ "maxActivityItems": 50,
111
+ "cursorColors": [
112
+ "#ef4444",
113
+ "#f97316",
114
+ "#f59e0b",
115
+ "#84cc16",
116
+ "#22c55e",
117
+ "#14b8a6",
118
+ "#06b6d4",
119
+ "#3b82f6",
120
+ "#6366f1",
121
+ "#8b5cf6",
122
+ "#a855f7",
123
+ "#ec4899"
124
+ ],
125
+ "statusIndicators": {
126
+ "online": "🟢",
127
+ "busy": "🟡",
128
+ "away": "⚪",
129
+ "offline": "⚫"
130
+ }
131
+ },
132
+
133
+ "notifications": {
134
+ "onParticipantJoin": true,
135
+ "onParticipantLeave": true,
136
+ "onConflict": true,
137
+ "onLock": true,
138
+ "onHostTransfer": true,
139
+ "sound": false
140
+ },
141
+
142
+ "security": {
143
+ "requireAuth": true,
144
+ "encryptMessages": true,
145
+ "validateOrigin": true,
146
+ "rateLimit": {
147
+ "enabled": true,
148
+ "maxMessagesPerSecond": 50,
149
+ "maxConnectionsPerUser": 5
150
+ }
151
+ }
152
+ }
153
+ }
@@ -0,0 +1,245 @@
1
+ {
2
+ "configuration": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "manager": {
7
+ "environment": "development",
8
+ "sources": [
9
+ {
10
+ "type": "file",
11
+ "path": ".elsabro/config.json",
12
+ "format": "json",
13
+ "priority": 1,
14
+ "required": true
15
+ },
16
+ {
17
+ "type": "file",
18
+ "path": ".elsabro/config.local.json",
19
+ "format": "json",
20
+ "priority": 2,
21
+ "required": false
22
+ },
23
+ {
24
+ "type": "env",
25
+ "path": "ELSABRO",
26
+ "priority": 3
27
+ }
28
+ ],
29
+ "watchForChanges": true,
30
+ "reloadOnChange": true,
31
+ "mergeStrategy": "deep"
32
+ },
33
+
34
+ "featureFlags": {
35
+ "enabled": true,
36
+ "hashSeed": "elsabro-feature-flags",
37
+ "defaultFlags": {
38
+ "new-agent-ui": {
39
+ "name": "New Agent UI",
40
+ "description": "Enable the redesigned agent interface",
41
+ "enabled": true,
42
+ "tags": ["ui", "beta"]
43
+ },
44
+ "parallel-execution": {
45
+ "name": "Parallel Agent Execution",
46
+ "description": "Allow multiple agents to run simultaneously",
47
+ "enabled": true,
48
+ "tags": ["performance"]
49
+ },
50
+ "cost-optimization": {
51
+ "name": "Cost Optimization",
52
+ "description": "Enable automatic model selection for cost optimization",
53
+ "enabled": false,
54
+ "tags": ["cost", "experimental"],
55
+ "targeting": {
56
+ "rules": [
57
+ {
58
+ "attribute": "plan",
59
+ "operator": "eq",
60
+ "value": "enterprise",
61
+ "variant": "enabled"
62
+ }
63
+ ],
64
+ "defaultVariant": "disabled"
65
+ }
66
+ },
67
+ "advanced-debugging": {
68
+ "name": "Advanced Debugging",
69
+ "description": "Enable time-travel debugging features",
70
+ "enabled": false,
71
+ "tags": ["debugging", "experimental"],
72
+ "variants": {
73
+ "control": { "value": false, "weight": 90 },
74
+ "enabled": { "value": true, "weight": 10 }
75
+ }
76
+ }
77
+ },
78
+ "persistence": {
79
+ "enabled": true,
80
+ "path": ".elsabro/feature-flags.json"
81
+ }
82
+ },
83
+
84
+ "environments": {
85
+ "base": {
86
+ "name": "base",
87
+ "variables": {
88
+ "LOG_LEVEL": {
89
+ "value": "info",
90
+ "description": "Application log level",
91
+ "validation": {
92
+ "enum": ["debug", "info", "warn", "error"]
93
+ }
94
+ },
95
+ "LLM_MODEL": {
96
+ "value": "claude-sonnet-4-20250514",
97
+ "description": "Default LLM model"
98
+ },
99
+ "MAX_TOKENS": {
100
+ "value": "4096",
101
+ "description": "Maximum tokens per request",
102
+ "validation": {
103
+ "type": "number",
104
+ "min": 1,
105
+ "max": 200000
106
+ }
107
+ }
108
+ }
109
+ },
110
+ "development": {
111
+ "name": "development",
112
+ "inherits": "base",
113
+ "variables": {
114
+ "LOG_LEVEL": { "value": "debug" },
115
+ "DEBUG_MODE": { "value": "true" },
116
+ "API_TIMEOUT": { "value": "30000" }
117
+ }
118
+ },
119
+ "staging": {
120
+ "name": "staging",
121
+ "inherits": "base",
122
+ "variables": {
123
+ "LOG_LEVEL": { "value": "info" },
124
+ "API_URL": {
125
+ "value": "https://staging-api.example.com",
126
+ "validation": { "type": "url" }
127
+ },
128
+ "API_KEY": {
129
+ "secret": true,
130
+ "required": true
131
+ }
132
+ }
133
+ },
134
+ "production": {
135
+ "name": "production",
136
+ "inherits": "base",
137
+ "variables": {
138
+ "LOG_LEVEL": { "value": "warn" },
139
+ "API_URL": {
140
+ "value": "https://api.example.com",
141
+ "validation": { "type": "url" }
142
+ },
143
+ "API_KEY": {
144
+ "secret": true,
145
+ "required": true
146
+ },
147
+ "MAX_CONCURRENT_AGENTS": {
148
+ "value": "10",
149
+ "validation": {
150
+ "type": "number",
151
+ "min": 1,
152
+ "max": 50
153
+ }
154
+ }
155
+ }
156
+ }
157
+ },
158
+
159
+ "validation": {
160
+ "enabled": true,
161
+ "validateOnLoad": true,
162
+ "validateOnChange": true,
163
+ "coerceTypes": true,
164
+ "useDefaults": true,
165
+ "schemas": {
166
+ "llm": {
167
+ "type": "object",
168
+ "required": ["model"],
169
+ "properties": {
170
+ "model": {
171
+ "type": "string",
172
+ "description": "LLM model identifier"
173
+ },
174
+ "maxTokens": {
175
+ "type": "integer",
176
+ "minimum": 1,
177
+ "maximum": 200000,
178
+ "default": 4096
179
+ },
180
+ "temperature": {
181
+ "type": "number",
182
+ "minimum": 0,
183
+ "maximum": 1,
184
+ "default": 0.7
185
+ }
186
+ }
187
+ },
188
+ "agents": {
189
+ "type": "object",
190
+ "additionalProperties": {
191
+ "type": "object",
192
+ "properties": {
193
+ "enabled": { "type": "boolean", "default": true },
194
+ "model": { "type": "string" },
195
+ "maxIterations": { "type": "integer", "minimum": 1, "default": 10 }
196
+ }
197
+ }
198
+ }
199
+ }
200
+ },
201
+
202
+ "remoteConfig": {
203
+ "enabled": false,
204
+ "url": "https://config.example.com/elsabro",
205
+ "pollingInterval": 60000,
206
+ "timeout": 10000,
207
+ "retryAttempts": 3,
208
+ "retryDelay": 1000,
209
+ "cache": {
210
+ "enabled": true,
211
+ "ttl": 300000,
212
+ "fallbackOnError": true
213
+ },
214
+ "headers": {
215
+ "X-Config-Version": "1.0.0"
216
+ }
217
+ },
218
+
219
+ "watching": {
220
+ "enabled": true,
221
+ "debounce": 500,
222
+ "patterns": [
223
+ ".elsabro/config.json",
224
+ ".elsabro/config.*.json",
225
+ ".elsabro/feature-flags.json"
226
+ ],
227
+ "ignored": [
228
+ "*.log",
229
+ "*.tmp"
230
+ ]
231
+ },
232
+
233
+ "encryption": {
234
+ "enabled": false,
235
+ "algorithm": "aes-256-gcm",
236
+ "keySource": "env:ELSABRO_CONFIG_KEY"
237
+ },
238
+
239
+ "export": {
240
+ "formats": ["json", "yaml", "env"],
241
+ "includeSecrets": false,
242
+ "includeDefaults": true
243
+ }
244
+ }
245
+ }
@@ -0,0 +1,148 @@
1
+ {
2
+ "costTracking": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "tokenTracker": {
7
+ "enabled": true,
8
+ "persistence": {
9
+ "type": "file",
10
+ "path": ".elsabro/cost-data",
11
+ "format": "jsonl"
12
+ },
13
+ "retention": {
14
+ "maxRecords": 100000,
15
+ "maxAgeDays": 90
16
+ },
17
+ "aggregation": {
18
+ "realTime": true,
19
+ "batchSize": 100
20
+ }
21
+ },
22
+
23
+ "pricing": {
24
+ "currency": "USD",
25
+ "models": {
26
+ "claude-3-5-haiku-20241022": {
27
+ "input_per_million": 0.80,
28
+ "output_per_million": 4.00,
29
+ "cache_creation_per_million": 1.00,
30
+ "cache_read_per_million": 0.08
31
+ },
32
+ "claude-sonnet-4-20250514": {
33
+ "input_per_million": 3.00,
34
+ "output_per_million": 15.00,
35
+ "cache_creation_per_million": 3.75,
36
+ "cache_read_per_million": 0.30
37
+ },
38
+ "claude-opus-4-5-20251101": {
39
+ "input_per_million": 15.00,
40
+ "output_per_million": 75.00,
41
+ "cache_creation_per_million": 18.75,
42
+ "cache_read_per_million": 1.50
43
+ }
44
+ },
45
+ "autoUpdate": false
46
+ },
47
+
48
+ "budgets": {
49
+ "defaults": {
50
+ "session": {
51
+ "enabled": true,
52
+ "limit": 10.00,
53
+ "action_on_exceed": "warn"
54
+ },
55
+ "daily": {
56
+ "enabled": true,
57
+ "limit": 50.00,
58
+ "action_on_exceed": "pause"
59
+ },
60
+ "weekly": {
61
+ "enabled": false,
62
+ "limit": 200.00,
63
+ "action_on_exceed": "warn"
64
+ },
65
+ "monthly": {
66
+ "enabled": true,
67
+ "limit": 500.00,
68
+ "action_on_exceed": "stop"
69
+ }
70
+ },
71
+ "custom": []
72
+ },
73
+
74
+ "alerts": {
75
+ "thresholds": {
76
+ "warning": 80,
77
+ "critical": 95,
78
+ "exceeded": 100
79
+ },
80
+ "notifications": {
81
+ "console": true,
82
+ "interrupt": true,
83
+ "webhook": false,
84
+ "webhookUrl": null
85
+ },
86
+ "cooldown": {
87
+ "enabled": true,
88
+ "minutes": 15
89
+ }
90
+ },
91
+
92
+ "optimizer": {
93
+ "enabled": true,
94
+ "mode": "balanced",
95
+ "autoSelect": true,
96
+ "taskRouting": {
97
+ "explore": "haiku",
98
+ "search": "haiku",
99
+ "implement": "sonnet",
100
+ "review": "opus",
101
+ "architect": "opus"
102
+ },
103
+ "fallback": {
104
+ "enabled": true,
105
+ "onBudgetExceed": "downgrade",
106
+ "minimumTier": "haiku"
107
+ },
108
+ "learning": {
109
+ "enabled": true,
110
+ "adaptToUsage": true
111
+ }
112
+ },
113
+
114
+ "reporting": {
115
+ "enabled": true,
116
+ "dailySummary": {
117
+ "enabled": true,
118
+ "time": "23:59"
119
+ },
120
+ "weeklyReport": {
121
+ "enabled": true,
122
+ "dayOfWeek": "sunday"
123
+ },
124
+ "export": {
125
+ "formats": ["json", "csv"],
126
+ "autoExport": false
127
+ }
128
+ },
129
+
130
+ "dashboard": {
131
+ "enabled": true,
132
+ "refreshInterval": 5000,
133
+ "showRecommendations": true,
134
+ "compactMode": false
135
+ },
136
+
137
+ "integrations": {
138
+ "telemetry": {
139
+ "enabled": true,
140
+ "emitMetrics": true
141
+ },
142
+ "events": {
143
+ "enabled": true,
144
+ "topics": ["cost.usage.recorded", "cost.budget.alert", "cost.model.downgraded"]
145
+ }
146
+ }
147
+ }
148
+ }