Chain Theory
I’ve been tryna wrap my head around the theory AWG dropped.
It’s like chainmail made of paper clips that drop numbers that …
Well the paperclip part is a fair start and chainmail is a metaphor…
I mean the links aren't physical objects. Each one is a pair of tiny quantum systems that are perfectly entangled with each other…
Mark Penney
npub1x7adwrtl5a3xv50htqmtm70h2rgr9rrj2k4ejeem7dhn6jdkmruqwjclkf
npub1x7ad...clkf
A well regarded painter living and working from Vancouver Island
Cattitude


How I Made Home Assistant Voice PE Work with Local Speech Recognition
The problem: HA Voice PE's built-in speech-to-text was slow (~38 seconds per clip) and kept mangling proper names.
What I did: I replaced it with a local whisper.cpp pipeline that runs entirely on my Mac Mini's GPU. The model stays loaded in memory so wake-word responses are instant (~0.5 seconds).
How it works:
A whisper.cpp server runs 24/7 on my machine, keeping the large-v3-turbo model ready
A Wyoming adapter bridges HA's native protocol to that server
I point HA Voice PE at the adapter instead of its default STT
Same model, same accuracy, zero cloud calls
The result: Sub-second wake-word responses, word-perfect transcription of names, and everything stays local. No API keys, no monthly costs, no privacy concerns.
For others wanting this: The key insight is that HA Voice PE speaks the Wyoming ASR protocol natively. You just need a Wyoming-compatible STT server running locally, and you're done. The model stays resident in memory so there's no cold-start delay on wake words.
The adapter script is open source.
Good fun. 🦞
#HA #homeassistant #nabucasa #voicepe #voice
Good charts
View quoted note →
This is what’s currently on the easel.
The background is starting to suck a little less as I work in the new colours I added to my pallet.
There’s a lot of dark values to come yet and it’ll look better later. Right now it’s in an awkward stage - but it’s important to get that correct colour balance now before all of the island and the tree details.
I basically work from back to front. The sky, background and the colour reflected on the water come first.
#artstr #painting #progress #studio #artist #colour


Someone needs to hear this or be reminded 🤔
Windshield wipers (and tires) are essentially safety equipment. They’re worth investing in up front.
Ask your favourite AI for a recommendation, give it your make n model and it’ll even tell you from a photo if you got ‘the right ones.’
#wipers #maintenance #winter #safety.


I should probably post more often… but I haven’t been on social media (or nostr) much lately.
Honestly tho, I hope you all have a fun and productive day.
#gm #nostr #introductions


Another work day at Kimoto Gallery in Ucluelet.
#GM #artstr #gallery #art #ucluelet


Back to work on this one
Looks a little flat still - time to mix up some paint and get after it.
#artstr #painting #studio #artist #art


MacOS 27 and iOS 27 updates are looking good on first impression.
#ios #macos #updates
Happy to be in good company.
One the cool parts of being an artist is showing with other artists you know and appreciate
Good friends like artist Kelly Deakin, Marla Thirsk along with Katsumi Kimoto , at Kimoto Gallery in Ucluelet
#artstr #artist #gallery #art #painting


Years ago I started painting this way. It’s evolved a little, but it’s basically the same elements:
Strong composition.
Unembellished colour.
Purposeful edge content.
Restricted techniques.
Referential perspectives.
No impasto, no sheen.
This one is from a decade ago. Looking at it now, I can see what I was already refusing to do - no fancy brushmarks, no decorative colour, no lazy edges. The painting has a feeling to it.
When I paint ; it comes across as my signature ‘Wet socks and a rock in my shoe’ style.
#artstr #art #painting #style #nostrartist #artist #themarkpenney


