Skip to content

BYOT CLI Reference

Terminal window
sec-gemini-byot [OPTIONS]
FlagRequiredDefaultDescription
--api-key API_KEYNoconfig / envAPI key (falls back to SEC_GEMINI_API_KEY env, then config.toml)
--name NAMENolocalDisplay name for this BYOT client
--hub HUBNoproduction hubHub address URL
--list-toolsNoList available base tools and exit
--tools TOOL [...]NoallOnly enable these base tools
--no-base-toolsNoDisable all base tools
--additional-mcps PATH [PATH ...]No[]Additional MCPs as file paths (.py) or URLs
--verboseNofalseEnable DEBUG-level console output

Enabled by default. 35 tools in 5 categories. Use --no-base-tools to disable, or --tools to select specific ones.

ToolDescription
read_fileRead the contents of a file at the given path
write_fileWrite content to a file (requires prior read_file for the same path)
edit_fileApply search/replace edits to a file (requires prior read_file)
list_directoryList files and directories at a given path
grepSearch file contents using a regular expression pattern
find_filesFind files matching a glob pattern
file_infoGet file metadata: size, permissions, modification time
remove_fileDelete a single file
remove_directoryRecursively delete a directory
ToolDescription
bashExecute a shell command and return stdout/stderr
run_backgroundStart a long-running process in the background
list_backgroundList all running background processes
peek_backgroundView recent output from a background process
stop_backgroundTerminate a background process
read_backgroundRead the full captured output of a completed process
ToolDescription
python_execExecute Python code in an isolated virtual environment
python_installInstall Python packages via pip into the execution environment
python_packagesList installed Python packages in the execution environment
python_find_packagesSearch PyPI for available packages
ToolDescription
javascript_execExecute JavaScript code via Node.js
javascript_installInstall npm packages into the execution environment
javascript_packagesList installed npm packages in the execution environment
javascript_find_packagesSearch npm for available packages
ToolDescription
dns_lookupQuery DNS records (A, AAAA, MX, NS, TXT, CNAME, SOA)
whois_lookupPerform a WHOIS query for a domain or IP
tcp_port_checkCheck if a TCP port is open on a host
tcp_sendSend raw data over a TCP connection
pingSend ICMP ping to a host
tracerouteTrace the network path to a host
fetch_httpFetch the content of an HTTP(S) URL
grep_httpFetch an HTTP URL and search response body with regex
http_headersGet HTTP response headers for a URL
fetch_fileDownload a file from a URL to a local path
ssl_checkInspect the SSL/TLS certificate of a host
check_email_securityCheck SPF, DKIM, and DMARC records for a domain

The baseline tools enforce a read-before-write guard:

  1. write_file and edit_file require a prior read_file for the same path.
  2. If the file content has changed since the last read (detected via sha256), the write is rejected.
  3. This prevents the agent from blindly overwriting files it hasn’t inspected.
StateDescription
STOPPEDClient is not running
STARTINGConnecting to the BYOT Hub
RUNNINGConnected and processing tool requests
STOPPINGShutting down gracefully
ERRORConnection failed after max retries

Retry behavior: Exponential backoff starting at 4 seconds, capped at 30 seconds, up to 10 attempts.

BYOT logs to ~/.config/sec-gemini/logs/byot.log (JSON format, automatic rotation).

Use --verbose for real-time DEBUG output to the console.