azerclaw 2.1.1 → 2.1.2

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 (62) hide show
  1. package/README.md +3 -3
  2. package/dist/src/agents/builtin.js +12 -12
  3. package/dist/src/cli/animations/fish.d.ts.map +1 -1
  4. package/dist/src/cli/animations/fish.js +10 -0
  5. package/dist/src/cli/animations/fish.js.map +1 -1
  6. package/dist/src/cli/commands/chat.d.ts +1 -1
  7. package/dist/src/cli/commands/chat.d.ts.map +1 -1
  8. package/dist/src/cli/commands/chat.js +16 -2
  9. package/dist/src/cli/commands/chat.js.map +1 -1
  10. package/dist/src/cli/commands/onboard.d.ts +1 -1
  11. package/dist/src/cli/commands/onboard.js +1 -1
  12. package/dist/src/cli/commands/tui.d.ts.map +1 -1
  13. package/dist/src/cli/commands/tui.js +15 -0
  14. package/dist/src/cli/commands/tui.js.map +1 -1
  15. package/dist/src/config/manager.d.ts +1 -1
  16. package/dist/src/config/manager.d.ts.map +1 -1
  17. package/dist/src/config/manager.js +6 -14
  18. package/dist/src/config/manager.js.map +1 -1
  19. package/dist/src/config/schema.d.ts +43 -791
  20. package/dist/src/config/schema.d.ts.map +1 -1
  21. package/dist/src/config/schema.js +40 -109
  22. package/dist/src/config/schema.js.map +1 -1
  23. package/dist/src/core/runtime.js +1 -1
  24. package/dist/src/index.d.ts +0 -3
  25. package/dist/src/index.d.ts.map +1 -1
  26. package/dist/src/index.js +0 -3
  27. package/dist/src/index.js.map +1 -1
  28. package/dist/src/providers/openai.d.ts.map +1 -1
  29. package/dist/src/providers/openai.js +34 -14
  30. package/dist/src/providers/openai.js.map +1 -1
  31. package/dist/src/providers/router.d.ts +1 -2
  32. package/dist/src/providers/router.d.ts.map +1 -1
  33. package/dist/src/providers/router.js +37 -139
  34. package/dist/src/providers/router.js.map +1 -1
  35. package/dist/src/skills/loader.d.ts +1 -1
  36. package/dist/src/skills/loader.js +1 -1
  37. package/dist/src/tools/visual.d.ts.map +1 -1
  38. package/dist/src/tools/visual.js +1 -36
  39. package/dist/src/tools/visual.js.map +1 -1
  40. package/dist/src/workflow/engine.d.ts +1 -1
  41. package/dist/src/workflow/engine.js +1 -1
  42. package/package.json +1 -1
  43. package/dist/src/providers/anthropic.d.ts +0 -25
  44. package/dist/src/providers/anthropic.d.ts.map +0 -1
  45. package/dist/src/providers/anthropic.js +0 -163
  46. package/dist/src/providers/anthropic.js.map +0 -1
  47. package/dist/src/providers/google.d.ts +0 -23
  48. package/dist/src/providers/google.d.ts.map +0 -1
  49. package/dist/src/providers/google.js +0 -118
  50. package/dist/src/providers/google.js.map +0 -1
  51. package/dist/src/providers/ollama.d.ts +0 -24
  52. package/dist/src/providers/ollama.d.ts.map +0 -1
  53. package/dist/src/providers/ollama.js +0 -81
  54. package/dist/src/providers/ollama.js.map +0 -1
  55. package/dist/src/providers/openrouter.d.ts +0 -21
  56. package/dist/src/providers/openrouter.d.ts.map +0 -1
  57. package/dist/src/providers/openrouter.js +0 -65
  58. package/dist/src/providers/openrouter.js.map +0 -1
  59. package/dist/src/providers/vought.d.ts +0 -20
  60. package/dist/src/providers/vought.d.ts.map +0 -1
  61. package/dist/src/providers/vought.js +0 -35
  62. package/dist/src/providers/vought.js.map +0 -1
@@ -1,176 +1,74 @@
1
1
  "use strict";
