The Obsidian CLI enables many scenarios not possible with the Markdown files alone: building and debugging plugins, running commands, controlling Obsidian, querying bases, accessing the Obsidian index, ...
I've been using iCloud to sync Obsidian, and have consistently run into the problem that iCloud file container access needs full disk permissions that I don't want to give the agent (or Ghostty). Does everybody use Obsidian's paid sync instead or what? Or SyncThing?
Another option is obsidian lets you set which folders should sync. So I have everything in one vault, and in my trusted environment I let have everything synced, work machine only gets the work folder, and windows gaming machine only gets required non-confidential stuff (i.e notes about stuff that isnt me).
Its nice to be able to review it all from one machine though
I used to use SyncThing, then Dropbox, then iCloud. But then I just caved and paid for Obsidian Sync and it is the best money spent aside from Claude. I don't have to tinker with weird settings anymore or deal with sync issues, it just works.
I can't wonder if that's by design to make it hard for a plugin to have it's own sync mechanism. Definitely not proof of this that I know of, but a thought.
There can't be a will from the devs to make it hard to sync.
It's just that unlike git or Dropbox or whatever, that are just generic "syncing" tools, Obsidian Sync has been built to provide the best experience with Obsidian.
I'm talking more about the plugin architecture not about the file format or third-party applications. sync plugins seems to be pretty limited compared to what's offered for a subscription.
it's not per-vault is it? I have multiple vaults I'd like to sync selectively (50% of files in one vault for one machine, and 100% on another etc.)
No space restrictions?
I only use a single vault, so I'm afraid I can't answer to your question.
So when I talk about selective sync, it's about what is synced within a vault, and more specifically Obsidian settings/plugins...
I don't have the need to selectively sync only some of my vault's content, so never looked into it.
I just know that Obsidian Sync does what I'm expecting it to do.
And to add some context: I'd rather they just add a regular "Obsidian" sub that included vault sync; instead of giving away Obsidian for free, and selling add-ons. Because on itself, Obsidian Sync is quite expensive. If I'm willing to pay that much for that little, it's because, to me, I'm paying first for the development of Obsidian in itself.
But I understand why they wanted to go this way.
I don't know if it is/was the best move; because I see lots of people not willing to use Obsidian just because they are "scamming" people on their expensive Sync add-on.
someone reverse engineered obsidian sync a couple years ago, but obsidian ended up “patching” it. Saw some recent discussion on here about it:
https://news.ycombinator.com/item?id=44768641
Joplin has great sync support for a number of providers, Dropbox, Onedrive, Nextcloud, S3 etc, Obsidian supports none of these on iOS so I cant sync all my devices without having all my notes go to Obsidian servers and paying the fee.
Definitely one of the biggest ROI is to pay for the sync. I regret all years I tried git-based alternatives (it's still useful to have it in git for backup, but not as the main syncing mechanism).
I was using SyncThing, and it worked, but any time you have an Obsidian vault open on two devices, or shortly after another, you're always thinking about if you're going to have to clean up a bunch of sync conflict files later. And that mental overhead is not worth saving $4/mo.
The conflicts are never hard: it's like a git merge conflict where you just take the latest of every conflict block.
I used multiple sync "solutions" (terrible idea, in retrospect); Dropsync, Syncthing, Drivesync, in addition to paying for Obsidian Sync, because I was delusional about "backing up my data". Huge mistake on my part, I've spent many, many, many hours deduplicating worthless "backups". Agree with "just pay for Obsidian Sync".
I try to selfhost most of my stuff I rely on. Immich, Vaultwarden, etc. I gave up on trying to selfhost sync solutions for Obsidian - Obsidian Sync is just so damn frictionless compared to all other solutions. Also, it feels good supporting the development of Obsidian.
After the tenth time iCloud absolutely destroyed my vault’s file layout and scattered copies of my files all over my iCloud Drive, I just gave up and shell out for paid sync now. It’s fine. I don’t mind paying for things I get actual value from.
protip: You can make synctrain sync with an iOS shortcut, with the shortcut being triggered when Obsidian is opened or closed. This means you're always in sync, even if iOS hasn't allowed synctrain to run in the background.
I've had no trouble with syncthing on Android. It just has access to the sync folders, as far as I can tell. Seems to work great, even if I've got the same file open simultaneously on several devices. I use a tablet in my kitchen to show my TODO at all times.
I'm doing the same since this is the only method I found I can let my bot access the files, something I couldn't achieve with Obsidian Sync.. until now!
I’ve just about got this working on ios using the a-shell app as a terminal to run the git commands, with shortcuts set to run them when Obsidian opens and closes.
Paying for sync is my way of supporting the developers of this excellent application. The sync works well, it's less hassle, and more secure than using the usual cloud services, particularly for iOS and Android. Obsidian and Tailscale are the two pieces of software I gladly pay for, I don't ever want them enshittified!
You can git clone directly to your iOS file system which fixes the Obsidian git plugin issue so you can use the Obsidian git plugin on your computer and mobile devices.
I used iCloud in the past, but found that syncing between a few devices sometimes left my notes in a weird state - sometimes overwritten, missing, etc. I switched some time ago to https://github.com/remotely-save/remotely-save with backblaze and I periodically sync to a git repo for a second backup. No issues since then.
I did run with this setup for a few months (I believe like, 5 months already?) and when it works, it's nice, but 90% of the time it has been extremely painful.
Something breaks, one automatically updates and then it breaks the entire database, SCRAM mode, recovering is painful, and all the time I get warnings, spam and logs, it's anything but seamless.
Which is a real pity, because when it works it feels magical to use within my laptop, my phone and my tablet, all self hosted, but the pain won and so I'm searching for new alternatives.
I use this and a self-hosted couchdb. So far it seems to be good, but I haven't spent more than a few hours with it yet. I do have what appears to be a working setup on ios, macos, and linux. Obsidian's large number of plugins and control surfaces is a bit hazardous.
I must be a fossil living under a rock, but: were they ever gone? As the amount of new CLI based applications I install on a monthly basis is always far more than the amount of new GUI based applications.
I think a lot of new developers used GUIs very exclusively for a very long time. Agentic workflows and Claude code have brought CLI tools to the forefront again.
A good example of this that I've noticed is a lot of newer devs were using GitHub Desktop or VS Code to manage git operations, but Claude gave them peek under the hood and now they're using it directly a bit more. Claude Code is a great gateway drug to CLI and TUI addiction
This got me thinking if it’s possible to use Obsidian as taskwarrior. I’ve used taskwarrior in the past but it’s CLI interface which is fine for simpler tasks. Lately, I’ve been trying to use Obsidian as task manager and addition of Bases paved path for taskwarrior like usage, but in GUI. Having options to use it as CLI and as GUI offers flexibility.
I also used some plugins like bugwarrior to sync Jira/GitHub tickets locally. This is perfect when working on multiple projects/repos.
But I guess moving from Unix one tool for each job to swiss knife tool makes Obsidian overwhelming. Maybe it’s better to bridge these two tools in some way (plugins) rather than misuse Obsidian features.
Okay, so my command line fu is not what it perhaps should be, but if I could use obsidian without the bloated app, I'd be even more in love.
How would I be able to search obsidian links from the command line?
Like, to travel between notes in the app of course I can just click on connecting links or search, but I wouldn't have the faintest idea how to do that in a cli.
Is there some handy way to search the current folder and subfolders for text in a file with regex? Like some kind of >find term for all of my [[term]] entries in markdown files ?
Not gp, but because the way hackernews would render in a web browser versus curl is dramatically different, of course. There's a clear separation of presentation and content, and curl shows you presentation.
Notes being plain text files means that what you get by showing via a CLI is essentially the same as just `cat whatever-it-is.md`. Viewing a note via the CLI interface could have its merits (it could apply its own flavor of presentation), but come on now. Your example doesn't hold.
I've used it with Claude Code for refactoring and helping write a really in depth D&D campaign. Using frontmatter, I can keep metadata about NPCs and characters synced across all files.
Fixes all the problems I've had about "In what order do I put this data" and flipping back and forth in a huge stack of papers.
As a game engine dev, if I have an asset management app, it’s pretty reasonable that it might load the list of asset names and hashes before doing the significant work of decoding/generating thumbnails. This could give the app instant low quality thumbnails from loading the tiny array of data that’s already necessary just to get started.
"list" here does not refer to a "linked list". In more academic circles, a "list" referes to any linear container. Such as a Python List. In practice, C++ vtables are effectively structs containing function pointers.
In gamedev it takes 7-10 years before you can require a new tech without getting a major backlash. AMD came out with AVX2 support in 2015. And, the (vocal minority) petitions to get AVX2 requirements removed from major games and VR systems are only now starting to quiet down.
So, in order to make use of users new fancy hardware without abandoning other users old and busted hardware, you have to support multiple back-ends. Same as it ever was.
Actually, a lot easier than it ever was today. Doom 3 famously required Carmack to reimplement the rendering 6 times to get the same results out of 6 different styles of GPUs that were popular at the time.
ARB Basic Fallback (R100) Multi-pass Minimal effects, no specular.
The full model is supposedly comparable to Sonnet 4.5 But, you can run the 4 bit quant on consumer hardware as long as your RAM + VRAM has room to hold 46GB. 8 bit needs 85.
The magic is that now you can modify the source code of the game and recompile that.
Folks have been optimizing SuperMario64 to run much faster on actual N64 hardware. And, there is a project that has ported it to run on the PlayStation 1. That’s much weaker hardware that has no hope of emulating the N64.
Back in the day, I wrote a simulator for the PS2’s vector units because Sony did not furnish any debugger for them. A month after I got it working, a Sony 2nd party studio made their VU debugger available to everyone… Anyway…
The good news is that the VU processors are actually quite simple as far as processors go. Powerful. Complicated to use. But, not complicated to specify.
This is made much simpler by the fact that the only documentation Sony provided was written by the Japanese hardware engineers. It laid out the bit-by-bit details of the instruction set. And, the bitwise inputs, outputs, delays and side effects of each instruction.
No guidance on how to use it. But, awesome docs for writing a simulator (or recompiler).
https://help.obsidian.md/cli
I’ve been having a lot of fun recently using AI CLIs with Obsidian. No plugins necessary because it’s just a directory tree of markdown files.
reply