2.4 KiB
2.4 KiB
Installation
Sherlock installs from a clone of this repo with a single script.
Quick start
git clone https://gitea.alexandru.macocian.me/Charlie/sherlock.git
cd sherlock
./install.sh
The script:
- Seeds the config. Copies
config.example.tomlto your config path (~/.config/sherlock/config.tomlby default) — but only if you don't already have one, so re-runs never clobber filled-in values. - Opens it in your editor (
$VISUAL/$EDITOR, falling back tonano/vi) so you can fill in the Authentik issuer/client IDs and each service's base URL. See configuration.md for the schema. - Builds and installs
sherlockand every MCP binary (gitea-mcp,grafana-mcp,gssh-mcp) withgo install ./cmd/...once you save and close the editor. - Installs shell completions where it can — currently a
fishcompletion into~/.config/fish/completions/sherlock.fish, but only if you already have a fish config directory (it won't create one for non-fish users).
Then:
sherlock copilot
Requirements
- The Go toolchain on
PATH(the script builds from source). - An OS keyring / Secret Service provider (the wallet lives there; see storage.md).
- The install dir (
go env GOBIN, else$(go env GOPATH)/bin) on yourPATH— this is standard Go setup. The script notes the dir if it isn't already onPATH, but adding it is the usual one-time Go step (e.g.fish_add_path -U ~/go/binon fish, or anexport PATHline in~/.bashrc/~/.zshrc).
Flags
| Flag | Effect |
|---|---|
-y, --yes |
Skip the editor step (config is already filled in). |
--config-only |
Seed/edit the config but don't build or install. |
-h, --help |
Show usage. |
Env overrides
| Variable | Effect |
|---|---|
SHERLOCK_CONFIG |
Exact config path to write (else $XDG_CONFIG_HOME / ~/.config). |
VISUAL / EDITOR |
Editor to open. |
Re-running
./install.sh is safe to re-run: it edits your existing config in place
(never overwriting it) and re-installs the binaries. Use -y to skip
the editor when you only want to rebuild, or --config-only to tweak
the config without reinstalling.
To point sherlock at a different deployment, edit the values in your
config.toml — there are no compiled-in defaults, so nothing is baked
into the binaries. See configuration.md.