elsabro 2.2.0 → 3.7.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 (88) hide show
  1. package/README.md +668 -20
  2. package/agents/elsabro-orchestrator.md +113 -0
  3. package/bin/install.js +0 -0
  4. package/commands/elsabro/execute.md +223 -46
  5. package/commands/elsabro/start.md +34 -0
  6. package/commands/elsabro/verify-work.md +29 -0
  7. package/flows/development-flow.json +452 -0
  8. package/flows/quick-flow.json +118 -0
  9. package/hooks/confirm-destructive.sh +145 -0
  10. package/hooks/hooks-config.json +81 -0
  11. package/hooks/lint-check.sh +238 -0
  12. package/hooks/post-edit-test.sh +189 -0
  13. package/package.json +5 -3
  14. package/references/SYSTEM_INDEX.md +379 -5
  15. package/references/agent-marketplace.md +2274 -0
  16. package/references/agent-protocol.md +1126 -0
  17. package/references/ai-code-suggestions.md +2413 -0
  18. package/references/checkpointing.md +595 -0
  19. package/references/collaboration-patterns.md +851 -0
  20. package/references/collaborative-sessions.md +1081 -0
  21. package/references/configuration-management.md +1810 -0
  22. package/references/cost-tracking.md +1095 -0
  23. package/references/enterprise-sso.md +2001 -0
  24. package/references/error-contracts-tests.md +1171 -0
  25. package/references/error-contracts-v2.md +968 -0
  26. package/references/error-contracts.md +3102 -0
  27. package/references/event-driven.md +1031 -0
  28. package/references/flow-orchestration.md +940 -0
  29. package/references/flow-visualization.md +1557 -0
  30. package/references/ide-integrations.md +3513 -0
  31. package/references/interrupt-system.md +681 -0
  32. package/references/kubernetes-deployment.md +3099 -0
  33. package/references/memory-system.md +683 -0
  34. package/references/mobile-companion.md +3236 -0
  35. package/references/multi-llm-providers.md +2494 -0
  36. package/references/multi-project-memory.md +1182 -0
  37. package/references/observability.md +793 -0
  38. package/references/output-schemas.md +858 -0
  39. package/references/parallel-worktrees.md +293 -0
  40. package/references/performance-profiler.md +955 -0
  41. package/references/plugin-system.md +1526 -0
  42. package/references/prompt-management.md +292 -0
  43. package/references/sandbox-execution.md +303 -0
  44. package/references/security-system.md +1253 -0
  45. package/references/streaming.md +696 -0
  46. package/references/testing-framework.md +1151 -0
  47. package/references/time-travel.md +802 -0
  48. package/references/tool-registry.md +886 -0
  49. package/references/voice-commands.md +3296 -0
  50. package/scripts/setup-parallel-worktrees.sh +319 -0
  51. package/skills/memory-update.md +207 -0
  52. package/skills/review.md +331 -0
  53. package/skills/techdebt.md +289 -0
  54. package/skills/tutor.md +219 -0
  55. package/templates/.planning/notes/.gitkeep +0 -0
  56. package/templates/CLAUDE.md.template +48 -0
  57. package/templates/agent-marketplace-config.json +220 -0
  58. package/templates/agent-protocol-config.json +136 -0
  59. package/templates/ai-suggestions-config.json +100 -0
  60. package/templates/checkpoint-state.json +61 -0
  61. package/templates/collaboration-config.json +157 -0
  62. package/templates/collaborative-sessions-config.json +153 -0
  63. package/templates/configuration-config.json +245 -0
  64. package/templates/cost-tracking-config.json +148 -0
  65. package/templates/enterprise-sso-config.json +438 -0
  66. package/templates/error-handling-config.json +79 -2
  67. package/templates/events-config.json +148 -0
  68. package/templates/flow-visualization-config.json +196 -0
  69. package/templates/ide-integrations-config.json +442 -0
  70. package/templates/kubernetes-config.json +764 -0
  71. package/templates/memory-state.json +84 -0
  72. package/templates/mistakes.md.template +52 -0
  73. package/templates/mobile-companion-config.json +600 -0
  74. package/templates/multi-llm-config.json +544 -0
  75. package/templates/multi-project-memory-config.json +145 -0
  76. package/templates/observability-config.json +109 -0
  77. package/templates/patterns.md.template +114 -0
  78. package/templates/performance-profiler-config.json +125 -0
  79. package/templates/plugin-config.json +170 -0
  80. package/templates/prompt-management-config.json +86 -0
  81. package/templates/sandbox-config.json +185 -0
  82. package/templates/schemas-config.json +65 -0
  83. package/templates/security-config.json +120 -0
  84. package/templates/streaming-config.json +72 -0
  85. package/templates/testing-config.json +81 -0
  86. package/templates/timetravel-config.json +62 -0
  87. package/templates/tool-registry-config.json +109 -0
  88. package/templates/voice-commands-config.json +658 -0
