@ozaiya/openclaw-channel 0.10.0 → 0.10.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.
@@ -18,20 +18,36 @@ export function resolveImageGenerationConfig(ozaiyaConfig, fullConfig, accountMo
18
18
  };
19
19
  }
20
20
  // 2. Infer from account model's provider
21
- if (accountModel && fullConfig) {
22
- const providerName = accountModel.includes("/")
23
- ? accountModel.split("/")[0]
24
- : null;
25
- if (providerName) {
26
- const models = fullConfig.models;
27
- const provider = models?.providers?.[providerName];
28
- if (provider?.apiKey) {
29
- return {
30
- apiBaseUrl: provider.baseUrl ?? "https://api.openai.com",
31
- apiKey: provider.apiKey,
32
- model: explicit?.model ?? "gpt-image-1",
33
- defaultSize: explicit?.defaultSize ?? "1024x1024",
34
- };
21
+ if (fullConfig) {
22
+ const models = fullConfig.models;
23
+ const providers = models?.providers;
24
+ if (accountModel && providers) {
25
+ const providerName = accountModel.includes("/")
26
+ ? accountModel.split("/")[0]
27
+ : null;
28
+ if (providerName) {
29
+ const provider = providers[providerName];
30
+ if (provider?.apiKey) {
31
+ return {
32
+ apiBaseUrl: provider.baseUrl ?? "https://api.openai.com",
33
+ apiKey: provider.apiKey,
34
+ model: explicit?.model ?? "gpt-image-1",
35
+ defaultSize: explicit?.defaultSize ?? "1024x1024",
36
+ };
37
+ }
38
+ }
39
+ }
40
+ // 3. Fall back to first provider with an apiKey (e.g. clider)
41
+ if (providers) {
42
+ for (const provider of Object.values(providers)) {
43
+ if (provider?.apiKey) {
44
+ return {
45
+ apiBaseUrl: provider.baseUrl ?? "https://api.openai.com",
46
+ apiKey: provider.apiKey,
47
+ model: explicit?.model ?? "gpt-image-1",
48
+ defaultSize: explicit?.defaultSize ?? "1024x1024",
49
+ };
50
+ }
35
51
  }
36
52
  }
37
53
  }
@@ -46,8 +62,12 @@ export function resolveImageGenerationConfig(ozaiyaConfig, fullConfig, accountMo
46
62
  export async function generateImage(config, prompt, opts) {
47
63
  const model = opts?.model ?? config.model;
48
64
  const size = opts?.size ?? config.defaultSize;
65
+ // Provider baseUrl may already include /v1 (e.g. "http://host:8082/v1")
49
66
  const baseUrl = config.apiBaseUrl.replace(/\/+$/, "");
50
- const url = `${baseUrl}/v1/images/generations`;
67
+ const hasV1 = /\/v1$/i.test(baseUrl);
68
+ const url = hasV1
69
+ ? `${baseUrl}/images/generations`
70
+ : `${baseUrl}/v1/images/generations`;
51
71
  const res = await fetch(url, {
52
72
  method: "POST",
53
73
  headers: {
@@ -1 +1 @@
1
- {"version":3,"file":"imageGeneration.js","sourceRoot":"","sources":["../../src/imageGeneration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imageGeneration.js","sourceRoot":"","sources":["../../src/imageGeneration.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozaiya/openclaw-channel",
3
- "version": "0.10.0",
3
+ "version": "0.10.2",
4
4
  "description": "OpenClaw channel plugin for Ozaiya Chat",
5
5
  "license": "MIT",
6
6
  "type": "module",