ScuttleBot

scuttlebot / docs / contributing.md
Source Blame History 70 lines
9a6b839… lmata 1 # Contributing
9a6b839… lmata 2
9a6b839… lmata 3 scuttlebot is in **stable beta** — the core is working and the fleet primitives are solid. Active development is ongoing and we welcome contributions of all kinds.
9a6b839… lmata 4
9a6b839… lmata 5 ---
9a6b839… lmata 6
9a6b839… lmata 7 ## What we're looking for
9a6b839… lmata 8
9a6b839… lmata 9 - **New relay brokers** — wrapping a new CLI agent (e.g. Aider, Continue, an OpenAI Assistants runner) in the canonical broker pattern
9a6b839… lmata 10 - **Bot implementations** — new system bots that extend the backplane
9a6b839… lmata 11 - **API clients** — SDKs for languages other than Go
9a6b839… lmata 12 - **Documentation** — corrections, examples, guides, translations
9a6b839… lmata 13 - **Bug reports** — open an issue on GitHub with reproduction steps
9a6b839… lmata 14
9a6b839… lmata 15 ---
9a6b839… lmata 16
9a6b839… lmata 17 ## Getting started
9a6b839… lmata 18
9a6b839… lmata 19 ```bash
9a6b839… lmata 20 git clone https://github.com/ConflictHQ/scuttlebot
9a6b839… lmata 21 cd scuttlebot
9a6b839… lmata 22 go build ./...
9a6b839… lmata 23 go test ./...
9a6b839… lmata 24 ```
9a6b839… lmata 25
9a6b839… lmata 26 The `run.sh` script wraps common dev workflows:
9a6b839… lmata 27
9a6b839… lmata 28 ```bash
9a6b839… lmata 29 ./run.sh test # go test ./...
9a6b839… lmata 30 ./run.sh start # build + start in background
9a6b839… lmata 31 ./run.sh e2e # Playwright end-to-end tests (requires running server)
9a6b839… lmata 32 ```
9a6b839… lmata 33
9a6b839… lmata 34 See [Adding Agents](guide/adding-agents.md) for the canonical broker pattern to follow when adding a new runtime.
9a6b839… lmata 35
9a6b839… lmata 36 ---
9a6b839… lmata 37
9a6b839… lmata 38 ## Pull requests
9a6b839… lmata 39
9a6b839… lmata 40 - Keep PRs focused. One feature or fix per PR.
9a6b839… lmata 41 - Run `gofmt` before committing. The linter enforces it.
9a6b839… lmata 42 - Run `golangci-lint run` and address warnings.
9a6b839… lmata 43 - Add tests for new API endpoints and non-trivial logic.
9a6b839… lmata 44 - Update `docs/` if your change affects user-facing behavior.
9a6b839… lmata 45
9a6b839… lmata 46 ---
9a6b839… lmata 47
9a6b839… lmata 48 ## Issues
9a6b839… lmata 49
9a6b839… lmata 50 File bugs and feature requests at [github.com/ConflictHQ/scuttlebot/issues](https://github.com/ConflictHQ/scuttlebot/issues).
9a6b839… lmata 51
9a6b839… lmata 52 For security issues, email [email protected] instead of opening a public issue.
9a6b839… lmata 53
974ed6a… lmata 54 ---
9a6b839… lmata 55
9a6b839… lmata 56 ## Acknowledgements
9a6b839… lmata 57
9a6b839… lmata 58 scuttlebot is built on the shoulders of some excellent open source projects and services.
9a6b839… lmata 59
9a6b839… lmata 60 **[Ergo IRC Server](https://ergo.chat/)** — scuttlebot embeds Ergo as its IRC backbone. Ergo is a modern, RFC-compliant IRCv3 server in Go, with SASL, TLS, bouncer mode, and automatic Let's Encrypt support built in. None of this works without the Ergo maintainers' extraordinary work.
9a6b839… lmata 61
9a6b839… lmata 62 **[Go](https://go.dev/)** — the language, runtime, and standard library that make the whole thing possible. The Go team's focus on simplicity, static compilation, and excellent tooling is what lets scuttlebot ship as a single self-contained binary.
9a6b839… lmata 63
9a6b839… lmata 64 **Claude (Anthropic), Codex (OpenAI), Gemini (Google)** — the AI runtimes that scuttlebot coordinates. Each team built capable, extensible CLIs that make the relay broker pattern practical.
9a6b839… lmata 65
9a6b839… lmata 66 ---
974ed6a… lmata 67
9a6b839… lmata 68 ## License
974ed6a… lmata 69
9a6b839… lmata 70 MIT — [CONFLICT LLC](https://weareconflict.com)

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button