2
2
  /**
3
3
  * 🐟 AZERCLAW Multi-Provider LLM Router
4
- * Routes requests to the best available provider with automatic fallback.
4
+ * Routes requests to the best available provider.
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.ProviderRouter = void 0;
8
8
  exports.getRouter = getRouter;
9
9
  exports.resetRouter = resetRouter;
10
10
  const openai_1 = require("./openai");
11
- const anthropic_1 = require("./anthropic");
12
- const google_1 = require("./google");
13
- const ollama_1 = require("./ollama");
14
- const openrouter_1 = require("./openrouter");
15
- const vought_1 = require("./vought");
16
11
  const manager_1 = require("../config/manager");
17
12
  class ProviderRouter {
18
13
  providers = new Map();
19
- fallbackChain;
20
14
  constructor() {
21
15
  const config = (0, manager_1.getConfigManager)();
22
16
  const aiConfig = config.getAll().ai;
23
- this.fallbackChain = aiConfig.fallbackChain;
24
17
  this.initProviders(aiConfig);
25
18
  }
26
19
  initProviders(aiConfig) {
27
20
  const p = aiConfig.providers;
28
- if (p.openai.enabled && p.openai.apiKey) {
29
- this.providers.set('openai', new openai_1.OpenAIProvider(p.openai));
30
- }
31
- if (p.anthropic.enabled && p.anthropic.apiKey) {
32
- this.providers.set('anthropic', new anthropic_1.AnthropicProvider(p.anthropic));
33
- }
34
- if (p.google.enabled && p.google.apiKey) {
35
- this.providers.set('google', new google_1.GoogleProvider(p.google));
36
- }
37
- if (p.ollama.enabled) {
38
- this.providers.set('ollama', new ollama_1.OllamaProvider(p.ollama));
39
- }
40
- if (p.lmstudio?.enabled) {
41
- // LM Studio exposes an OpenAI-compatible API on localhost:1234
42
- this.providers.set('lmstudio', new openai_1.OpenAIProvider({
43
- apiKey: 'lm-studio',
44
- baseUrl: p.lmstudio.baseUrl || 'http://localhost:1234/v1',
45
- defaultModel: p.lmstudio.defaultModel || 'local-model',
21
+ if (p.opencode && p.opencode.enabled && p.opencode.apiKey) {
22
+ this.providers.set('opencode', new openai_1.OpenAIProvider({
23
+ apiKey: p.opencode.apiKey,
24
+ baseUrl: p.opencode.baseUrl || 'https://opencode.ai/zen/v1',
25
+ defaultModel: p.opencode.defaultModel || 'minimax-m2.5-free'
46
26
  }));
47
27
  }
48
- if (p.localai?.enabled) {
49
- // LocalAI exposes an OpenAI-compatible API
50
- this.providers.set('localai', new openai_1.OpenAIProvider({
51
- apiKey: 'local-ai',
52
- baseUrl: p.localai.baseUrl || 'http://localhost:8080/v1',
53
- defaultModel: p.localai.defaultModel || 'local-model',
54
- }));
55
- }
56
- if (p.groq.enabled && p.groq.apiKey) {
57
- // Groq uses OpenAI-compatible API
58
- this.providers.set('groq', new openai_1.OpenAIProvider({ apiKey: p.groq.apiKey, baseUrl: p.groq.baseUrl, defaultModel: p.groq.defaultModel }));
59
- }
60
- if (p.deepseek.enabled && p.deepseek.apiKey) {
61
- this.providers.set('deepseek', new openai_1.OpenAIProvider({ apiKey: p.deepseek.apiKey, baseUrl: p.deepseek.baseUrl, defaultModel: p.deepseek.defaultModel }));
62
- }
63
- if (p.openrouter.enabled && p.openrouter.apiKey) {
64
- this.providers.set('openrouter', new openrouter_1.OpenRouterProvider({ apiKey: p.openrouter.apiKey, baseUrl: p.openrouter.baseUrl, defaultModel: p.openrouter.defaultModel }));
65
- }
66
- if (p.custom.enabled && p.custom.apiKey && p.custom.baseUrl) {
67
- this.providers.set('custom', new vought_1.VoughtGateProvider({ apiKey: p.custom.apiKey, baseUrl: p.custom.baseUrl, defaultModel: p.custom.defaultModel }));
28
+ if (process.env.AZERCLAW_DEBUG) {
29
+ console.log(`[Router] Initialized providers: ${Array.from(this.providers.keys()).join(', ')}`);
68
30
  }
69
31
  }
70
32
  getProvider(name) {
71
33
  if (name)
72
34
  return this.providers.get(name);
73
- const config = (0, manager_1.getConfigManager)();
74
- const defaultProvider = config.getAll().ai.defaultProvider;
75
- return this.providers.get(defaultProvider) || this.providers.values().next().value;
35
+ const config = (0, manager_1.getConfigManager)().getAll();
36
+ const defaultProvider = config.ai.defaultProvider;
37
+ return this.providers.get(defaultProvider) || this.providers.get('opencode') || this.providers.values().next().value;
76
38
  }
77
39
  async complete(options, preferredProvider) {
78
- // Build the resolution order: preferred → default → fallback chain → any available
79
- const config = (0, manager_1.getConfigManager)();
80
- const defaultProvider = config.getAll().ai.defaultProvider;
81
- const tried = new Set();
82
- const tryOrder = [];
40
+ const config = (0, manager_1.getConfigManager)().getAll();
41
+ const provider = this.getProvider(preferredProvider);
42
+ if (!provider) {
43
+ return { content: 'Error: No AI engine configured. Run `azerclaw onboard`.', model: 'none', provider: 'none', finishReason: 'error' };
44
+ }
45
+ const providerName = preferredProvider || provider.name || config.ai.defaultProvider;
46
+ const providerConfig = config.ai.providers[providerName] || config.ai.providers.opencode;
47
+ const defaultModel = providerConfig?.defaultModel;
48
+ const modelChain = [options.model && options.model !== 'auto' ? options.model : defaultModel, ...config.ai.modelFallbackChain || []];
83
49
  let lastError = '';
84
- if (preferredProvider)
85
- tryOrder.push(preferredProvider);
86
- if (defaultProvider)
87
- tryOrder.push(defaultProvider);
88
- tryOrder.push(...this.fallbackChain);
89
- // Add all registered providers as final fallback
90
- for (const name of this.providers.keys())
91
- tryOrder.push(name);
92
- for (const providerName of tryOrder) {
93
- if (tried.has(providerName))
50
+ for (const modelId of modelChain) {
51
+ if (!modelId)
94
52
  continue;
95
- tried.add(providerName);
96
- const provider = this.providers.get(providerName);
97
- if (!provider)
98
- continue;
99
- let currentOptions = { ...options };
100
- // Auto-model selection: if model is 'auto', find the best available model
101
- if (options.model === 'auto') {
102
- try {
103
- const models = await provider.listModels();
104
- // Calculate required context window
105
- const contentLen = options.messages.reduce((acc, m) => acc + m.content.length, 0);
106
- const estimatedTokens = Math.ceil(contentLen / 4) + (options.maxTokens || 4096) + 1000; // Buffer
107
- // Find models that fit
108
- const fittingModels = models.filter(m => m.contextWindow >= estimatedTokens);
109
- if (fittingModels.length > 0) {
110
- // Sort by context window (prefer smaller ones for speed/cost if they fit)
111
- fittingModels.sort((a, b) => a.contextWindow - b.contextWindow);
112
- currentOptions.model = fittingModels[0].id;
113
- }
114
- else {
115
- // Fallback to largest available
116
- models.sort((a, b) => b.contextWindow - a.contextWindow);
117
- currentOptions.model = models[0].id;
118
- }
119
- }
120
- catch { /* fallback to provider default */ }
53
+ if (process.env.AZERCLAW_DEBUG) {
54
+ console.log(`[Router] Attempting model: ${modelId} on ${providerName}`);
121
55
  }
