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§
- Whitelist
Entry - 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§
- Install
Error - Failures the GitHub-install pipeline (shared by tools and plugins)
can encounter. Shape modelled after
objectiveai-api’sgithub::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 inwhitelist. Each field is compiled as^(?:pattern)$so patterns likeObjectwon’t matchObjectAttacker. ReturnsErr(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.jsonfrom for a given (owner, repository, optional commit sha). Defaults toHEADwhen no commit is supplied. Lifted out so the cli and the SDK’s own install wrappers share one source of truth.