pi-clawbay 0.0.5 → 0.0.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/README.md +16 -15
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +195 -204
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -49,23 +49,23 @@ Get your API key from [TheClawBay Dashboard](https://theclawbay.com).
|
|
|
49
49
|
|
|
50
50
|
### Available Models
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
Model IDs are discovered dynamically at extension load from:
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
| `gpt-5.4` | GPT-5.4 | Frontier coding model with widest headroom |
|
|
57
|
-
| `gpt-5.3-codex` | GPT-5.3 Codex | Strong daily-driver for heavier work |
|
|
58
|
-
| `gpt-5.2-codex` | GPT-5.2 Codex | Stable compatibility for older flows |
|
|
59
|
-
| `gpt-5.2` | GPT-5.2 | Balanced non-Codex option |
|
|
60
|
-
| `gpt-5.1-codex-max` | GPT-5.1 Codex Max | Higher-throughput for longer sessions |
|
|
61
|
-
| `gpt-5.1-codex-mini` | GPT-5.1 Codex Mini | Lower-cost for quick iterations |
|
|
54
|
+
- `GET https://api.theclawbay.com/v1/models`
|
|
55
|
+
- `GET https://api.theclawbay.com/anthropic/v1/models`
|
|
62
56
|
|
|
63
|
-
|
|
57
|
+
If discovery fails or `THECLAWBAY_API_KEY` is not set yet, the extension falls back to a bundled default list so `/model` still works.
|
|
64
58
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
59
|
+
Last verified against the live APIs on `2026-04-03`:
|
|
60
|
+
|
|
61
|
+
- OpenAI-compatible: `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.3-codex`, `gpt-5.2-codex`, `gpt-5.2`, `gpt-5.1-codex-max`, `gpt-5.1-codex-mini`
|
|
62
|
+
- Anthropic-compatible: `claude-haiku-4-5-20251001`, `claude-sonnet-4-6`, `claude-opus-4-6`
|
|
63
|
+
|
|
64
|
+
### Model Limits
|
|
65
|
+
|
|
66
|
+
- `gpt-5.4` is configured with a `1,050,000` token context window.
|
|
67
|
+
- Current GPT-5/Codex variants default to `400,000` context and `128,000` max output tokens.
|
|
68
|
+
- Claude models default to `200,000` context in this extension. Anthropic documents `1M` context for Opus 4.6 and Sonnet 4.6 behind a beta header, but this extension does not enable that beta automatically.
|
|
69
69
|
|
|
70
70
|
## Usage
|
|
71
71
|
|
|
@@ -86,8 +86,9 @@ import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
|
86
86
|
export default function (pi: ExtensionAPI) {
|
|
87
87
|
// After loading this extension, models are available:
|
|
88
88
|
// - theclawbay/gpt-5.4
|
|
89
|
-
// - theclawbay/gpt-5.
|
|
89
|
+
// - theclawbay/gpt-5.4-mini
|
|
90
90
|
// - theclawbay-claude/claude-opus-4-6
|
|
91
|
+
// - theclawbay-claude/claude-haiku-4-5-20251001
|
|
91
92
|
// - theclawbay-claude/claude-sonnet-4-6
|
|
92
93
|
}
|
|
93
94
|
```
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAyC,MAAM,+BAA+B,CAAC;AAiXzG;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,EAAE,EAAE,YAAY,QAmCxC"}
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
* - `theclawbay-claude`: Anthropic-compatible endpoint for Claude models
|
|
8
8
|
*
|
|
9
9
|
* Features:
|
|
10
|
-
* - Shows quota usage in status line (only when using TheClawBay models)
|
|
11
10
|
* - /quota command to check detailed usage
|
|
12
11
|
*
|
|
13
12
|
* Usage:
|
|
@@ -19,98 +18,201 @@
|
|
|
19
18
|
const THECLAWBAY_OPENAI_BASE_URL = "https://api.theclawbay.com/v1";
|
|
20
19
|
const THECLAWBAY_ANTHROPIC_BASE_URL = "https://api.theclawbay.com/anthropic";
|
|
21
20
|
const THECLAWBAY_QUOTA_URL = "https://theclawbay.com/api/codex-auth/v1/quota";
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
{
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
id: "gpt-5.2-codex",
|
|
50
|
-
name: "GPT-5.2 Codex",
|
|
51
|
-
description: "Stable compatibility option for older Codex flows",
|
|
52
|
-
reasoning: true,
|
|
53
|
-
input: ["text", "image"],
|
|
54
|
-
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
55
|
-
contextWindow: 128000,
|
|
56
|
-
maxTokens: 16384,
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
id: "gpt-5.2",
|
|
60
|
-
name: "GPT-5.2",
|
|
61
|
-
description: "Balanced GPT-5 path when you want a non-Codex option",
|
|
62
|
-
reasoning: true,
|
|
63
|
-
input: ["text", "image"],
|
|
64
|
-
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
65
|
-
contextWindow: 128000,
|
|
66
|
-
maxTokens: 16384,
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
id: "gpt-5.1-codex-max",
|
|
70
|
-
name: "GPT-5.1 Codex Max",
|
|
71
|
-
description: "Higher-throughput option for longer coding sessions",
|
|
72
|
-
reasoning: true,
|
|
73
|
-
input: ["text", "image"],
|
|
74
|
-
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
75
|
-
contextWindow: 128000,
|
|
76
|
-
maxTokens: 16384,
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
id: "gpt-5.1-codex-mini",
|
|
80
|
-
name: "GPT-5.1 Codex Mini",
|
|
81
|
-
description: "Lower-cost Codex path for quick iterations",
|
|
82
|
-
reasoning: true,
|
|
83
|
-
input: ["text", "image"],
|
|
84
|
-
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
85
|
-
contextWindow: 128000,
|
|
86
|
-
maxTokens: 16384,
|
|
87
|
-
},
|
|
21
|
+
const THECLAWBAY_OPENAI_MODELS_URL = `${THECLAWBAY_OPENAI_BASE_URL}/models`;
|
|
22
|
+
const THECLAWBAY_ANTHROPIC_MODELS_URL = `${THECLAWBAY_ANTHROPIC_BASE_URL}/v1/models`;
|
|
23
|
+
const ANTHROPIC_VERSION_HEADER = "2023-06-01";
|
|
24
|
+
const MODEL_INPUTS = ["text", "image"];
|
|
25
|
+
const ZERO_COST = { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 };
|
|
26
|
+
const OPENAI_KNOWN_COSTS = {
|
|
27
|
+
"gpt-5.4": { input: 2.5, output: 15.0, cacheRead: 0.25, cacheWrite: 2.5 },
|
|
28
|
+
"gpt-5.4-mini": { input: 1.25, output: 10.0, cacheRead: 0.125, cacheWrite: 1.25 },
|
|
29
|
+
"gpt-5.3-codex": { input: 1.75, output: 14.0, cacheRead: 0.175, cacheWrite: 1.75 },
|
|
30
|
+
"gpt-5.2-codex": { input: 1.75, output: 14.0, cacheRead: 0.175, cacheWrite: 1.75 },
|
|
31
|
+
"gpt-5.2": { input: 1.75, output: 14.0, cacheRead: 0.175, cacheWrite: 1.75 },
|
|
32
|
+
"gpt-5.1-codex-max": { input: 1.25, output: 10.0, cacheRead: 0.125, cacheWrite: 1.25 },
|
|
33
|
+
"gpt-5.1-codex-mini": { input: 0.25, output: 2.0, cacheRead: 0.025, cacheWrite: 0.25 },
|
|
34
|
+
};
|
|
35
|
+
const OPENAI_DEFAULT_CONTEXT_WINDOW = 400000;
|
|
36
|
+
const OPENAI_FRONTIER_CONTEXT_WINDOW = 1050000;
|
|
37
|
+
const OPENAI_DEFAULT_MAX_TOKENS = 128000;
|
|
38
|
+
const ANTHROPIC_DEFAULT_CONTEXT_WINDOW = 200000;
|
|
39
|
+
const ANTHROPIC_DEFAULT_MAX_TOKENS = 64000;
|
|
40
|
+
const FALLBACK_OPENAI_MODEL_IDS = [
|
|
41
|
+
"gpt-5.4",
|
|
42
|
+
"gpt-5.4-mini",
|
|
43
|
+
"gpt-5.3-codex",
|
|
44
|
+
"gpt-5.2-codex",
|
|
45
|
+
"gpt-5.2",
|
|
46
|
+
"gpt-5.1-codex-max",
|
|
47
|
+
"gpt-5.1-codex-mini",
|
|
88
48
|
];
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
{
|
|
94
|
-
id: "claude-opus-4-6",
|
|
95
|
-
name: "Claude Opus 4.6",
|
|
96
|
-
description: "Anthropic's most capable model for complex tasks",
|
|
97
|
-
reasoning: true,
|
|
98
|
-
input: ["text", "image"],
|
|
99
|
-
cost: { input: 5.0, output: 25.0, cacheRead: 0.5, cacheWrite: 6.25 },
|
|
100
|
-
contextWindow: 200000,
|
|
101
|
-
maxTokens: 32000,
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
id: "claude-sonnet-4-6",
|
|
105
|
-
name: "Claude Sonnet 4.6",
|
|
106
|
-
description: "Near-Opus intelligence at a fraction of the cost",
|
|
107
|
-
reasoning: true,
|
|
108
|
-
input: ["text", "image"],
|
|
109
|
-
cost: { input: 3.0, output: 15.0, cacheRead: 0.3, cacheWrite: 3.75 },
|
|
110
|
-
contextWindow: 200000,
|
|
111
|
-
maxTokens: 16384,
|
|
112
|
-
},
|
|
49
|
+
const FALLBACK_ANTHROPIC_MODEL_IDS = [
|
|
50
|
+
"claude-opus-4-6",
|
|
51
|
+
"claude-sonnet-4-6",
|
|
52
|
+
"claude-haiku-4-5-20251001",
|
|
113
53
|
];
|
|
54
|
+
function dedupeIds(ids) {
|
|
55
|
+
const seen = new Set();
|
|
56
|
+
const deduped = [];
|
|
57
|
+
for (const id of ids) {
|
|
58
|
+
if (!seen.has(id)) {
|
|
59
|
+
seen.add(id);
|
|
60
|
+
deduped.push(id);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return deduped;
|
|
64
|
+
}
|
|
65
|
+
function toTitleCase(value) {
|
|
66
|
+
if (value.length === 0) {
|
|
67
|
+
return value;
|
|
68
|
+
}
|
|
69
|
+
return value.charAt(0).toUpperCase() + value.slice(1);
|
|
70
|
+
}
|
|
71
|
+
function formatOpenAIModelName(id) {
|
|
72
|
+
if (id.startsWith("gpt-")) {
|
|
73
|
+
const suffix = id
|
|
74
|
+
.slice(4)
|
|
75
|
+
.split("-")
|
|
76
|
+
.map((part) => (/^\d+(\.\d+)?$/.test(part) ? part : toTitleCase(part)))
|
|
77
|
+
.join(" ");
|
|
78
|
+
return `GPT-${suffix}`;
|
|
79
|
+
}
|
|
80
|
+
return id
|
|
81
|
+
.split("-")
|
|
82
|
+
.map((part) => (/^\d+(\.\d+)?$/.test(part) ? part.toUpperCase() : toTitleCase(part)))
|
|
83
|
+
.join(" ");
|
|
84
|
+
}
|
|
85
|
+
function formatClaudeModelName(id) {
|
|
86
|
+
const parts = id.split("-");
|
|
87
|
+
if (parts.length < 4 || parts[0] !== "claude") {
|
|
88
|
+
return id
|
|
89
|
+
.split("-")
|
|
90
|
+
.map((part) => toTitleCase(part))
|
|
91
|
+
.join(" ");
|
|
92
|
+
}
|
|
93
|
+
const version = `${parts[2]}.${parts[3]}`;
|
|
94
|
+
const suffix = parts.slice(4).join(" ");
|
|
95
|
+
return suffix.length > 0
|
|
96
|
+
? `Claude ${toTitleCase(parts[1])} ${version} ${suffix}`
|
|
97
|
+
: `Claude ${toTitleCase(parts[1])} ${version}`;
|
|
98
|
+
}
|
|
99
|
+
function createModelConfig(id, name, cost, contextWindow, maxTokens) {
|
|
100
|
+
return {
|
|
101
|
+
id,
|
|
102
|
+
name,
|
|
103
|
+
reasoning: true,
|
|
104
|
+
input: [...MODEL_INPUTS],
|
|
105
|
+
cost: { ...cost },
|
|
106
|
+
contextWindow,
|
|
107
|
+
maxTokens,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
function createOpenAIModel(id) {
|
|
111
|
+
const cost = OPENAI_KNOWN_COSTS[id] ?? ZERO_COST;
|
|
112
|
+
if (id === "gpt-5.4") {
|
|
113
|
+
return createModelConfig(id, formatOpenAIModelName(id), cost, OPENAI_FRONTIER_CONTEXT_WINDOW, OPENAI_DEFAULT_MAX_TOKENS);
|
|
114
|
+
}
|
|
115
|
+
if (id === "gpt-5.4-pro") {
|
|
116
|
+
return createModelConfig(id, formatOpenAIModelName(id), cost, OPENAI_FRONTIER_CONTEXT_WINDOW, 272000);
|
|
117
|
+
}
|
|
118
|
+
return createModelConfig(id, formatOpenAIModelName(id), cost, OPENAI_DEFAULT_CONTEXT_WINDOW, OPENAI_DEFAULT_MAX_TOKENS);
|
|
119
|
+
}
|
|
120
|
+
function createAnthropicModel(id, displayName) {
|
|
121
|
+
const name = displayName?.trim() || formatClaudeModelName(id);
|
|
122
|
+
switch (id) {
|
|
123
|
+
case "claude-opus-4-6":
|
|
124
|
+
return createModelConfig(id, name, { input: 5.0, output: 25.0, cacheRead: 0.5, cacheWrite: 6.25 }, 200000, 128000);
|
|
125
|
+
case "claude-sonnet-4-6":
|
|
126
|
+
return createModelConfig(id, name, { input: 3.0, output: 15.0, cacheRead: 0.3, cacheWrite: 3.75 }, 200000, 64000);
|
|
127
|
+
case "claude-haiku-4-5":
|
|
128
|
+
case "claude-haiku-4-5-20251001":
|
|
129
|
+
return createModelConfig(id, name, { input: 1.0, output: 5.0, cacheRead: 0.1, cacheWrite: 1.25 }, 200000, 64000);
|
|
130
|
+
default:
|
|
131
|
+
return createModelConfig(id, name, ZERO_COST, ANTHROPIC_DEFAULT_CONTEXT_WINDOW, ANTHROPIC_DEFAULT_MAX_TOKENS);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
function buildFallbackOpenAIModels() {
|
|
135
|
+
return dedupeIds(FALLBACK_OPENAI_MODEL_IDS).map((id) => createOpenAIModel(id));
|
|
136
|
+
}
|
|
137
|
+
function buildFallbackAnthropicModels() {
|
|
138
|
+
return dedupeIds(FALLBACK_ANTHROPIC_MODEL_IDS).map((id) => createAnthropicModel(id));
|
|
139
|
+
}
|
|
140
|
+
function registerProviders(pi, openaiModels, anthropicModels) {
|
|
141
|
+
pi.registerProvider("theclawbay", {
|
|
142
|
+
baseUrl: THECLAWBAY_OPENAI_BASE_URL,
|
|
143
|
+
apiKey: "THECLAWBAY_API_KEY",
|
|
144
|
+
api: "openai-responses",
|
|
145
|
+
authHeader: true,
|
|
146
|
+
models: openaiModels,
|
|
147
|
+
});
|
|
148
|
+
pi.registerProvider("theclawbay-claude", {
|
|
149
|
+
baseUrl: THECLAWBAY_ANTHROPIC_BASE_URL,
|
|
150
|
+
apiKey: "THECLAWBAY_API_KEY",
|
|
151
|
+
api: "anthropic-messages",
|
|
152
|
+
authHeader: true,
|
|
153
|
+
models: anthropicModels,
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
async function fetchOpenAIModels(apiKey) {
|
|
157
|
+
try {
|
|
158
|
+
const response = await fetch(THECLAWBAY_OPENAI_MODELS_URL, {
|
|
159
|
+
headers: {
|
|
160
|
+
Authorization: `Bearer ${apiKey}`,
|
|
161
|
+
},
|
|
162
|
+
});
|
|
163
|
+
if (!response.ok) {
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
166
|
+
const payload = (await response.json());
|
|
167
|
+
const ids = dedupeIds((payload.data ?? [])
|
|
168
|
+
.map((entry) => entry.id?.trim())
|
|
169
|
+
.filter((id) => typeof id === "string" && id.length > 0 && !id.startsWith("claude-")));
|
|
170
|
+
return ids.length > 0 ? ids.map((id) => createOpenAIModel(id)) : null;
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
async function fetchAnthropicModels(apiKey) {
|
|
177
|
+
try {
|
|
178
|
+
const response = await fetch(THECLAWBAY_ANTHROPIC_MODELS_URL, {
|
|
179
|
+
headers: {
|
|
180
|
+
Authorization: `Bearer ${apiKey}`,
|
|
181
|
+
"anthropic-version": ANTHROPIC_VERSION_HEADER,
|
|
182
|
+
},
|
|
183
|
+
});
|
|
184
|
+
if (!response.ok) {
|
|
185
|
+
return null;
|
|
186
|
+
}
|
|
187
|
+
const payload = (await response.json());
|
|
188
|
+
const models = dedupeIds((payload.data ?? [])
|
|
189
|
+
.map((entry) => entry.id?.trim())
|
|
190
|
+
.filter((id) => Boolean(id))).map((id) => {
|
|
191
|
+
const match = (payload.data ?? []).find((entry) => entry.id?.trim() === id);
|
|
192
|
+
return createAnthropicModel(id, match?.display_name);
|
|
193
|
+
});
|
|
194
|
+
return models.length > 0 ? models : null;
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
return null;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
async function refreshProviderModels(pi) {
|
|
201
|
+
const apiKey = getApiKey();
|
|
202
|
+
if (!apiKey) {
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
const [openaiResult, anthropicResult] = await Promise.all([
|
|
206
|
+
fetchOpenAIModels(apiKey),
|
|
207
|
+
fetchAnthropicModels(apiKey),
|
|
208
|
+
]);
|
|
209
|
+
const openaiModels = openaiResult ?? buildFallbackOpenAIModels();
|
|
210
|
+
const anthropicModels = anthropicResult ?? buildFallbackAnthropicModels();
|
|
211
|
+
registerProviders(pi, openaiModels, anthropicModels);
|
|
212
|
+
if (openaiResult || anthropicResult) {
|
|
213
|
+
console.info(`[theclawbay] Registered ${openaiModels.length} OpenAI-compatible models and ${anthropicModels.length} Anthropic-compatible models from live model discovery.`);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
114
216
|
/**
|
|
115
217
|
* Fetch quota information from TheClawBay API
|
|
116
218
|
*/
|
|
@@ -133,9 +235,6 @@ async function fetchQuota(apiKey) {
|
|
|
133
235
|
function getApiKey() {
|
|
134
236
|
return process.env.THECLAWBAY_API_KEY;
|
|
135
237
|
}
|
|
136
|
-
function isTheClawBayProvider(provider) {
|
|
137
|
-
return provider !== undefined && THECLAWBAY_PROVIDERS.includes(provider);
|
|
138
|
-
}
|
|
139
238
|
function getQuotaWindows(quota) {
|
|
140
239
|
return {
|
|
141
240
|
fiveHour: quota.usage?.fiveHour,
|
|
@@ -184,34 +283,6 @@ function formatQuotaDetails(label, window) {
|
|
|
184
283
|
: percent;
|
|
185
284
|
return `${label}: ${usage} • ${window.requestCount ?? 0} req • resets ${formatDuration(window.secondsUntilReset)}`;
|
|
186
285
|
}
|
|
187
|
-
/**
|
|
188
|
-
* Update quota status in the status line
|
|
189
|
-
*/
|
|
190
|
-
function updateQuotaStatus(ctx, quota) {
|
|
191
|
-
const theme = ctx.ui.theme;
|
|
192
|
-
const { fiveHour, weekly } = getQuotaWindows(quota);
|
|
193
|
-
const parts = [];
|
|
194
|
-
if (fiveHour) {
|
|
195
|
-
const five = formatPercent(fiveHour.percentUsed);
|
|
196
|
-
parts.push(theme.fg(five.color, `5h:${five.text}`));
|
|
197
|
-
}
|
|
198
|
-
if (weekly) {
|
|
199
|
-
const week = formatPercent(weekly.percentUsed);
|
|
200
|
-
parts.push(theme.fg(week.color, `w:${week.text}`));
|
|
201
|
-
}
|
|
202
|
-
if (parts.length > 0) {
|
|
203
|
-
ctx.ui.setStatus(THECLAWBAY_QUOTA_STATUS_KEY, parts.join(" "));
|
|
204
|
-
}
|
|
205
|
-
else {
|
|
206
|
-
ctx.ui.setStatus(THECLAWBAY_QUOTA_STATUS_KEY, theme.fg("dim", "Quota: N/A"));
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
function clearQuotaStatus(ctx) {
|
|
210
|
-
ctx.ui.setStatus(THECLAWBAY_QUOTA_STATUS_KEY, undefined);
|
|
211
|
-
}
|
|
212
|
-
function getProviderFromContext(ctx, fallbackProvider) {
|
|
213
|
-
return ctx.model?.provider ?? fallbackProvider;
|
|
214
|
-
}
|
|
215
286
|
/**
|
|
216
287
|
* Register TheClawBay providers with pi coding agent
|
|
217
288
|
*/
|
|
@@ -223,87 +294,8 @@ export default function (pi) {
|
|
|
223
294
|
" export THECLAWBAY_API_KEY=your-key-here\n" +
|
|
224
295
|
" Get your key at: https://theclawbay.com\n");
|
|
225
296
|
}
|
|
226
|
-
pi
|
|
227
|
-
|
|
228
|
-
apiKey: "THECLAWBAY_API_KEY",
|
|
229
|
-
api: "openai-responses",
|
|
230
|
-
authHeader: true,
|
|
231
|
-
models: OPENAI_MODELS.map((m) => ({
|
|
232
|
-
id: m.id,
|
|
233
|
-
name: m.name,
|
|
234
|
-
reasoning: m.reasoning,
|
|
235
|
-
input: [...m.input],
|
|
236
|
-
cost: m.cost,
|
|
237
|
-
contextWindow: m.contextWindow,
|
|
238
|
-
maxTokens: m.maxTokens,
|
|
239
|
-
})),
|
|
240
|
-
});
|
|
241
|
-
pi.registerProvider("theclawbay-claude", {
|
|
242
|
-
baseUrl: THECLAWBAY_ANTHROPIC_BASE_URL,
|
|
243
|
-
apiKey: "THECLAWBAY_API_KEY",
|
|
244
|
-
api: "anthropic-messages",
|
|
245
|
-
authHeader: true,
|
|
246
|
-
models: ANTHROPIC_MODELS.map((m) => ({
|
|
247
|
-
id: m.id,
|
|
248
|
-
name: m.name,
|
|
249
|
-
reasoning: m.reasoning,
|
|
250
|
-
input: [...m.input],
|
|
251
|
-
cost: m.cost,
|
|
252
|
-
contextWindow: m.contextWindow,
|
|
253
|
-
maxTokens: m.maxTokens,
|
|
254
|
-
})),
|
|
255
|
-
});
|
|
256
|
-
/**
|
|
257
|
-
* Refresh quota status for the current model
|
|
258
|
-
*/
|
|
259
|
-
const refreshQuotaStatus = async (ctx, provider) => {
|
|
260
|
-
if (!isTheClawBayProvider(provider)) {
|
|
261
|
-
clearQuotaStatus(ctx);
|
|
262
|
-
return;
|
|
263
|
-
}
|
|
264
|
-
const currentApiKey = getApiKey();
|
|
265
|
-
if (!currentApiKey) {
|
|
266
|
-
ctx.ui.setStatus(THECLAWBAY_QUOTA_STATUS_KEY, ctx.ui.theme.fg("dim", "Quota: no key"));
|
|
267
|
-
return;
|
|
268
|
-
}
|
|
269
|
-
const quota = await fetchQuota(currentApiKey);
|
|
270
|
-
if (!quota) {
|
|
271
|
-
ctx.ui.setStatus(THECLAWBAY_QUOTA_STATUS_KEY, ctx.ui.theme.fg("dim", "Quota: unavailable"));
|
|
272
|
-
return;
|
|
273
|
-
}
|
|
274
|
-
updateQuotaStatus(ctx, quota);
|
|
275
|
-
};
|
|
276
|
-
// Current provider tracking (updated via events)
|
|
277
|
-
let currentProvider;
|
|
278
|
-
// Update quota status when model is selected (covers switches and restores)
|
|
279
|
-
pi.on("model_select", async (event, ctx) => {
|
|
280
|
-
currentProvider = event.model.provider;
|
|
281
|
-
await refreshQuotaStatus(ctx, currentProvider);
|
|
282
|
-
});
|
|
283
|
-
// Seed status on startup even if the current model was already restored before hooks run
|
|
284
|
-
pi.on("session_start", async (_event, ctx) => {
|
|
285
|
-
currentProvider = getProviderFromContext(ctx, currentProvider);
|
|
286
|
-
await refreshQuotaStatus(ctx, currentProvider);
|
|
287
|
-
});
|
|
288
|
-
// Keep the footer in sync when moving between sessions
|
|
289
|
-
pi.on("session_switch", async (_event, ctx) => {
|
|
290
|
-
currentProvider = getProviderFromContext(ctx, currentProvider);
|
|
291
|
-
await refreshQuotaStatus(ctx, currentProvider);
|
|
292
|
-
});
|
|
293
|
-
// Ensure status appears as soon as a turn starts, even if startup restore was silent
|
|
294
|
-
pi.on("turn_start", async (_event, ctx) => {
|
|
295
|
-
currentProvider = getProviderFromContext(ctx, currentProvider);
|
|
296
|
-
if (isTheClawBayProvider(currentProvider)) {
|
|
297
|
-
await refreshQuotaStatus(ctx, currentProvider);
|
|
298
|
-
}
|
|
299
|
-
});
|
|
300
|
-
// Update quota after each turn (usage changes)
|
|
301
|
-
pi.on("turn_end", async (_event, ctx) => {
|
|
302
|
-
currentProvider = getProviderFromContext(ctx, currentProvider);
|
|
303
|
-
if (isTheClawBayProvider(currentProvider)) {
|
|
304
|
-
await refreshQuotaStatus(ctx, currentProvider);
|
|
305
|
-
}
|
|
306
|
-
});
|
|
297
|
+
registerProviders(pi, buildFallbackOpenAIModels(), buildFallbackAnthropicModels());
|
|
298
|
+
void refreshProviderModels(pi);
|
|
307
299
|
// Register single quota command
|
|
308
300
|
pi.registerCommand("quota", {
|
|
309
301
|
description: "Check TheClawBay quota usage",
|
|
@@ -318,7 +310,6 @@ export default function (pi) {
|
|
|
318
310
|
ctx.ui.notify("Failed to fetch quota from TheClawBay", "error");
|
|
319
311
|
return;
|
|
320
312
|
}
|
|
321
|
-
updateQuotaStatus(ctx, quota);
|
|
322
313
|
const { fiveHour, weekly } = getQuotaWindows(quota);
|
|
323
314
|
ctx.ui.notify(`${formatQuotaDetails("5h", fiveHour)} | ${formatQuotaDetails("Week", weekly)}`, "info");
|
|
324
315
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|