Help us shape the future of Go! Take the 2026 Go Developer Survey

chirp

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 22, 2026 License: AGPL-3.0

README

Chirp

On-demand remote support: a technician generates a 6-digit PIN, the person being helped enters it, grants explicit consent, and the session begins. No installation, no standing agent, no account.

License

Status: not yet a runnable product

Read this before trying to use it.

What is here today is the session layer — PIN generation and redemption, the session lifecycle state machine, and the consent flow. It is extracted, it is tested, and it is AGPL-3.0.

What is not here yet:

  • A signalling server. Chirp needs its own, simplified: no multi-tenancy, no RBAC. The existing one belongs to the proprietary Barahn control plane and is not being relicensed.
  • The Nest — the /join page where an end user enters their PIN.
  • A TURN relay. Until Chirp ships one, self-hosting means bringing your own STUN/TURN (coturn works).
  • A cmd/chirp binary. There is no entry point yet.

The remote-session mechanism — screen capture, VP8 encoding, input injection, clipboard, file transfer, WebRTC, the reverse tunnel — is not missing; it lives in remotekit under Apache-2.0, and Chirp will consume it as a dependency.

Tracking: the separation plan in the Barahn repository.

Design commitments

These are constraints on what Chirp may become, not features to be traded away:

  • No feature gates. Screen sharing, input control, multi-monitor, file transfer and clipboard sync are the free core, permanently.
  • Explicit consent. A session cannot start without the end user agreeing to it on their own machine, in a prompt Chirp controls.
  • Self-hostable with zero restrictions. Anyone may run their own signalling and relay infrastructure. Any hosted service is a convenience, never a requirement.

Contributions are closed for now

Chirp is not accepting external contributions yet. Issues and bug reports are welcome; pull requests from outside Fabrintek will not be merged.

This is deliberate and temporary. Chirp is dual-licensed (see LICENSING.md), which works only while Fabrintek holds the copyright in all of it. Merging a contribution before Contributor License Agreement acceptance is enforced here would leave code in the tree that Fabrintek cannot relicense — quietly, and in a way no build or test would catch.

Rather than accept contributions under terms that are written down in another repository and shown to nobody, the door stays shut until the CLA is presented and recorded where pull requests actually arrive. See CONTRIBUTING.md.

Licence

GNU Affero General Public License v3.0 — see LICENSE.

The AGPL is deliberate: Chirp is network-delivered software, and the AGPL is what keeps a hosted fork from taking the code without returning changes.

Fabrintek, as sole copyright holder, also licenses Chirp under separate commercial terms. This does not affect your rights under the AGPL — see LICENSING.md.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL