Skip to content
← Back to articles
MY RECORDINGS AND NOTESPLAUD / Custom integration

PLAUD and Apple Notes. The processing in between.

I bought a recorder to make capturing conversations easy. I am building what comes afterwards, through to a note I want to read again.

Updated 6 min read
Illustration of a recorder, a sound wave and a note.
Illustration of recording, processing and a note.
01Four imports on 5 October
02Separate processing stages
03Sync problem now resolved

About this article

I use a PLAUD adapter in my meeting-memory pipeline around OpenClaw. The account from 5 October 2026 separates four PLAUD imports from wider processing counters.

Whisper, diarization, speaker identification and extraction have separate jobs. Apple Notes is the intended reading app; a full PLAUD trace to the note format shown here is still missing.

My 18 October update also describes a resolved sync problem. I had skipped restarting the phone; when I finally did, the connection worked again.

My description of the correction route as of 18 October 2026: lexical proximity and sentence structure, relevant RAG/KG context, voice fingerprints and a final correction pass with Luna. Not an independently measured quality result.

I bought a PLAUD to record conversations with little fuss. Press a button and carry on talking. I wanted to choose what happened afterwards: how the recording was processed, where I read the note and how I found it again later.

I connected a PLAUD adapter to my own meeting-memory pipeline around OpenClaw. It is part of my Second Brain. Apple Notes is where I want to read the result; my own knowledge layer keeps the sources and their connections.

About this version. The technical examples come from the account published on 5 October 2026. They show four PLAUD imports and parts of the subsequent processing. They do not yet trace one of those recordings all the way to the Apple Note shown here. On 18 October I added my experience of a sync problem that has now been resolved.

Recording and syncing

PLAUD supports exporting recordings, transcripts and summaries. I use that handoff to choose my own transcription model and subsequent processing.2

The restart I had skipped

At one point my recordings stayed on my phone and never appeared in the cloud. I looked for a connection problem elsewhere and had not restarted the phone. I was being stubborn: I did not expect a restart to help.

When I finally did restart it, syncing worked again. It appears that a remaining cache from a VPN I had used temporarily was blocking the connection. After the restart, my recordings could sync again.

18 October 2026 update: syncing works again.

From PLAUD to my processing queue

The PLAUD entry point is PlaudCliProvider in bin/openclaw_meeting_memory.py. My openclaw-meeting-memory wrapper offers sync, resume, scheduled, status and render-note. These are my commands; the official PLAUD CLI has its own command contract.13

Technical excerpt / sh
bin/openclaw-meeting-memory --help
bin/openclaw-meeting-memory status

This status output is a snapshot from 5 October 2026 at 10:55:05 CEST. Source imports and subsequent processing have separate counters:1

Technical excerpt / json
{
  "plaud": {
    "recordings_seen": 4,
    "recordings_ingested": 4,
    "recordings_pending": 0,
    "recordings_failed": 0
  },
  "meeting_memory": {
    "recordings_downloaded": 27,
    "meetings_complete": 17,
    "processing_backlog": 78,
    "transcription_backlog": 3,
    "diarization_backlog": 23,
    "rag_backlog": 10,
    "kg_backlog": 10,
    "failed_jobs": 1
  }
}

The plaud group shows four imported recordings. The 27 downloads and 17 completed meetings under meeting_memory belong to the wider pipeline, so they count a different set.

processing_backlog counts jobs marked pending, retry or blocked in openclaw.meeting_processing_jobs. A meeting can have several jobs. Those 78 jobs are not 78 meetings. The counters for individual stages show where work is waiting.1

The launchd agent ai.openclaw.meeting-memory runs scheduled periodically. A lock prevents overlapping syncs. When I see sync_already_running, I first check whether the active worker is still doing its job.1

How I process the recording

OpenClaw provides the gateway and execution infrastructure. I build the adapter and meeting-memory logic around it.10

Each entry in STAGES has a distinct job:1

Technical excerpt / python
STAGES = ('audio', 'transcript', 'diarization', 'identity',
          'extraction', 'rag', 'kg')

process_meeting(store, meeting_id, item, provider, ...) brings together storage, the meeting reference, the recording and its provider. Preparing and saving an Apple Note sit outside this tuple.1

Transcription: what was said? The worker described here uses transcribe(self, audio), whisper-cli and ggml-medium.bin, with automatic language detection and JSON output. whisper.cpp can run Whisper locally on Apple Silicon.14

Diarization: which voice speaks when? This configuration selects nemotron3. Nemotron 3 Diarization produces timed segments with speaker labels.15

Speaker identification: whose voice is it? That is handled separately through speaker-enroll, speaker-confirm and speaker-link-contact. Building a voice profile, confirming a match and linking a contact are separate steps. A speaker remains unknown when the evidence is insufficient.16

