mirror of
https://github.com/logancyang/obsidian-copilot.git
synced 2026-07-22 07:50:24 +00:00
* Building persistent memory for copilot (#1848) * Implement chat input v3 (#1794) * Fix chat crash React 409 (#1849) * Fix mobile typeahead menu size (#1853) * Enhance progress bar and bug fix (#1814) * feat: Add edit context for progress card. * fix: When adding a model, do not set the key in the single model setting. * fix: fix the width of the popover on mobile. * Refactor Brevilabs API integration to use models base URL (#1855) - Updated constants to switch from BREVILABS_API_BASE_URL to BREVILABS_MODELS_BASE_URL for model-related API calls. - Adjusted ChatModelManager and EmbeddingManager to utilize the new models base URL for configuration settings. * feat: Add new chat history popover. (#1850) * feat: Add new chat history popover. * feat: Add open source file button to chat history popover - Add ArrowUpRight button to each chat history item - Implement openChatSourceFile method in main.ts - Add onOpenSourceFile callback prop chain through components - Open chat files in new Obsidian tabs when clicked - Optimize error handling to prevent duplicate notices * feat: Implement localSearch CiC prompting flow in CopilotPlusChainRunner (#1856) * Properly extract response text in UserMemoryManager (#1857) * feat: Temporarily disable autocomplete features (#1858) * chore: Update version to 3.1.0-preview-250927 in manifest.json * Support space in typeahead trigger and improve search (#1859) * More chat input enhancement (#1864) * Fix dropdown color * Fix badge border in light theme * Increase search result number * support paste image * fix folder context * Enhance ChatPersistenceManager with filename sanitization tests (#1865) - Added tests to ensure proper sanitization of wiki link brackets and illegal characters in filenames when saving chat messages. - Updated filename generation logic to handle empty sanitized topics by defaulting to 'Untitled Chat'. - Refactored imports in ChatPersistenceManager for better organization. * Update ApplyView accept button styles for improved visibility and interaction (#1866) - Adjusted the positioning of the action button to be further from the bottom of the viewport for better accessibility. - Increased the z-index to ensure the button is always on top of other elements. - Added a shadow effect to enhance the button's visibility against the background. * Expose add selection to chat context to free users (#1867) * New chat input improvements (#1868) * Improve search logic in at mention search * Subscribe to file changes * Detect changes for folders and tags * Make context badge tooltip always show * Add full note path in preview * Fix enter being blocked when no search result * Rebuild "Active Note" and more chat input improvement (#1873) * Performance improvement and extend "active note" to note typeahead menu (#1875) * Add better agent prompt logging (#1882) * Add read tool (#1883) * Add readNote tool for reading notes in chunks * Enhance readNote tool to support dynamic note path display and linked note extraction * Refine readNote tool instructions for improved clarity and efficiency in note content retrieval * Add support for readNote tool: integrate emoji, format results, and refine instructions * Add inline citation reminder functionality to user questions * Add an alert when user hits the maxToken limit (#1884) * Refactor AutonomousAgentChainRunner (#1887) * Refactor AutonomousAgentChainRunner to enhance agent workflow, streamline context preparation, and improve response handling * Enhance type safety in addChatHistoryToMessages by specifying message structure * Improve max iteration limit message for clarity and formatting * Refactor tool display name handling for improved clarity and maintainability * Refactor tool call ID generation and visibility handling for improved clarity and uniqueness * Fix agent tool call ID (#1890) * Enhance tool call ID generation and improve readNote handling in prompts Update readNote description for clarity and improve prompt instructions * Update instructions for registerFileTreeTool to clarify usage guidelines * Clarify instructions for readNote tool to improve context inference and handling of partial note titles * Add token counter (#1889) * Fix index rebuild on semantic search toggle (#1891) * Update token counter label (#1892) * Implement tag search v3 (#1893) * feat: Enhance TieredLexicalRetriever to support tag-based retrieval and improve search scoring - Added support for returning all matching tags in TieredLexicalRetriever. - Introduced new options for tag terms and returnAllTags in the retriever. - Updated FullTextEngine to prioritize tag matches and improve scoring for documents with tags. - Enhanced tokenization to handle hierarchical tags and prevent splitting hyphenated tags. - Improved handling of frontmatter tags in documents. - Updated search tools to accommodate new tag handling features. - Added tests to verify the functionality of tag-based retrieval and scoring improvements. * fix: Improve logging for query expansion in SearchCore * feat: Add explanation for non-tag matches in FullTextEngine search results * feat: Enhance QueryExpander to preserve standalone terms in tag handling and improve term validation * feat: Enhance QueryExpander and TieredLexicalRetriever to improve tag handling and standalone term extraction * Update version to 3.1.0-preview-251006 in manifest.json * Normalize tag queries for case-insensitive matching and improve search functionality (#1894) * Implement merge retriever (#1896) * Fix note read (#1897) * Enhance note resolution logic and add tests for wiki-linked notes and basename matching * Implement note resolution outcome types and enhance readNoteTool tests for ambiguous matches * Add deriveReadNoteDisplayName function and enhance readNoteTool tests for edge cases * Fix note tool UI freeze (#1898) * Update how tags work in context (#1895) * Enhance file creation instructions in modelAdapter and update tool usage guidelines in builtinTools (#1901) - Added instructions for confirming folder existence before creating new files in modelAdapter. - Updated custom prompt instructions in builtinTools to clarify the use of getFileTree for folder lookups when creating new notes. * Do not add url context for youtube url (#1899) * Update YouTube Script command and modal title to indicate Plus feature (#1903) * Enhance ChatPersistenceManager to handle file save conflicts (#1904) * Enhance ChatPersistenceManager to handle file save conflicts and improve epoch handling * Fix type checking for existing files in ChatPersistenceManager to prevent errors * Fix verify add (#1905) - Rename "Verify" button to "Test" in Add Model dialog - Make verification not required for adding model in Set Keys - Upgrade chatAnthropic client to fix the Top P -1 error for Claude Opus models * Enhance XML parsing to handle tool calls missing closing tags --------- Co-authored-by: Wenzheng Jiang <jwzh.hi@gmail.com> Co-authored-by: Zero Liu <zero@lumos.com> Co-authored-by: Emt-lin <41323133+Emt-lin@users.noreply.github.com>
153 lines
5.1 KiB
JSON
153 lines
5.1 KiB
JSON
{
|
|
"name": "obsidian-copilot",
|
|
"version": "3.0.3",
|
|
"description": "Your AI Copilot: Chat with Your Second Brain, Learn Faster, Work Smarter.",
|
|
"main": "main.js",
|
|
"scripts": {
|
|
"dev": "npm-run-all --parallel dev:*",
|
|
"dev:tailwind": "npx tailwindcss -i src/styles/tailwind.css -o styles.css --watch",
|
|
"dev:esbuild": "node esbuild.config.mjs",
|
|
"build": "npm run build:tailwind && npm run build:esbuild || exit 1",
|
|
"build:tailwind": "npx tailwindcss -i src/styles/tailwind.css -o styles.css --minify",
|
|
"build:esbuild": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
|
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
|
|
"lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix",
|
|
"format": "prettier --write 'src/**/*.{js,ts,tsx,md}'",
|
|
"format:check": "prettier --check 'src/**/*.{js,ts,tsx,md}'",
|
|
"version": "node version-bump.mjs && git add manifest.json versions.json",
|
|
"test": "jest --testPathIgnorePatterns=src/integration_tests/",
|
|
"test:integration": "jest src/integration_tests/",
|
|
"prepare": "husky",
|
|
"prompt:debug": "node scripts/printPromptDebug.js"
|
|
},
|
|
"keywords": [],
|
|
"author": "Logan Yang",
|
|
"husky": {
|
|
"hooks": {
|
|
"pre-commit": "lint-staged"
|
|
}
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx,json,css,md}": [
|
|
"prettier --write",
|
|
"git add"
|
|
]
|
|
},
|
|
"license": "AGPL-3.0",
|
|
"devDependencies": {
|
|
"@langchain/ollama": "^0.2.0",
|
|
"@tailwindcss/container-queries": "^0.1.1",
|
|
"@testing-library/jest-dom": "^5.16.5",
|
|
"@testing-library/react": "^14.0.0",
|
|
"@types/crypto-js": "^4.1.1",
|
|
"@types/diff": "^7.0.1",
|
|
"@types/events": "^3.0.0",
|
|
"@types/jest": "^29.5.11",
|
|
"@types/koa": "^2.13.7",
|
|
"@types/koa__cors": "^4.0.0",
|
|
"@types/lodash.debounce": "^4.0.9",
|
|
"@types/luxon": "^3.4.2",
|
|
"@types/node": "^16.11.6",
|
|
"@types/node-fetch": "^2.6.12",
|
|
"@types/react": "^18.0.33",
|
|
"@types/react-dom": "^18.0.11",
|
|
"@types/react-syntax-highlighter": "^15.5.6",
|
|
"@typescript-eslint/eslint-plugin": "^8.19.1",
|
|
"@typescript-eslint/parser": "^8.19.1",
|
|
"builtin-modules": "3.3.0",
|
|
"electron": "^27.3.2",
|
|
"esbuild": "^0.25.0",
|
|
"eslint": "^8.57.0",
|
|
"eslint-plugin-json": "^4.0.1",
|
|
"eslint-plugin-react": "^7.37.3",
|
|
"eslint-plugin-react-hooks": "^5.1.0",
|
|
"eslint-plugin-tailwindcss": "^3.18.0",
|
|
"husky": "^9.1.5",
|
|
"jest": "^29.7.0",
|
|
"jest-environment-jsdom": "^29.5.0",
|
|
"lint-staged": "^15.2.9",
|
|
"node-fetch": "^2.7.0",
|
|
"npm-run-all": "^4.1.5",
|
|
"obsidian": "^1.2.5",
|
|
"prettier": "^3.3.3",
|
|
"tailwindcss": "^3.4.15",
|
|
"ts-jest": "^29.1.0",
|
|
"tslib": "2.4.0",
|
|
"typescript": "^5.7.2",
|
|
"web-streams-polyfill": "^3.3.2"
|
|
},
|
|
"dependencies": {
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@google/generative-ai": "^0.21.0",
|
|
"@huggingface/inference": "^2.6.4",
|
|
"@koa/cors": "^5.0.0",
|
|
"@langchain/anthropic": "^0.3.30",
|
|
"@langchain/cohere": "^0.3.0",
|
|
"@langchain/community": "^0.3.22",
|
|
"@langchain/core": "^0.3.45",
|
|
"@langchain/deepseek": "^0.0.1",
|
|
"@langchain/google-genai": "^0.1.6",
|
|
"@langchain/groq": "^0.1.2",
|
|
"@langchain/mistralai": "^0.2.0",
|
|
"@langchain/openai": "^0.6.6",
|
|
"@langchain/xai": "^0.0.2",
|
|
"@lexical/plain-text": "^0.34.0",
|
|
"@lexical/react": "^0.34.0",
|
|
"@lexical/selection": "^0.34.0",
|
|
"@lexical/utils": "^0.34.0",
|
|
"@orama/orama": "^3.0.0-rc-2",
|
|
"@radix-ui/react-checkbox": "^1.1.3",
|
|
"@radix-ui/react-collapsible": "^1.1.2",
|
|
"@radix-ui/react-dialog": "^1.1.3",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.4",
|
|
"@radix-ui/react-label": "^2.1.0",
|
|
"@radix-ui/react-popover": "^1.1.15",
|
|
"@radix-ui/react-progress": "^1.1.7",
|
|
"@radix-ui/react-scroll-area": "^1.2.10",
|
|
"@radix-ui/react-select": "^2.1.2",
|
|
"@radix-ui/react-separator": "^1.1.7",
|
|
"@radix-ui/react-slider": "^1.3.5",
|
|
"@radix-ui/react-slot": "^1.2.3",
|
|
"@radix-ui/react-switch": "^1.1.1",
|
|
"@radix-ui/react-tabs": "^1.1.3",
|
|
"@radix-ui/react-tooltip": "^1.2.7",
|
|
"@tabler/icons-react": "^2.14.0",
|
|
"async-mutex": "^0.5.0",
|
|
"axios": "^1.3.4",
|
|
"buffer": "^6.0.3",
|
|
"chrono-node": "^2.7.7",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"codemirror-companion-extension": "^0.0.11",
|
|
"cohere-ai": "^7.13.0",
|
|
"crypto-js": "^4.1.1",
|
|
"diff": "^7.0.0",
|
|
"esbuild-plugin-svg": "^0.1.0",
|
|
"eventsource-parser": "^1.0.0",
|
|
"flexsearch": "^0.8.205",
|
|
"fuzzysort": "^3.1.0",
|
|
"jotai": "^2.10.3",
|
|
"koa": "^2.14.2",
|
|
"koa-proxies": "^0.12.3",
|
|
"langchain": "^0.3.2",
|
|
"lexical": "^0.34.0",
|
|
"lodash.debounce": "^4.0.8",
|
|
"lucide-react": "^0.462.0",
|
|
"luxon": "^3.5.0",
|
|
"next-i18next": "^13.2.2",
|
|
"p-queue": "^8.1.0",
|
|
"prop-types": "^15.8.1",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-dropzone": "^14.3.5",
|
|
"react-markdown": "^9.0.1",
|
|
"react-resizable-panels": "^3.0.2",
|
|
"react-syntax-highlighter": "^15.5.0",
|
|
"sse": "github:mpetazzoni/sse.js",
|
|
"tailwind-merge": "^2.5.5",
|
|
"tailwindcss-animate": "^1.0.7",
|
|
"trie-search": "^2.2.0"
|
|
}
|
|
}
|