fc6a32697f
fix(garmin): format sync payload with canonical list keys and verify synced counts
main
Moritz Graf2026-10-18 20:31:45 +02:00
9f2c2c33d3
fix(datastore): increase backend probe timeout to 3s and rebase before push
Moritz Graf2026-10-17 07:39:40 +02:00
6b3fbfdbb5
feat(datastore): migrate to single-writer DuckDB backend HTTP proxy and remove legacy HTML renderers
Moritz Graf2026-10-16 23:33:02 +02:00
8bdd06e598
feat(skills): promote untracked pod skills into mop-skills
Moritz Graf2026-10-16 21:10:26 +02:00
4f72e4d71b
chore(datastore): update Mila live dashboard link to family.haumdaucher.de/tracking/mila/
Moritz Graf2026-10-14 21:39:49 +02:00
7b5d039323
feat: consolidate datastore into sleep, nutrition, mila databases
Moritz Graf2026-10-13 09:28:07 +02:00
fe4edcc217
fix(pwa): serve Mila app icons from public /icons/ path for iOS SpringBoard and PWA manifests
Moritz Graf2026-10-12 08:48:55 +02:00
3e9e12bbc5
fix(pwa): version icon filenames to -v3 and bust iOS Safari WebClip cache
Moritz Graf2026-10-12 08:36:02 +02:00
7b9b3ff0eb
feat(growth): add WHO percentile growth curves, Chart.js collapsible section, and tests
Moritz Graf2026-10-12 08:32:38 +02:00
191c8e9143
feat(pwa): optimize Mila app icons with safe-zone padding to prevent Android/iOS zoom crop
Moritz Graf2026-10-12 08:25:27 +02:00
f5b5deaae7
fix(pwa): enable crossorigin=use-credentials for manifest, add id and header install trigger
Moritz Graf2026-10-12 08:16:03 +02:00
545752fa60
feat(mila): update app icon, favicon, and header artwork to pop-art baby
Moritz Graf2026-10-12 07:36:23 +02:00
e9d2c59eed
feat(pwa): add auto-update on reopen, live tickers, and manual refresh to dashboards
Moritz Graf2026-10-11 22:25:37 +02:00
63497765b0
fix(datastore): include morning-ending night sleep in dashboard, pass data-dir, and auto git-sync on writes
Moritz Graf2026-10-11 22:14:17 +02:00
88c42aa1e5
fix(datastore): support retroactive date logging and fix Garmin balance display logic
Moritz Graf2026-10-11 21:59:44 +02:00
bcb04711c0
feat(security): enforce ADR 0005 hosting boundary segregation strictly to family/
Moritz Graf2026-10-11 21:24:06 +02:00
694d0c5072
feat(pwa): make Mila app installable with PWA manifest, service worker and high-res icons
Moritz Graf2026-10-11 20:57:50 +02:00
1ccab5e522
feat(datastore): expose delete command in CLI
Moritz Graf2026-10-11 20:48:07 +02:00
fe21d01a3f
fix(datastore): fix item_count column name in update_moritz_website.py
Moritz Graf2026-10-11 20:39:35 +02:00
1babaab1e2
feat(datastore): add Moritz Health light-mode PWA dashboard generator and hook
Moritz Graf2026-10-11 20:37:18 +02:00
3abfa18182
feat(datastore): support --since in stop command, trigger website update from render_views, update docs
Moritz Graf2026-10-11 15:07:35 +02:00
967909c3a7
feat(datastore): add diaper and feeding tracking, automated update_website posthook, and morning_briefing
Moritz Graf2026-10-11 12:16:24 +02:00
80e38ab64a
fix(datastore): add PEP 723 dependencies to garmin_sync.py for automated uv execution
Moritz Graf2026-10-10 15:48:55 +02:00
786ce47bd4
fix(datastore): alert on open sessions without silent deckeln, support stop by ID
Moritz Graf2026-10-09 19:14:01 +02:00
88d49f85e5
fix(datastore): auto-close stale sleep sessions and validate event kind in CLI
Moritz Graf2026-10-09 18:46:39 +02:00
c9cbc56441
docs(google-calendar): document OpenClaw calendar__ prefix, CLI fallback, and no-fake guardrails
Moritz Graf2026-10-09 12:29:43 +02:00
6a93539a97
feat(datastore): support --kind flag and add 15m duplicate suppression
Moritz Graf2026-10-09 10:28:11 +02:00
77a0e56d96
feat(datastore): add relative --since duration flag and overnight sleep test
Moritz Graf2026-10-09 09:25:04 +02:00
0489ef7d62
feat(skills): add datastore skill (DuckDB engine, JSONL partitioning, Garmin mirror, and view renderers)
Moritz Graf2026-10-06 18:17:52 +02:00
2bde04617f
feat(skills): add create-website skill for zero-build responsive SPAs and showcases
Moritz Graf2026-09-28 07:37:27 +02:00
7336f7bfff
Merge pull request 'feat(skills): add zwift-workout skill (.zwo builder, validator, preview, publishing)' (#1) from feat/zwift-workout-skill into main
moritz2026-09-20 13:43:44 +00:00
42f37a89f8
feat(skills): add garmin-workout skill with sportType validation and schema reference
Moritz Graf2026-09-20 08:04:55 +02:00
be96b1234f
feat(skills): add chart-to-chat skill for dbt-charts and quickchart
Moritz Graf2026-09-19 21:04:42 +02:00
39441067bc
feat(skills): add openclaw-audit system diagnostic and commit correlation skill
Moritz Graf2026-09-19 16:48:19 +02:00
6e98fd83b2
feat(skills): add YouTube and Google Maps Platform MCP skills
Moritz Graf2026-09-18 11:30:35 +02:00
ea079c9852
feat(google-calendar): add RRULE recurrence, transparency, reminders, move_event, and free-slots finder
Moritz Graf2026-09-18 11:21:35 +02:00
a9d386c2e9
feat(skills): add improved grill-me skill for plan stress-testing
Moritz Graf2026-09-17 13:34:36 +02:00
2dfce6967c
feat(skills): add garmin-auth skill with 2-turn Telegram MFA flow
Moritz Graf2026-09-17 09:29:56 +02:00
0162f9dcd3
fix(brother-printer): support --thread-id for forum topics and prevent double ask_user prompts
Moritz Graf2026-09-17 09:05:01 +02:00
b104b2f6a2
feat(skills): add brother-printer skill with IPP duplex, color, N-up and Telegram live status
Moritz Graf2026-09-17 08:08:31 +02:00
bb31002e19
feat: add hosting and qr-code skills
Moritz Graf2026-09-16 08:59:54 +02:00
5376ddbc20
feat(skills): add regensburg_ris_mcp.py and universal_product_extractor.py
Moritz Graf2026-09-16 08:22:40 +02:00
7e82424ca2
feat(calendar): implement visual color-coding, conflict-guard, and prep checklists
Moritz Graf2026-09-15 22:28:26 +02:00
dc874415b4
fix(bring): properly extract items from BringItemsResponse
Moritz Graf2026-09-15 22:14:18 +02:00
309f4e4856
fix(calendar): improve friendly error message when regensburg calendar is not configured
Moritz Graf2026-09-15 22:03:54 +02:00
9a857ac23b
feat(shopping): add Bring! shopping lists MCP server and protocol
Moritz Graf2026-09-15 21:47:26 +02:00
505249748e
feat(skills): add google-calendar skill and MCP server for family and regensburg calendars
Moritz Graf2026-09-15 21:38:57 +02:00
71e8909251
feat(skills): add markitdown document converter and regensburg-stadtrat civic intelligence skills
Moritz Graf2026-09-12 09:15:16 +02:00
e2944efb3e
fix(spotify): pin mcp<2 and set writable HOME for credentials
Moritz Graf2026-09-11 21:37:50 +02:00
24e788ba6b
feat(spotify): add run_spotify_mcp launcher
Moritz Graf2026-09-11 21:15:27 +02:00
9c32d8e44c
feat(spotify): add spotify skill and oauth generator for openclaw
Moritz Graf2026-09-11 21:03:54 +02:00
e8c0046c51
feat(skills): add shopping skill with supermarket deals, geizhals, and ebay MCP servers
Moritz Graf2026-09-10 13:43:29 +02:00
3d78c94a58
fix(jelly-media): concatenate poster url string for Python < 3.12 compatibility
Moritz Graf2026-09-10 10:33:26 +02:00
03a5d38672
fix(jelly-media): fix f-string syntax compatibility for Python < 3.12
Moritz Graf2026-09-10 10:26:19 +02:00
7aca5dfe70
feat(skills): add jelly-media skill and MCP server for Jellyfin & Jellyseerr
Moritz Graf2026-09-10 10:09:05 +02:00
fbd934965d
fix(text-to-audio): add parallel chunk synthesis, automatic MiniMax fallback, voice normalization, and streaming progress
Moritz Graf2026-09-08 20:13:29 +02:00
9ac1ee5f35
feat(text-to-audio): switch to Gemini 3.1 Flash TTS, default to solo monologue, preselect DE/EN voices
Moritz Graf2026-09-08 19:30:09 +02:00