Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Cannoli

deablabsdeablabs11k downloads

Create and run LLM scripts in canvas.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates48

Join our Discord

Cannoli allows you to build and run no-code LLM scripts using the Obsidian Canvas editor.

What is a Cannoli?

Example Cannoli

Cannolis are scripts that leverage LLMs to read/write to your vault, and take actions using HTTP requests. Cannolis are created in the Obsidian Canvas editor, using cards and arrows to define variables and logic. They can be run within Obsidian using the control ribbon button or the command palette.

Using colors or prefixes, you can create nodes and arrows of different types to define basic logical functions like variables, fields, loops, and branching choices. If a Canvas is a Directed Acyclic Graph and follows the Cannoli schema, it can be run as a cannoli.

Cannoli can also be used to make llm-chatbots with custom logic and abilities. Complete with streaming and customizable formatting.

Documentation

You can access a walkthrough folder of sample cannolis in the plugin settings (full docs website forthcoming).

Cannoli College

Running Cannolis

Cannolis can be run in several ways:

Icon

  • Click the Cannoli ribbon icon

    • If you're on a canvas file, it will be run as a cannoli
    • If you're on a note with a "cannoli" property, the canvas file in that property will be run as a cannoli
  • Run the "Start/Stop cannoli" command in the command palette (functions the same as the ribbon icon)

  • If a canvas file name ends with ".cno", it will have its own run command in the command palette

  • Make an audio recording on a note with a "cannoli" property

    • That recording will be (1) transcribed using Whisper, (2) replace the reference, and (3) trigger the cannoli defined in the property.

AI providers

Cannoli currently supports the following LLM providers:

  • OpenAI
  • Groq
  • Anthropic
  • Gemini

You can select a default provider, edit its settings individually, and override that default wherever you like.

Ollama setup

Cannoli can also use local LLMs with Ollama. To use Ollama, switch the "AI provider" dropdown to Ollama, and make sure the ollama url reflects your setup (the default is usually the case).

We also need to configure the OLLAMA_ORIGINS environment variable to "*" in order for requests from obsidian desktop to reach the ollama server successfully. Reference this document to configure this environment variable for each operating system, for example, in Mac OS you will run the command launchctl setenv OLLAMA_ORIGINS "*" in your terminal and restart ollama.

You can change the default model in the settings, and define the model per-node in Cannolis themselves using config arrows as usual, but note that the model will have to load every time you change it, so having several models in one cannoli will take longer.

Network use

  • Cannoli makes requests to LLM provider APIs based on the setup of the cannoli being run.
  • Cannoli can send HTTP requests that you define up front.

Development

See DEVELOPMENT.md for development instructions.

HealthGood
ReviewRisks
About
Build and run no-code LLM scripts inside Obsidian Canvas. Use canvas cards and arrows to define variables, logic, HTTP actions and data flows, read/write your vault, stream formatted outputs, run chatbots, and trigger runs from canvas files, note properties or audio recordings. Connect to OpenAI, Anthropic, Gemini, Groq or local Ollama models.
AICanvasAutomation
Details
Current version
2.3.3
Last updated
9 months ago
Created
3 years ago
Updates
48 releases
Downloads
11k
Compatible with
Obsidian 0.15.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Sponsor
Ko-fi
Author
deablabsdeablabs
deablabs.com/
GitHubdeablabs
  1. Community
  2. Plugins
  3. AI
  4. Cannoli

Related plugins

Karpathy LLM Wiki

Karpathy's LLM Wiki implementation - multi-page knowledge generation with entity/concept pages and conversational query.

Smart Templates

AI powered templates for generating structured content. Works with Local Models, Anthropic Claude, Gemini, OpenAI & more.

Templater

Create and use dynamic templates.

Smart Connections

Find related notes and excerpts while writing. Your AI link building copilot displays relevant content in graph + list view. A local embedding model powers semantic search. Zero setup. No API key.

Homepage

Open a note, base, or workspace on startup, or set it for quick access later.

BRAT

Easily install a beta version of a plugin for testing.

Claudian

Embeds Claude Code/Codex and other local Agents as AI collaborators in your vault.

Copilot

Your AI Copilot: Chat with Your Second Brain, Learn Faster, Work Smarter.

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

Lazy Loader

Load plugins with a delay on startup, so that you can get your app startup down into the sub-second loading time.