Files
openclaw/extensions/longcat/openclaw.plugin.json
ffyuuu efe5d8d76e fix(longcat): correct cache pricing and add provider icon (#121369)
* longcat: align baseUrl with docs, fix cacheWrite pricing, add brand icon

- Point baseUrl at the documented https://api.longcat.chat/openai/v1 path
  instead of the undocumented unversioned alias route.
- Fix cacheWrite pricing to 0: the LongCat pricing page has no separate
  cache-write charge (matches deepseek/moonshot/zai catalog conventions).
- Update the pricing page link to the current docs path.
- Add the official LongCat brand icon (provenance recorded in
  ATTRIBUTION.md) and display-name mapping so the Control UI shows proper
  branding instead of the letter-badge fallback.
- Migrate the persisted legacy default baseUrl via a plugin-owned doctor
  configRepair contract: onboarding persists
  models.providers.longcat.baseUrl and the runtime reads the stored value,
  so the contract rewrites exactly the former default to /openai/v1,
  preserves custom endpoints, and warns via a legacy-config rule.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* fix(longcat): correct provider metadata

* fix(longcat): migrate persisted stock pricing

* style(longcat): format doctor repair

* fix(longcat): preserve doctor migration after compat cleanup

* fix(longcat): avoid map spread in doctor repair

---------

Co-authored-by: yuzehui02 <yuzehui02@meituan.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-08-10 20:15:18 -07:00

86 lines
2.0 KiB
JSON

{
"id": "longcat",
"name": "LongCat",
"description": "OpenClaw LongCat provider plugin.",
"doctorContract": {
"configRepair": true
},
"activation": {
"onStartup": false
},
"enabledByDefault": true,
"providers": ["longcat"],
"providerRequest": {
"providers": {
"longcat": {
"family": "longcat"
}
}
},
"modelCatalog": {
"providers": {
"longcat": {
"baseUrl": "https://api.longcat.chat/openai",
"api": "openai-completions",
"models": [
{
"id": "LongCat-2.0",
"name": "LongCat 2.0",
"reasoning": true,
"input": ["text"],
"contextWindow": 1048576,
"maxTokens": 131072,
"cost": {
"input": 0.75,
"output": 2.95,
"cacheRead": 0.015,
"cacheWrite": 0
},
"compat": {
"supportsStore": false,
"supportsDeveloperRole": false,
"supportsReasoningEffort": false,
"supportsUsageInStreaming": false,
"supportsStrictMode": false,
"maxTokensField": "max_tokens",
"requiresReasoningContentOnAssistantMessages": true,
"thinkingFormat": "deepseek"
}
}
]
}
},
"discovery": {
"longcat": "refreshable"
}
},
"setup": {
"providers": [
{
"id": "longcat",
"envVars": ["LONGCAT_API_KEY"]
}
]
},
"providerAuthChoices": [
{
"provider": "longcat",
"method": "api-key",
"choiceId": "longcat-api-key",
"choiceLabel": "LongCat API key",
"groupId": "longcat",
"groupLabel": "LongCat",
"groupHint": "API key",
"optionKey": "longcatApiKey",
"cliFlag": "--longcat-api-key",
"cliOption": "--longcat-api-key <key>",
"cliDescription": "LongCat API key"
}
],
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}