@anthropic-ai/sdk 0.26.0 → 0.27.0
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/CHANGELOG.md +22 -0
- package/README.md +13 -3
- package/index.d.mts +6 -0
- package/index.d.ts +6 -0
- package/index.d.ts.map +1 -1
- package/index.js +6 -2
- package/index.js.map +1 -1
- package/index.mjs +6 -2
- package/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +12 -2
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.27.0 (2024-08-21)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [sdk-v0.26.1...sdk-v0.27.0](https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.26.1...sdk-v0.27.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **client:** add support for browser usage ([#504](https://github.com/anthropics/anthropic-sdk-typescript/issues/504)) ([93c5f16](https://github.com/anthropics/anthropic-sdk-typescript/commit/93c5f16b4b8c3404bd67d6eb5a0556a8b0a5d027))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Documentation
|
|
13
|
+
|
|
14
|
+
* **readme:** update formatting and clarity for CORS flag ([9cb2c35](https://github.com/anthropics/anthropic-sdk-typescript/commit/9cb2c35f92827eb8654b1669db5ba702770fcae4))
|
|
15
|
+
|
|
16
|
+
## 0.26.1 (2024-08-15)
|
|
17
|
+
|
|
18
|
+
Full Changelog: [sdk-v0.26.0...sdk-v0.26.1](https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.26.0...sdk-v0.26.1)
|
|
19
|
+
|
|
20
|
+
### Chores
|
|
21
|
+
|
|
22
|
+
* **ci:** add CODEOWNERS file ([#498](https://github.com/anthropics/anthropic-sdk-typescript/issues/498)) ([c34433f](https://github.com/anthropics/anthropic-sdk-typescript/commit/c34433fb6528fdd00d189ea0a3b177d95c7c7fa9))
|
|
23
|
+
* **docs/api:** update prompt caching helpers ([04195a3](https://github.com/anthropics/anthropic-sdk-typescript/commit/04195a345d62c98f826e5eecdad20f497db5b3e5))
|
|
24
|
+
|
|
3
25
|
## 0.26.0 (2024-08-14)
|
|
4
26
|
|
|
5
27
|
Full Changelog: [sdk-v0.25.2...sdk-v0.26.0](https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.25.2...sdk-v0.26.0)
|
package/README.md
CHANGED
|
@@ -418,9 +418,19 @@ The following runtimes are supported:
|
|
|
418
418
|
- Vercel Edge Runtime.
|
|
419
419
|
- Jest 28 or greater with the `"node"` environment (`"jsdom"` is not supported at this time).
|
|
420
420
|
- Nitro v2.6 or greater.
|
|
421
|
-
|
|
422
|
-
>
|
|
423
|
-
>
|
|
421
|
+
- Web browsers: disabled by default to avoid exposing your secret API credentials (see our help center for [best practices](https://support.anthropic.com/en/articles/9767949-api-key-best-practices-keeping-your-keys-safe-and-secure)). Enable browser support by explicitly setting `dangerouslyAllowBrowser` to `true`.
|
|
422
|
+
<details>
|
|
423
|
+
<summary><b>More explanation</b></summary>
|
|
424
|
+
<h3>Why is this dangerous?</h3>
|
|
425
|
+
Enabling the <code>dangerouslyAllowBrowser</code> option can be dangerous because it exposes your secret API credentials in the client-side code. Web browsers are inherently less secure than server environments,
|
|
426
|
+
any user with access to the browser can potentially inspect, extract, and misuse these credentials. This could lead to unauthorized access using your credentials and potentially compromise sensitive data or functionality.
|
|
427
|
+
<h3>When might this not be dangerous?</h3>
|
|
428
|
+
In certain scenarios where enabling browser support might not pose significant risks:
|
|
429
|
+
<ul>
|
|
430
|
+
<li>Internal Tools: If the application is used solely within a controlled internal environment where the users are trusted, the risk of credential exposure can be mitigated.</li>
|
|
431
|
+
<li>Development or debugging purpose: Enabling this feature temporarily might be acceptable, provided the credentials are short-lived, aren't also used in production environments, or are frequently rotated.</li>
|
|
432
|
+
</ul>
|
|
433
|
+
</details>
|
|
424
434
|
|
|
425
435
|
Note that React Native is not supported at this time.
|
|
426
436
|
|
package/index.d.mts
CHANGED
|
@@ -61,6 +61,11 @@ export interface ClientOptions {
|
|
|
61
61
|
* param to `undefined` in request options.
|
|
62
62
|
*/
|
|
63
63
|
defaultQuery?: Core.DefaultQuery;
|
|
64
|
+
/**
|
|
65
|
+
* By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
66
|
+
* Only set this option to `true` if you understand the risks and have appropriate mitigations in place.
|
|
67
|
+
*/
|
|
68
|
+
dangerouslyAllowBrowser?: boolean;
|
|
64
69
|
}
|
|
65
70
|
/**
|
|
66
71
|
* API Client for interfacing with the Anthropic API.
|
|
@@ -81,6 +86,7 @@ export declare class Anthropic extends Core.APIClient {
|
|
|
81
86
|
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
82
87
|
* @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
83
88
|
* @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
89
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
84
90
|
*/
|
|
85
91
|
constructor({ baseURL, apiKey, authToken, ...opts }?: ClientOptions);
|
|
86
92
|
completions: API.Completions;
|
package/index.d.ts
CHANGED
|
@@ -61,6 +61,11 @@ export interface ClientOptions {
|
|
|
61
61
|
* param to `undefined` in request options.
|
|
62
62
|
*/
|
|
63
63
|
defaultQuery?: Core.DefaultQuery;
|
|
64
|
+
/**
|
|
65
|
+
* By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
66
|
+
* Only set this option to `true` if you understand the risks and have appropriate mitigations in place.
|
|
67
|
+
*/
|
|
68
|
+
dangerouslyAllowBrowser?: boolean;
|
|
64
69
|
}
|
|
65
70
|
/**
|
|
66
71
|
* API Client for interfacing with the Anthropic API.
|
|
@@ -81,6 +86,7 @@ export declare class Anthropic extends Core.APIClient {
|
|
|
81
86
|
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
82
87
|
* @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
83
88
|
* @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
89
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
84
90
|
*/
|
|
85
91
|
constructor({ baseURL, apiKey, authToken, ...opts }?: ClientOptions);
|
|
86
92
|
completions: API.Completions;
|
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,GAAG,MAAM,mBAAmB,CAAC;AAEzC,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAElB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IAE/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC;IAE9B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
|
package/index.js
CHANGED
|
@@ -46,6 +46,7 @@ class Anthropic extends Core.APIClient {
|
|
|
46
46
|
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
47
47
|
* @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
48
48
|
* @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
49
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
49
50
|
*/
|
|
50
51
|
constructor({ baseURL = Core.readEnv('ANTHROPIC_BASE_URL'), apiKey = Core.readEnv('ANTHROPIC_API_KEY') ?? null, authToken = Core.readEnv('ANTHROPIC_AUTH_TOKEN') ?? null, ...opts } = {}) {
|
|
51
52
|
const options = {
|
|
@@ -54,8 +55,8 @@ class Anthropic extends Core.APIClient {
|
|
|
54
55
|
...opts,
|
|
55
56
|
baseURL: baseURL || `https://api.anthropic.com`,
|
|
56
57
|
};
|
|
57
|
-
if (Core.isRunningInBrowser()) {
|
|
58
|
-
throw new Errors.AnthropicError("It looks like you're running in a browser-like environment
|
|
58
|
+
if (!options.dangerouslyAllowBrowser && Core.isRunningInBrowser()) {
|
|
59
|
+
throw new Errors.AnthropicError("It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew Anthropic({ apiKey, dangerouslyAllowBrowser: true });\n\nTODO: link!\n");
|
|
59
60
|
}
|
|
60
61
|
super({
|
|
61
62
|
baseURL: options.baseURL,
|
|
@@ -77,6 +78,9 @@ class Anthropic extends Core.APIClient {
|
|
|
77
78
|
defaultHeaders(opts) {
|
|
78
79
|
return {
|
|
79
80
|
...super.defaultHeaders(opts),
|
|
81
|
+
...(this._options.dangerouslyAllowBrowser ?
|
|
82
|
+
{ 'anthropic-dangerous-direct-browser-access': 'true' }
|
|
83
|
+
: undefined),
|
|
80
84
|
'anthropic-version': '2023-06-01',
|
|
81
85
|
...this._options.defaultHeaders,
|
|
82
86
|
};
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtF,mDAAkC;AAClC,sDAAqC;AAErC,gDAA+B;AAC/B,0DAAyC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
|
package/index.mjs
CHANGED
|
@@ -20,6 +20,7 @@ export class Anthropic extends Core.APIClient {
|
|
|
20
20
|
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
21
21
|
* @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
22
22
|
* @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
23
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
23
24
|
*/
|
|
24
25
|
constructor({ baseURL = Core.readEnv('ANTHROPIC_BASE_URL'), apiKey = Core.readEnv('ANTHROPIC_API_KEY') ?? null, authToken = Core.readEnv('ANTHROPIC_AUTH_TOKEN') ?? null, ...opts } = {}) {
|
|
25
26
|
const options = {
|
|
@@ -28,8 +29,8 @@ export class Anthropic extends Core.APIClient {
|
|
|
28
29
|
...opts,
|
|
29
30
|
baseURL: baseURL || `https://api.anthropic.com`,
|
|
30
31
|
};
|
|
31
|
-
if (Core.isRunningInBrowser()) {
|
|
32
|
-
throw new Errors.AnthropicError("It looks like you're running in a browser-like environment
|
|
32
|
+
if (!options.dangerouslyAllowBrowser && Core.isRunningInBrowser()) {
|
|
33
|
+
throw new Errors.AnthropicError("It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew Anthropic({ apiKey, dangerouslyAllowBrowser: true });\n\nTODO: link!\n");
|
|
33
34
|
}
|
|
34
35
|
super({
|
|
35
36
|
baseURL: options.baseURL,
|
|
@@ -51,6 +52,9 @@ export class Anthropic extends Core.APIClient {
|
|
|
51
52
|
defaultHeaders(opts) {
|
|
52
53
|
return {
|
|
53
54
|
...super.defaultHeaders(opts),
|
|
55
|
+
...(this._options.dangerouslyAllowBrowser ?
|
|
56
|
+
{ 'anthropic-dangerous-direct-browser-access': 'true' }
|
|
57
|
+
: undefined),
|
|
54
58
|
'anthropic-version': '2023-06-01',
|
|
55
59
|
...this._options.defaultHeaders,
|
|
56
60
|
};
|
package/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;;OAE/E,KAAK,MAAM;OACX,KAAK,OAAO;OAEZ,KAAK,IAAI;OACT,KAAK,GAAG;
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -72,6 +72,12 @@ export interface ClientOptions {
|
|
|
72
72
|
* param to `undefined` in request options.
|
|
73
73
|
*/
|
|
74
74
|
defaultQuery?: Core.DefaultQuery;
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
78
|
+
* Only set this option to `true` if you understand the risks and have appropriate mitigations in place.
|
|
79
|
+
*/
|
|
80
|
+
dangerouslyAllowBrowser?: boolean;
|
|
75
81
|
}
|
|
76
82
|
|
|
77
83
|
/**
|
|
@@ -95,6 +101,7 @@ export class Anthropic extends Core.APIClient {
|
|
|
95
101
|
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
96
102
|
* @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
97
103
|
* @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
104
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
98
105
|
*/
|
|
99
106
|
constructor({
|
|
100
107
|
baseURL = Core.readEnv('ANTHROPIC_BASE_URL'),
|
|
@@ -109,9 +116,9 @@ export class Anthropic extends Core.APIClient {
|
|
|
109
116
|
baseURL: baseURL || `https://api.anthropic.com`,
|
|
110
117
|
};
|
|
111
118
|
|
|
112
|
-
if (Core.isRunningInBrowser()) {
|
|
119
|
+
if (!options.dangerouslyAllowBrowser && Core.isRunningInBrowser()) {
|
|
113
120
|
throw new Errors.AnthropicError(
|
|
114
|
-
"It looks like you're running in a browser-like environment
|
|
121
|
+
"It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew Anthropic({ apiKey, dangerouslyAllowBrowser: true });\n\nTODO: link!\n",
|
|
115
122
|
);
|
|
116
123
|
}
|
|
117
124
|
|
|
@@ -140,6 +147,9 @@ export class Anthropic extends Core.APIClient {
|
|
|
140
147
|
protected override defaultHeaders(opts: Core.FinalRequestOptions): Core.Headers {
|
|
141
148
|
return {
|
|
142
149
|
...super.defaultHeaders(opts),
|
|
150
|
+
...(this._options.dangerouslyAllowBrowser ?
|
|
151
|
+
{ 'anthropic-dangerous-direct-browser-access': 'true' }
|
|
152
|
+
: undefined),
|
|
143
153
|
'anthropic-version': '2023-06-01',
|
|
144
154
|
...this._options.defaultHeaders,
|
|
145
155
|
};
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VERSION = '0.
|
|
1
|
+
export const VERSION = '0.27.0'; // x-release-please-version
|
package/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.27.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/version.js
CHANGED
package/version.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '0.
|
|
1
|
+
export const VERSION = '0.27.0'; // x-release-please-version
|
|
2
2
|
//# sourceMappingURL=version.mjs.map
|