Skip to main content

Module install

Module install 

Source
Expand description

Shared GitHub-install engine for tools and plugins. Holds the generic install engine + [InstallManifest] trait, the install error type, the install/identifier validators, and the install whitelist. The per-kind discovery + wrappers live in filesystem::tools and filesystem::plugins.

Structs§

WhitelistEntry
One whitelist row. Each field is a regex matched anchored against the corresponding install parameter (compiled as ^(?:pattern)$). All four fields must match for the row to allow the install.

Enums§

InstallError
Failures the GitHub-install pipeline (shared by tools and plugins) can encounter. Shape modelled after objectiveai-api’s github::Error: split request / response / status / parse so diagnostics name what failed, plus IO variants for the local-disk side of the flow.

Functions§

check_plugin_whitelist
Returns Ok(true) iff the quadruple matches at least one entry in whitelist. Each field is compiled as ^(?:pattern)$ so patterns like Object won’t match ObjectAttacker. Returns Err(regex::Error) if any pattern fails to compile.
default_whitelist
The hard-coded default whitelist. Single entry: any repo under the ObjectiveAI GitHub org passes; everything else requires --allow-untrusted.
raw_manifest_url
Convention: the raw-GitHub URL we’d fetch objectiveai.json from for a given (owner, repository, optional commit sha). Defaults to HEAD when no commit is supplied. Lifted out so the cli and the SDK’s own install wrappers share one source of truth.