Ingest Loop notes
Read this if you keep meeting notes in Microsoft Teams Loop and want them in OMem. Loop is the one source that needs a one-time browser sign-in, because a .loop file isn’t really a document — it’s a pointer to content that lives in SharePoint.
Why Loop is different
Section titled “Why Loop is different”A .loop file synced to your OneDrive is a binary Fluid snapshot — the actual note content isn’t in it; it’s on SharePoint. So OMem dispatches the pointer (design principle P8): it reads the SharePoint URL from your OneDrive sync database, opens the page in a headless browser using your existing sign-in, and scrapes the rendered note as Markdown. That’s why Loop needs two things the other sources don’t: OneDrive must be syncing, and you sign in once.
Turn it on
Section titled “Turn it on”-
Sign in once. This opens a browser window for your Microsoft sign-in and saves the session:
Terminal window omem setup --browser -
Enable and ingest:
Terminal window omem config set kinds.loop.enabled trueomem ingest --kind loop
Fetching is slow by nature — roughly 30 seconds per page, because each one renders in a real browser. OMem fetches a couple at a time (kinds.loop.scope.max_fetch_concurrency, default 2).
Confirm it worked
Section titled “Confirm it worked”omem query "the notes from the planning sync" --kind loopomem wiki ls --kind loopWhen it fails
Section titled “When it fails”Loop has more moving parts than the local sources, so it has the most specific failure modes:
LoopSyncEngineDbNotFound— OneDrive isn’t syncing, or its database isn’t where OMem expects. Make sure OneDrive is running and signed in.LoopFetchTimeout— the SharePoint page didn’t render in time (slow network, or the page is large).- Session expired — re-run
omem setup --browserto refresh the sign-in.
See Loop fetch failed for the full diagnosis.
What’s next
Section titled “What’s next”- Loop fetch failed — fixing the errors above.
- The pointer-dispatch pattern — the design idea Loop drives.