[{"data":1,"prerenderedAt":550},["ShallowReactive",2],{"{\"query\":\"\\n  query {\\n    site: _site {\\n      favicon: faviconMetaTags {\\n        attributes\\n        content\\n        tag\\n      }\\n      globalSeo {\\n        fallbackSeo {\\n          title\\n          description\\n        }\\n      }\\n    }\\n    homePage {\\n      seo: _seoMetaTags {\\n        attributes\\n        content\\n        tag\\n      }\\n    }\\n  }\\n\"}":3,"{\"query\":\"\\n  query {\\n    global {\\n      mainMenu {\\n        title\\n        url\\n        target\\n        subMenu {\\n          menuType\\n          menu {\\n            title\\n            url\\n            target\\n            icon {\\n              icon\\n              bgcolor\\n            }\\n          }\\n        }\\n      }\\n    }\\n  }\\n\"}":95,"{\"query\":\"\\n  query {\\n    global {\\n      globalCta {\\n        title\\n        url\\n        target\\n      }\\n      footerHeadline\\n      socialLinks {\\n        title\\n        url\\n        icon {\\n          url\\n        }\\n      }\\n      contactButton {\\n        title\\n        url\\n        target\\n      }\\n      legal\\n      legalLinks {\\n        title\\n        url\\n        target\\n      }\\n    }\\n  }\\n\"}":128,"{\"query\":\"\\n  query {\\n    global {\\n      globalCta {\\n        title\\n        url\\n        target\\n      }\\n    }\\n  }\\n\"}":164,"{\"query\":\"\\n  query {\\n    global {\\n      globalCta {\\n        title\\n        url\\n        target\\n      }\\n      demoButton {\\n        title\\n        url\\n        target\\n      }\\n    }\\n  }\\n\"}":169,"{\"query\":\"\\n  query {\\n    post(filter: { slug: { eq: \\\"introducing-voice-control-for-mqtt-devices-and-local-hermes-agents\\\" } }) {\\n      seoTags {\\n        title\\n        description\\n        image {\\n          url\\n        }\\n      }\\n      title\\n      slug\\n      publishDate\\n      author {\\n        name\\n        photo {\\n          responsiveImage(imgixParams: { fit: crop, w: 50, h: 50 }) {\\n            src\\n            width\\n            height\\n            alt\\n            bgColor\\n          }\\n        }\\n      }\\n      image {\\n        responsiveImage(imgixParams: { fit: fillmax, w: 1800, h: 1000 }) {\\n          src\\n          width\\n          height\\n          alt\\n          bgColor\\n        }\\n      }\\n      icon {\\n        responsiveImage {\\n          src\\n          width\\n          height\\n          alt\\n          bgColor\\n        }\\n      }\\n      categories {\\n        tag\\n        slug\\n      }\\n      content {\\n        value\\n        blocks {\\n          __typename\\n          ... on RecordInterface {\\n            __typename\\n          }\\n          ... on QuoteRecord {\\n            id\\n            __typename\\n            quoteText\\n            byline\\n          }\\n          ... on VideoRecord {\\n            id\\n            __typename\\n            platform\\n            videoUrl\\n          }\\n          ... on ImageRecord {\\n            id\\n            __typename\\n            image {\\n              responsiveImage {\\n                src\\n                width\\n                height\\n                alt\\n                bgColor\\n              }\\n            }\\n          }\\n        }\\n      }\\n    }\\n    postCallout {\\n      callouts {\\n        icon {\\n          url\\n        }\\n        body\\n        ctaButtons {\\n          title\\n          url\\n          target\\n        }\\n      }\\n    }\\n    allPosts(\\n      first:100\\n      orderBy: [publishDate_DESC]\\n    ) {\\n      slug\\n    }\\n  }\\n\"}":176},{"site":4,"homePage":30},{"favicon":5,"globalSeo":26},[6,14,18,22],{"attributes":7,"content":12,"tag":13},{"sizes":8,"type":9,"rel":10,"href":11},"16x16","image/png","icon","https://www.datocms-assets.com/136400/1720490631-favicon.png?auto=format&h=16&w=16",null,"link",{"attributes":15,"content":12,"tag":13},{"sizes":16,"type":9,"rel":10,"href":17},"32x32","https://www.datocms-assets.com/136400/1720490631-favicon.png?auto=format&h=32&w=32",{"attributes":19,"content":12,"tag":13},{"sizes":20,"type":9,"rel":10,"href":21},"96x96","https://www.datocms-assets.com/136400/1720490631-favicon.png?auto=format&h=96&w=96",{"attributes":23,"content":12,"tag":13},{"sizes":24,"type":9,"rel":10,"href":25},"192x192","https://www.datocms-assets.com/136400/1720490631-favicon.png?auto=format&h=192&w=192",{"fallbackSeo":27},{"title":28,"description":29},"OpenHome | AI Smart Speaker","Your Custom AI Smart Speaker & AI Voice SDK",{"seo":31},[32,35,39,42,46,49,52,56,60,64,67,71,75,79,83,87,91],{"attributes":12,"content":33,"tag":34},"OpenHome | AI Smart Speaker & Voice SDK","title",{"attributes":36,"content":12,"tag":38},{"property":37,"content":33},"og:title","meta",{"attributes":40,"content":12,"tag":38},{"name":41,"content":33},"twitter:title",{"attributes":43,"content":12,"tag":38},{"name":44,"content":45},"description","The OS for the next generation of AI smart speakers. Build voice AI abilities, use any LLM, ship on real hardware.",{"attributes":47,"content":12,"tag":38},{"property":48,"content":45},"og:description",{"attributes":50,"content":12,"tag":38},{"name":51,"content":45},"twitter:description",{"attributes":53,"content":12,"tag":38},{"property":54,"content":55},"og:image","https://www.datocms-assets.com/136400/1720490598-openhome-share.jpg?auto=format&fit=max&w=1200",{"attributes":57,"content":12,"tag":38},{"property":58,"content":59},"og:image:width","1200",{"attributes":61,"content":12,"tag":38},{"property":62,"content":63},"og:image:height","678",{"attributes":65,"content":12,"tag":38},{"name":66,"content":55},"twitter:image",{"attributes":68,"content":12,"tag":38},{"property":69,"content":70},"og:locale","en",{"attributes":72,"content":12,"tag":38},{"property":73,"content":74},"og:type","website",{"attributes":76,"content":12,"tag":38},{"property":77,"content":78},"og:site_name","OpenHome",{"attributes":80,"content":12,"tag":38},{"property":81,"content":82},"article:modified_time","2026-06-24T06:50:18Z",{"attributes":84,"content":12,"tag":38},{"property":85,"content":86},"article:publisher","",{"attributes":88,"content":12,"tag":38},{"name":89,"content":90},"twitter:card","summary_large_image",{"attributes":92,"content":12,"tag":38},{"name":93,"content":94},"twitter:site","@openHomeAI",{"global":96},{"mainMenu":97},[98,101,118,122,125],{"title":99,"url":100,"target":86,"subMenu":12},"Enterprise","/enterprise",{"title":102,"url":103,"target":86,"subMenu":104},"Solutions","/robotics",{"menuType":105,"menu":106},"icons",[107,112],{"title":108,"url":103,"target":86,"icon":109},"Robotics",{"icon":110,"bgcolor":111},"code","aqua",{"title":113,"url":114,"target":86,"icon":115},"Smart Home & IOT","/home-automation",{"icon":116,"bgcolor":117},"houses","orange",{"title":119,"url":120,"target":121,"subMenu":12},"Discord","https://discord.com/invite/YFTvffFMzv","_blank",{"title":123,"url":124,"target":86,"subMenu":12},"Resources","/blog",{"title":126,"url":127,"target":86,"subMenu":12},"Devkit","/devkit",{"global":129},{"globalCta":130,"footerHeadline":137,"socialLinks":138,"contactButton":153,"legal":156,"legalLinks":157},[131,134],{"title":132,"url":133,"target":86},"Developers","https://dev.openhome.com/",{"title":135,"url":136,"target":121},"Log in","https://app.openhome.com/","Your Custom \nAI Voice Interface",[139,144,149],{"title":140,"url":141,"icon":142},"X","https://x.com/OpenHome",{"url":143},"https://www.datocms-assets.com/136400/1721104859-twitter.svg",{"title":145,"url":146,"icon":147},"LinkedIn","https://www.linkedin.com/company/openhome-ai/",{"url":148},"https://www.datocms-assets.com/136400/1721104894-linkedin.svg",{"title":119,"url":150,"icon":151},"https://discord.gg/openhome",{"url":152},"https://www.datocms-assets.com/136400/1721104922-discord.svg",{"title":154,"url":155,"target":86},"Contact","mailto:team@openhome.com","All rights reserved to OpenHome. Copyright © 2026.",[158,161],{"title":159,"url":160,"target":86},"Terms and Conditions","/legal/terms-and-conditions",{"title":162,"url":163,"target":86},"Privacy Policy","/legal/privacy-policy",{"global":165},{"globalCta":166},[167,168],{"title":132,"url":133,"target":86},{"title":135,"url":136,"target":121},{"global":170},{"globalCta":171,"demoButton":174},[172,173],{"title":132,"url":133,"target":86},{"title":135,"url":136,"target":121},{"title":175,"url":136,"target":121},"Demo",{"post":177,"postCallout":391,"allPosts":408},{"seoTags":178,"title":183,"slug":184,"publishDate":185,"author":186,"image":193,"icon":12,"categories":199,"content":203},{"title":179,"description":180,"image":181},"Introducing MQTT Device Control + Hermes Agent Integration","Control MQTT smart devices by voice and talk to a local Hermes agent through OpenHome. Two new DevKit guides, with templates on the Marketplace and GitHub.",{"url":182},"https://www.datocms-assets.com/136400/1784658042-hermes.png","Introducing Voice Control for MQTT Devices and Local Hermes Agents","introducing-voice-control-for-mqtt-devices-and-local-hermes-agents","2026-07-21",{"name":187,"photo":188},"P.J. Leimgruber",{"responsiveImage":189},{"src":190,"width":191,"height":191,"alt":12,"bgColor":192},"https://www.datocms-assets.com/136400/1747333567-pj-2025.png?fit=crop&h=50&w=50",50,"#1fc9cf",{"responsiveImage":194},{"src":195,"width":196,"height":197,"alt":12,"bgColor":198},"https://www.datocms-assets.com/136400/1784658042-hermes.png?fit=fillmax&h=1000&w=1800",1800,942,"#0101ee",[200],{"tag":201,"slug":202},"Community Update","community-update",{"value":204,"blocks":390},{"schema":205,"document":206},"dast",{"type":207,"children":208},"root",[209,216,221,226,230,234,267,271,275,279,283,303,307,311,315,334,338,342,346,350,354,386],{"type":210,"level":211,"children":212},"heading",2,[213],{"type":214,"value":215},"span","Talk to your devices and your own agent",{"type":217,"children":218},"paragraph",[219],{"type":214,"value":220},"Two new guides are live on OpenHome. One lets you control smart devices over MQTT by voice. The other lets you run an AI agent on your own machine and speak to it through OpenHome. Both keep the work local and in your hands.",{"type":210,"level":222,"children":223},3,[224],{"type":214,"value":225},"MQTT device control",{"type":217,"children":227},[228],{"type":214,"value":229},"You can now command MQTT devices by voice through the DevKit. Lights, plugs, sensors, appliances. If it speaks MQTT, an Ability can control it.",{"type":217,"children":231},[232],{"type":214,"value":233},"The core pieces:",{"type":235,"style":236,"children":237},"list","bulleted",[238,250,256],{"type":239,"children":240},"listItem",[241],{"type":217,"children":242},[243,245,248],{"type":214,"value":244},"Send commands from an Ability with ",{"type":214,"marks":246,"value":247},[110],"send_devkit_mqtt_action",{"type":214,"value":249},". Turn a device on or off, or pass custom actions like brightness, color, and temperature.",{"type":239,"children":251},[252],{"type":217,"children":253},[254],{"type":214,"value":255},"Configure the DevKit's MQTT broker from the dashboard, then connect your devices to it.",{"type":239,"children":257},[258],{"type":217,"children":259},[260,262,265],{"type":214,"value":261},"Read the devices a user has already set up through ",{"type":214,"marks":263,"value":264},[110],"self.worker.mqtt_devices",{"type":214,"value":266},", so an Ability can check what is available before it acts.",{"type":217,"children":268},[269],{"type":214,"value":270},"The guide covers the full path. How MQTT runs on the DevKit, how to set up the broker, how to add devices, and a template Ability that controls them by voice.",{"type":210,"level":222,"children":272},[273],{"type":214,"value":274},"Hermes agent integration",{"type":217,"children":276},[277],{"type":214,"value":278},"You can now run the Hermes Agent from Nous Research locally and talk to it through OpenHome. A small bridge on your PC forwards each spoken request to Hermes and speaks the reply back.",{"type":217,"children":280},[281],{"type":214,"value":282},"What you get:",{"type":235,"style":236,"children":284},[285,291,297],{"type":239,"children":286},[287],{"type":217,"children":288},[289],{"type":214,"value":290},"Voice access to a model running on your own hardware. No cloud round trip for the model itself.",{"type":239,"children":292},[293],{"type":217,"children":294},[295],{"type":214,"value":296},"A bridge that adapts to your setup. It detects a live Hermes API endpoint and uses it, and falls back to the command line when it has to.",{"type":239,"children":298},[299],{"type":217,"children":300},[301],{"type":214,"value":302},"A full setup path. Install Hermes, download the bridge, set your API key, and add the Ability from the Marketplace.",{"type":217,"children":304},[305],{"type":214,"value":306},"Because Hermes runs with your shell, files, tools, and memory, an Ability can act on the real state of your machine. It is your computer, answering out loud.",{"type":210,"level":222,"children":308},[309],{"type":214,"value":310},"What it looks like in practice",{"type":217,"children":312},[313],{"type":214,"value":314},"Picture yourself at your desk with a build running and your hands busy. You just ask.",{"type":316,"children":317},"blockquote",[318,322,326,330],{"type":217,"children":319},[320],{"type":214,"value":321},"You: \"Hermes, did the build finish?\"\nHermes: \"It finished two minutes ago. All tests passed.\"",{"type":217,"children":323},[324],{"type":214,"value":325},"You: \"What changed on main since my last pull?\"\nHermes: \"Four new commits. Two touch the auth service, one updates CI, one fixes the README.\"",{"type":217,"children":327},[328],{"type":214,"value":329},"You: \"My disk is getting tight. Clear some space.\"\nHermes: \"I can drop the Docker build cache, about nine gigabytes. Run it?\"\nYou: \"Go ahead.\"\nHermes: \"Done. Twenty-three gigabytes free now.\"",{"type":217,"children":331},[332],{"type":214,"value":333},"You: \"That's all, thanks.\"\nHermes: \"Exiting now.\"",{"type":217,"children":335},[336],{"type":214,"value":337},"Follow-up questions skip the wake word. The loop stays open until you say an exit word like stop or done. In that exchange Hermes read live state off the machine, carried context across questions, and asked before it cleared anything. That last point matters. When a request looks destructive, the Ability confirms with you before it sends.",{"type":217,"children":339},[340],{"type":214,"value":341},"The same pattern works away from the keyboard. Get a status check while the coffee brews. Kick off a long script from across the room. Ask why the server is throwing errors without opening a terminal.",{"type":217,"children":343},[344],{"type":214,"value":345},"One caution. Local Link runs Hermes with your permissions, so only ask for things you would run yourself. Keep your API key private and rotate it if it leaks.",{"type":210,"level":222,"children":347},[348],{"type":214,"value":349},"Try it",{"type":217,"children":351},[352],{"type":214,"value":353},"Templates for both live on the Marketplace and in GitHub.",{"type":235,"style":236,"children":355},[356,366,376],{"type":239,"children":357},[358],{"type":217,"children":359},[360,362],{"type":214,"value":361},"MQTT: ",{"url":363,"type":13,"children":364},"https://docs.openhome.com/building-abilities/mqtt-device-control",[365],{"type":214,"value":363},{"type":239,"children":367},[368],{"type":217,"children":369},[370,372],{"type":214,"value":371},"Hermes: ",{"url":373,"type":13,"children":374},"https://docs.openhome.com/building-abilities/hermes",[375],{"type":214,"value":373},{"type":239,"children":377},[378],{"type":217,"children":379},[380,382],{"type":214,"value":381},"GitHub templates: ",{"url":383,"type":13,"children":384},"https://github.com/openhome-dev/abilities/tree/dev/templates",[385],{"type":214,"value":383},{"type":217,"children":387},[388],{"type":214,"value":389},"Build something and tell us what you made.",[],{"callouts":392},[393,400],{"icon":394,"body":396,"ctaButtons":397},{"url":395},"https://www.datocms-assets.com/136400/1721007129-blog-build.svg","\u003Ch2>Build\u003C/h2>\n\u003Ch3>WITH OPENHOME\u003C/h3>\n\u003Cp>OpenHome is an open-source AI smart speaker. From creating novel personalities to building useful capabilities, our voice operating system enables developers to build epic voice-first experiences.\u003C/p>\n\u003Cp>Join the vibrant open-source community today and explore the future of voice AI. Start building everything from custom personalities, to truly intelligent smart home assistants, to voice enabled apps.\u003C/p>",[398],{"title":399,"url":120,"target":121},"Join Our Discord",{"icon":401,"body":403,"ctaButtons":404},{"url":402},"https://www.datocms-assets.com/136400/1721062447-blog-apply.svg","\u003Ch2>Apply\u003C/h2>\n\u003Ch3>FOR A GRANT\u003C/h3>\n\u003Cp data-start=\"69\" data-end=\"499\">Apply for a $10,000+ OpenHome Developer Grant to bring your voice AI project to life. Whether you&rsquo;re building a smart home app, a custom AI personality, or a powerful voice-enabled tool, our grant program supports creative developers ready to push boundaries. Selected projects may also receive AWS credits and access to early hardware. Show us what you&rsquo;re building&mdash;we&rsquo;re here to help you scale.\u003C/p>",[405],{"title":406,"url":407,"target":86},"Apply for a Grant","/blog/introducing-50-000-developer-grant-program",[409,411,413,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548],{"slug":410},"elevenlabs-japan",{"slug":412},"elevenlabsjapan-developer-program",{"slug":184},{"slug":415},"openhome-japan-cogno-welcome-to-proactive-ai-project-management-at-work",{"slug":417},"home-assistant",{"slug":419},"cli",{"slug":421},"background-abilities",{"slug":423},"openhome-now-controls-your-computer",{"slug":425},"ces-2026",{"slug":427},"smart-speaker-echo-cancellation",{"slug":429},"write-system-prompts-that-stick",{"slug":431},"dad-jokes",{"slug":433},"how-to-build-ai-personalities-people-actually-want-to-talk-to",{"slug":435},"vcoice-ai-cooking-helper",{"slug":437},"whitney",{"slug":439},"openhomies-podcast-ahmed-bouzid",{"slug":441},"20-questions",{"slug":443},"openhome-abilities-spotlight-space-flight-tracker",{"slug":445},"ai-exercise-assistant",{"slug":447},"ai-jeopardy-game",{"slug":449},"ai-stock-checker",{"slug":451},"openhome-abilities-guide",{"slug":453},"elevenlabs-v3-alpha",{"slug":455},"ai-twin-ios",{"slug":457},"openhome-abilities-spotlight-nfl-draft-simulator",{"slug":459},"ai-blackjack-strategy-trainer",{"slug":461},"openhome-abilities-spotlight-ai-dj",{"slug":463},"novi",{"slug":465},"audius",{"slug":467},"openhome-at-ivs2025",{"slug":469},"2025-benchmark-report-developer-led-hardware",{"slug":471},"aviation-weather-voice-ai",{"slug":473},"top-ai-tools-for-music-2025",{"slug":475},"future-of-voice-ai-companionship",{"slug":477},"voice-centric-smart-home-iot",{"slug":479},"how-to-build-ai-personalities",{"slug":481},"ai-raspberry-pi-support",{"slug":483},"multilingual-ai",{"slug":485},"transforming-kids-toys-with-edge-ai",{"slug":487},"unified-developer-program",{"slug":489},"get-early-access-to-the-openhome-dev-kit",{"slug":491},"introducing-our-new-community-bounty-program",{"slug":493},"ai-dating-coach",{"slug":495},"introducing-50-000-developer-grant-program",{"slug":497},"designing-delightful-applications-with-openhome",{"slug":499},"introducing-metacap-live-emotional-insights-come-to-openhome",{"slug":501},"exploring-voice-ai-categories",{"slug":503},"matrix-phone-booth-immersive-experiences-in-openhome",{"slug":505},"building-for-social-impact-in-ai",{"slug":507},"on-decentralization-and-community-collaboration",{"slug":509},"app-spotlight-amongais-transcends-voice-to-bring-openhome-to-online-interactive-g",{"slug":511},"whiteboard-an-effortless-smart-notetaker-on-openhome",{"slug":513},"personality-spotlight-annabelle-is-your-sassy-companion",{"slug":515},"discuss-life-and-technology-with-philosopher-alan-watts",{"slug":517},"blank-allows-you-to-teach-an-ai-from-scratch",{"slug":519},"om-meditation-companion-takes-mindfulness-to-a-new-level",{"slug":521},"openkobe-channels-mamba-mentality",{"slug":523},"meet-regina-george-your-gen-z-social-queen",{"slug":525},"ai-receptionist-built-on-openhome",{"slug":527},"google-home-assistant-makes-scheduling-seamless",{"slug":529},"lil-trojan-makes-your-music-come-alive",{"slug":531},"gymbuddy-is-your-personal-fitness-companion",{"slug":533},"stock-analyst-helps-you-become-more-financially-informed",{"slug":535},"exploring-fantasy-ai-girlfriend",{"slug":537},"smart-speaker-parity-one-speaker-to-beat-them-all",{"slug":539},"wellness-journal-your-mental-health-companion",{"slug":541},"towards-a-truly-open-source-smart-speaker",{"slug":543},"samantha-morning-routine-wake-up-with-intention",{"slug":545},"getting-ghosted-revive-your-friends-with-gpt-answering-machine",{"slug":547},"large-people-model-sentiment-analysis-in-openhome",{"slug":549},"mytranslator-bridges-language-gaps-instantly",1785947593981]