Replies: 4 comments 1 reply
-
Hi @dmv1, Thanks for the detailed issue report. This is a very common and understandable situation, especially on macOS when using tools like Here is a simple explanation of what's happening and the recommended way to fix it. The Problem: Terminal vs. GUI AppsThe core of the issue is that the Python environment your Terminal uses is different from the one Obsidian (as a graphical app) sees.
So, to answer your question: the plugin is finding the system's Python, not your The Solution: Use the Development VersionThe best way to fix this is to tell the plugin exactly where your However, this setting is a new feature that is not yet in the public Here is the recommended way to solve your issue:
This will force the plugin to use the correct Python version from Let me know if that solves the issue for you! Best, |
Beta Was this translation helpful? Give feedback.
-
Thank you for the clarification and what you mentioned makes sense!!
As for getting things to work, I am not seeing the setting *"Python
Executable Path"*.
Here is a screenshot of the settings available in the Plugins settings
(along with the error)
[image: Screenshot 2025-06-10 at 2.18.40 PM.png]
Thanks for the help, sorry this is not working on my end
Don
…On Tue, Jun 10, 2025 at 2:11 PM mathe00 ***@***.***> wrote:
Hi @dmv1 <https://github.com/dmv1> ,
Thanks for the detailed issue report. This is a very common and
understandable situation, especially on macOS when using tools like pyenv.
Here is a simple explanation of what's happening and how to fix it.
The Problem: Terminal vs. GUI Apps
The core of the issue is that the Python environment your *Terminal* uses
is different from the one *Obsidian* (as a graphical app) sees.
1. *Your Terminal:* When you use pyenv and run pip install requests,
it correctly installs the library for the Python version you've set
(3.11.9). Your terminal knows how to find this version.
2. *Obsidian App:* When you launch Obsidian from the Dock or Finder,
it doesn't load your terminal's configuration. It sees the default system
Python that comes with macOS. This system Python does *not* have the
requests library you installed.
So, to answer your question: *the plugin is finding the system's Python,
not your pyenv Python.*
The Solution: Tell the Plugin Exactly Where to Look
The easiest and most reliable fix is to provide the plugin with the
absolute path to your pyenv Python executable.
1.
*Find the correct Python path.* In your terminal, run this command:
pyenv which python
2.
*Copy the output.* It will look something like this:
/Users/don/.pyenv/versions/3.11.9/bin/python
3.
*Paste the path into the plugin settings.*
- In Obsidian, go to Settings > Community Plugins.
- Click the gear icon next to "Python Bridge".
- Find the setting named *"Python Executable Path"*.
- Paste the full path you copied into this field.
4.
*Restart Obsidian.* This ensures the new setting is fully loaded.
This will force the plugin to use the correct Python version from pyenv,
which has requests and PyYAML installed.
Let me know if that solves the issue for you!
Best,
mathe00
—
Reply to this email directly, view it on GitHub
<#27 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABEUNHS2GN2YXLY5ORLAUST3C4NV7AVCNFSM6AAAAAB67UEHVGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTGNBSGQ2DONA>
.
You are receiving this because you were mentioned.Message ID:
<mathe00/obsidian-plugin-python-bridge/repo-discussions/27/comments/13424474
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
That worked perfectly!I am self taught in python, and I am with you, been struggling to try to build plug-ins with JavaScript, but just makes no sense.Although I feel pretty comfortable writing Python code, exactly sure how I will use this to build a plugin in obsidian but definitely looking forward to going through the documentation.Do you know if there’s any documentation doing a simple walk-through? One of the frustrations I’ve had with developing groups in obsidian is the lack of debugging, I’m hoping python will make it easier for me to log variables to a console, as I would do in other Python development.Anyway, I will dig into the documentation now that I have installed, looking forward to seeing what I can come up with. Have a great evening and thanks for your help.DonOn Jun 10, 2025, at 2:27 PM, mathe00 ***@***.***> wrote:
Thanks for the quick reply. You are absolutely right – that setting is not in the version you have installed. My apologies for the confusion.
The "Python Executable Path" setting is a new feature we've added specifically to solve this exact pyenv issue, but it's currently in our develop branch and hasn't been released publicly yet.
The easiest way to get the correct version is to clone the develop branch directly into your plugins folder using a single command.
1. Install with a Single Command
First, go to your vault's plugins folder (<YourVault>/.obsidian/plugins/) and delete the existing obsidian-python-bridge folder to ensure a clean installation.
Then, open your terminal and run the following command. You will need to replace <path_to_your_vault> with the actual absolute path to your Obsidian vault.
git clone -b develop https://github.com/mathe00/obsidian-plugin-python-bridge.git "<path_to_your_vault>/.obsidian/plugins/obsidian-python-bridge"
For example, if your vault is in /Users/don/Documents/MyNotes, the command would be:
git clone -b develop https://github.com/mathe00/obsidian-plugin-python-bridge.git "/Users/don/Documents/MyNotes/.obsidian/plugins/obsidian-python-bridge"
2. Restart Obsidian and Configure
Restart Obsidian completely.
Go to Settings > Community Plugins and make sure "Python Bridge" is enabled.
The "Python Executable Path" setting will now be visible in the plugin settings.
You can now paste the path you get from pyenv which python into that field.
This will install the correct version and should resolve the requests library error for good. Let me know how it goes!
Best,
mathe00
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Hi @dmv1 , That's great to hear, I'm glad it worked perfectly! And I completely understand your point about JavaScript. That's the exact reason I started this project – I'm much more comfortable in Python myself and wanted a way to build things for my vault without that barrier. Regarding your questions, you've hit on some key points: Getting Started & ExamplesYou're in the right place to start. The project's main For more practical and complete scripts, I've created a separate repository here. It's a great place to see how different API functions can be used to build a useful tool: Debugging in PythonYou are absolutely right, and this is one of the biggest advantages! Any You can open the console from the Obsidian menu via A Note on "Building Plugins" with "Vibe Coding"It's interesting you mention building plugins, as it touches on a very recent and popular development approach called "vibe coding." The idea is that you describe a problem or a goal to an AI in natural language, and it generates the code for you. The developer's role shifts from writing every line to guiding the AI, testing the output, and refining it until it works, sometimes without fully understanding every detail of the generated code. To be transparent, this is exactly how this entire Obsidian Python Bridge plugin was built. I'm not a TypeScript expert, so I relied heavily on AI to write the code, and my job was to test it and fix it in a loop. This is another powerful aspect of this bridge: you don't even need to be a Python expert to create something amazing. You can give an AI assistant (like ChatGPT, Gemini, etc.) the plugin's Anyway, I'm really looking forward to seeing what you come up with. Feel free to open another issue anytime if you have questions or ideas. Happy coding! Best, |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I have worked through the install, however, am getting an error that requests is not installed.
I am on a MacBook Pro M2 and have installed python using pyenv (via Homebrew). I have set my global python to 3.11.9 and when I list the pip installs, both requests and pyYAML are installed.
Can anyone help me troubleshoot why python-bridge is not finding these libraries?
Where is python-bridge looking for the installed python??
Thanks for any clarity in how to work through this issue.
Have a great day
Don
Beta Was this translation helpful? Give feedback.
All reactions