@@ -0,0 +1,185 @@
1
+ {
2
+ "sandbox": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "defaultProvider": "docker",
7
+ "defaultTimeout": 30000,
8
+
9
+ "defaultResources": {
10
+ "cpu": {
11
+ "cores": 1,
12
+ "percent": 100
13
+ },
14
+ "memory": {
15
+ "limitMb": 512,
16
+ "reservationMb": 256
17
+ },
18
+ "disk": {
19
+ "limitMb": 1024,
20
+ "readOnly": false
21
+ },
22
+ "pids": 100
23
+ },
24
+
25
+ "defaultNetwork": {
26
+ "enabled": false,
27
+ "allowedHosts": [],
28
+ "blockedPorts": [22, 23, 25, 3389],
29
+ "rateLimit": {
30
+ "bytesPerSecond": 1048576
31
+ }
32
+ },
33
+
34
+ "providers": {
35
+ "docker": {
36
+ "enabled": true,
37
+ "socketPath": "/var/run/docker.sock",
38
+ "pullPolicy": "if-not-present",
39
+ "cleanupPolicy": "always",
40
+ "defaultLabels": {
41
+ "managed-by": "elsabro",
42
+ "sandbox": "true"
43
+ }
44
+ },
45
+ "e2b": {
46
+ "enabled": false,
47
+ "apiKey": null,
48
+ "baseUrl": "https://api.e2b.dev",
49
+ "defaultTemplate": "base"
50
+ },
51
+ "firecracker": {
52
+ "enabled": false,
53
+ "socketPath": "/run/firecracker.sock",
54
+ "kernelPath": "/var/lib/firecracker/vmlinux",
55
+ "rootfsPath": "/var/lib/firecracker/rootfs.ext4"
56
+ },
57
+ "process": {
58
+ "enabled": true,
59
+ "allowUnsafe": false,
60
+ "tempDirectory": null
61
+ },
62
+ "wasm": {
63
+ "enabled": false,
64
+ "runtime": "wasmtime",
65
+ "maxMemoryMb": 256
66
+ }
67
+ },
68
+
69
+ "languageDefaults": {
70
+ "python": {
71
+ "image": "python:3.11-slim",
72
+ "timeout": 60000,
73
+ "entrypoint": "python",
74
+ "fileExtension": ".py",
75
+ "installCommand": ["pip", "install"]
76
+ },
77
+ "javascript": {
78
+ "image": "node:20-slim",
79
+ "timeout": 30000,
80
+ "entrypoint": "node",
81
+ "fileExtension": ".js",
82
+ "installCommand": ["npm", "install"]
83
+ },
84
+ "typescript": {
85
+ "image": "node:20-slim",
86
+ "timeout": 45000,
87
+ "entrypoint": "npx",
88
+ "entrypointArgs": ["ts-node"],
89
+ "fileExtension": ".ts",
90
+ "installCommand": ["npm", "install"]
91
+ },
92
+ "ruby": {
93
+ "image": "ruby:3.2-slim",
94
+ "timeout": 30000,
95
+ "entrypoint": "ruby",
96
+ "fileExtension": ".rb",
97
+ "installCommand": ["gem", "install"]
98
+ },
99
+ "go": {
100
+ "image": "golang:1.21-alpine",
101
+ "timeout": 60000,
102
+ "entrypoint": "go",
103
+ "entrypointArgs": ["run"],
104
+ "fileExtension": ".go",
105
+ "installCommand": ["go", "get"]
106
+ },
107
+ "rust": {
108
+ "image": "rust:1.75-slim",
109
+ "timeout": 120000,
110
+ "entrypoint": "cargo",
111
+ "entrypointArgs": ["script"],
112
+ "fileExtension": ".rs",
113
+ "installCommand": ["cargo", "add"]
114
+ },
115
+ "java": {
116
+ "image": "openjdk:21-slim",
117
+ "timeout": 60000,
118
+ "entrypoint": "java",
119
+ "fileExtension": ".java",
120
+ "installCommand": null
121
+ },
122
+ "bash": {
123
+ "image": "ubuntu:22.04",
124
+ "timeout": 30000,
125
+ "entrypoint": "bash",
126
+ "fileExtension": ".sh",
127
+ "installCommand": ["apt-get", "install", "-y"]
128
+ }
129
+ },
130
+
131
+ "security": {
132
+ "dropAllCapabilities": true,
133
+ "noNewPrivileges": true,
134
+ "readOnlyRootfs": false,
135
+ "seccompProfile": "default",
136
+ "apparmorProfile": null,
137
+ "userNamespace": true,
138
+ "maxFileSizeBytes": 104857600,
139
+ "blockedSyscalls": [],
140
+ "allowedMounts": []
141
+ },
142
+
143
+ "artifacts": {
144
+ "enabled": true,
145
+ "collectOnComplete": true,
146
+ "maxSizeBytes": 52428800,
147
+ "allowedExtensions": [
148
+ ".json", ".txt", ".md", ".csv", ".html",
149
+ ".png", ".jpg", ".gif", ".svg", ".pdf"
150
+ ],
151
+ "storageDirectory": ".elsabro/sandbox-artifacts"
152
+ },
153
+
154
+ "sessions": {
155
+ "enabled": true,
156
+ "maxConcurrent": 5,
157
+ "idleTimeout": 300000,
158
+ "maxDuration": 3600000,
159
+ "historySize": 1000
160
+ },
161
+
162
+ "logging": {
163
+ "enabled": true,
164
+ "level": "info",
165
+ "captureStdout": true,
166
+ "captureStderr": true,
167
+ "maxLogSize": 1048576
168
+ },
169
+
170
+ "metrics": {
171
+ "enabled": true,
172
+ "collectResourceUsage": true,
173
+ "collectTimings": true,
174
+ "reportInterval": 5000
175
+ },
176
+
177
+ "cleanup": {
178
+ "onComplete": true,
179
+ "onError": true,
180
+ "onTimeout": true,
181
+ "orphanedContainersTTL": 3600000,
182
+ "tempFilesTTL": 86400000
183
+ }
184
+ }
185
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "schemas": {
3
+ "version": "1.0.0",
4
+
5
+ "validation": {
6
+ "strict": true,
7
+ "coerceTypes": true,
8
+ "applyDefaults": true,
9
+ "removeAdditional": false,
10
+ "retryOnError": true,
11
+ "maxRetries": 2
12
+ },
13
+
14
+ "customSchemas": {
15
+ "directory": ".planning/schemas/",
16
+ "autoLoad": true,
17
+ "watchForChanges": false
18
+ },
19
+
20
+ "agentDefaults": {
21
+ "elsabro-analyst": "analysis",
22
+ "elsabro-executor": "implementation",
23
+ "elsabro-verifier": "verification",
24
+ "elsabro-planner": "plan",
25
+ "elsabro-qa": "verification",
26
+ "elsabro-debugger": "implementation",
27
+ "code-reviewer": "review",
28
+ "pr-review-toolkit:code-reviewer": "review",
29
+ "pr-review-toolkit:silent-failure-hunter": "review",
30
+ "Explore": "analysis",
31
+ "Plan": "plan",
32
+ "feature-dev:code-explorer": "analysis",
33
+ "feature-dev:code-architect": "plan"
34
+ },
35
+
36
+ "predefinedSchemas": {
37
+ "analysis": {
38
+ "description": "Output schema for analysis agents",
39
+ "requiredFields": ["summary", "files", "recommendations"]
40
+ },
41
+ "implementation": {
42
+ "description": "Output schema for implementation agents",
43
+ "requiredFields": ["success"]
44
+ },
45
+ "review": {
46
+ "description": "Output schema for code review agents",
47
+ "requiredFields": ["approved", "issues", "summary", "recommendation"]
48
+ },
49
+ "verification": {
50
+ "description": "Output schema for verification agents",
51
+ "requiredFields": ["passed", "tests", "typescript", "lint"]
52
+ },
53
+ "plan": {
54
+ "description": "Output schema for planning agents",
55
+ "requiredFields": ["phases"]
56
+ }
57
+ },
58
+
59
+ "errorHandling": {
60
+ "onValidationFail": "retry",
61
+ "fallbackBehavior": "warn",
62
+ "logErrors": true
63
+ }
64
+ }
65
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "security": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "rbac": {
7
+ "enabled": true,
8
+ "defaultRole": "agent:explore",
9
+ "enforceOnAgents": true,
10
+ "enforceOnTools": true,
11
+ "builtinRoles": {
12
+ "admin": { "enabled": true },
13
+ "agent:explore": { "enabled": true },
14
+ "agent:implement": { "enabled": true },
15
+ "agent:review": { "enabled": true }
16
+ },
17
+ "inheritance": {
18
+ "enabled": true,
19
+ "maxDepth": 5
20
+ }
21
+ },
22
+
23
+ "secrets": {
24
+ "enabled": true,
25
+ "vaultPath": ".elsabro/vault.enc",
26
+ "encryption": {
27
+ "algorithm": "aes-256-gcm",
28
+ "keyDerivation": "scrypt"
29
+ },
30
+ "rotation": {
31
+ "enabled": true,
32
+ "checkInterval": 86400000,
33
+ "notifyBefore": 7,
34
+ "autoRotate": false
35
+ },
36
+ "access": {
37
+ "logAccess": true,
38
+ "requirePrincipal": true,
39
+ "maxAccessPerHour": 100
40
+ }
41
+ },
42
+
43
+ "audit": {
44
+ "enabled": true,
45
+ "logPath": ".elsabro/audit.log",
46
+ "maxMemoryEvents": 10000,
47
+ "retention": {
48
+ "days": 90,
49
+ "archivePath": ".elsabro/audit-archive"
50
+ },
51
+ "alerts": {
52
+ "enabled": true,
53
+ "multipleAuthFailures": {
54
+ "threshold": 5,
55
+ "windowMinutes": 5
56
+ },
57
+ "permissionDenialSpike": {
58
+ "threshold": 10,
59
+ "windowMinutes": 1
60
+ },
61
+ "sensitiveAccess": {
62
+ "enabled": true,
63
+ "resources": ["secret:*", "config:*", "admin:*"]
64
+ }
65
+ },
66
+ "export": {
67
+ "formats": ["json", "csv"],
68
+ "autoExport": false
69
+ }
70
+ },
71
+
72
+ "policies": {
73
+ "enabled": true,
74
+ "policiesPath": ".elsabro/policies.json",
75
+ "defaultEffect": "deny",
76
+ "caching": {
77
+ "enabled": true,
78
+ "ttl": 60000
79
+ },
80
+ "rateLimiting": {
81
+ "enabled": true,
82
+ "cleanupInterval": 300000
83
+ },
84
+ "builtinPolicies": [
85
+ {
86
+ "name": "allow-read-all",
87
+ "effect": "allow",
88
+ "principals": ["*"],
89
+ "resources": ["file:*"],
90
+ "actions": ["read"],
91
+ "priority": 1
92
+ },
93
+ {
94
+ "name": "deny-write-system",
95
+ "effect": "deny",
96
+ "principals": ["agent:*"],
97
+ "resources": ["system:*", "config:*"],
98
+ "actions": ["write", "delete"],
99
+ "priority": 100
100
+ }
101
+ ]
102
+ },
103
+
104
+ "sessions": {
105
+ "enabled": true,
106
+ "timeout": 3600000,
107
+ "maxConcurrent": 10,
108
+ "trackActivity": true
109
+ },
110
+
111
+ "encryption": {
112
+ "atRest": true,
113
+ "inTransit": true,
114
+ "keyRotation": {
115
+ "enabled": false,
116
+ "intervalDays": 90
117
+ }
118
+ }
119
+ }
120
+ }
@@ -0,0 +1,72 @@
1
+ {
2
+ "streaming": {
3
+ "enabled": true,
4
+ "mode": "messages",
5
+ "throttle": 100,
6
+ "buffer": true,
7
+ "maxBufferSize": 100,
8
+
9
+ "display": {
10
+ "showProgress": true,
11
+ "showAgents": true,
12
+ "showTimestamps": false,
13
+ "showDurations": true,
14
+ "progressBarWidth": 20,
15
+ "colorize": true,
16
+ "icons": {
17
+ "flow_started": "🚀",
18
+ "flow_complete": "✅",
19
+ "flow_failed": "❌",
20
+ "node_started": "⚙️",
21
+ "node_complete": "✓",
22
+ "agent_started": " ├─",
23
+ "agent_complete": " ├─",
24
+ "progress": "📊",
25
+ "checkpoint": "💾",
26
+ "interrupt": "⏸️",
27
+ "error": "⚠️",
28
+ "warning": "⚡",
29
+ "parallel": "🔀"
30
+ }
31
+ },
32
+
33
+ "formats": {
34
+ "values": {
35
+ "includeState": true,
36
+ "includeTimestamp": true,
37
+ "prettyPrint": false
38
+ },
39
+ "updates": {
40
+ "includeContext": true,
41
+ "includeTimestamp": true
42
+ },
43
+ "messages": {
44
+ "template": "{icon} {message}",
45
+ "progressTemplate": "{icon} Progress: {bar} {percent}%",
46
+ "durationFormat": "auto"
47
+ }
48
+ },
49
+
50
+ "subscribers": {
51
+ "console": {
52
+ "enabled": true,
53
+ "level": "INFO"
54
+ },
55
+ "file": {
56
+ "enabled": false,
57
+ "path": ".planning/stream.log",
58
+ "format": "jsonl"
59
+ },
60
+ "websocket": {
61
+ "enabled": false,
62
+ "port": 8080
63
+ }
64
+ },
65
+
66
+ "filters": {
67
+ "minLevel": "INFO",
68
+ "includeTypes": [],
69
+ "excludeTypes": []
70
+ }
71
+ }
72
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "testing": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "runner": {
7
+ "testDir": ".elsabro/tests",
8
+ "defaultTimeout": 30000,
9
+ "stopOnFirstFailure": false,
10
+ "retries": 1,
11
+ "parallel": false,
12
+ "maxConcurrent": 4,
13
+ "reporters": ["console", "json"],
14
+ "outputDir": ".elsabro/test-results"
15
+ },
16
+
17
+ "mocks": {
18
+ "defaultLLMResponse": "Mock response",
19
+ "defaultDelay": 0,
20
+ "errorRate": 0,
21
+ "recordCalls": true
22
+ },
23
+
24
+ "simulation": {
25
+ "enabled": true,
26
+ "scenariosDir": ".elsabro/scenarios",
27
+ "defaultPersona": "cooperative",
28
+ "captureCheckpoints": true
29
+ },
30
+
31
+ "assertions": {
32
+ "semanticMatchModel": "haiku",
33
+ "semanticThreshold": 0.8,
34
+ "customAssertions": {}
35
+ },
36
+
37
+ "fixtures": {
38
+ "dir": ".elsabro/fixtures",
39
+ "autoLoad": true,
40
+ "cleanup": true
41
+ },
42
+
43
+ "coverage": {
44
+ "enabled": true,
45
+ "threshold": {
46
+ "agents": 80,
47
+ "flows": 70,
48
+ "tools": 90
49
+ },
50
+ "exclude": ["test/**", "fixtures/**"]
51
+ },
52
+
53
+ "watch": {
54
+ "enabled": true,
55
+ "patterns": ["**/*.test.ts", "**/*.test.json"],
56
+ "debounce": 500
57
+ },
58
+
59
+ "reporting": {
60
+ "console": {
61
+ "enabled": true,
62
+ "verbose": true,
63
+ "colors": true
64
+ },
65
+ "json": {
66
+ "enabled": true,
67
+ "outputPath": ".elsabro/test-results/results.json"
68
+ },
69
+ "html": {
70
+ "enabled": false,
71
+ "outputPath": ".elsabro/test-results/report.html"
72
+ }
73
+ },
74
+
75
+ "ci": {
76
+ "failOnLowCoverage": true,
77
+ "uploadResults": false,
78
+ "annotations": true
79
+ }
80
+ }
81
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "timeTravel": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "timeline": {
7
+ "maxLength": 1000,
8
+ "autoCleanup": true,
9
+ "retentionDays": 30
10
+ },
11
+
12
+ "branches": {
13
+ "maxBranches": 10,
14
+ "autoDeleteOnMerge": false,
15
+ "namingPattern": "whatif_{name}_{timestamp}"
16
+ },
17
+
18
+ "replay": {
19
+ "defaultSpeed": 1.0,
20
+ "minSpeed": 0.1,
21
+ "maxSpeed": 10.0,
22
+ "pauseOnDecision": true,
23
+ "pauseOnError": true,
24
+ "pauseOnInterrupt": true,
25
+ "autoPlay": false,
26
+ "showProgress": true
27
+ },
28
+
29
+ "whatIf": {
30
+ "enabled": true,
31
+ "maxScenarios": 20,
32
+ "autoCompare": true,
33
+ "persistResults": true,
34
+ "cleanupAfterDays": 7
35
+ },
36
+
37
+ "visualization": {
38
+ "showTimestamps": true,
39
+ "showDurations": true,
40
+ "showSummaries": true,
41
+ "compactMode": false,
42
+ "colorize": true,
43
+ "icons": {
44
+ "checkpoint": "●",
45
+ "current": "►",
46
+ "branch": "◆",
47
+ "decision": "◇"
48
+ }
49
+ },
50
+
51
+ "controls": {
52
+ "keyBindings": {
53
+ "first": "Home",
54
+ "last": "End",
55
+ "back": "Left",
56
+ "forward": "Right",
57
+ "play": "Space",
58
+ "pause": "Space"
59
+ }
60
+ }
61
+ }
62
+ }
@@ -0,0 +1,109 @@
1
+ {
2
+ "toolRegistry": {
3
+ "enabled": true,
4
+ "version": "1.0.0",
5
+
6
+ "initialization": {
7
+ "autoLoadBuiltins": true,
8
+ "customToolsPath": ".elsabro/tools",
9
+ "watchForChanges": true
10
+ },
11
+
12
+ "registration": {
13
+ "allowDuplicates": false,
14
+ "requireVersion": true,
15
+ "versionStrategy": "semver"
16
+ },
17
+
18
+ "discovery": {
19
+ "caching": {
20
+ "enabled": true,
21
+ "ttl": 300000,
22
+ "maxSize": 1000
23
+ },
24
+ "scoring": {
25
+ "nameMatchWeight": 50,
26
+ "descriptionMatchWeight": 30,
27
+ "capabilityMatchWeight": 25,
28
+ "categoryMatchWeight": 20,
29
+ "usageBonus": 5
30
+ }
31
+ },
32
+
33
+ "capabilities": {
34
+ "predefined": [
35
+ "read",
36
+ "write",
37
+ "edit",
38
+ "search",
39
+ "execute",
40
+ "fetch",
41
+ "delegate",
42
+ "create",
43
+ "delete",
44
+ "list",
45
+ "validate"
46
+ ],
47
+ "allowCustom": true
48
+ },
49
+
50
+ "categories": {
51
+ "predefined": [
52
+ "file-ops",
53
+ "search",
54
+ "system",
55
+ "web",
56
+ "agent",
57
+ "validation",
58
+ "transformation"
59
+ ],
60
+ "allowCustom": true
61
+ },
62
+
63
+ "validation": {
64
+ "strictSchema": true,
65
+ "requireDescription": true,
66
+ "requireCapabilities": true,
67
+ "requireExamples": false,
68
+ "maxParameterCount": 20
69
+ },
70
+
71
+ "versioning": {
72
+ "format": "semver",
73
+ "allowDowngrade": false,
74
+ "requireChangelog": false
75
+ },
76
+
77
+ "deprecation": {
78
+ "warningPeriod": "30d",
79
+ "removalPeriod": "90d",
80
+ "notifyOnUse": true,
81
+ "suggestReplacement": true
82
+ },
83
+
84
+ "usage": {
85
+ "trackCalls": true,
86
+ "trackDuration": true,
87
+ "trackSuccess": true,
88
+ "historySize": 10000
89
+ },
90
+
91
+ "builtinTools": {
92
+ "Bash": { "enabled": true },
93
+ "Read": { "enabled": true },
94
+ "Write": { "enabled": true },
95
+ "Edit": { "enabled": true },
96
+ "Glob": { "enabled": true },
97
+ "Grep": { "enabled": true },
98
+ "Task": { "enabled": true },
99
+ "WebFetch": { "enabled": true },
100
+ "WebSearch": { "enabled": true }
101
+ },
102
+
103
+ "export": {
104
+ "formats": ["json"],
105
+ "includeUsage": true,
106
+ "includeDeprecated": false
107
+ }
108
+ }
109
+ }