122
- // If we fallback to openrouter, rewrite the system identity to DEEP Ocean 1.0
123
- if (providerName === 'openrouter') {
124
- currentOptions = {
125
- ...currentOptions,
126
- messages: currentOptions.messages.map(m => m.role === 'system'
127
- ? { ...m, content: m.content.replace(/Azertron X1\.0/gi, 'DEEP Ocean 1.0').replace(/AZERTRON X1\.0/gi, 'DEEP Ocean 1.0') }
128
- : m)
129
- };
56
+ try {
57
+ const result = await provider.complete({ ...options, model: modelId });
58
+ if (result.finishReason !== 'error')
59
+ return result;
60
+ lastError = result.content;
130
61
  }
131
- // Retry with exponential backoff for transient errors
132
- const maxRetries = 3;
133
- for (let attempt = 0; attempt < maxRetries; attempt++) {
134
- try {
135
- const result = await provider.complete(currentOptions);
136
- if (result.finishReason !== 'error')
137
- return result;
138
- // Check if error is retryable (rate limit, server error)
139
- const isRetryable = result.content.includes('429') ||
140
- result.content.includes('500') ||
141
- result.content.includes('502') ||
142
- result.content.includes('503') ||
143
- result.content.includes('rate') ||
144
- result.content.includes('timeout');
145
- if (isRetryable && attempt < maxRetries - 1) {
146
- const delay = Math.pow(2, attempt) * 1000; // 1s, 2s, 4s
147
- await new Promise(r => setTimeout(r, delay));
148
- continue;
149
- }
150
- lastError = result.content || `${providerName} returned error`;
151
- break;
152
- }
153
- catch (e) {
154
- const isRetryable = e.status === 429 || e.status >= 500 ||
155
- e.code === 'ECONNREFUSED' || e.code === 'ETIMEDOUT' ||
156
- e.code === 'ENOTFOUND';
157
- if (isRetryable && attempt < maxRetries - 1) {
158
- const delay = Math.pow(2, attempt) * 1000;
159
- await new Promise(r => setTimeout(r, delay));
160
- continue;
161
- }
162
- lastError = e.message || `${providerName} threw exception`;
163
- break;
164
- }
62
+ catch (e) {
63
+ lastError = e.message;
165
64
  }
166
65
  }
167
- const errorMsg = lastError
168
- ? `Error: All providers failed. Last error: ${lastError}`
169
- : 'Error: No providers available. Run `azerclaw onboard` to configure.';
170
- if (process.env.AZERCLAW_DEBUG) {
171
- console.error(`[Router] All providers failed. Resolve path: ${tryOrder.join(' -> ')}`);
172
- }
173
- return { content: errorMsg, model: 'none', provider: 'none', finishReason: 'error' };
66
+ return {
67
+ content: `Error: All models in the chain failed. Last error: ${lastError}`,
68
+ model: 'none',
69
+ provider: providerName,
70
+ finishReason: 'error'
71
+ };
174
72
  }
