unbound-claude-code 0.1.3 → 0.1.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/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +10 -5
- package/dist/auth.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +17 -13
- package/dist/cli.js.map +1 -1
- package/dist/interceptor.d.ts.map +1 -1
- package/dist/interceptor.js +4 -0
- package/dist/interceptor.js.map +1 -1
- package/dist/storage.d.ts +19 -24
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +68 -62
- package/dist/storage.js.map +1 -1
- package/package.json +4 -2
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAOhD,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAiB;gBAEpB,OAAO,GAAE,MAAuC;IAK5D;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiCpD;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAiCtE;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IA4BxC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAalC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IA0BtC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CActC"}
|
package/dist/auth.js
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.UnboundAuth = void 0;
|
|
7
7
|
const storage_1 = require("./storage");
|
|
8
|
+
const DEFAULT_HEADERS = {
|
|
9
|
+
"X-Unbound-Metadata": JSON.stringify({ labels: [{ key: "app", value: "unbound-claude-code" }] }),
|
|
10
|
+
};
|
|
8
11
|
class UnboundAuth {
|
|
9
12
|
constructor(baseUrl = "https://api.getunbound.ai/v1") {
|
|
10
13
|
this.baseUrl = baseUrl;
|
|
@@ -20,6 +23,7 @@ class UnboundAuth {
|
|
|
20
23
|
headers: {
|
|
21
24
|
"Authorization": `Bearer ${apiKey}`,
|
|
22
25
|
"Content-Type": "application/json",
|
|
26
|
+
...DEFAULT_HEADERS,
|
|
23
27
|
}
|
|
24
28
|
});
|
|
25
29
|
if (response.ok) {
|
|
@@ -53,6 +57,7 @@ class UnboundAuth {
|
|
|
53
57
|
headers: {
|
|
54
58
|
"Authorization": `Bearer ${apiKey}`,
|
|
55
59
|
"Content-Type": "application/json",
|
|
60
|
+
...DEFAULT_HEADERS,
|
|
56
61
|
}
|
|
57
62
|
});
|
|
58
63
|
if (response.ok) {
|
|
@@ -128,17 +133,17 @@ class UnboundAuth {
|
|
|
128
133
|
return envApiKey.trim();
|
|
129
134
|
}
|
|
130
135
|
// Then try stored API key
|
|
131
|
-
const storedApiKey = this.storage.getApiKey();
|
|
136
|
+
const storedApiKey = await this.storage.getApiKey();
|
|
132
137
|
if (storedApiKey) {
|
|
133
|
-
console.log('✓ Using stored Unbound API key
|
|
138
|
+
console.log('✓ Using stored Unbound API key');
|
|
134
139
|
return storedApiKey;
|
|
135
140
|
}
|
|
136
141
|
// If not found anywhere, prompt user
|
|
137
|
-
console.log('
|
|
142
|
+
console.log('No stored API key found.');
|
|
138
143
|
const apiKey = await this.promptForApiKey();
|
|
139
144
|
// Store the API key for future use
|
|
140
|
-
this.storage.setApiKey(apiKey);
|
|
141
|
-
console.log('✓ Unbound API key stored
|
|
145
|
+
await this.storage.setApiKey(apiKey);
|
|
146
|
+
console.log('✓ Unbound API key stored securely for future use');
|
|
142
147
|
return apiKey;
|
|
143
148
|
}
|
|
144
149
|
/**
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,uCAA2C;AAE3C,MAAa,WAAW;IAItB,YAAY,UAAkB,8BAA8B;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAc,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,SAAS,EAAE;gBACrD,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,MAAM,EAAE;oBACnC,cAAc,EAAE,kBAAkB;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAmBH,cAAM,UAAU;IACd,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAiB;;IAOhC,OAAO,CAAC,SAAS;IAoDjB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAmBH,cAAM,UAAU;IACd,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAiB;;IAOhC,OAAO,CAAC,SAAS;IAoDjB,OAAO,CAAC,QAAQ;IAsChB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,UAAU;YAgBJ,WAAW;YAIX,QAAQ;YAyBR,eAAe;IAK7B,OAAO,CAAC,kBAAkB;YAKZ,gBAAgB;YA2EhB,gBAAgB;IAqDjB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CA2ChD;AAQD,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -77,7 +77,7 @@ OPTIONS:
|
|
|
77
77
|
-v, --version Show version information
|
|
78
78
|
--debug Enable debug logging
|
|
79
79
|
--skip-auth Skip API key authentication (use UNBOUND_API_KEY env var)
|
|
80
|
-
--api-key KEY Provide API key directly (will be stored)
|
|
80
|
+
--api-key KEY Provide API key directly (will be stored securely)
|
|
81
81
|
--clear-config Clear stored configuration
|
|
82
82
|
--show-config Show current configuration
|
|
83
83
|
--set-model MODEL Set default model
|
|
@@ -86,7 +86,7 @@ EXAMPLES:
|
|
|
86
86
|
unbound-claude-code # Start Claude Code with Unbound AI
|
|
87
87
|
unbound-claude-code chat # Start in chat mode
|
|
88
88
|
unbound-claude-code --debug # Start with debug logging
|
|
89
|
-
unbound-claude-code --api-key YOUR_KEY # Set and store API key
|
|
89
|
+
unbound-claude-code --api-key YOUR_KEY # Set and store API key securely
|
|
90
90
|
unbound-claude-code --show-config # Show stored configuration
|
|
91
91
|
unbound-claude-code --clear-config # Clear stored credentials
|
|
92
92
|
unbound-claude-code --set-model gpt-4o # Set default model
|
|
@@ -95,6 +95,9 @@ ENVIRONMENT VARIABLES:
|
|
|
95
95
|
UNBOUND_API_KEY # Your Unbound API key
|
|
96
96
|
UNBOUND_LOG_LEVEL # Log level (debug, info, warn, error)
|
|
97
97
|
|
|
98
|
+
SECURITY:
|
|
99
|
+
API keys are stored securely in your system's keychain only.
|
|
100
|
+
|
|
98
101
|
Claude Code will be launched with all API calls redirected to Unbound AI.
|
|
99
102
|
Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
100
103
|
`);
|
|
@@ -107,7 +110,7 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
107
110
|
const config = this.storage.getFullConfig();
|
|
108
111
|
console.log('Current Unbound Code Configuration:');
|
|
109
112
|
console.log('');
|
|
110
|
-
console.log(`API Key:
|
|
113
|
+
console.log(`API Key: Stored securely in system keychain`);
|
|
111
114
|
console.log(`Model: ${config.model || 'Default (anthropic/claude-sonnet-4-20250514)'}`);
|
|
112
115
|
console.log(`Base URL: ${config.baseUrl || 'https://api.getunbound.ai/v1'}`);
|
|
113
116
|
console.log(`Log Level: ${config.logLevel || 'info'}`);
|
|
@@ -115,15 +118,15 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
115
118
|
console.log(`Last Used: ${new Date(config.lastUsed).toLocaleString()}`);
|
|
116
119
|
}
|
|
117
120
|
console.log('');
|
|
118
|
-
console.log(`Config stored at: ~/.unbound-code/config.json`);
|
|
121
|
+
console.log(`Config stored at: ~/.unbound-code/config.json (non-sensitive data only)`);
|
|
122
|
+
console.log(`API key stored securely in system keychain`);
|
|
119
123
|
}
|
|
120
|
-
clearConfig() {
|
|
121
|
-
this.storage.clearConfig();
|
|
122
|
-
console.log('✓ Configuration cleared successfully');
|
|
124
|
+
async clearConfig() {
|
|
125
|
+
await this.storage.clearConfig();
|
|
123
126
|
}
|
|
124
127
|
async setModel(model) {
|
|
125
128
|
// Verify the API key exists first
|
|
126
|
-
const apiKey = this.storage.getApiKey();
|
|
129
|
+
const apiKey = await this.storage.getApiKey();
|
|
127
130
|
if (!apiKey) {
|
|
128
131
|
console.log('No API key found. Please set your API key first with --api-key');
|
|
129
132
|
return;
|
|
@@ -133,6 +136,7 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
133
136
|
if (models && models.data && Array.isArray(models.data)) {
|
|
134
137
|
const modelExists = models.data.some(m => m && m.id && (m.id === model || m.id.endsWith(model)));
|
|
135
138
|
if (!modelExists) {
|
|
139
|
+
console.log(`Model '${model}' not found. Available models:`);
|
|
136
140
|
models.data
|
|
137
141
|
.filter(m => m && m.id)
|
|
138
142
|
.forEach(m => console.log(` - ${m.id}`));
|
|
@@ -167,11 +171,11 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
167
171
|
}
|
|
168
172
|
console.log('✓ API key verified successfully');
|
|
169
173
|
// Store the API key for future use
|
|
170
|
-
this.storage.setApiKey(options.apiKey);
|
|
174
|
+
await this.storage.setApiKey(options.apiKey);
|
|
171
175
|
return options.apiKey;
|
|
172
176
|
}
|
|
173
177
|
// Check if we have a stored API key first
|
|
174
|
-
const storedApiKey = this.storage.getApiKey();
|
|
178
|
+
const storedApiKey = await this.storage.getApiKey();
|
|
175
179
|
if (storedApiKey) {
|
|
176
180
|
console.log('Using stored API key...');
|
|
177
181
|
console.log('Verifying stored API key...');
|
|
@@ -191,7 +195,7 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
191
195
|
}
|
|
192
196
|
else {
|
|
193
197
|
console.log('Stored API key is invalid, requesting new key...');
|
|
194
|
-
this.storage.clearConfig();
|
|
198
|
+
await this.storage.clearConfig();
|
|
195
199
|
}
|
|
196
200
|
}
|
|
197
201
|
// Get API key (from env or prompt) and verify it
|
|
@@ -203,7 +207,7 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
203
207
|
}
|
|
204
208
|
console.log('✓ API key verified successfully');
|
|
205
209
|
// Store the API key for future use
|
|
206
|
-
this.storage.setApiKey(apiKey);
|
|
210
|
+
await this.storage.setApiKey(apiKey);
|
|
207
211
|
// Show available models
|
|
208
212
|
const models = await this.auth.getModels(apiKey);
|
|
209
213
|
if (models && models.data && Array.isArray(models.data) && models.data.length > 0) {
|
|
@@ -274,7 +278,7 @@ Claude Code is bundled with Unbound Code, so no separate installation is needed.
|
|
|
274
278
|
return;
|
|
275
279
|
}
|
|
276
280
|
if (options.clearConfig) {
|
|
277
|
-
this.clearConfig();
|
|
281
|
+
await this.clearConfig();
|
|
278
282
|
return;
|
|
279
283
|
}
|
|
280
284
|
if (options.setModel) {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;;AAEH,iDAAgD;AAChD,+BAAqC;AACrC,2BAAgC;AAChC,iCAAqC;AACrC,uCAA2C;AAa3C,MAAM,UAAU;IAId;QACE,IAAI,CAAC,IAAI,GAAG,IAAI,kBAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAc,EAAE,CAAC;IACtC,CAAC;IAEO,SAAS,CAAC,IAAc;QAC9B,MAAM,OAAO,GAAe,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAEpB,QAAQ,GAAG,EAAE,CAAC;gBACZ,KAAK,QAAQ,CAAC;gBACd,KAAK,IAAI;oBACP,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;oBACpB,MAAM;gBACR,KAAK,WAAW,CAAC;gBACjB,KAAK,IAAI;oBACP,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;oBACvB,MAAM;gBACR,KAAK,SAAS;oBACZ,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;oBACrB,MAAM;gBACR,KAAK,aAAa;oBAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;wBACxB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC7B,CAAC,EAAE,CAAC,CAAC,gBAAgB;oBACvB,CAAC;oBACD,MAAM;gBACR,KAAK,gBAAgB;oBACnB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;oBAC3B,MAAM;gBACR,KAAK,eAAe;oBAClB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;oBAC1B,MAAM;gBACR,KAAK,aAAa;oBAChB,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;wBACxB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC/B,CAAC,EAAE,CAAC,CAAC,gBAAgB;oBACvB,CAAC;oBACD,MAAM;gBACR;oBACE,8BAA8B;oBAC9B,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACrB,MAAM;YACV,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACjC,CAAC;IAEO,QAAQ;QACd,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAMxC,qBAAa,kBAAkB;IAC9B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,GAAE,aAAkB;IAQ/B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAItC,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,wBAAwB;IA6CzB,eAAe,IAAI,IAAI;IAwPvB,aAAa,IAAI,IAAI;CAG5B;AAKD,wBAAgB,4BAA4B,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,CASvF;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAEjE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAIrD"}
|
package/dist/interceptor.js
CHANGED
|
@@ -11,6 +11,9 @@ exports.UnboundInterceptor = void 0;
|
|
|
11
11
|
exports.initializeUnboundInterceptor = initializeUnboundInterceptor;
|
|
12
12
|
exports.getUnboundInterceptor = getUnboundInterceptor;
|
|
13
13
|
exports.setUnboundApiKey = setUnboundApiKey;
|
|
14
|
+
const DEFAULT_HEADERS = {
|
|
15
|
+
"X-Unbound-Metadata": JSON.stringify({ labels: [{ key: "app", value: "unbound-claude-code" }] }),
|
|
16
|
+
};
|
|
14
17
|
class UnboundInterceptor {
|
|
15
18
|
constructor(config = {}) {
|
|
16
19
|
this.apiKey = null;
|
|
@@ -124,6 +127,7 @@ class UnboundInterceptor {
|
|
|
124
127
|
Authorization: `Bearer ${interceptor.apiKey}`,
|
|
125
128
|
"claude-code-key": claudeApiKey,
|
|
126
129
|
"User-Agent": "unbound-code/1.0.0",
|
|
130
|
+
...DEFAULT_HEADERS,
|
|
127
131
|
},
|
|
128
132
|
body: JSON.stringify(openAIRequest),
|
|
129
133
|
};
|
package/dist/interceptor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;
|
|
1
|
+
{"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"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"}
|
package/dist/storage.d.ts
CHANGED
|
@@ -1,58 +1,53 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Unbound Code Storage - API Key and Config Management
|
|
3
3
|
*
|
|
4
|
-
* Stores API key
|
|
4
|
+
* Stores API key securely in system keychain only
|
|
5
5
|
*/
|
|
6
6
|
export interface UnboundConfig {
|
|
7
|
-
apiKey?: string;
|
|
8
7
|
model?: string;
|
|
9
8
|
baseUrl?: string;
|
|
10
9
|
logLevel?: string;
|
|
11
10
|
lastUsed?: string;
|
|
12
11
|
}
|
|
13
12
|
export declare class UnboundStorage {
|
|
14
|
-
private
|
|
15
|
-
private
|
|
13
|
+
private readonly SERVICE_NAME;
|
|
14
|
+
private readonly ACCOUNT_NAME;
|
|
16
15
|
constructor();
|
|
17
16
|
/**
|
|
18
|
-
*
|
|
17
|
+
* Store API key in keychain only
|
|
19
18
|
*/
|
|
20
|
-
|
|
19
|
+
setApiKey(apiKey: string): Promise<void>;
|
|
21
20
|
/**
|
|
22
|
-
*
|
|
21
|
+
* Get stored API key from keychain only
|
|
23
22
|
*/
|
|
24
|
-
|
|
23
|
+
getApiKey(): Promise<string | null>;
|
|
25
24
|
/**
|
|
26
|
-
* Get stored
|
|
27
|
-
*/
|
|
28
|
-
getApiKey(): string | null;
|
|
29
|
-
/**
|
|
30
|
-
* Store API key
|
|
31
|
-
*/
|
|
32
|
-
setApiKey(apiKey: string): void;
|
|
33
|
-
/**
|
|
34
|
-
* Get stored model
|
|
25
|
+
* Get stored model (default only)
|
|
35
26
|
*/
|
|
36
27
|
getModel(): string;
|
|
37
28
|
/**
|
|
38
|
-
* Store model
|
|
29
|
+
* Store model (no-op since we don't use config file)
|
|
39
30
|
*/
|
|
40
31
|
setModel(model: string): void;
|
|
41
32
|
/**
|
|
42
|
-
* Get full configuration
|
|
33
|
+
* Get full configuration (defaults only)
|
|
43
34
|
*/
|
|
44
35
|
getFullConfig(): UnboundConfig;
|
|
45
36
|
/**
|
|
46
|
-
* Update configuration
|
|
37
|
+
* Update configuration (no-op since we don't use config file)
|
|
47
38
|
*/
|
|
48
39
|
updateConfig(updates: Partial<UnboundConfig>): void;
|
|
49
40
|
/**
|
|
50
|
-
* Clear all stored data
|
|
41
|
+
* Clear all stored data including keychain
|
|
42
|
+
*/
|
|
43
|
+
clearConfig(): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Check if API key is stored (async version)
|
|
51
46
|
*/
|
|
52
|
-
|
|
47
|
+
hasApiKey(): Promise<boolean>;
|
|
53
48
|
/**
|
|
54
|
-
* Check if API key is stored
|
|
49
|
+
* Check if API key is stored (sync version for backward compatibility)
|
|
55
50
|
*/
|
|
56
|
-
|
|
51
|
+
hasApiKeySync(): boolean;
|
|
57
52
|
}
|
|
58
53
|
//# sourceMappingURL=storage.d.ts.map
|
package/dist/storage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyB;IACtD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;;IAM1C;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9C;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAezC;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B;;OAEG;IACH,aAAa,IAAI,aAAa;IAQ9B;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAKnD;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBlC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAKnC;;OAEG;IACH,aAAa,IAAI,OAAO;CAKzB"}
|
package/dist/storage.js
CHANGED
|
@@ -2,117 +2,123 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Unbound Code Storage - API Key and Config Management
|
|
4
4
|
*
|
|
5
|
-
* Stores API key
|
|
5
|
+
* Stores API key securely in system keychain only
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.UnboundStorage = void 0;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
// Import keytar for keychain integration
|
|
10
|
+
let keytar = null;
|
|
11
|
+
try {
|
|
12
|
+
keytar = require('keytar');
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
// keytar not available
|
|
16
|
+
console.warn('keytar not available, API key storage will not work');
|
|
17
|
+
}
|
|
12
18
|
class UnboundStorage {
|
|
13
19
|
constructor() {
|
|
14
|
-
|
|
15
|
-
this.
|
|
16
|
-
|
|
17
|
-
// Ensure config directory exists
|
|
18
|
-
if (!(0, fs_1.existsSync)(this.configDir)) {
|
|
19
|
-
(0, fs_1.mkdirSync)(this.configDir, { recursive: true });
|
|
20
|
-
}
|
|
20
|
+
this.SERVICE_NAME = 'unbound-claude-code';
|
|
21
|
+
this.ACCOUNT_NAME = 'api-key';
|
|
22
|
+
// No config file needed - only keychain storage
|
|
21
23
|
}
|
|
22
24
|
/**
|
|
23
|
-
*
|
|
25
|
+
* Store API key in keychain only
|
|
24
26
|
*/
|
|
25
|
-
|
|
27
|
+
async setApiKey(apiKey) {
|
|
28
|
+
if (!keytar) {
|
|
29
|
+
throw new Error('keytar not available. Cannot store API key securely.');
|
|
30
|
+
}
|
|
26
31
|
try {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
return JSON.parse(configData);
|
|
30
|
-
}
|
|
32
|
+
await keytar.setPassword(this.SERVICE_NAME, this.ACCOUNT_NAME, apiKey);
|
|
33
|
+
console.log('✓ API key stored securely in system keychain');
|
|
31
34
|
}
|
|
32
35
|
catch (error) {
|
|
33
|
-
|
|
36
|
+
throw new Error(`Failed to store API key in keychain: ${error}`);
|
|
34
37
|
}
|
|
35
|
-
return {};
|
|
36
38
|
}
|
|
37
39
|
/**
|
|
38
|
-
*
|
|
40
|
+
* Get stored API key from keychain only
|
|
39
41
|
*/
|
|
40
|
-
|
|
42
|
+
async getApiKey() {
|
|
43
|
+
if (!keytar) {
|
|
44
|
+
console.warn('keytar not available, cannot retrieve API key from keychain');
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
41
47
|
try {
|
|
42
|
-
const
|
|
43
|
-
|
|
48
|
+
const keychainKey = await keytar.getPassword(this.SERVICE_NAME, this.ACCOUNT_NAME);
|
|
49
|
+
return keychainKey;
|
|
44
50
|
}
|
|
45
51
|
catch (error) {
|
|
46
|
-
console.
|
|
52
|
+
console.warn('Keychain access failed:', error);
|
|
53
|
+
return null;
|
|
47
54
|
}
|
|
48
55
|
}
|
|
49
56
|
/**
|
|
50
|
-
* Get stored
|
|
51
|
-
*/
|
|
52
|
-
getApiKey() {
|
|
53
|
-
const config = this.loadConfig();
|
|
54
|
-
return config.apiKey || null;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Store API key
|
|
58
|
-
*/
|
|
59
|
-
setApiKey(apiKey) {
|
|
60
|
-
const config = this.loadConfig();
|
|
61
|
-
config.apiKey = apiKey;
|
|
62
|
-
config.lastUsed = new Date().toISOString();
|
|
63
|
-
this.saveConfig(config);
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Get stored model
|
|
57
|
+
* Get stored model (default only)
|
|
67
58
|
*/
|
|
68
59
|
getModel() {
|
|
69
|
-
|
|
70
|
-
return config.model || 'anthropic/claude-sonnet-4-20250514';
|
|
60
|
+
return 'anthropic/claude-sonnet-4-20250514';
|
|
71
61
|
}
|
|
72
62
|
/**
|
|
73
|
-
* Store model
|
|
63
|
+
* Store model (no-op since we don't use config file)
|
|
74
64
|
*/
|
|
75
65
|
setModel(model) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
config.lastUsed = new Date().toISOString();
|
|
79
|
-
this.saveConfig(config);
|
|
66
|
+
// No-op - models are not persisted
|
|
67
|
+
console.log(`✓ Model preference set to: ${model} (not persisted)`);
|
|
80
68
|
}
|
|
81
69
|
/**
|
|
82
|
-
* Get full configuration
|
|
70
|
+
* Get full configuration (defaults only)
|
|
83
71
|
*/
|
|
84
72
|
getFullConfig() {
|
|
85
|
-
return
|
|
73
|
+
return {
|
|
74
|
+
model: 'anthropic/claude-sonnet-4-20250514',
|
|
75
|
+
baseUrl: 'https://api.getunbound.ai/v1',
|
|
76
|
+
logLevel: 'info'
|
|
77
|
+
};
|
|
86
78
|
}
|
|
87
79
|
/**
|
|
88
|
-
* Update configuration
|
|
80
|
+
* Update configuration (no-op since we don't use config file)
|
|
89
81
|
*/
|
|
90
82
|
updateConfig(updates) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
config.lastUsed = new Date().toISOString();
|
|
94
|
-
this.saveConfig(config);
|
|
83
|
+
// No-op - config is not persisted
|
|
84
|
+
console.log('Configuration updates are not persisted');
|
|
95
85
|
}
|
|
96
86
|
/**
|
|
97
|
-
* Clear all stored data
|
|
87
|
+
* Clear all stored data including keychain
|
|
98
88
|
*/
|
|
99
|
-
clearConfig() {
|
|
89
|
+
async clearConfig() {
|
|
100
90
|
try {
|
|
101
|
-
|
|
102
|
-
|
|
91
|
+
// Clear from keychain if available
|
|
92
|
+
if (keytar) {
|
|
93
|
+
try {
|
|
94
|
+
await keytar.deletePassword(this.SERVICE_NAME, this.ACCOUNT_NAME);
|
|
95
|
+
console.log('✓ API key cleared from keychain');
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
console.warn('Failed to clear API key from keychain:', error);
|
|
99
|
+
}
|
|
103
100
|
}
|
|
101
|
+
console.log('✓ Configuration cleared successfully');
|
|
104
102
|
}
|
|
105
103
|
catch (error) {
|
|
106
104
|
console.error('Failed to clear config:', error);
|
|
107
105
|
}
|
|
108
106
|
}
|
|
109
107
|
/**
|
|
110
|
-
* Check if API key is stored
|
|
108
|
+
* Check if API key is stored (async version)
|
|
111
109
|
*/
|
|
112
|
-
hasApiKey() {
|
|
113
|
-
const apiKey = this.getApiKey();
|
|
110
|
+
async hasApiKey() {
|
|
111
|
+
const apiKey = await this.getApiKey();
|
|
114
112
|
return apiKey !== null && apiKey.trim().length > 0;
|
|
115
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* Check if API key is stored (sync version for backward compatibility)
|
|
116
|
+
*/
|
|
117
|
+
hasApiKeySync() {
|
|
118
|
+
// This method is deprecated since we only use keychain now
|
|
119
|
+
// Return false to force async check
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
116
122
|
}
|
|
117
123
|
exports.UnboundStorage = UnboundStorage;
|
|
118
124
|
//# sourceMappingURL=storage.js.map
|
package/dist/storage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "unbound-claude-code",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Claude Code with Unbound integration - Drop-in replacement for Claude Code with multi-provider routing and cost optimization",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -47,10 +47,12 @@
|
|
|
47
47
|
],
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@types/node": "^20.0.0",
|
|
50
|
+
"@types/keytar": "^4.4.2",
|
|
50
51
|
"typescript": "^5.0.0"
|
|
51
52
|
},
|
|
52
53
|
"dependencies": {
|
|
53
|
-
"@anthropic-ai/claude-code": ">=0.1.0"
|
|
54
|
+
"@anthropic-ai/claude-code": ">=0.1.0",
|
|
55
|
+
"keytar": "^7.9.0"
|
|
54
56
|
},
|
|
55
57
|
"peerDependencies": {
|
|
56
58
|
"@anthropic-ai/claude-code": ">=0.1.0"
|