iOS Shortcuts and Obsidian - Using AI to bridge the gap

Vaults Aplenty

I have a variety of Obsidian MD vaults. An R&D vault. A family vault (recipes, family info to remember, etc). Vaults for specific projects. A Daily Activities vault.

In the era of AI tools, Obsidian’s markdown/frontmatter file architecture instantly propels it a mile ahead of any tool that bundle up notes into proprietary data formats or opaque containers. You don’t need overweight MCP servers or to fumble with APIs to integrate AI tools with your Obsidian notes, but instead a vault is folders of Markdown files with metadata accessibly stored as YAML frontmatter, alongside a few basic config files.

While most of my usage is for R&D / project tracking, this entry is about my “Daily Activities” vault.

That vault is a diary of sorts.

I track my activities, daily motivations and todo lists, some basic health info, outings, and even the broad strokes of my diet. I use the Daily Notes core plugin, starting each note with a template that has sections according to my needs: Motivations, notes, breakfast lunch and dinner, daily tasks and activities, and then a few health metrics for when I bother entering them, such as blood pressure, steps and active calories. The vault has default properties for things that I want to enter that way, for instance whether I meditated, how many push-ups I performed, and similar things.

My template also has the current weather, along with the forecast for the day. That was a simple “on new note” script that Gemini created for me, pulling from an online source and applying it to a placeholder in my template. e.g. Weather @ 6/26/2026, 7:01:10 AM: Fog. 15°C 99% humidity (High: 23°C, Low: 15°C). Sunrise 05:41 AM Sunset 09:04 PM. It gives an environmental context to the day.

My interaction with the daily notes in the aggregate is a couple of minutes at most. It’s a fantastic tool for sharpening intentions and for noticing trends. It also is a useful memory bank. “When did we make the lasagna?”

I recently was logging a blood pressure reading in it when I pondered whether there is a pipeline from the Omron to Obsidian. It’s a Don’t Repeat Yourself (D.R.Y.) kind of thing where it bothered me that I was manually copying readings that should be automatically propagated.

And of course there is.

Propagating Data

  • Omron connect already downloads all the readings from my device to my iPhone, where it’s then pushed to Apple Health

  • I created a Shortcut that gathers the last n days of blood pressure readings1 into a file. Apple Health stores diastolic and systolic separately, so they each get their own line. I say n days as on the first run I ran it for the year to date, and then on subsequent runs reduced this to 7 days.

  • While I was in there I added various fitness measures, including steps, active calories, and plan to add others, summing by day and restricting only to Apple Watch sourcing. You could also export activities as discrete items, though I didn’t do that.

  • The aggregate file gets saved to an iCloud location that is automatically pulled by my Mac.

  • I create a separate automation shortcut that does a scheduled run of the other shortcut. With a seven-day window, it can be run as infrequently as once every seven days without expanding the time window. And of course I can still trigger it manually, as I did right before writing this entry.

Shortcuts are surprisingly powerful. It’s clunky stringing a set of discrete steps together with this visual builder – I would infinitely prefer to be able to script it – but it’s much more capable and useful than I imagined it to be.

The file ends up looking something like this once limited to the last 7 days. There are a lot of blood pressure readings as I was testing some dietary modifications and their impact, and seeing them charted courtesy of the subsequent steps made the feedback so interesting I went a little overboard.

Regardless, this file was saved under my Daily Activities vault. I shortsightedly named it latest_bp.txt, but realistically it should be latest_health.txt. Instantly it participated in my vault source control system.

Using AI To Complete the Bridge

Now it was time to do something with it, and this is precisely the realm where AI coding tools shine: Discrete, compartmentalized needs where the problem and solution are very focused. Traditionally I would get sidetracked by doing a project for two months – endlessly generalizing and refactoring for what-ifs that will never happen, and so on – but in this case I just created a new folder named .dataProcess under the vault, which immediately makes it invisible to Obsidian, and opened a Claude Code session on my vault.

This is an Obsidian vault that is basically a personal life diary. Each day I create a new YYYY-MM-DD file from the _Daily_Note_Template and enter various attributes. Today I setup a shortcut on iOS to push various health metrics -- systolic, diastolic, steps, and active calories, to a file called latest_bp.txt under "Daily Notes"\Health, and this will cover the last NN days and will run probably daily or on demand. I would like to create a new app under .dataProcess to process this file on demand, to collate the systolic and diastolic by date, and then to process through the obsidian notes to add/update the measures under the related notes (which may mean editing in place as measures change -- for instance if I run the shortcut multiple times today, today's data may change multiple times as more measures and activity occur). I pluralize as while I would like the daily summary data in the daily note, if a monthly summary is available, I would like updated graphs under that summary for each item. Choose a tooling for building this process -- Go, Rust, or whatever else you think is ideal -- and create the application under the .dataProcess folder. Be sure to .gitignore binaries and build detritus

The very first creation of Opus 4.8 xhigh was superlative and inferred exactly what it needed to do from the loosely structured template and the data file, generating a single-file, zero-dependency Go 1.25 app that processed the history of data in moments. Though we went back and forth a few times as originally it used the Mermaid charting that was very limited, so it adjusted to generating and embedding SVGs in the monthly summaries.

Later I had it combine sliding-window time proximal blood pressure readings into a single averaged result, and also it had to start storing a local combined database to structurally catch differences as new data came in. Some minor fine-tuning happened like changing it to always ensure day files were under the proper month (Daily Notes/2026-06/2026-06-07), and that every month folder had a monthly summary.

In a tiny number of back and forth prompts and responses I had a fully functioning, cross-platform Go application that I could run on my Mac, on Linux, or on Windows. I added calling this Go binary to my nightly git encrypt push of the vaults (as mentioned in the launchd piece), and voilà, an end to end integration.

Now every month has a monthly summary that looks like thispdf.

Almost immediately I felt that feedback loop where I was better incentivized to hit goals. I put this system in place on the 15th, and the impact on my daily step goals is obvious. It still misses other elements of my daily fitness activities, but that comes next.

And of course this data was available in Apple Health, and blood pressure was in Omron. While I mentioned DRY – don’t repeat yourself – earlier, ironically I am intentionally repeating data, but it is being propagated accurately and comprehensively, and now it’s in my primary source for this sort of daily activity. My human dashboard.

Getting To The Point

None of this is revolutionary. I moved data between islands, and pushed it into a daily tool.

But this is the sort of domain where LLM coding tools have really shown to be absolute game changers2, especially with open systems like Obsidian. I’ve had wonderful luck with the newer models and tooling, but it still surprised me how comprehensively it comprehended the need with little guidance, and competently supplied a solution on the very first prompt. Only minor modifications necessary.

Questions? Email me at the address linked below.

Footnotes

  1. There are some permission settings you have to set for this to function. Apple Health is very restrictive of bulk exporting data.

  2. And it’s important to note that big systems, when properly managed, are the combined effort of a lot of small systems. When people declare that AI coding tools can’t handle the complexity of their project, they are announcing that they are doing something very wrong.