Skip to content

Getting started

Install

The supported install is the signed linux/amd64 binary from the releases page. phpbotscout is an internal tool that happens to be open source; it is not built for macOS or Windows.

There is no released binary yet. No version has been tagged, so there is nothing on a releases page and nothing to download. Installing means building from source, on Linux, with Go 1.26 or newer and a C toolchain — the SQLite driver is the native one, under cgo.

From a checkout:

$ just build

which puts the binary in bin/. go install also works, and needs the build tag:

$ go install -tags sqlite_fts5 gitlab.com/phpboyscout/phpbotscout/cmd/phpbotscout@latest

Omitting the tag produces a binary that builds and does not work

Without -tags sqlite_fts5 the driver compiles without FTS5. Nothing fails at build time; the first search fails at runtime with no such module: fts5. just build sets it for you.

With no tags, @latest resolves to the current commit on the default branch, and phpbotscout version reports a pseudo-version like v0.0.0-20260802151021-3eb67112ae53. That is expected.

Create a configuration file

Most commands refuse to run without one:

ERRO failed to load configuration: no config file found hints="Run 'phpbotscout init' to create a configuration."

Two ways to satisfy that:

$ phpbotscout init          # writes ~/.phpbotscout/config.yaml

or drop a .phpbotscout.yaml in the directory you are working in. Either is enough on its own. See where configuration is read from for which wins when both exist.

First run

$ phpbotscout --help

Fourteen commands, of which three are this tool's: serve, ask and index. The rest come from the framework — see the command reference.

What you can actually do with it

Two things, and it is worth knowing which before you start:

  • Answer a question from the indexed documentation, at the command line, with citations. Start with answer your first question from the docs.
  • Run the daemon, which watches Discord channels and keeps the index current. It does not post, answer or moderate in Discord — see run the bot.

Everything else the bot is designed to do is not built yet. What phpbotscout does not do is the honest list.

What you will need

For You need
Building or refreshing the index A GitLab token with the Maintainer role on the phpboyscout group — discovery reads Pages settings, which GitLab gates behind it
Composing an answer ANTHROPIC_API_KEY, or a locally installed and authenticated claude binary
Retrieval only (ask --retrieval-only) Nothing beyond an index
Running serve A registered Discord application — see set up the Discord application