Skip to content

Anyesh/obsidian-calcifer

Repository files navigation

🔥 Calcifer

AI-Powered Assistant for Obsidian

Version Obsidian License Platform TypeScript PRs Welcome


Your intelligent AI companion that understands your vault.

RAG-powered chat · Smart auto-tagging · Tool calling · Semantic search · Persistent memory


Features · Installation · Configuration · Commands · Privacy


Features

AI Chat with Vault Context

  • Chat interface in the right sidebar
  • Retrieves relevant notes as context for answers
  • Shows sources for every response
  • Supports Ollama and OpenAI-compatible APIs

Smart Auto-Tagging

  • Suggests tags based on note content
  • Uses existing vault tags as reference
  • Configurable auto-apply or suggest-only mode

Tool Calling

  • Create, move, rename, and delete notes
  • Create folders and organize vault structure
  • Configurable confirmation for destructive actions

Memory System

  • Remembers facts about you across conversations
  • Stored locally in plugin data (not sent to cloud)
  • Manageable through settings modal

Note Organization

  • Suggests appropriate folders for notes
  • Based on content similarity to existing notes
  • LLM-enhanced folder recommendations

Semantic Search

  • Full vault indexing with embeddings
  • Find notes by meaning, not just keywords
  • Automatic re-indexing on file changes

Screenshots

Auto Tag Suggestions

Tag Suggestions

Tool Calling

Tool Calling


Requirements

  • Obsidian v1.0.0 or higher
  • AI API endpoint (one of the following):
Provider Description
Ollama Local or remote — complete privacy
OpenAI Or compatible API (Azure OpenAI, etc.)

Installation

From Community Plugins (Coming Soon)

  1. Open SettingsCommunity plugins
  2. Search for "Calcifer"
  3. Click Install, then Enable

Manual Installation

# 1. Download from the latest release:
#    main.js, manifest.json, styles.css

# 2. Create the plugin folder
mkdir -p <vault>/.obsidian/plugins/calcifer/

# 3. Copy files and enable in Settings → Community plugins

Configuration

1. Add an API Endpoint

  1. Open SettingsCalcifer
  2. Click "Add Ollama" or "Add OpenAI"
  3. Configure the endpoint:
Ollama Configuration
Base URL:        http://localhost:11434
Chat Model:      llama3.2
Embedding Model: nomic-embed-text
OpenAI Configuration
Base URL:        https://api.openai.com
API Key:         sk-...
Chat Model:      gpt-4o-mini
Embedding Model: text-embedding-3-small
  1. Click "Test" to verify connection
  2. Enable the endpoint

2. Index Your Vault

Use command: Calcifer: Re-index Vault
Or enable automatic background indexing in settings.

3. Start Chatting

  • Click the bot icon in the left ribbon
  • Or use command: Calcifer: Open Chat

Commands

Command Description
Open Chat Open the chat sidebar
Re-index Vault Rebuild the embedding index
Stop Indexing Stop the current indexing process
Clear Embedding Index Delete all embeddings
Index Current File Index only the active file
Show Status Display indexing stats and provider health
Show Memories Open the memories management modal
Suggest Tags for Current Note Get AI tag suggestions
Suggest Folder for Current Note Get folder placement suggestions

Settings Reference

Embedding Settings
Setting Default Description
Enable Embedding false Toggle automatic indexing (enable after configuring provider)
Batch Size 1 Concurrent embedding requests
Chunk Size 1000 Characters per text chunk
Chunk Overlap 200 Overlap between chunks
Debounce Delay 5000 Milliseconds to wait before indexing changed files
Exclude Patterns templates/** Glob patterns to skip
RAG Settings
Setting Default Description
Top K Results 5 Context chunks to retrieve
Minimum Score 0.5 Similarity threshold (0-1)
Include Frontmatter true Add metadata to context
Max Context Length 8000 Total context character limit
Chat Settings
Setting Default Description
System Prompt (built-in) Customize assistant behavior
Include Chat History true Send previous messages
Max History Messages 10 History limit
Temperature 0.7 Response creativity (0-2)
Max Tokens 2048 Response length limit
Tool Calling Settings
Setting Default Description
Enable Tool Calling true Allow AI to perform vault operations
Require Confirmation false Ask before executing destructive tools
Memory Settings
Setting Default Description
Enable Memory true Store persistent memories
Max Memories 100 Storage limit
Include in Context true Send memories with queries
Auto-Tagging Settings
Setting Default Description
Enable Auto-Tag false Activate tagging feature (opt-in)
Mode suggest auto (apply) or suggest (show modal)
Max Suggestions 5 Tags per note
Use Existing Tags true Prefer vault tags
Confidence Threshold 0.8 Auto-apply threshold (0-1)
Organization Settings
Setting Default Description
Enable Auto-Organize true Activate folder suggestions
Mode suggest auto (move) or suggest (ask)
Confidence Threshold 0.9 Auto-move threshold (0-1)
Performance Settings
Setting Default Description
Enable on Mobile true Run on mobile devices
Rate Limit (RPM) 60 API requests per minute
Request Timeout 120 Seconds before timeout
Use Native Fetch false Use native fetch for internal CAs
UI Settings
Setting Default Description
Show Context Sources true Display sources in chat responses
Show Indexing Progress true Show indexing notifications

Mobile Support

Calcifer is fully functional on mobile devices:

  • Chat interface optimized for touch
  • Background indexing respects mobile resources
  • All features work offline with local Ollama

Privacy & Security

Aspect Details
Local Processing All embeddings stored locally in IndexedDB
No Cloud Storage Plugin data never leaves your device
API Choice Use local Ollama for complete privacy
Memory Control View and delete any stored memories

Network Usage Disclosure

Important: No data is sent to any server until you configure an API endpoint.

Service Purpose Data Sent
Ollama (local/remote) Chat completions, embeddings Note content for context, user messages
OpenAI (or compatible) Chat completions, embeddings Note content for context, user messages
  • You control which provider to use (local Ollama = no external network)
  • Note content is sent as context for AI responses (chunks of ~1000 chars)
  • No telemetry or analytics are collected by this plugin

Development

# Clone the repository
git clone https://github.com/anyesh/obsidian-calcifer.git
cd obsidian-calcifer

# Install dependencies
npm install

# Development mode (watch)
npm run dev

# Production build
npm run build

Troubleshooting

"No provider configured"
  • Add at least one API endpoint in settings
  • Ensure the endpoint is enabled
  • Test the connection
"Connection failed"
  • Check if Ollama is running (ollama serve)
  • Verify the base URL is correct
  • Check firewall/network settings
Indexing is slow
  • Reduce batch size for limited resources
  • Exclude large folders (templates, archives)
  • Mobile devices may need smaller chunk sizes
Chat responses are irrelevant
  • Ensure vault is indexed (check status bar)
  • Lower the minimum score threshold
  • Increase Top K for more context

License

MIT License — see LICENSE for details.


Acknowledgments

Obsidian Ollama

Made for the Obsidian community


About

Local AI assistant that integrates deeply with your Obsidian vault.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors