aiden-runtime 3.19.4 → 3.19.6
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/config/devos.config.backup.json +224 -224
- package/config/devos.config.json +1 -1
- package/dist/api/server.js +7 -1
- package/dist/core/agentLoop.js +8 -3
- package/dist/core/skillLoader.js +2 -0
- package/dist/core/slashAsTool.js +2 -0
- package/dist/core/toolRegistry.js +16 -0
- package/dist/core/version.js +1 -1
- package/dist/providers/router.js +46 -6
- package/dist-bundle/cli.js +911 -557
- package/dist-bundle/index.js +758 -658
- package/package.json +268 -266
- package/scripts/postinstall.js +58 -1
- package/workspace-templates/HEARTBEAT.md +16 -0
- package/workspace-templates/SOUL.md +267 -0
- package/workspace-templates/STANDING_ORDERS.md +21 -0
- package/workspace-templates/permissions.yaml +180 -0
- package/workspace-templates/skills/architecture-diagram/SKILL.md +126 -0
- package/workspace-templates/skills/architecture-diagram/skill.json +25 -0
- package/workspace-templates/skills/arxiv/SKILL.md +124 -0
- package/workspace-templates/skills/arxiv/skill.json +26 -0
- package/workspace-templates/skills/ascii-art/SKILL.md +142 -0
- package/workspace-templates/skills/ascii-art/skill.json +26 -0
- package/workspace-templates/skills/blogwatcher/SKILL.md +147 -0
- package/workspace-templates/skills/blogwatcher/skill.json +26 -0
- package/workspace-templates/skills/censys/SKILL.md +104 -0
- package/workspace-templates/skills/censys/index.ts +133 -0
- package/workspace-templates/skills/censys/skill.json +25 -0
- package/workspace-templates/skills/clipboard-history/SKILL.md +101 -0
- package/workspace-templates/skills/clipboard-history/skill.json +23 -0
- package/workspace-templates/skills/crt-sh/SKILL.md +102 -0
- package/workspace-templates/skills/crt-sh/index.ts +59 -0
- package/workspace-templates/skills/crt-sh/skill.json +25 -0
- package/workspace-templates/skills/cveapi/SKILL.md +114 -0
- package/workspace-templates/skills/cveapi/index.ts +249 -0
- package/workspace-templates/skills/cveapi/skill.json +25 -0
- package/workspace-templates/skills/docker-management/SKILL.md +156 -0
- package/workspace-templates/skills/docker-management/skill.json +25 -0
- package/workspace-templates/skills/excalidraw/SKILL.md +148 -0
- package/workspace-templates/skills/excalidraw/skill.json +25 -0
- package/workspace-templates/skills/explainshell/SKILL.md +93 -0
- package/workspace-templates/skills/explainshell/index.ts +132 -0
- package/workspace-templates/skills/explainshell/skill.json +25 -0
- package/workspace-templates/skills/financial_research/SKILL.md +21 -0
- package/workspace-templates/skills/financial_research/skill.json +24 -0
- package/workspace-templates/skills/gif-search/SKILL.md +122 -0
- package/workspace-templates/skills/gif-search/skill.json +25 -0
- package/workspace-templates/skills/github-auth/SKILL.md +134 -0
- package/workspace-templates/skills/github-auth/skill.json +26 -0
- package/workspace-templates/skills/github-issues/SKILL.md +130 -0
- package/workspace-templates/skills/github-issues/skill.json +25 -0
- package/workspace-templates/skills/github-pr-workflow/SKILL.md +143 -0
- package/workspace-templates/skills/github-pr-workflow/skill.json +26 -0
- package/workspace-templates/skills/github-repo-management/SKILL.md +147 -0
- package/workspace-templates/skills/github-repo-management/skill.json +26 -0
- package/workspace-templates/skills/google-workspace/SKILL.md +110 -0
- package/workspace-templates/skills/google-workspace/skill.json +26 -0
- package/workspace-templates/skills/greynoise/SKILL.md +96 -0
- package/workspace-templates/skills/greynoise/index.ts +107 -0
- package/workspace-templates/skills/greynoise/skill.json +25 -0
- package/workspace-templates/skills/haveibeenpwned/SKILL.md +100 -0
- package/workspace-templates/skills/haveibeenpwned/index.ts +72 -0
- package/workspace-templates/skills/haveibeenpwned/skill.json +24 -0
- package/workspace-templates/skills/jupyter-live-kernel/SKILL.md +116 -0
- package/workspace-templates/skills/jupyter-live-kernel/skill.json +25 -0
- package/workspace-templates/skills/linear/SKILL.md +107 -0
- package/workspace-templates/skills/linear/skill.json +25 -0
- package/workspace-templates/skills/nano-pdf/SKILL.md +113 -0
- package/workspace-templates/skills/nano-pdf/skill.json +26 -0
- package/workspace-templates/skills/notion/SKILL.md +108 -0
- package/workspace-templates/skills/notion/skill.json +24 -0
- package/workspace-templates/skills/obsidian/SKILL.md +115 -0
- package/workspace-templates/skills/obsidian/skill.json +24 -0
- package/workspace-templates/skills/ocr-and-documents/SKILL.md +125 -0
- package/workspace-templates/skills/ocr-and-documents/skill.json +26 -0
- package/workspace-templates/skills/p5js/SKILL.md +163 -0
- package/workspace-templates/skills/p5js/skill.json +24 -0
- package/workspace-templates/skills/research-paper-writing/SKILL.md +158 -0
- package/workspace-templates/skills/research-paper-writing/skill.json +26 -0
- package/workspace-templates/skills/securityheaders/SKILL.md +99 -0
- package/workspace-templates/skills/securityheaders/index.ts +213 -0
- package/workspace-templates/skills/securityheaders/skill.json +26 -0
- package/workspace-templates/skills/shodan/SKILL.md +113 -0
- package/workspace-templates/skills/shodan/index.ts +94 -0
- package/workspace-templates/skills/shodan/skill.json +26 -0
- package/workspace-templates/skills/songsee/SKILL.md +152 -0
- package/workspace-templates/skills/songsee/skill.json +25 -0
- package/workspace-templates/skills/ssllabs/SKILL.md +107 -0
- package/workspace-templates/skills/ssllabs/index.ts +208 -0
- package/workspace-templates/skills/ssllabs/skill.json +27 -0
- package/workspace-templates/skills/stable-diffusion-image-generation/SKILL.md +136 -0
- package/workspace-templates/skills/stable-diffusion-image-generation/skill.json +24 -0
- package/workspace-templates/skills/systematic-debugging/SKILL.md +131 -0
- package/workspace-templates/skills/systematic-debugging/skill.json +25 -0
- package/workspace-templates/skills/test-driven-development/SKILL.md +164 -0
- package/workspace-templates/skills/test-driven-development/skill.json +25 -0
- package/workspace-templates/skills/urlscan/SKILL.md +118 -0
- package/workspace-templates/skills/urlscan/index.ts +94 -0
- package/workspace-templates/skills/urlscan/skill.json +24 -0
- package/workspace-templates/skills/virustotal/SKILL.md +120 -0
- package/workspace-templates/skills/virustotal/index.ts +124 -0
- package/workspace-templates/skills/virustotal/skill.json +26 -0
- package/workspace-templates/skills/web_research/SKILL.md +18 -0
- package/workspace-templates/skills/web_research/skill.json +20 -0
- package/workspace-templates/skills/xitter/SKILL.md +148 -0
- package/workspace-templates/skills/xitter/skill.json +26 -0
- package/workspace-templates/skills/youtube-content/SKILL.md +121 -0
- package/workspace-templates/skills/youtube-content/skill.json +25 -0
|
@@ -1,225 +1,225 @@
|
|
|
1
|
-
{
|
|
2
|
-
"user": {
|
|
3
|
-
"name": "shiva"
|
|
4
|
-
},
|
|
5
|
-
"model": {
|
|
6
|
-
"active": "groq-1",
|
|
7
|
-
"activeModel": "llama-3.3-70b-versatile"
|
|
8
|
-
},
|
|
9
|
-
"providers": {
|
|
10
|
-
"ollama": {
|
|
11
|
-
"enabled": true,
|
|
12
|
-
"models": []
|
|
13
|
-
},
|
|
14
|
-
"apis": [
|
|
15
|
-
{
|
|
16
|
-
"model": "gemini-3-flash",
|
|
17
|
-
"enabled": false,
|
|
18
|
-
"rateLimited": false,
|
|
19
|
-
"usageCount": 0,
|
|
20
|
-
"name": "boa-1",
|
|
21
|
-
"provider": "boa",
|
|
22
|
-
"key": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa"
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"model": "llama-3.3-70b-versatile",
|
|
26
|
-
"enabled": true,
|
|
27
|
-
"rateLimited": true,
|
|
28
|
-
"usageCount": 72,
|
|
29
|
-
"name": "groq-1",
|
|
30
|
-
"provider": "groq",
|
|
31
|
-
"key": "env:GROQ_API_KEY",
|
|
32
|
-
"rateLimitedAt": 1777579113083,
|
|
33
|
-
"rateLimitWindow": 300000
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"model": "llama-3.3-70b-versatile",
|
|
37
|
-
"enabled": true,
|
|
38
|
-
"rateLimited": true,
|
|
39
|
-
"usageCount": 105,
|
|
40
|
-
"name": "groq-2",
|
|
41
|
-
"provider": "groq",
|
|
42
|
-
"key": "env:GROQ_API_KEY_2"
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"model": "llama-3.3-70b-versatile",
|
|
46
|
-
"enabled": true,
|
|
47
|
-
"rateLimited": true,
|
|
48
|
-
"usageCount": 41,
|
|
49
|
-
"name": "groq-3",
|
|
50
|
-
"provider": "groq",
|
|
51
|
-
"key": "env:GROQ_API_KEY_3"
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
"model": "llama-3.3-70b-versatile",
|
|
55
|
-
"enabled": true,
|
|
56
|
-
"rateLimited": true,
|
|
57
|
-
"usageCount": 12,
|
|
58
|
-
"name": "groq-4",
|
|
59
|
-
"provider": "groq",
|
|
60
|
-
"key": "env:GROQ_API_KEY_4"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"model": "llama-3.3-70b-versatile",
|
|
64
|
-
"enabled": true,
|
|
65
|
-
"rateLimited": true,
|
|
66
|
-
"usageCount": 7,
|
|
67
|
-
"name": "groq-5",
|
|
68
|
-
"provider": "groq",
|
|
69
|
-
"key": "env:GROQ_API_KEY_5"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
"model": "llama-3.3-70b-versatile",
|
|
73
|
-
"enabled": true,
|
|
74
|
-
"rateLimited": false,
|
|
75
|
-
"usageCount": 0,
|
|
76
|
-
"name": "groq-6",
|
|
77
|
-
"provider": "groq",
|
|
78
|
-
"key": "env:GROQ_API_KEY_6"
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
"model": "gemini-2.5-flash",
|
|
82
|
-
"enabled": true,
|
|
83
|
-
"rateLimited": false,
|
|
84
|
-
"usageCount": 17,
|
|
85
|
-
"name": "gemini-1",
|
|
86
|
-
"provider": "gemini",
|
|
87
|
-
"key": "env:GEMINI_API_KEY"
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"model": "gemini-2.5-flash",
|
|
91
|
-
"enabled": true,
|
|
92
|
-
"rateLimited": false,
|
|
93
|
-
"usageCount": 9,
|
|
94
|
-
"name": "gemini-2",
|
|
95
|
-
"provider": "gemini",
|
|
96
|
-
"key": "env:GEMINI_API_KEY_2"
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
"model": "gemini-2.5-flash",
|
|
100
|
-
"enabled": true,
|
|
101
|
-
"rateLimited": false,
|
|
102
|
-
"usageCount": 9,
|
|
103
|
-
"name": "gemini-3",
|
|
104
|
-
"provider": "gemini",
|
|
105
|
-
"key": "env:GEMINI_API_KEY_3"
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
"model": "gemini-2.5-flash",
|
|
109
|
-
"enabled": true,
|
|
110
|
-
"rateLimited": false,
|
|
111
|
-
"usageCount": 9,
|
|
112
|
-
"name": "gemini-4",
|
|
113
|
-
"provider": "gemini",
|
|
114
|
-
"key": "env:GEMINI_API_KEY_4"
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"model": "nvidia/llama-3.3-nemotron-super-49b-v1",
|
|
118
|
-
"enabled": true,
|
|
119
|
-
"rateLimited": false,
|
|
120
|
-
"usageCount": 0,
|
|
121
|
-
"name": "nvidia-1",
|
|
122
|
-
"provider": "nvidia",
|
|
123
|
-
"key": "env:NVIDIA_API_KEY"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"model": "meta/llama-3.3-70b-instruct",
|
|
127
|
-
"enabled": true,
|
|
128
|
-
"rateLimited": false,
|
|
129
|
-
"usageCount": 0,
|
|
130
|
-
"name": "nvidia-2",
|
|
131
|
-
"provider": "nvidia",
|
|
132
|
-
"key": "env:NVIDIA_API_KEY"
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
136
|
-
"enabled": true,
|
|
137
|
-
"rateLimited": false,
|
|
138
|
-
"usageCount": 7,
|
|
139
|
-
"name": "openrouter-1",
|
|
140
|
-
"provider": "openrouter",
|
|
141
|
-
"key": "env:OPENROUTER_API_KEY"
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
145
|
-
"enabled": true,
|
|
146
|
-
"rateLimited": false,
|
|
147
|
-
"usageCount": 6,
|
|
148
|
-
"name": "openrouter-2",
|
|
149
|
-
"provider": "openrouter",
|
|
150
|
-
"key": "env:OPENROUTER_API_KEY_2"
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
154
|
-
"enabled": true,
|
|
155
|
-
"rateLimited": false,
|
|
156
|
-
"usageCount": 6,
|
|
157
|
-
"name": "openrouter-3",
|
|
158
|
-
"provider": "openrouter",
|
|
159
|
-
"key": "env:OPENROUTER_API_KEY_3"
|
|
160
|
-
},
|
|
161
|
-
{
|
|
162
|
-
"model": "meta-llama/llama-3.1-405b-instruct",
|
|
163
|
-
"enabled":
|
|
164
|
-
"rateLimited": false,
|
|
165
|
-
"usageCount": 7,
|
|
166
|
-
"name": "together-1",
|
|
167
|
-
"provider": "custom",
|
|
168
|
-
"baseUrl": "https://api.together.xyz/v1/chat/completions",
|
|
169
|
-
"key": "env:TOGETHER_API_KEY"
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
"model": "gpt-4o-mini",
|
|
173
|
-
"enabled": false,
|
|
174
|
-
"rateLimited": false,
|
|
175
|
-
"usageCount": 0,
|
|
176
|
-
"name": "boa-2",
|
|
177
|
-
"provider": "boa",
|
|
178
|
-
"key": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa"
|
|
179
|
-
}
|
|
180
|
-
]
|
|
181
|
-
},
|
|
182
|
-
"onboardingComplete": true,
|
|
183
|
-
"telegram": {
|
|
184
|
-
"enabled": false,
|
|
185
|
-
"botToken": "",
|
|
186
|
-
"allowedChatIds": [],
|
|
187
|
-
"pollingInterval": 1000
|
|
188
|
-
},
|
|
189
|
-
"routing": {
|
|
190
|
-
"mode": "auto",
|
|
191
|
-
"fallbackToOllama": true
|
|
192
|
-
},
|
|
193
|
-
"ollama": {
|
|
194
|
-
"fallbackModels": [],
|
|
195
|
-
"baseUrl": "http://localhost:11434",
|
|
196
|
-
"model": "gemma4:e4b",
|
|
197
|
-
"plannerModel": "gemma4:e4b",
|
|
198
|
-
"coderModel": "qwen2.5-coder:7b",
|
|
199
|
-
"fastModel": "llama3.2:latest"
|
|
200
|
-
},
|
|
201
|
-
"customProviders": [
|
|
202
|
-
{
|
|
203
|
-
"id": "bayofassets-haiku",
|
|
204
|
-
"displayName": "BayOfAssets Haiku 4.5",
|
|
205
|
-
"baseUrl": "https://api.bayofassets.com/v1/chat/completions",
|
|
206
|
-
"apiKey": "boa-dd14fba0-cdee-4247-ba03-90de01674c06",
|
|
207
|
-
"model": "claude-haiku-4-5",
|
|
208
|
-
"enabled": false,
|
|
209
|
-
"tier": 1
|
|
210
|
-
},
|
|
211
|
-
{
|
|
212
|
-
"id": "bayofassets",
|
|
213
|
-
"displayName": "Bay of Assets",
|
|
214
|
-
"baseUrl": "https://api.bayofassets.com/v1",
|
|
215
|
-
"apiKey": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa",
|
|
216
|
-
"model": "gemini-3-flash",
|
|
217
|
-
"enabled": false,
|
|
218
|
-
"tier": 2
|
|
219
|
-
}
|
|
220
|
-
],
|
|
221
|
-
"cli": {
|
|
222
|
-
"theme": "ember"
|
|
223
|
-
},
|
|
224
|
-
"primaryProvider": ""
|
|
1
|
+
{
|
|
2
|
+
"user": {
|
|
3
|
+
"name": "shiva"
|
|
4
|
+
},
|
|
5
|
+
"model": {
|
|
6
|
+
"active": "groq-1",
|
|
7
|
+
"activeModel": "llama-3.3-70b-versatile"
|
|
8
|
+
},
|
|
9
|
+
"providers": {
|
|
10
|
+
"ollama": {
|
|
11
|
+
"enabled": true,
|
|
12
|
+
"models": []
|
|
13
|
+
},
|
|
14
|
+
"apis": [
|
|
15
|
+
{
|
|
16
|
+
"model": "gemini-3-flash",
|
|
17
|
+
"enabled": false,
|
|
18
|
+
"rateLimited": false,
|
|
19
|
+
"usageCount": 0,
|
|
20
|
+
"name": "boa-1",
|
|
21
|
+
"provider": "boa",
|
|
22
|
+
"key": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"model": "llama-3.3-70b-versatile",
|
|
26
|
+
"enabled": true,
|
|
27
|
+
"rateLimited": true,
|
|
28
|
+
"usageCount": 72,
|
|
29
|
+
"name": "groq-1",
|
|
30
|
+
"provider": "groq",
|
|
31
|
+
"key": "env:GROQ_API_KEY",
|
|
32
|
+
"rateLimitedAt": 1777579113083,
|
|
33
|
+
"rateLimitWindow": 300000
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"model": "llama-3.3-70b-versatile",
|
|
37
|
+
"enabled": true,
|
|
38
|
+
"rateLimited": true,
|
|
39
|
+
"usageCount": 105,
|
|
40
|
+
"name": "groq-2",
|
|
41
|
+
"provider": "groq",
|
|
42
|
+
"key": "env:GROQ_API_KEY_2"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"model": "llama-3.3-70b-versatile",
|
|
46
|
+
"enabled": true,
|
|
47
|
+
"rateLimited": true,
|
|
48
|
+
"usageCount": 41,
|
|
49
|
+
"name": "groq-3",
|
|
50
|
+
"provider": "groq",
|
|
51
|
+
"key": "env:GROQ_API_KEY_3"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"model": "llama-3.3-70b-versatile",
|
|
55
|
+
"enabled": true,
|
|
56
|
+
"rateLimited": true,
|
|
57
|
+
"usageCount": 12,
|
|
58
|
+
"name": "groq-4",
|
|
59
|
+
"provider": "groq",
|
|
60
|
+
"key": "env:GROQ_API_KEY_4"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"model": "llama-3.3-70b-versatile",
|
|
64
|
+
"enabled": true,
|
|
65
|
+
"rateLimited": true,
|
|
66
|
+
"usageCount": 7,
|
|
67
|
+
"name": "groq-5",
|
|
68
|
+
"provider": "groq",
|
|
69
|
+
"key": "env:GROQ_API_KEY_5"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"model": "llama-3.3-70b-versatile",
|
|
73
|
+
"enabled": true,
|
|
74
|
+
"rateLimited": false,
|
|
75
|
+
"usageCount": 0,
|
|
76
|
+
"name": "groq-6",
|
|
77
|
+
"provider": "groq",
|
|
78
|
+
"key": "env:GROQ_API_KEY_6"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"model": "gemini-2.5-flash",
|
|
82
|
+
"enabled": true,
|
|
83
|
+
"rateLimited": false,
|
|
84
|
+
"usageCount": 17,
|
|
85
|
+
"name": "gemini-1",
|
|
86
|
+
"provider": "gemini",
|
|
87
|
+
"key": "env:GEMINI_API_KEY"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"model": "gemini-2.5-flash",
|
|
91
|
+
"enabled": true,
|
|
92
|
+
"rateLimited": false,
|
|
93
|
+
"usageCount": 9,
|
|
94
|
+
"name": "gemini-2",
|
|
95
|
+
"provider": "gemini",
|
|
96
|
+
"key": "env:GEMINI_API_KEY_2"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"model": "gemini-2.5-flash",
|
|
100
|
+
"enabled": true,
|
|
101
|
+
"rateLimited": false,
|
|
102
|
+
"usageCount": 9,
|
|
103
|
+
"name": "gemini-3",
|
|
104
|
+
"provider": "gemini",
|
|
105
|
+
"key": "env:GEMINI_API_KEY_3"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"model": "gemini-2.5-flash",
|
|
109
|
+
"enabled": true,
|
|
110
|
+
"rateLimited": false,
|
|
111
|
+
"usageCount": 9,
|
|
112
|
+
"name": "gemini-4",
|
|
113
|
+
"provider": "gemini",
|
|
114
|
+
"key": "env:GEMINI_API_KEY_4"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"model": "nvidia/llama-3.3-nemotron-super-49b-v1",
|
|
118
|
+
"enabled": true,
|
|
119
|
+
"rateLimited": false,
|
|
120
|
+
"usageCount": 0,
|
|
121
|
+
"name": "nvidia-1",
|
|
122
|
+
"provider": "nvidia",
|
|
123
|
+
"key": "env:NVIDIA_API_KEY"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"model": "meta/llama-3.3-70b-instruct",
|
|
127
|
+
"enabled": true,
|
|
128
|
+
"rateLimited": false,
|
|
129
|
+
"usageCount": 0,
|
|
130
|
+
"name": "nvidia-2",
|
|
131
|
+
"provider": "nvidia",
|
|
132
|
+
"key": "env:NVIDIA_API_KEY"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
136
|
+
"enabled": true,
|
|
137
|
+
"rateLimited": false,
|
|
138
|
+
"usageCount": 7,
|
|
139
|
+
"name": "openrouter-1",
|
|
140
|
+
"provider": "openrouter",
|
|
141
|
+
"key": "env:OPENROUTER_API_KEY"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
145
|
+
"enabled": true,
|
|
146
|
+
"rateLimited": false,
|
|
147
|
+
"usageCount": 6,
|
|
148
|
+
"name": "openrouter-2",
|
|
149
|
+
"provider": "openrouter",
|
|
150
|
+
"key": "env:OPENROUTER_API_KEY_2"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"model": "meta-llama/llama-3.3-70b-instruct:free",
|
|
154
|
+
"enabled": true,
|
|
155
|
+
"rateLimited": false,
|
|
156
|
+
"usageCount": 6,
|
|
157
|
+
"name": "openrouter-3",
|
|
158
|
+
"provider": "openrouter",
|
|
159
|
+
"key": "env:OPENROUTER_API_KEY_3"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"model": "meta-llama/llama-3.1-405b-instruct",
|
|
163
|
+
"enabled": false,
|
|
164
|
+
"rateLimited": false,
|
|
165
|
+
"usageCount": 7,
|
|
166
|
+
"name": "together-1",
|
|
167
|
+
"provider": "custom",
|
|
168
|
+
"baseUrl": "https://api.together.xyz/v1/chat/completions",
|
|
169
|
+
"key": "env:TOGETHER_API_KEY"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"model": "gpt-4o-mini",
|
|
173
|
+
"enabled": false,
|
|
174
|
+
"rateLimited": false,
|
|
175
|
+
"usageCount": 0,
|
|
176
|
+
"name": "boa-2",
|
|
177
|
+
"provider": "boa",
|
|
178
|
+
"key": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa"
|
|
179
|
+
}
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
"onboardingComplete": true,
|
|
183
|
+
"telegram": {
|
|
184
|
+
"enabled": false,
|
|
185
|
+
"botToken": "",
|
|
186
|
+
"allowedChatIds": [],
|
|
187
|
+
"pollingInterval": 1000
|
|
188
|
+
},
|
|
189
|
+
"routing": {
|
|
190
|
+
"mode": "auto",
|
|
191
|
+
"fallbackToOllama": true
|
|
192
|
+
},
|
|
193
|
+
"ollama": {
|
|
194
|
+
"fallbackModels": [],
|
|
195
|
+
"baseUrl": "http://localhost:11434",
|
|
196
|
+
"model": "gemma4:e4b",
|
|
197
|
+
"plannerModel": "gemma4:e4b",
|
|
198
|
+
"coderModel": "qwen2.5-coder:7b",
|
|
199
|
+
"fastModel": "llama3.2:latest"
|
|
200
|
+
},
|
|
201
|
+
"customProviders": [
|
|
202
|
+
{
|
|
203
|
+
"id": "bayofassets-haiku",
|
|
204
|
+
"displayName": "BayOfAssets Haiku 4.5",
|
|
205
|
+
"baseUrl": "https://api.bayofassets.com/v1/chat/completions",
|
|
206
|
+
"apiKey": "boa-dd14fba0-cdee-4247-ba03-90de01674c06",
|
|
207
|
+
"model": "claude-haiku-4-5",
|
|
208
|
+
"enabled": false,
|
|
209
|
+
"tier": 1
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"id": "bayofassets",
|
|
213
|
+
"displayName": "Bay of Assets",
|
|
214
|
+
"baseUrl": "https://api.bayofassets.com/v1",
|
|
215
|
+
"apiKey": "boa-5a949b90-094c-4f35-a6ae-3fab8acc42aa",
|
|
216
|
+
"model": "gemini-3-flash",
|
|
217
|
+
"enabled": false,
|
|
218
|
+
"tier": 2
|
|
219
|
+
}
|
|
220
|
+
],
|
|
221
|
+
"cli": {
|
|
222
|
+
"theme": "ember"
|
|
223
|
+
},
|
|
224
|
+
"primaryProvider": ""
|
|
225
225
|
}
|
package/config/devos.config.json
CHANGED
package/dist/api/server.js
CHANGED
|
@@ -6914,7 +6914,13 @@ ${cognitionHint}${memoryContext}${greetingPreamble}${sessionContext}${memoryInde
|
|
|
6914
6914
|
}
|
|
6915
6915
|
// Both failed — send a graceful error token
|
|
6916
6916
|
console.error('[Router] All providers failed. Last error:', err?.message ?? 'unknown');
|
|
6917
|
-
|
|
6917
|
+
const poolDiag = (0, router_1.diagnoseProviderPool)();
|
|
6918
|
+
send({ token: (0, diagnosticError_1.buildDiagnostic)({ tool: 'respond', provider: 'all', retries: 2,
|
|
6919
|
+
error: poolDiag.state === 'unconfigured' ? 'No API keys configured' : 'All AI providers failed or are at capacity',
|
|
6920
|
+
suggestion: poolDiag.state === 'unconfigured'
|
|
6921
|
+
? 'Add API keys in Settings > API Keys, or start Ollama for local inference.'
|
|
6922
|
+
: 'Try again in a few minutes, or add more API keys in Settings > API Keys.',
|
|
6923
|
+
}), done: false, provider: 'error' });
|
|
6918
6924
|
}
|
|
6919
6925
|
streamEnded = true;
|
|
6920
6926
|
clearTimeout(timeout);
|
package/dist/core/agentLoop.js
CHANGED
|
@@ -1366,7 +1366,7 @@ Output ONLY valid JSON, nothing else:`;
|
|
|
1366
1366
|
// Don't return early — let FORCE_RESPOND_TEST hook and PlannerGuard process the fallback plan
|
|
1367
1367
|
console.warn('[Planner] All LLM attempts failed — respond fallback (going through guard)');
|
|
1368
1368
|
parsed = {
|
|
1369
|
-
plan: [{ step: 1, tool: 'respond', input: { message: (0, diagnosticError_1.buildDiagnostic)({ tool: 'planner', error: 'All LLM attempts failed', retries: 3, suggestion: 'Provider chain
|
|
1369
|
+
plan: [{ step: 1, tool: 'respond', input: { message: (0, diagnosticError_1.buildDiagnostic)({ tool: 'planner', error: 'All LLM attempts failed', retries: 3, suggestion: (0, router_1.diagnoseProviderPool)().state === 'unconfigured' ? 'No API keys configured. Add keys in Settings > API Keys, or start Ollama for local inference.' : 'Provider chain is rate-limited. Try again in 1-2 minutes or rephrase your request.' }) }, description: 'Fallback response' }],
|
|
1370
1370
|
requires_execution: true,
|
|
1371
1371
|
goal: message,
|
|
1372
1372
|
};
|
|
@@ -1492,7 +1492,9 @@ Output ONLY valid JSON, nothing else:`;
|
|
|
1492
1492
|
tool: 'planner',
|
|
1493
1493
|
error: 'Could not generate tool plan for action intent',
|
|
1494
1494
|
retries: 1,
|
|
1495
|
-
suggestion:
|
|
1495
|
+
suggestion: (0, router_1.diagnoseProviderPool)().state === 'unconfigured'
|
|
1496
|
+
? 'No API keys configured. Add keys in Settings > API Keys, or start Ollama for local inference.'
|
|
1497
|
+
: 'Provider chain is rate-limited. Try again in 1-2 minutes or use a more specific instruction.',
|
|
1496
1498
|
});
|
|
1497
1499
|
}
|
|
1498
1500
|
if (guardMatch) {
|
|
@@ -2737,7 +2739,10 @@ CRITICAL RULES FOR YOUR RESPONSE:
|
|
|
2737
2739
|
if (successes.length > 0)
|
|
2738
2740
|
parts.push(`Completed: ${successes.map(r => r.tool).join(', ')}.`);
|
|
2739
2741
|
parts.push(`Failed: ${failures.map(r => `${r.tool} — ${r.error || 'unknown error'}`).join('; ')}.`);
|
|
2740
|
-
|
|
2742
|
+
const poolDiag = (0, router_1.diagnoseProviderPool)();
|
|
2743
|
+
parts.push(`(${poolDiag.state === 'unconfigured'
|
|
2744
|
+
? 'No API keys configured - add keys in Settings > API Keys'
|
|
2745
|
+
: 'All language providers are currently unavailable'} - full response cannot be generated.)`);
|
|
2741
2746
|
onToken(parts.join(' '));
|
|
2742
2747
|
return;
|
|
2743
2748
|
}
|
package/dist/core/skillLoader.js
CHANGED
|
@@ -197,6 +197,8 @@ class SkillLoader {
|
|
|
197
197
|
path_1.default.join(process.cwd(), 'workspace', 'skills'),
|
|
198
198
|
path_1.default.join(process.cwd(), 'workspace', 'skills', 'learned'),
|
|
199
199
|
path_1.default.join(process.cwd(), 'workspace', 'skills', 'approved'),
|
|
200
|
+
// Workspace-level installed skills (written by skillRegistry.ts)
|
|
201
|
+
path_1.default.join(process.cwd(), 'workspace', 'skills', 'installed'),
|
|
200
202
|
// A2/A3 approved drafts
|
|
201
203
|
path_1.default.join(process.cwd(), 'skills', 'learned', 'approved'),
|
|
202
204
|
// A4 library-installed skills
|
package/dist/core/slashAsTool.js
CHANGED
|
@@ -41,6 +41,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
41
41
|
};
|
|
42
42
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
43
|
exports.SLASH_MIRROR_TOOL_NAMES = void 0;
|
|
44
|
+
exports.toolMemoryStore = toolMemoryStore;
|
|
45
|
+
exports.toolMemoryForget = toolMemoryForget;
|
|
44
46
|
exports.registerSlashMirrorTools = registerSlashMirrorTools;
|
|
45
47
|
// core/slashAsTool.ts — Phase 3: Slash commands mirrored as agent tools.
|
|
46
48
|
//
|
|
@@ -2448,6 +2448,22 @@ public class AidenVolSet {
|
|
|
2448
2448
|
return { success: false, output: '', error: e.message };
|
|
2449
2449
|
}
|
|
2450
2450
|
},
|
|
2451
|
+
// ── memory_store — persist a fact to permanent memory ──
|
|
2452
|
+
memory_store: async (p) => {
|
|
2453
|
+
const fact = p.fact || p.text || p.content || '';
|
|
2454
|
+
if (!fact)
|
|
2455
|
+
return { success: false, output: '', error: 'No fact provided' };
|
|
2456
|
+
const { toolMemoryStore } = await Promise.resolve().then(() => __importStar(require('./slashAsTool')));
|
|
2457
|
+
return toolMemoryStore(p);
|
|
2458
|
+
},
|
|
2459
|
+
// ── memory_forget — remove a fact from permanent memory ──
|
|
2460
|
+
memory_forget: async (p) => {
|
|
2461
|
+
const fact = p.fact || p.keyword || p.text || '';
|
|
2462
|
+
if (!fact)
|
|
2463
|
+
return { success: false, output: '', error: 'No fact provided' };
|
|
2464
|
+
const { toolMemoryForget } = await Promise.resolve().then(() => __importStar(require('./slashAsTool')));
|
|
2465
|
+
return toolMemoryForget(p);
|
|
2466
|
+
},
|
|
2451
2467
|
// ── clarify — ask the user a multi-choice or free-text question mid-task ──
|
|
2452
2468
|
clarify: async (p) => {
|
|
2453
2469
|
const question = p.question || p.q || '';
|
package/dist/core/version.js
CHANGED