{"id":13744626,"url":"https://github.com/JarbasHiveMind/HiveMind-core","last_synced_at":"2025-05-09T03:32:44.817Z","repository":{"id":41870577,"uuid":"131915528","full_name":"JarbasHiveMind/HiveMind-core","owner":"JarbasHiveMind","description":"Join the OVOS collective, utils for OpenVoiceOS mesh networking","archived":false,"fork":false,"pushed_at":"2024-05-02T16:46:55.000Z","size":11839,"stargazers_count":93,"open_issues_count":11,"forks_count":14,"subscribers_count":8,"default_branch":"dev","last_synced_at":"2024-05-23T00:10:27.667Z","etag":null,"topics":["bridge","chatbot","hivemind","mesh-networks","mycroft","networking","skills"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JarbasHiveMind.png","metadata":{"files":{"readme":"readme.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"liberapay":"jarbasAI"}},"created_at":"2018-05-02T23:15:18.000Z","updated_at":"2024-05-30T22:00:27.027Z","dependencies_parsed_at":"2023-10-14T21:28:45.142Z","dependency_job_id":"2be277b8-e0f7-4b20-a28b-d1367e8d4eab","html_url":"https://github.com/JarbasHiveMind/HiveMind-core","commit_stats":{"total_commits":72,"total_committers":6,"mean_commits":12.0,"dds":0.4027777777777778,"last_synced_commit":"71a53d12e168aeb4cc8285197e2e6f0ea6739638"},"previous_names":["jarbasal/hive_mind"],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JarbasHiveMind%2FHiveMind-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JarbasHiveMind%2FHiveMind-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JarbasHiveMind%2FHiveMind-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JarbasHiveMind%2FHiveMind-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JarbasHiveMind","download_url":"https://codeload.github.com/JarbasHiveMind/HiveMind-core/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224811095,"owners_count":17373914,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bridge","chatbot","hivemind","mesh-networks","mycroft","networking","skills"],"created_at":"2024-08-03T05:01:12.915Z","updated_at":"2024-11-15T16:31:22.364Z","avatar_url":"https://github.com/JarbasHiveMind.png","language":"Python","funding_links":["https://liberapay.com/jarbasAI"],"categories":["Python","Uncategorized"],"sub_categories":["Uncategorized"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/JarbasHiveMind/HiveMind-assets/raw/master/logo/hivemind-512.png\"\u003e\n\u003c/p\u003e\n\nHiveMind is a community-developed superset or extension of [OpenVoiceOS](https://github.com/OpenVoiceOS/), the open-source voice assistant.\n\nWith HiveMind, you can extend one (or more, but usually just one!) instance of ovos-core to as many devices as you want, including devices that can't ordinarily run OpenVoiceOS!\n\nHiveMind's developers have successfully connected to OpenVoiceOS from a PinePhone, a 2009 MacBook, and a Raspberry Pi 0, among other devices. OpenVoiceOS itself usually runs on our desktop computers or our home servers, but you can use any OpenVoiceOS-branded device as your central unit.\n\nWork in progress documentation can be found in the [docs](https://jarbashivemind.github.io/HiveMind-community-docs)\n\nYou can also join the [Hivemind Matrix chat](https://matrix.to/#/#jarbashivemind:matrix.org) for general news, support and chit chat\n\n# Usage\n\n```\n$ hivemind-core --help\nUsage: hivemind-core [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n  --help  Show this message and exit.\n\nCommands:\n  add-client     add credentials for a client\n  delete-client  remove credentials for a client\n  list-clients   list clients and credentials\n  listen         start listening for HiveMind connections\n\n\n$ hivemind-core add-client --help\nUsage: hivemind-core add-client [OPTIONS] [NAME] [ACCESS_KEY] [PASSWORD]\n                                [CRYPTO_KEY]\n\n  add credentials for a client\n\nOptions:\n  --help  Show this message and exit.\n\n\n\n$ hivemind-core listen --help\nUsage: hivemind-core listen [OPTIONS]\n\n  start listening for HiveMind connections\n\nOptions:\n  --host TEXT             HiveMind host\n  --port INTEGER          HiveMind port number\n  --ovos_bus_address TEXT Open Voice OS bus address\n  --ovos_bus_port INTEGER Open Voice OS bus port\n  --ssl BOOLEAN           use wss://\n  --cert_dir TEXT         HiveMind SSL certificate directory\n  --cert_name TEXT        HiveMind SSL certificate file name\n  --help                  Show this message and exit.\n\n\n$ hivemind-core delete-client --help\nUsage: hivemind-core delete-client [OPTIONS] NODE_ID\n\n  remove credentials for a client\n\nOptions:\n  --help  Show this message and exit.\n\n\n$ hivemind-core list-clients --help\nUsage: hivemind-core list-clients [OPTIONS]\n\n  list clients and credentials\n\nOptions:\n  --help  Show this message and exit.\n\n```\n\nBy default HiveMind listens for the Open Voice OS bus on `127.0.0.1` which should not be changed when running as the same place. In some cases such as Kubernetes when the HiveMind Listener and Open Voice OS bus are in different pods, the HiveMind Listener should be able to connect to the pod address by using the `ovos_bus_address` and `ovos_bus_port` options.\n\n# Protocol\n\n| Protocol Version     | 0   | 1   |\n| -------------------- | --- | --- |\n| json serialization   | yes | yes |\n| binary serialization | no  | yes |\n| pre-shared AES key   | yes | yes |\n| password handshake   | no  | yes |\n| PGP handshake        | no  | yes |\n| zlib compression     | no  | yes |\n\nsome clients such as HiveMind-Js do not yet support protocol V1\n\n# HiveMind components\n\n![](./resources/1m5s.svg)\n\n## Client Libraries\n\n- [HiveMind-websocket-client](https://github.com/JarbasHiveMind/hivemind_websocket_client)\n- [HiveMindJs](https://github.com/JarbasHiveMind/HiveMind-js)\n\n## Terminals\n\n- [Remote Cli](https://github.com/OpenJarbas/HiveMind-cli) **\\\u003c-- USE THIS FIRST**\n- [Voice Satellite](https://github.com/OpenJarbas/HiveMind-voice-sat)\n- [Flask Chatroom](https://github.com/JarbasHiveMind/HiveMind-flask-template)\n- [Webchat](https://github.com/OpenJarbas/HiveMind-webchat)\n\n## Bridges\n\n- [Mattermost Bridge](https://github.com/OpenJarbas/HiveMind_mattermost_bridge)\n- [HackChat Bridge](https://github.com/OpenJarbas/HiveMind-HackChatBridge)\n- [Twitch Bridge](https://github.com/OpenJarbas/HiveMind-twitch-bridge)\n- [DeltaChat Bridge](https://github.com/JarbasHiveMind/HiveMind-deltachat-bridge)\n\n## Minds\n\n- [NodeRed](https://github.com/OpenJarbas/HiveMind-NodeRed)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJarbasHiveMind%2FHiveMind-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJarbasHiveMind%2FHiveMind-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJarbasHiveMind%2FHiveMind-core/lists"}