Smart Tagger

by Johan Denoyer
5
4
3
2
1
New Plugin

Description

This plugin has not been manually reviewed by Obsidian staff. Automatically generate 2-5 relevant tags for your notes using ChatGPT or Claude AI.

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

Smart Tagger for Obsidian

An Obsidian plugin that automatically generates 2-5 relevant tags for your notes using AI (ChatGPT or Claude).

Features

  • Dual AI Support: Choose between OpenAI (ChatGPT) or Claude API
  • Smart Tag Generation: Generates 2-5 contextually relevant tags per note
  • Vault Tag Matching: AI-generated tags are matched against your existing vault tags — vault casing always wins
  • Batch Processing: Process all notes in your vault at once
  • Tag Preview: Review and select tags before applying them
  • Customizable: Configure prompts, tag limits, and behavior
  • Existing Tag Awareness: Optionally exclude tags that already exist
  • Rate Limiting: Configurable requests-per-minute to avoid quota exhaustion
  • Retry Logic: Automatic exponential backoff on transient failures
  • Multi-language: English and French interface

Installation

Manual Installation

  1. Download the latest release from the GitHub releases page
  2. Extract the files to your vault's .obsidian/plugins/smart-tagger/ directory
  3. Enable the plugin in Obsidian's Community Plugins settings

Building from Source

  1. Clone this repository
  2. Run npm install to install dependencies
  3. Run npm run build to build the plugin
  4. Copy main.js, manifest.json, and styles.css to your vault's .obsidian/plugins/smart-tagger/ directory

Setup

  1. Go to Settings → Community Plugins → Smart Tagger
  2. Choose your preferred AI provider (OpenAI or Claude)
  3. Add your API key:
  4. Configure other settings as needed

Usage

Generate Tags for Current Note

  • Click the tag icon in the ribbon bar
  • Use the command palette: "Generate tags for current note"
  • The plugin will analyze your note content and suggest relevant tags

Batch Processing

  • Use the command palette: "Generate tags for all notes"
  • This will process all markdown files in your vault
  • ⚠️ Warning: This may consume significant API credits for large vaults
  • ⚠️ Warning: If you have not allowed "Auto Apply Tags" in settings, you will need to approuve tag additions on every note

Tag Preview

  • By default, generated tags are shown in a preview modal
  • You can select which tags to apply to your note
  • Enable "Auto Apply Tags" in settings to skip the preview

Settings

  • Default AI Provider: Choose between OpenAI and Claude
  • API Keys: Configure your OpenAI and/or Claude API keys
  • Tag Limits: Set minimum (1-10) and maximum (1-10) number of tags
  • Custom Prompt: Customize the AI prompt for tag generation
  • Auto Apply Tags: Skip preview and automatically apply generated tags
  • Exclude Existing Tags: Don't generate tags that already exist in the note
  • Prefer Existing Vault Tags: Match AI output against vault tags case-insensitively; vault casing wins (default: enabled)
  • Rate Limit: Max API requests per minute, 1-60 (default: 10)
  • Max Retries: Retry attempts on failure, 1-10 (default: 3)
  • Language: Interface language — English or French

API Usage and Costs

This plugin makes API calls to external AI services:

  • OpenAI: Uses GPT-3.5-turbo model (~$0.002 per 1K tokens)
  • Claude: Uses Claude-3-haiku model (~$0.00025 per 1K tokens)

Each note processed typically uses 50-200 tokens depending on content length.

Privacy

  • Your note content is sent to the selected AI provider for tag generation
  • No data is stored by this plugin beyond your settings
  • API keys are stored locally in your Obsidian vault
  • Review the privacy policies of your chosen AI provider

Support

If you encounter issues or have feature requests:

  1. Check the existing GitHub issues
  2. Create a new issue with details about your problem
  3. Include your Obsidian version and plugin version

Development

This plugin is built with TypeScript and uses:

  • Obsidian API for vault interaction
  • OpenAI API for ChatGPT integration
  • Anthropic API for Claude integration
  • esbuild for bundling

License

MIT License - see LICENSE file for details