Did someone say #zapathon?
Been a while since I had time to look at social media or nostr.
Nostrages: what clients are you using ?
Me : I like Nostur , Yakihonne, Damus. (probably in that order )
Primal looks good (I wonder if I can use a wallet from Canada yet )
Wisp has a fresh feel.
Back to poking around while I get the studio together.
Time to catch up 😁 on Nostr !
Watering the garden just got easier
This is more than a programmable tap with a timer. My own local AI oversees the watering now. It reads soil moisture from sensors in the beds, checks the weather, and decides whether each zone actually needs water. If a bed is already damp, it skips the cycle. If it’s been hot and dry, it waters longer
The setup is simple: a small home-automation hub, a two-zone smart water valve, and a few wireless soil sensors. One zone feeds the flower beds, the other feeds the vegetable garden and containers. Everything talks locally over Zigbee, so it still works even without internet
The part I like best is that it’s my own setup; local ai, opensource software, my hardware. The schedule, the data, the decisions - none of it lives in someone else’s cloud, app or platform.
It’s practical: plants stay alive, water doesn’t get wasted, and I don’t have to stand there with a hose.


What actually works in our OpenClaw setup (and the pain it fixed)
If you're spinning up OpenClaw and hitting the usual walls (context overflow, wrong model for the job, forgotten conversations, flaky pipelines), here's the stack and discipline that got us past it.
1. MRDE: route before you prompt
We built a Model Routing Decision Engine so every request hits the right model tier first, not after trial and error.
• Local private: sensitive stuff stays on-device (gemma-4-26B-MLX, ornith:9b for fast local lanes).
• Local heavy: deep reasoning when latency doesn't matter (ornith:35b, qwen3.6-35b for legal).
• Cloud coding/synthesis: complex troubleshooting (kimi-k2.7-code:cloud, kimi-k2.6:cloud, deepseek-v4-flash:cloud).
• Cloud fast fallback: quick answers when local is cold (gemma4:31b-cloud).
Pain solved: no more asking a 2.8T-parameter cloud model to grep logs, and no more running private queries through cloud APIs by accident.
2. Two-tier memory + RAG
• Immutable corpus: law sources, primary docs, transcripts. Append-only, never rewritten.
• Evolving memory: daily notes, decisions, lessons, atomic reports. Rewritten and refined.
• RAG v2: 10 corpora, ~66k chunks, all embedded. The assistant recalls before answering, then writes back compact, cited notes.
Pain solved: the system stops hallucinating continuity. It actually remembers yesterday, last week, and the source of the claim.
3. The loop: capture → recall → act → write back
Everything runs on a small, durable loop:
• Capture: drop it in the inbox (AirDrop, Telegram, share sheet, cron).
• Recall: search memory + RAG before any real work.
• Act: use the right tool/model for the task.
• Write back: one compact note with provenance (file path, source ID, or daily note).
For bigger tasks we add a gauntlet: run the output through critic models, check facts, verify file hashes, then keep or repair.
Pain solved: slop dies here. The system produces fewer, higher-quality artifacts instead of endless chat noise.
4. Scheduled pipelines (the nightshift)
A single cron at 02:00 dispatches phased jobs: I/O-bound tasks, then cloud API tasks, then local ML/vision, then reflection/audit. Local-ML concurrency is capped at 1 so vision models don't fight for the GPU.
Pain solved: long-running jobs finish overnight instead of interrupting the day, and the Mac doesn't melt.
5. Voice as default input
Whisper STT → local LLM → Kokoro TTS. Zero API cost, hands-free, and it actually gets used.
Pain solved: typing long prompts on mobile is miserable. Voice removes friction.
Advice for new OpenClaw builders
• Lock your default model before you build a dozen workflows. Routing is cheaper than re-prompting.
• Write memory back immediately after meaningful work, not at end of day.
• Use small verification loops (syntax checks, dry runs, file hashes) before trusting any autonomous edit.
• Run heavy/local-ML jobs in a single queue with concurrency caps, not in parallel cron storms.
• Prefer local TTS/STT once it's good enough. The cost and latency win is real.
The big shift: stop treating OpenClaw like a chatbot and start treating it like an operating system with memory, scheduling, and routing. The rest follows.
#OpenClaw #LocalAI #AIAgents #ai
Amazing soup in Vancouver


Photographed my paint drawers and my AI assitant inventoried every color + flagged what's running low. Studio hacks are getting weird but life’s too short to squeeze every tube.
just sayin'😉


Don’t you just love being in a room full of art ?
Art therapy at Kimoto Gallery, Ucluelet.


First Bend in the River
12x24” acrylic on canvas
available at Kimoto Gallery, Ucluelet.


This chill Frog was watching me work - just hanging out for a while. Then he came over to get in on some hose water.