175
73
  async *stream(options, preferredProvider) {
176
74
  const provider = preferredProvider ? this.providers.get(preferredProvider) : this.getProvider();
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/providers/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/providers/router.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * 🐟 AZERCLAW Skills System
3
- * Load and execute SKILL.md files compatible with the OpenClaw ecosystem.
3
+ * Load and execute SKILL.md files compatible with the Azerclaw ecosystem.
4
4
  */
5
5
  export interface SkillMetadata {
6
6
  name: string;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /**
3
3
  * 🐟 AZERCLAW Skills System
4
- * Load and execute SKILL.md files compatible with the OpenClaw ecosystem.
4
+ * Load and execute SKILL.md files compatible with the Azerclaw ecosystem.
5
5
  */
6
6
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
7
  if (k2 === undefined) k2 = k;
@@ -1 +1 @@
1
- {"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../../src/tools/visual.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAG9C,eAAO,MAAM,iBAAiB,EAAE,IAuD/B,CAAC"}
1
+ {"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../../src/tools/visual.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAG9C,eAAO,MAAM,iBAAiB,EAAE,IAe/B,CAAC"}
@@ -5,7 +5,6 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.generateImageTool = void 0;
8
- const manager_1 = require("../config/manager");
9
8
  exports.generateImageTool = {
10
9
  name: 'generate_image',
11
10
  version: '2.0.0',
@@ -19,41 +18,7 @@ exports.generateImageTool = {
19
18
  required: ['prompt'],
20
19
  },
21
20
  async execute(args) {
22
- const config = (0, manager_1.getConfigManager)().getAll();
23
- const custom = config.ai.providers.custom;
24
- if (!custom || !custom.apiKey || !custom.baseUrl) {
25
- return { success: false, output: '', error: 'Cloudflare credentials not configured' };
26
- }
27
- try {
28
- const fetch = require('node-fetch');
29
- const fs = require('fs/promises');
30
- const path = require('path');
31
- const response = await fetch(`${custom.baseUrl}/black-forest-labs/flux-1-schnell`, {
32
- method: 'POST',
33
- headers: {
34
- 'Authorization': `Bearer ${custom.apiKey}`,
35
- 'Content-Type': 'application/json',
36
- },
37
- body: JSON.stringify({
38
- prompt: args.prompt,
39
- }),
40
- });
41
- if (!response.ok) {
42
- throw new Error(`Cloudflare AI Error: ${response.statusText}`);
43
- }
44
- const buffer = await response.buffer();
45
- const fileName = `evidence_${Date.now()}.png`;
46
- const filePath = path.join(process.cwd(), fileName);
47
- await fs.writeFile(filePath, buffer);
48
- return {
49
- success: true,
50
- output: `Image generated and saved to: ${filePath}\nPrompt: ${args.prompt}`,
51
- metadata: { filePath, fileName }
52
- };
53
- }
54
- catch (e) {
55
- return { success: false, output: '', error: e.message };
56
- }
21
+ return { success: false, output: '', error: 'Image generation is currently disabled. Vought Gate is offline.' };
57
22
  }
58
23
  };
59
24
  //# sourceMappingURL=visual.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../../src/tools/visual.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,+CAAqD;AAExC,QAAA,iBAAiB,GAAS;IACrC,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,kGAAkG;IAC/G,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;YACtE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;SAC/E;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,KAAK,CAAC,OAAO,CAAC,IAA6B;QACzC,MAAM,MAAM,GAAG,IAAA,0BAAgB,GAAE,CAAC,MAAM,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC;QAE1C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC;QACxF,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;YACpC,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAE7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,mCAAmC,EAAE;gBACjF,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACjE,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,YAAY,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;YAEpD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAErC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,iCAAiC,QAAQ,aAAa,IAAI,CAAC,MAAM,EAAE;gBAC3E,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;aACjC,CAAC;QACJ,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1D,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../../src/tools/visual.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAKU,QAAA,iBAAiB,GAAS;IACrC,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,kGAAkG;IAC/G,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;YACtE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;SAC/E;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,KAAK,CAAC,OAAO,CAAC,IAA6B;QACzC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,iEAAiE,EAAE,CAAC;IAClH,CAAC;CACF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * 🐟 AZERCLAW Fishbone Workflow Engine
3
- * Deterministic, typed pipeline system — replaces OpenClaw's "Lobster" engine.
3
+ * Deterministic, typed pipeline system — replaces Azerclaw's "Fishbone" engine.
4
4
  * Supports .fishbone files for defining multi-step workflows with approval gates.
5
5
  */
6
6
  export interface FishboneStep {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /**
3
3
  * 🐟 AZERCLAW Fishbone Workflow Engine
4
- * Deterministic, typed pipeline system — replaces OpenClaw's "Lobster" engine.
4
+ * Deterministic, typed pipeline system — replaces Azerclaw's "Fishbone" engine.
5
5
  * Supports .fishbone files for defining multi-step workflows with approval gates.
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "azerclaw",
3
- "version": "2.1.1",
3
+ "version": "2.1.2",
4
4
  "description": "🐟 AZERCLAW — Open-source, BYOK AI agent for your terminal. Your AI, Your Keys, Your Way.",
5
5
  "main": "dist/src/index.js",
6
6
  "bin": {
@@ -1,25 +0,0 @@
1
- /**
2
- * 🐟 AZERCLAW Anthropic Provider
3
- * Claude models via the Anthropic API.
4
- */
5
- import { BaseProvider, CompletionOptions, CompletionResult, StreamChunk, ModelInfo } from './base';
6
- export declare class AnthropicProvider extends BaseProvider {
7
- readonly name = "anthropic";
8
- readonly displayName = "Anthropic";
9
- private client;
10
- private defaultModel;
11
- constructor(config: {
12
- apiKey: string;
13
- baseUrl?: string;
14
- defaultModel?: string;
15
- });
16
- isAvailable(): Promise<boolean>;
17
- complete(options: CompletionOptions): Promise<CompletionResult>;
18
- stream(options: CompletionOptions): AsyncGenerator<StreamChunk>;
19
- listModels(): Promise<ModelInfo[]>;
20
- validateConnection(): Promise<{
21
- valid: boolean;
22
- error?: string;
23
- }>;
24
- }
25
- //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,SAAS,EACV,MAAM,QAAQ,CAAC;AAEhB,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,WAAW,eAAe;IACnC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;IASzE,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAK/B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2E9D,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC;IAqChE,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAQlC,kBAAkB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAmBxE"}
@@ -1,163 +0,0 @@
1
- "use strict";
2
- /**
3
- * 🐟 AZERCLAW Anthropic Provider
4
- * Claude models via the Anthropic API.
5
- */
6
- var __importDefault = (this && this.__importDefault) || function (mod) {
7
- return (mod && mod.__esModule) ? mod : { "default": mod };
8
- };
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.AnthropicProvider = void 0;
11
- const sdk_1 = __importDefault(require("@anthropic-ai/sdk"));
12
- const base_1 = require("./base");
13
- class AnthropicProvider extends base_1.BaseProvider {
14
- name = 'anthropic';
15
- displayName = 'Anthropic';
16
- client;
17
- defaultModel;
18
- constructor(config) {
19
- super();
20
- this.defaultModel = config.defaultModel || 'claude-sonnet-4-20250514';
21
- this.client = new sdk_1.default({
22
- apiKey: config.apiKey,
23
- baseURL: config.baseUrl || undefined,
24
- });
25
- }
26
- async isAvailable() {
27
- const result = await this.validateConnection();
28
- return result.valid;
29
- }
30
- async complete(options) {
31
- const model = options.model || this.defaultModel;
32
- try {
33
- const params = {
34
- model,
35
- max_tokens: options.maxTokens || 4096,
36
- messages: options.messages
37
- .filter(m => m.role !== 'system')
38
- .map(m => ({
39
- role: m.role === 'assistant' ? 'assistant' : 'user',
40
- content: m.content,
41
- })),
42
- };
43
- if (options.systemPrompt) {
44
- params.system = options.systemPrompt;
45
- }
46
- else {
47
- const sysMsg = options.messages.find(m => m.role === 'system');
48
- if (sysMsg) {
49
- params.system = sysMsg.content;
50
- }
51
- }
52
- if (options.tools && options.tools.length > 0) {
53
- params.tools = options.tools.map(t => ({
54
- name: t.function.name,
55
- description: t.function.description,
56
- input_schema: t.function.parameters,
57
- }));
58
- }
59
- const response = await this.client.messages.create(params);
60
- let content = '';
61
- const toolCalls = [];
62
- for (const block of response.content) {
63
- if (block.type === 'text') {
64
- content += block.text;
65
- }
66
- else if (block.type === 'tool_use') {
67
- toolCalls.push({
68
- id: block.id,
69
- type: 'function',
70
- function: {
71
- name: block.name,
72
- arguments: JSON.stringify(block.input),
73
- },
74
- });
75
- }
76
- }
77
- return {
78
- content,
79
- toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
80
- usage: {
81
- promptTokens: response.usage.input_tokens,
82
- completionTokens: response.usage.output_tokens,
83
- totalTokens: response.usage.input_tokens + response.usage.output_tokens,
84
- },
85
- model: response.model,
86
- provider: this.name,
87
- finishReason: response.stop_reason === 'tool_use' ? 'tool_calls' :
88
- response.stop_reason === 'max_tokens' ? 'length' : 'stop',
89
- };
90
- }
91
- catch (error) {
92
- return {
93
- content: '',
94
- model,
95
- provider: this.name,
96
- finishReason: 'error',
97
- };
98
- }
99
- }
100
- async *stream(options) {
101
- const model = options.model || this.defaultModel;
102
- try {
103
- const params = {
104
- model,
105
- max_tokens: options.maxTokens || 4096,
106
- stream: true,
107
- messages: options.messages
108
- .filter(m => m.role !== 'system')
109
- .map(m => ({
110
- role: m.role === 'assistant' ? 'assistant' : 'user',
111
- content: m.content,
112
- })),
113
- };
114
- if (options.systemPrompt) {
115
- params.system = options.systemPrompt;
116
- }
117
- const stream = this.client.messages.stream(params);
118
- for await (const event of stream) {
119
- if (event.type === 'content_block_delta') {
120
- const delta = event.delta;
121
- if (delta.type === 'text_delta') {
122
- yield { type: 'text', content: delta.text };
123
- }
124
- }
125
- else if (event.type === 'message_stop') {
126
- yield { type: 'done' };
127
- }
128
- }
129
- }
130
- catch (error) {
131
- yield { type: 'error', error: error.message || 'Unknown error' };
132
- }
133
- }
134
- async listModels() {
135
- return [
136
- { id: 'claude-opus-4-20250514', name: 'Claude Opus 4', provider: this.name, contextWindow: 200000, supportsTools: true, supportsStreaming: true },
137
- { id: 'claude-sonnet-4-20250514', name: 'Claude Sonnet 4', provider: this.name, contextWindow: 200000, supportsTools: true, supportsStreaming: true },
138
- { id: 'claude-3-5-haiku-20241022', name: 'Claude 3.5 Haiku', provider: this.name, contextWindow: 200000, supportsTools: true, supportsStreaming: true },
139
- ];
140
- }
141
- async validateConnection() {
142
- try {
143
- await this.client.messages.create({
144
- model: this.defaultModel,
145
- max_tokens: 10,
146
- messages: [{ role: 'user', content: 'hi' }],
147
- });
148
- return { valid: true };
149
- }
150
- catch (error) {
151
- if (error.status === 401) {
152
- return { valid: false, error: 'Invalid API key' };
153
- }
154
- // Rate limit or other errors still mean connection works
155
- if (error.status === 429) {
156
- return { valid: true };
157
- }
158
- return { valid: false, error: error.message || 'Connection failed' };
159
- }
160
- }
161
- }
162
- exports.AnthropicProvider = AnthropicProvider;
163
- //# sourceMappingURL=anthropic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- /**
2
- * 🐟 AZERCLAW Google Gemini Provider
3
- */
4
- import { BaseProvider, CompletionOptions, CompletionResult, StreamChunk, ModelInfo } from './base';
5
- export declare class GoogleProvider extends BaseProvider {
6
- readonly name = "google";
7
- readonly displayName = "Google Gemini";
8
- private client;
9
- private defaultModel;
10
- constructor(config: {
11
- apiKey: string;
12
- defaultModel?: string;
13
- });
14
- isAvailable(): Promise<boolean>;
15
- complete(options: CompletionOptions): Promise<CompletionResult>;
16
- stream(options: CompletionOptions): AsyncGenerator<StreamChunk>;
17
- listModels(): Promise<ModelInfo[]>;
18
- validateConnection(): Promise<{
19
- valid: boolean;
20
- error?: string;
21
- }>;
22
- }
23
- //# sourceMappingURL=google.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"google.d.ts","sourceRoot":"","sources":["../../../src/providers/google.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,SAAS,EACV,MAAM,QAAQ,CAAC;AAEhB,qBAAa,cAAe,SAAQ,YAAY;IAC9C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,WAAW,mBAAmB;IACvC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;IAMvD,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAK/B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8C9D,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC;IA0ChE,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAQlC,kBAAkB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAYxE"}