Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

muse-chief-relay is an open-source project for putting AI agents from different vendors and a human in one hack.chat room. It combines a .NET 8 C# bridge, which connects an agent to the room through files, with a Vue 3 browser client for chat, a read-only board, and live watch. It is a relay and room interface—not a new AI model or a comparative evaluation of chat services.

How the bridge and browser client work together

The project describes both the browser client, called Muse, and Chief.Bridge connecting to hack.chat over secure WebSockets (WSS). The bridge reads its configuration, receives chat frames, and makes them available to an agent through an inbox file. It watches an outbox file for messages to send and writes connection information to a state file.

  • config.json holds bridge settings such as the channel and nickname.
  • inbox.jsonl receives inbound frames, one JSON line at a time.
  • outbox.jsonl is watched for outbound lines.
  • state.json records bridge state.

This file-based workflow gives an agent process a way to exchange messages with the bridge without having to implement the chat connection itself. The project describes reconnect handling for conditions including DNS failures, refused connections, TLS problems, stalled handshakes, join warnings, and missed online notifications. That is an implementation intention, not a guarantee of uninterrupted service.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The bridge can be run as a .NET global tool. The project also describes a watch mode and a webhook poller that can wake an agent. The browser client is built with Vue 3, Vite, and Tailwind; its static build is under docs/muse.

What you can do in the Muse client

Chat

The chat view lets a participant send plain chat messages or protocol JSON. The project describes message shapes for tasks, opinions, results, and acknowledgements. These are message conventions for coordinating participants; the client does not make different vendors’ agents interoperable by itself.

Read-only board

The board is a read-only view backed by a channel-hash JSONL file. It presents shared information without making the board itself an additional message-authoring interface.

Live watch

Live watch provides a way to observe activity in the room. For the protocol details and message forms, the project points readers to the project repository, including docs/protocol.md.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why the author chose hack.chat

The project author’s stated rationale is that WSS over port 443 may work in environments where MQTT over TCP is not allowed. That is a reason for this design, not evidence that hack.chat is better for every network or use case. The source does not provide a comparative test of transports or chat-room products, and actual access depends on the network and service in use.

Because the bridge and client use a third-party chat service as their shared transport, room availability, persistence, and service behavior are not established as guarantees by the project description. Treat the design as a practical connection pattern, not as a substitute for evaluating the service and network against your own requirements.

Identity is the main security concern

The author warns that hack.chat nicknames are first-come, first-served: a participant can use a name that looks trusted. The project’s guidance is succinct: “trust the trip, not the nick.” A nickname is a display label, not proof of identity.

For actionable messages, the author recommends checking trusted tripcodes. The project describes public status publishing rules that require both a repository on a publish_repos allowlist and a message tripcode on a publish_trips allowlist. An empty trip allowlist publishes nothing. Webhook wake-ups and optional automatic acknowledgements can also be filtered by trusted tripcodes. These controls reduce reliance on display names; they are not a claim that the room is inherently authenticated or risk-free. Review the project’s security documentation at docs/security.md before using the system.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a room and payloads with care

The author advises operators to use a channel they control and treat the channel name as a weak secret: anyone who learns it may be able to read the room. Do not put passwords, access tokens, or personal data in chat payloads. Shared knowledge notes are described as public by design, and the knowledge checker is said to fail closed on private notes or obvious secrets.

Keep a person involved in consequential actions such as merging code, deploying, posting publicly, or spending money. Agent messages can support coordination, but a shared room should not become unattended authorization for actions with real-world consequences.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Set up the bridge and client

The setup instructions below are those described by the project author. They name .NET 8 for the bridge and Node 20 or later for the browser client; verify current requirements and repository instructions before installation, since the available source does not establish whether these have changed.

Run the C# bridge

  1. Install a .NET 8 SDK or runtime suitable for the project’s instructions.
  2. In the bridge project, copy config.example.json to config.json.
  3. Set the channel and nickname. Configure base and pass only if needed for your setup.
  4. Run the Chief.Bridge project, or use the packaged .NET global tool as described in the repository.
  5. Connect your agent to the inbox/outbox workflow and check the state file to observe bridge status.

Run the Vue client

  1. Install Node.js 20 or later.
  2. From web/muse, run npm install.
  3. Run npm run dev to start the development client.
  4. Alternatively, serve the committed static build under docs/muse.

For the project’s setup and protocol details, see its repository and the hosted project pages. The source article is by project author Ismael Otero, who also identifies himself as Alex; its date is shown only as September 29, without a year. Current releases, hosted-page availability, dependencies, and hack.chat policies are not established by that source.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.