Robert
Robert is designed to help you learn and troubleshoot FreeBSD using official documentation, manual pages, source code, ports, and packages.
What makes Robert different?
- Designed for education, not automation.
Robert explains what to do and why, but leaves system changes in your hands. - Read-only by design.
It can inspect documentation, ports, packages, source code, and approved files, but it cannot write data. - Native to FreeBSD.
Robert uses manual pages, the Handbook, the ports tree, the package database, and FreeBSD source code as primary sources. - Grounded answers.
The Handbook, manual pages, and source code are treated as the source of truth. - Terminal-native.
There is no browser, Electron shell, Node.js runtime, Ruby installation, or gem bundle required to run the release binary. - Small deployment model.
Release builds are distributed as a statically linked binary around 3MB.
Abilities
Robert's abilities are limited to reading data, and certain abilities require confirmation before they can run. Robert does not have any abilities that can write data, or automate tasks for you. That's intentional: Robert is designed to help you learn about FreeBSD.
| Name | Purpose | Confirmation |
|---|---|---|
man-page |
Read a manual page by name and optional section. | No |
man-search |
Search manual pages through apropos. |
No |
search-user-handbook |
Search the FreeBSD user handbook through full-text search. | No |
search-developer-handbook |
Search the FreeBSD developer handbook through full-text search. | No |
search-porter-handbook |
Search the FreeBSD porter handbook through full-text search. | No |
find-port |
Find a port in the local ports tree. | No |
read-port |
Read a port's Makefile, pkg-descr, and distinfo. |
No |
find-package |
Search the local pkg(8) database. |
No |
read-file, find, grep |
Inspect local files and filesystem paths. | Yes |
Install
##
# Download the latest release
$ fetch https://github.com/llmrb/robert/releases/download/v0.11.0/robert
$ chmod +x robert
##
# Set an API key
$ export DEEPSEEK_SECRET="sk-..."
##
# Start Robert
$ ./robert
Anthem
This song played a lot in the background while I was hacking on Robert, so it felt appropriate to include it as part of the release somehow. :)