Shortcuts and Custom Fields
Muninn reads your days; it does not record them. A Shortcut can. Declare a field, hand a Shortcut a value, and Muninn remembers.
What are Packs and Custom Fields?
In essence, a custom field is a field in Muninn, that can hold data, numbers, text, or boolean (yes/no). These fields are shown below your diary entry. An example would be to log your daily steps, caffeine intake, wether you had alcohol or stuck to your smoking quit. Fields can be edited in the editor below the diary text. But that’s really not all and not where the power of Custom Fields lies.
Shortcuts
An Apple Shortcut can write into those fields. An automation would be to say “when I pick my phone up in the morning copy my steps from yesterday into Muninn”. As a Type 1 diabetic I am logging my average daily glucose, for example, which gives me extra insight. Your data are saved, like everything else, in Apple’s iCloud, so you can both be sure they stay on your systems and use other apps and scripts to analyze them.
Drafts
Drafts is an app for Mac, iOS, Apple Watch, and iPad. Drafts is a text editor with a lot of cool functionalities, and one of them is to use something called “App Intents” to communicate with other apps. A Drafts Action to read and write from and to Muninn is included here, so you can even (if you want) edit your diary in Drafts. A much cooler thing, though, is to log quick notes on your Apple Watch and have them automatically appended to today’s diary.
Packs
Packs bundle all this into one, easy to install, package. Download a Pack, install it in Muninn (any of your devices is OK), and start using it. A few packs are below, we’ll soon publish a Packs SDK for anyone to make and distribute their own.
Custom Fields
A custom field is a value a day carries that Muninn did not find for itself: the steps you walked, a glucose average, a weight, how many pages you read, whether you meditated, a word for the day. Each field is declared once, in Settings → Custom Fields or by a pack below, with four things Muninn needs before a value can mean anything:
| What | Why |
|---|---|
| A kind | Number, count, text, or yes or no. Decides what a Shortcut may write. |
| A unit | km, mmol/L, kg. Shown after the value; conversions are the Shortcut’s job. |
| How it adds up | Total, average, latest, or not at all. What a chapter shows for its span, and what a chart will show. |
| A symbol | The glyph on the day’s reading, from SF Symbols. |
Note: You can find the right SF Symbol by using a search engine. “SF Symbol Blood” gives you the drop icon, which I use for my blood glucose. “SF Symbol Walking” gives figure.walk for walking or steps. Apple, unfortunately, does not provide an online browser for its symbols.
A field switched off keeps its values and stops being shown or offered to Shortcuts. Muninn itself has nothing health-shaped in it: what a field is called is your business, or a pack’s.
Packs and Shortcuts, made for you
This is coming soon[tm]. In the mean time, see this.
Important: Set this!
- Run Immediately. An automation asks before running unless you turn Ask Before Running off. With it on, the morning brings a notification instead of a number.
- The trigger. Health data cannot be read while the phone is locked, so an automation at five past midnight on the nightstand often gets nothing. Trigger it on When my alarm is stopped, or on the first unlock of the day, and write yesterday: Current Date minus one day.
The actions, for your own Shortcuts
Every action runs in the background, never opens Muninn, and says in a sentence why it refused.
| Action | What it does |
|---|---|
| Declare Custom Field | Declares a field by id, name, kind, unit, symbol and how it adds up, or brings an existing declaration up to date. Harmless when nothing changed; make it the first step. |
| Add Custom Field Value | Writes a value for a day, replacing the day’s earlier value for that field. A number may use a comma; yes or no may be 1 or 0. |
| Get Custom Field Value | Reads a day’s value, empty when there is none. What lets a loop skip days already written. |
| Remove Custom Field Value | Takes a value off a day. |
| Get Journal Entry | A day’s words. |
| Set Journal Entry | Replaces a day’s words. Tags and people in the text are kept as metadata, as the editor keeps them. Empty text removes the entry. |
| Add to Journal Entry | Adds to a day’s words after a blank line, or starts the entry. |
Field ids are lowercase words joined by dots, health.steps, own.mood, and they are a contract: a saved Shortcut carries the id, so a declared id never changes.
A link does the same as the Add action from another app: muninn://add?field=health.steps&value=8421&date=2026-10-06. It opens Muninn on the day it wrote.
Writing with Drafts
The three entry actions are what Drafts, or any text app with actions, needs: pull a day’s entry, write, send it back. The write goes through the same path as Muninn’s own editor, so #tags and @people in the text are indexed as if typed in Muninn. If Muninn’s editor is open on the same day at the time, the later save wins the whole entry, exactly as it does between two devices.
Read Only
With Muninn set to Read Only under Settings → Editor, every one of these actions refuses.