mirror of
https://github.com/eharris128/Obsidian-LLM-Plugin.git
synced 2026-07-22 11:30:23 +00:00
npm run test:e2e builds the plugin, type-checks the specs, stages a clean copy into test/plugin-dist/, and runs 13 Mocha specs against a real, sandboxed Obsidian instance (downloaded to .obsidian-cache/ on first run; ~6s wall-clock after that). No API keys or network providers needed. Coverage: plugin load + command registration + built-in skill seeding, widget open/focus-or-open/new-chat-always-fresh/per-tab input isolation, slash menu open/Escape/filtering, chat modal, chats panel, chat details panel, and the header settings toggle. Design notes (details in test/README.md): - The service copies data.json from the plugin dir into test vaults, so plugins: ["."] would leak the developer's real API keys. The staging script writes a deterministic test data.json instead (rootVaultFolder "AI" so built-in skills seed; nothing else). - Specs read the plugin id from the staged manifest at runtime rather than hardcoding it. - Specs live under test/ with their own tsconfig (root tsconfig now excludes test/); OBSIDIAN_APP_VERSION / OBSIDIAN_INSTALLER_VERSION pin the Obsidian version under test. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
43 lines
1.2 KiB
JSON
43 lines
1.2 KiB
JSON
{
|
|
"name": "large-language-models",
|
|
"version": "0.23.0",
|
|
"description": "Enables access to LLMs via remote providers (OpenAI, Claude, Gemini) and local LLMs via GPT4ALL",
|
|
"main": "main.js",
|
|
"scripts": {
|
|
"dev": "node esbuild.config.mjs",
|
|
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
|
"version": "node version-bump.mjs && git add manifest.json versions.json",
|
|
"test:e2e": "npm run build && tsc -noEmit -p test && node scripts/stage-plugin.mjs && wdio run ./wdio.conf.mts"
|
|
},
|
|
"keywords": [],
|
|
"author": "Evan Harris, Ryan Mahoney",
|
|
"license": "MIT",
|
|
"engines": {
|
|
"node": ">=24.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "10.0.1",
|
|
"@types/mocha": "10.0.10",
|
|
"@types/node": "25.9.1",
|
|
"@wdio/cli": "9.27.2",
|
|
"@wdio/local-runner": "9.27.2",
|
|
"@wdio/mocha-framework": "9.27.2",
|
|
"esbuild": "0.28.0",
|
|
"eslint": "10.4.1",
|
|
"globals": "17.6.0",
|
|
"mocha": "11.7.6",
|
|
"obsidian": "1.13.0",
|
|
"tslib": "2.8.1",
|
|
"tsx": "4.22.4",
|
|
"typescript": "6.0.3",
|
|
"typescript-eslint": "8.60.1",
|
|
"wdio-obsidian-reporter": "3.0.4",
|
|
"wdio-obsidian-service": "3.0.4"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/claude-agent-sdk": "0.3.165",
|
|
"@anthropic-ai/sdk": "0.101.0",
|
|
"@google/genai": "2.8.0",
|
|
"openai": "6.42.0"
|
|
}
|
|
}
|