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

Yuhanbo Python Runner

yuhanboyuhanbo82 downloads

Run Python code blocks with a local interpreter and view their output inside your notes.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

Run Python code blocks with a local Python interpreter and view their output without leaving Obsidian.

Features

  • Adds a Run Python button to rendered python code blocks.
  • Displays standard output and errors in an Obsidian modal.
  • Copies execution results to the clipboard on request.
  • Supports a configurable Python executable path.
  • Stops executions that exceed 30 seconds.

Requirements

  • Obsidian 1.7.2 or later on desktop.
  • Python 3 installed locally.

This plugin is desktop-only because it launches a local Python process. It does not work on Obsidian Mobile.

Usage

Create a fenced Python code block in a note:

print("Hello from Python!")

Open the note in Reading view, select Run Python, and review the output in the modal.

If python is not available on your system path, open Settings → Community plugins → Yuhanbo Python Runner and enter the executable name or absolute path, such as C:\Python312\python.exe.

Security and privacy

[!WARNING] Python code has the same operating-system permissions as Obsidian. It can read, change, upload, or delete local data. Run code only from vaults and notes you trust. This plugin does not sandbox Python.

For each run, the plugin writes the code to a uniquely created operating-system temporary directory, launches the configured interpreter without a command shell, and then removes the temporary directory on a best-effort basis.

The plugin itself does not send telemetry, make network requests, or display advertisements. The configured interpreter path is stored locally in Obsidian's plugin data. Output is copied to the clipboard only when you select Copy result. Python code you run may perform its own network or file-system operations.

Installation

Once approved, install the plugin from Settings → Community plugins → Browse and search for Yuhanbo Python Runner.

For manual installation, download main.js, manifest.json, and styles.css from a GitHub release and place them in:

<vault>/.obsidian/plugins/yuhanbo-python-runner/

Restart Obsidian and enable the plugin.

Development and releases

main.js is the maintained plugin source and release artifact. Run the local syntax check with:

npm ci
npm run build

Changes to release-relevant files on main are validated by GitHub Actions. The workflow synchronizes versions, creates an exact x.y.z tag, and attaches the required Obsidian release assets.

Support

Report bugs and request features through GitHub Issues.

License

Apache License 2.0

HealthExcellent
ReviewSatisfactory
About
Run Python code blocks using a local Python interpreter directly from Obsidian on desktop. View standard output and errors in a modal, copy execution results to the clipboard, configure the interpreter path, and abort runs that exceed 30 seconds.
CodeIntegrations
Details
Current version
1.0.0
Last updated
2 months ago
Created
2 years ago
Updates
1 release
Downloads
82
Compatible with
Obsidian 1.7.2+
Platforms
Desktop only
License
Apache-2.0
Report bugRequest featureReport plugin
Author
yuhanboyuhanboyuhanbo758
GitHubyuhanbo758
  1. Community
  2. Plugins
  3. Code
  4. Yuhanbo Python Runner

Related plugins

BRAT

Easily install a beta version of a plugin for testing.

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.

Self-hosted LiveSync

Sync vaults securely to self-hosted servers or WEBRTC.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

Custom Frames

Turn web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.

Local REST API with MCP

Unlock your automation needs by interacting with your notes over a secure REST API.

Maps

Adds a map layout to bases so you can display notes as an interactive map view.

Google Drive Sync

Syncs a vault into Google Drive for cross-platform use (works for iOS).

Mermaid Tools

Improved Mermaid.js experience: visual toolbar with common elements and more.

Agent Client

Chat with Claude Code, Codex, Gemini CLI, and more via the Agent Client Protocol — right from your vault.