Your intelligent writing and thinking assistant for Obsidian.
AI Copilot brings Notion AI-like capabilities directly into your vault. Chat with your notes, transform selected text, search the web, manage personas, and extend functionality with MCP servers and custom skills ā all from a native-feeling sidebar.
@ mentions ā Reference specific files inline to pull them into chat context.Connect to your preferred LLM provider:
Select text and run AI-powered transformations from the command palette or right-click menu:
| Action | Description |
|---|---|
| Fix grammar & spelling | Correct errors while preserving your voice |
| Reformat | Restructure text with proper headings and bullet points |
| Summarize | Concise summary of selected text |
| Simplify | Rewrite in plain, easy-to-understand language |
| Make shorter / longer | Condense or expand your writing |
| Change tone | Professional, casual, or academic voice |
| Explain like I'm 5 | Break down complex concepts |
| Expand selection | Add more detail and context |
| Brainstorm ideas | Generate 5ā10 related ideas from your text |
| Continue writing | Seamlessly extend your draft |
The AI can autonomously use tools during conversation:
create_note / append_to_note / read_note / edit_note ā Full vault CRUD operationslist_folder ā Browse vault structureweb_search ā Search the web and bring results into chatget_youtube_transcript ā Fetch and summarize YouTube video transcriptsread_pdf ā Extract text from PDF files in your vaultsummarize_url ā Fetch and summarize any web pagesearch_vault_by_date ā Find notes by creation or modification datesave_memory / list_memories ā Long-term memory across sessionssave_summary_as_note ā Save AI-generated summaries directly to your vaultConnect to local Model Context Protocol (MCP) servers to extend AI capabilities:
.env files.{{selection}} placeholder to reference highlighted text.Full AI Copilot submenu in the editor right-click menu:
| Shortcut | Action |
|---|---|
Cmd/Ctrl + K |
Open AI Copilot chat |
Cmd/Ctrl + L |
Add selection to chat context |
main.js and manifest.json to your vault's plugin folder:.obsidian/plugins/ai-copilot/
git clone https://github.com/alexjiaguo/obsidian-ai-copilot.git
cd obsidian-ai-copilot
npm install
npm run build
main.ts ā Plugin entry point, commands, menus
src/
āāā views/
ā āāā AIChatView.ts ā Obsidian ItemView wrapper
ā āāā ChatApp.svelte ā Tab management, session lifecycle
ā āāā ChatView.svelte ā Chat UI, message processing
āāā components/
ā āāā ChatInput.svelte ā Auto-resizing input with @ mentions
ā āāā MessageBubble.svelte ā Message rendering with markdown
ā āāā ProjectSelector.svelte ā Inline project creation/selection
āāā services/
ā āāā APIService.ts ā Multi-provider LLM abstraction
ā āāā ToolManager.ts ā Function calling (17 built-in tools)
ā āāā MCPClientService.ts ā MCP server connections
ā āāā SkillService.ts ā Skill discovery and injection
ā āāā VaultQA.ts ā Embedding-based semantic search
ā āāā MemoryService.ts ā Persistent cross-session memory
ā āāā PersonaSoulService.ts ā Persona-specific memory and soul
ā āāā ContextManager.ts ā File/folder search and context
ā āāā EditorHandler.ts ā Active editor tracking
ā āāā RelevantNotes.ts ā Context-aware note suggestions
ā āāā WebSearch.ts ā DuckDuckGo web search
ā āāā YouTubeTranscriber.ts ā YouTube transcript extraction
ā āāā PDFService.ts ā PDF text extraction
ā āāā ContentExtractor.ts ā URL content extraction
ā āāā EmbeddingService.ts ā OpenAI/Ollama embedding client
āāā settings/
āāā Settings.ts ā Type definitions and defaults
āāā SettingsView.svelte ā Full settings UI
Contributions are welcome! Feel free to open issues or submit pull requests.