Feeling the same. Used Bear for years personally. Started a job two years ago on an MDM MacBook and don’t want to sign into my personal iCloud there, but I still need my notes. web.bear.app works but limited and still in beta.
Yes, it is a good idea to have the AI ask before making changes, at least for the more destructive commands. And a backup before experimenting is a good idea.
That said, I have tested both the CLI and the MCP connection with Claude extensively on my own notes, and it works surprisingly well. I haven’t yet had a case where it did something I didn’t ask for. And most actions you can just ask the AI to undo. If it edits the text, it will have the original text in its context, so it can edit back. And if you are unsure what it did to your notes, you can ask it.
We don’t allow deleting notes over the API, only move notes to the trash. Notes can also be restored through the API.
As we had several third-party AI integrations popping up, we wanted to quickly offer an official one. But we are also working on a workspace-like feature that will be next up. If that isn’t enough separation for your needs, we are also actively working on the Panda editor that stores markdown files on disk.
My use case is to just run an export of Bear in markdown to a folder on my Mac. I set up launchd to export notes regularly. Currently, I’m using this tool: GitHub - andymatuschak/Bear-Markdown-Export: Markdown export from Bear sqlite database · GitHub, but it’ll be nice if it’s available officially. Then, I wouldn’t have to worry about the tool breaking across version upgrades.
Hey, first of all WOW this is awesome. Just kicked the tires of this and i’m very excited. As always you guys made it easy. The cli commands are make sense (cat, show, list, etc.) and support structured output (json)
I do have a technical question about implementation. I want to know how it works? Does the CLI communicate with the app via XPC, GRPC, or something else? My concern is what if i make changes in both the app and the cli/mcp at same time, if they’re both opening the sqlite db… could there be contention? Maybe what i’m asking for is an engineering blog post on how you ship a CLI with your app and get them to work together seamlessly.
Anyways, I love it and i’m looking forward to testing it more! Keep up the amazing work.
I would also find something like this useful. Though i don’t know if i want granting or restricting. (i.e. Explicitly allow access to these tag trees AND/OR explicitly block access to these tag trees.)
It uses the internal libraries to access the SQLite database and attachment files directly. So it is all compiled into one command. It will be safe to do concurrent edits, but we found a bug today where edits via the MCP server were dropped if you made concurrent edits in the editor. We have a fix ready already, and we will have a new beta soon.
We might frame this as focusing the API on one workspace, once we release the tag-as-workspace feature that we have previously mentioned. So it would be scoped to one tag instead of excluding tags. Does that sound good to you?
While this is great news, I get the error message in Claude that the connection to the server failed. Tried several times, always the same result. I hope this will get fixed soon… keep up the great work!
Initially this sounds really good. I think i need to use the MCP integration more to really ground my desires. On one hand it could be nice that as my focused tag changes, my claude/agent follows me. On the other hand, I also think that I want both. I think i might want to designate a tag like #ai to mark notes as available for mcp. And that should stack/intersect with the focus following.
Thank you @rexikan , this is helpful to know that something to solve for workspaces is in the pipeline. My only hope is that something is implemented soon (at least in Beta).
Nothing against others here, but I have zero use for the AI integration with Bear, and don’t share the same fascination with AI in general. But understandably, everyone’s use cases and needs are different.
Personally, my other main use cases for Bear are already solved for with the app’s current feature set, Apple Shortcuts, LanguageTool, the beta web version, and the web clipper extension.
Workspaces is only thing missing for me
This is amazing. I tried Obsidian again for a bit and just can’t get onboard with the cross platform UI and janky editing stack. It really puts into perspective just how good Bear is.
Took me some time to get it working. In the end I found that the app lock setting blocked bearcli access to the data. Disabling app lock in settings solved it. It seems that although the app lock was set to 5 minutes, that even before those 5 minutes were up, that setting still blocked the connection to the extension server.
Running bearcli manually told me the problem: “error: Bear’s app lock is enabled; disable it in Bear’s settings to use the CLI.”
This is worked great for me. Configuration took just a few seconds, all the information I needed was in the initial post at the top. I’ve had Claude review my entire tagging system (roughly based on a Johnny Decimal implementation) and it found where I had drifted over time and made those corrections. It’s now wandering through and doing some retagging for me. Very impressive indeed.
Any idea when this will be in the released product? I’m currently working with one of the user-created MCP, and it’s working fine; it has done for a few weeks. I’m not sure I want to jump ship until this is in the released product.
Whilst I applaud the fact that you’re continuing to improve and innovate on Bear, I must also raise some concerns. One of Bear’s biggest selling points has been its lack of AI. I am hoping that this new bearcli will be Bears only foray into the AI space.
Whilst trying to test bearcli it seems as though it doesn’t work when app lock is enabled.
error: Bear's app lock is enabled; disable it in Bear's settings to use the CLI.