altoindex
Scannednpx machina-cli add skill systemoperators/claude-plugins/altoindex --openclawalto.index Data
alto.index is a macOS app that syncs data from Apple apps to ~/Documents/alto-index/ as markdown files. This skill teaches you how to work with the synced data.
Base Path
All data lives in ~/Documents/alto-index/. Each data source has its own subfolder with a CLAUDE.md containing source-specific details. Always read the relevant CLAUDE.md first when working with a source you haven't seen yet.
Native App Links
Most exported files contain deep links back to the original item in the native macOS app. When referencing any item, always include the native link so the user can click through to the source app. The link is typically in the frontmatter link or source field, or at the bottom of the file body. Supported link schemes: notes://, x-apple-reminder://, addressbook://, calshow:.
Data Sources
notes/
Apple Notes exported as markdown files.
- path:
notes/{folder}/{title}.md - folders match Apple Notes folder names, nested folders supported
- frontmatter: title, id, created, modified, folder, attachments, links, source
- deep link:
notes://showNote?identifier={uuid}(insourcefield) - body contains the note content in markdown, with a link back to the original note at the bottom
reminders/
Apple Reminders (active/non-completed only).
- path:
reminders/{list}/{title}.md - lists match Apple Reminders list names
- frontmatter: title, reminder_id, list, priority (none/low/medium/high), flagged, url, images, created_date, modified_date, link
- deep link:
x-apple-reminder://{reminder_id}(inlinkfield) - body may contain URLs and images sections
calendar/
Apple Calendar events.
- path:
calendar/{calendar-name}/{YYYY-MM-DD}/{event}.md - organized by calendar name, then by date
- frontmatter: title, event_id, calendar, start_date, end_date, all_day, location, url, organizer, attendees (list with name/status/role), status, availability, alarms, recurrence, created_date, modified_date, link
- deep link:
calshow:{timeIntervalSinceReferenceDate}(inlinkfield) - body includes time/location info, notes, and attendee list
messages/
iMessage conversations.
- path:
messages/{contact-or-group-name}.md - one file per conversation (individual or group chat)
- frontmatter: title, chat_id, participants (array), is_group, message_count, first_message, last_message
- messages are in chronological order within each file
- contact names resolved from Contacts when available (shows "Name (phone/email)")
- attachments noted inline where media was sent
contacts/
Apple Contacts.
- path:
contacts/{name}.md - flat folder, no subfolders
- frontmatter: title, contact_id, link, last_modified
- deep link:
addressbook://{contact_id}(inlinkfield) - body contains structured sections: phone numbers, email addresses, physical addresses, birthdays, notes, social profiles
- use contacts to resolve names in messages and calendar events
safari-bookmarks/
Safari bookmarks as markdown lists.
- path:
safari-bookmarks/{folder}.md - each Safari bookmark folder exported as a separate markdown file
- no frontmatter - content is markdown lists with clickable links
- nested folders represented as subsections with ## headings
safari-history/
Safari browsing history grouped by day and hour.
- path:
safari-history/{YYYY-MM-DD}.md - one file per day
- no frontmatter - starts with
# Safari History - {date}and total visit count - grouped by hour (## HH:00 - HH:59 headings), latest first
- each entry: time, linked title, visit count if > 1
voice-memos/
Voice Memos recordings.
- path:
voice-memos/index.md(table of all recordings) +.m4aaudio files - index.md contains a markdown table with columns: Recording, Date, Duration, Size, Link
- audio files are in
.m4aformat alongside the index - no frontmatter on individual files - the index is the main entry point
granola/
Granola meeting notes.
- path:
granola/{YYYY-MM-DD}-{title}.md - flat folder with date-prefixed files
- no frontmatter - content starts with
# titleheading - contains: meeting title, date, participants, overview, AI summary, your notes, full transcript
granola/index.mdlists all meetings
Not yet available
mail/- Apple Mail (coming soon, placeholder only)screenshots/- Screenshots (coming soon, placeholder only)
Working with the Data
Reading data
- use Glob to find files:
~/Documents/alto-index/notes/**/*.md - use Grep to search across sources: search in
~/Documents/alto-index/ - read individual files with Read tool
- always check for a CLAUDE.md in the subfolder for source-specific guidance
Cross-referencing
- contact names in reminders/calendar/messages can be resolved via contacts/
- dates can be cross-referenced across calendar, reminders, notes (by modified date), safari history, and granola meetings
- reminder URLs may link to relevant websites or resources
- safari history can provide context for what you were researching on a given day
Deep links
- notes:
notes://showNote?identifier={uuid} - reminders:
x-apple-reminder://{reminder_id} - contacts:
addressbook://{contact_id} - calendar:
calshow:{timeIntervalSinceReferenceDate} - always include deep links when referencing items so the user can jump to the native app
Privacy
- this is personal data - handle with care
- don't expose contact details or private notes unnecessarily
- summarize rather than dump raw content when possible
Source
git clone https://github.com/systemoperators/claude-plugins/blob/main/altoindex/skills/altoindex/SKILL.mdView on GitHub Overview
alto.index syncs data from Apple apps into Markdown files under ~/Documents/alto-index/. It exposes sources such as Notes, Reminders, Calendar, Contacts, Messages, Safari bookmarks/history, and Voice Memos, plus Granola meetings. The skill helps you read these synced files and navigate via native app links (notes://, x-apple-reminder://, addressbook://, calshow:).
How This Skill Works
Data from each Apple app is organized into subfolders (notes/, reminders/, calendar/, etc.), each with a CLAUDE.md that describes fields and a frontmatter including a native link. When answering, read the relevant CLAUDE.md first, then compose responses that reference the frontmatter and include the native link back to the source item.
When to Use It
- When the user asks about their Notes, Reminders, Calendar, Contacts, Messages, Safari bookmarks or history, or Voice Memos.
- When the user references alto.index or alto-index data.
- When the user wants to locate the data files at ~/Documents/alto-index/ and inspect a CLAUDE.md.
- When the user needs a native app link to open the item in Notes, Reminders, Calendar, etc.
- When the user asks to summarize or compare data across multiple Apple apps in alto-index.
Quick Start
- Step 1: Identify the data source folder under ~/Documents/alto-index/ (e.g., notes/, reminders/, calendar/, messages/, contacts/, safari-bookmarks/, safari-history/, or voice-memos/).
- Step 2: Open the source's CLAUDE.md to read its details and supported fields.
- Step 3: When referencing an item, include the native link from the frontmatter or body (e.g., notes://..., x-apple-reminder://, addressbook://, calshow:).
Best Practices
- Always open and read the source's CLAUDE.md before answering.
- Include the native deep link (notes://, x-apple-reminder://, addressbook://, calshow:) for any item referenced.
- Reference the correct frontmatter fields (title, id, created, modified, link/source) and the folder structure when applicable.
- Respect data privacy; only use data the user explicitly asks about or has granted access to.
- Preserve chronological order and source context when discussing Messages or History entries.
Example Use Cases
- Locate a specific note by title, provide its creation date, and include the notes:// link to open it in Apple Notes.
- Find a calendar event by title and return its start date, location, and a calshow: link.
- Open a Safari bookmark folder and present each item as a markdown link with its native URL.
- Retrieve a voice memo's duration and provide the playback .m4a file link.
- Explain how to navigate data by referencing the CLAUDE.md for a given data source and showing the associated deep links.