diff --git a/Enums/ApiProvider.ts b/Enums/ApiProvider.ts index 5d18769..109ece7 100644 --- a/Enums/ApiProvider.ts +++ b/Enums/ApiProvider.ts @@ -42,6 +42,7 @@ export enum AIProviderModel { ClaudeSonnet_4_5 = "claude-sonnet-4-5-20250929", ClaudeSonnet_4 = "claude-sonnet-4-20250514", ClaudeSonnet_3_7 = "claude-3-7-sonnet-20250219", + ClaudeOpus_4_6 = "claude-opus-4-6", ClaudeOpus_4_5 = "claude-opus-4-5-20251101", ClaudeOpus_4_1 = "claude-opus-4-1-20250805", ClaudeOpus_4 = "claude-opus-4-20250514", diff --git a/Enums/Copy.ts b/Enums/Copy.ts index 50b9306..615e25d 100644 --- a/Enums/Copy.ts +++ b/Enums/Copy.ts @@ -11,6 +11,7 @@ export enum Copy { ClaudeSonnet_4_5 = "Claude Sonnet 4.5", ClaudeSonnet_4 = "Claude Sonnet 4", ClaudeSonnet_3_7 = "Claude Sonnet 3.7", + ClaudeOpus_4_6 = "Claude Opus 4.6", ClaudeOpus_4_5 = "Claude Opus 4.5", ClaudeOpus_4_1 = "Claude Opus 4.1", ClaudeOpus_4 = "Claude Opus 4", diff --git a/Views/VaultkeeperAISettingTab.ts b/Views/VaultkeeperAISettingTab.ts index e31e467..b31af52 100644 --- a/Views/VaultkeeperAISettingTab.ts +++ b/Views/VaultkeeperAISettingTab.ts @@ -179,6 +179,7 @@ export class VaultkeeperAISettingTab extends PluginSettingTab { claudeGroup.createEl("option", { value: AIProviderModel.ClaudeSonnet_4_5, text: Copy.ClaudeSonnet_4_5 }); claudeGroup.createEl("option", { value: AIProviderModel.ClaudeSonnet_4, text: Copy.ClaudeSonnet_4 }); claudeGroup.createEl("option", { value: AIProviderModel.ClaudeSonnet_3_7, text: Copy.ClaudeSonnet_3_7 }); + claudeGroup.createEl("option", { value: AIProviderModel.ClaudeOpus_4_6, text: Copy.ClaudeOpus_4_6 }); claudeGroup.createEl("option", { value: AIProviderModel.ClaudeOpus_4_5, text: Copy.ClaudeOpus_4_5 }); claudeGroup.createEl("option", { value: AIProviderModel.ClaudeOpus_4_1, text: Copy.ClaudeOpus_4_1 }); claudeGroup.createEl("option", { value: AIProviderModel.ClaudeOpus_4, text: Copy.ClaudeOpus_4 }); diff --git a/package-lock.json b/package-lock.json index 1de2638..d8ccc0b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,8 +9,8 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@anthropic-ai/sdk": "^0.72.1", - "@google/genai": "^1.39.0", + "@anthropic-ai/sdk": "^0.73.0", + "@google/genai": "^1.40.0", "@shikijs/rehype": "^3.22.0", "core-js": "^3.48.0", "diff": "^8.0.3", @@ -20,7 +20,7 @@ "highlight.js": "^11.11.1", "katex": "^0.16.28", "lowlight": "^3.3.0", - "openai": "^6.17.0", + "openai": "^6.18.0", "path-browserify": "^1.0.1", "regex-parser": "^2.3.1", "rehype-highlight": "^7.0.2", @@ -41,7 +41,7 @@ "@eslint/js": "^9.39.2", "@testing-library/svelte": "^5.3.1", "@types/express": "^5.0.6", - "@types/node": "^25.1.0", + "@types/node": "^25.2.1", "@types/path-browserify": "^1.0.3", "@typescript-eslint/eslint-plugin": "8.54.0", "@typescript-eslint/parser": "8.54.0", @@ -52,9 +52,9 @@ "eslint": "^9.39.2", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-obsidianmd": "^0.1.9", - "happy-dom": "^20.4.0", + "happy-dom": "^20.5.0", "obsidian": "latest", - "svelte": "^5.49.1", + "svelte": "^5.49.2", "svelte-check": "^4.3.6", "svelte-preprocess": "^6.0.3", "tslib": "2.8.1", @@ -63,9 +63,9 @@ } }, "node_modules/@anthropic-ai/sdk": { - "version": "0.72.1", - "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.72.1.tgz", - "integrity": "sha512-MiUnue7qN7DvLIoYHgkedN2z05mRf2CutBzjXXY2krzOhG2r/rIfISS2uVkNLikgToB5hYIzw+xp2jdOtRkqYQ==", + "version": "0.73.0", + "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.73.0.tgz", + "integrity": "sha512-URURVzhxXGJDGUGFunIOtBlSl7KWvZiAAKY/ttTkZAkXT9bTPqdk2eK0b8qqSxXpikh3QKPnPYpiyX98zf5ebw==", "license": "MIT", "dependencies": { "json-schema-to-ts": "^3.1.1" @@ -790,9 +790,9 @@ } }, "node_modules/@google/genai": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@google/genai/-/genai-1.39.0.tgz", - "integrity": "sha512-Vz7AQsOdBeiIcxmXIQNy/hzDvyAOE1lSpWA10itUQza7h3aQFF6QSGaQ7o1GYsjMD3XslK4Ee/Ol0eLhRXb7gA==", + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@google/genai/-/genai-1.40.0.tgz", + "integrity": "sha512-fhIww8smT0QYRX78qWOiz/nIQhHMF5wXOrlXvj33HBrz3vKDBb+wibLcEmTA+L9dmPD4KmfNr7UF3LDQVTXNjA==", "license": "Apache-2.0", "dependencies": { "google-auth-library": "^10.3.0", @@ -1780,9 +1780,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.1.0.tgz", - "integrity": "sha512-t7frlewr6+cbx+9Ohpl0NOTKXZNV9xHRmNOvql47BFJKcEG1CxtxlPEEe+gR9uhVWM4DwhnvTF110mIL4yP9RA==", + "version": "25.2.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.1.tgz", + "integrity": "sha512-CPrnr8voK8vC6eEtyRzvMpgp3VyVRhgclonE7qYi6P9sXwYb59ucfrnmFBTaP0yUi8Gk4yZg/LlTJULGxvTNsg==", "license": "MIT", "dependencies": { "undici-types": "~7.16.0" @@ -3239,14 +3239,14 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.18.4", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", - "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz", + "integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==", "dev": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "tapable": "^2.3.0" }, "engines": { "node": ">=10.13.0" @@ -4719,9 +4719,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.1.tgz", - "integrity": "sha512-EoY1N2xCn44xU6750Sx7OjOIT59FkmstNc3X6y5xpz7D5cBtZRe/3pSlTkDJgqsOk3WwZPkWfonhhUJfttQo3w==", + "version": "4.13.3", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.3.tgz", + "integrity": "sha512-vp8Cj/+9Q/ibZUrq1rhy8mCTQpCk31A3uu9wc1C50yAb3x2pFHOsGdAZQ7jD86ARayyxZUViYeIztW+GE8dcrg==", "dev": true, "license": "MIT", "dependencies": { @@ -4735,6 +4735,7 @@ "version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", @@ -4854,9 +4855,9 @@ } }, "node_modules/happy-dom": { - "version": "20.4.0", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.4.0.tgz", - "integrity": "sha512-RDeQm3dT9n0A5f/TszjUmNCLEuPnMGv3Tv4BmNINebz/h17PA6LMBcxJ5FrcqltNBMh9jA/8ufgDdBYUdBt+eg==", + "version": "20.5.0", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.5.0.tgz", + "integrity": "sha512-VQe+Q5CYiGOgcCERXhcfNsbnrN92FDEKciMH/x6LppU9dd0j4aTjCTlqONFOIMcAm/5JxS3+utowbXV1OoFr+g==", "dev": true, "license": "MIT", "dependencies": { @@ -7436,9 +7437,9 @@ } }, "node_modules/openai": { - "version": "6.17.0", - "resolved": "https://registry.npmjs.org/openai/-/openai-6.17.0.tgz", - "integrity": "sha512-NHRpPEUPzAvFOAFs9+9pC6+HCw/iWsYsKCMPXH5Kw7BpMxqd8g/A07/1o7Gx2TWtCnzevVRyKMRFqyiHyAlqcA==", + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-6.18.0.tgz", + "integrity": "sha512-odLRYyz9rlzz6g8gKn61RM2oP5UUm428sE2zOxZqS9MzVfD5/XW8UoEjpnRkzTuScXP7ZbP/m7fC+bl8jCOZZw==", "license": "Apache-2.0", "bin": { "openai": "bin/cli" @@ -8407,9 +8408,9 @@ "license": "MIT" }, "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, "license": "ISC", "bin": { @@ -8991,9 +8992,9 @@ } }, "node_modules/svelte": { - "version": "5.49.1", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.49.1.tgz", - "integrity": "sha512-jj95WnbKbXsXXngYj28a4zx8jeZx50CN/J4r0CEeax2pbfdsETv/J1K8V9Hbu3DCXnpHz5qAikICuxEooi7eNQ==", + "version": "5.49.2", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.49.2.tgz", + "integrity": "sha512-PYLwnngYzyhKzqDlGVlCH4z+NVI8mC0/bTv15vw25CcdOhxENsOHIbQ36oj5DIf3oBazM+STbCAvaskpxtBmWA==", "dev": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index 0ba7024..ee3fb94 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "@eslint/js": "^9.39.2", "@testing-library/svelte": "^5.3.1", "@types/express": "^5.0.6", - "@types/node": "^25.1.0", + "@types/node": "^25.2.1", "@types/path-browserify": "^1.0.3", "@typescript-eslint/eslint-plugin": "8.54.0", "@typescript-eslint/parser": "8.54.0", @@ -34,9 +34,9 @@ "eslint": "^9.39.2", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-obsidianmd": "^0.1.9", - "happy-dom": "^20.4.0", + "happy-dom": "^20.5.0", "obsidian": "latest", - "svelte": "^5.49.1", + "svelte": "^5.49.2", "svelte-check": "^4.3.6", "svelte-preprocess": "^6.0.3", "tslib": "2.8.1", @@ -44,8 +44,8 @@ "vitest": "^4.0.18" }, "dependencies": { - "@anthropic-ai/sdk": "^0.72.1", - "@google/genai": "^1.39.0", + "@anthropic-ai/sdk": "^0.73.0", + "@google/genai": "^1.40.0", "@shikijs/rehype": "^3.22.0", "core-js": "^3.48.0", "diff": "^8.0.3", @@ -55,7 +55,7 @@ "highlight.js": "^11.11.1", "katex": "^0.16.28", "lowlight": "^3.3.0", - "openai": "^6.17.0", + "openai": "^6.18.0", "path-browserify": "^1.0.1", "regex-parser": "^2.3.1", "rehype-highlight": "^7.0.2",