Extraction: what summary, decisions and possible actions follow from the conversation? The recorded configuration uses chatgpt_via_codex_cli. The CLI runs on my Mac, but the model processing is not offline.1

01 / DIAGRAM

From recording to note and knowledge

Historical pipeline from 5 October 2026; the newer correction route using earlier context is described below.

INTERACTIVE SYSTEM MAP05 NODES/05 CONNECTIONS
Note and knowledge layer
Data flowFeedbackChoose a step to read more.
01 / 04AUTOMATIC TOUR
ROUTE

Capture audio

All nodes and connections
Figure 01This diagram belongs to the 5 October snapshot. My 18 October update describes the context correction I now use. A complete PLAUD trace is not shown here.

Splitting the work this way helps me find the cause of an error. A wrong word needs a different correction from a sentence attributed to the wrong person.

18 October: correcting with words, subject and speaker

My correction route starts with a deterministic lexical search. I look at nearby words, sentence structure and possible alternatives. I supplement those candidates with relevant context from my RAG and knowledge graph layers.11

A final pass with Luna then assesses what was probably said. It uses context suited to the conversation’s subject and identified speakers. A voice fingerprint helps recognise a speaker in later recordings and retrieve the information associated with them.11

This is my current workflow, not a measured accuracy score. Information from an earlier source can help interpret an utterance, but must not be added as newly spoken text. An uncertain passage should remain traceable to the recording.

Reading the result in Apple Notes

I already use Apple Notes to read and edit notes. I want my conversations there too, without having to open a separate dashboard just to read the output of my own software.

render_note(store, meeting_id) prepares the note. The draft format includes these fields:17

Conversation
Date, time and duration.

Participants
Identified and still unknown speakers.

Draft summary
The current result while processing continues.

Transcript and meeting reference
A route back to the recording and related context.

This is the structure of a meeting note; its contents remain private. To check the full PLAUD route, I still need to follow the same recording ID through import, transcript, Note and knowledge records.17

A note stored in iCloud can sync to my other Apple devices when Notes is enabled under the same Apple Account. An “On My Mac” note stays local. Edits in Notes also need to pass through my own ingestion again before the database, embeddings and graph are updated.8

Bringing in earlier conversations

When somebody says “we will keep the earlier layout”, I want to find the decision they mean. That is why I want to retrieve relevant passages from earlier meetings, notes and projects before extraction.

Since the 5 October snapshot, I have added that return path to the correction route: lexical candidates first, then relevant RAG and KG context, followed by a final pass with Luna. The subject and speaker identity help determine which earlier information belongs there.11

The note needs to show which information came from this conversation and which came from an older source. An earlier decision can explain the background without becoming something supposedly said in the new recording.

The CLI also has retention and forget-context. Keeping raw audio and continuing to use a meeting as context are separate choices. A local retention rule does not remove any copy held by PLAUD.1

The comparison I still want to run

I selected a public conversation between Steve Jobs and Bill Gates, roughly 81 minutes long, to compare PLAUD with my own processing. It gives me shared material without publishing a client conversation.9

I want to assess the same passages for transcription errors, speaker changes, overlap and claims added by the summary. An interview should not automatically produce an action list. The input version, models, hardware, queue time and processing time also belong in the comparison.

I have not completed that scored comparison. This article contains the plan, with no winner or quality score. I am not distributing the recording or its full transcript here.9

What I am working on next

Both the recorder and my own processing need maintenance. The restart I had skipped was a rather ordinary reminder of that.

I now use context in correction. What I still want to show here is a complete trace of one recording: from import to transcript, note and later retrieval. The assessed comparison also remains open. The wider setup is in my Second Brain article.

Sources and notes

Code entry points, the snapshot from 5 October 2026 at 10:55:05 CEST, and the note format. The resolved sync problem is my own update of 18 October.

01

Status from 5 October 2026, 10:55:05 CEST, with code entry points and Notes metadata. The four PLAUD imports are separate from the wider pipeline counts.

02

PLAUD documentation on exporting recordings and text results.

03

Vendor CLI documentation. The wrapper commands in this article are my own code.

04

Local Whisper execution and CLI support, including Apple Silicon.

05

Model card for timed segments with speaker labels.

06

Version-specific documentation on embeddings, speaker identification and verification.

07

Field structure from indexed meeting notes, shared without their private contents.

08

Syncing iCloud notes between devices using the same Apple Account.

09

Selected comparison material and the planned assessment. Scores and measured processing times have not been published.

10

OpenClaw gateway and execution infrastructure.

11

My description of the correction route as of 18 October 2026: lexical proximity and sentence structure, relevant RAG/KG context, voice fingerprints and a final correction pass with Luna. Not an independently measured quality result.

Contact

How do you process your recordings?

I would like to hear what goes wrong and how you find your notes again.

Enlarge image