Local authoring model for .agents/plugins/marketplace.json.
Summary
Functions
Compatibility alias for parse!/1.
Parses marketplace data into a %Codex.Plugins.Marketplace{} struct.
Parses marketplace data and raises on invalid input.
Parses a single marketplace entry for add/update flows.
Returns the schema used to validate marketplace data.
Serializes a marketplace struct back into canonical JSON-compatible data.
Types
@type policy_t() :: %{ installation: Codex.Protocol.Plugin.InstallPolicy.t(), authentication: Codex.Protocol.Plugin.AuthPolicy.t(), products: [String.t()] | nil, extra: map() }
@type t() :: %Codex.Plugins.Marketplace{ extra: map(), interface: (interface_t() | nil) | nil, name: String.t(), plugins: [plugin_t()] }
Functions
Compatibility alias for parse!/1.
@spec parse(map() | keyword() | t()) :: {:ok, t()} | {:error, {:invalid_plugin_marketplace, CliSubprocessCore.Schema.error_detail()}}
Parses marketplace data into a %Codex.Plugins.Marketplace{} struct.
Parses marketplace data and raises on invalid input.
@spec parse_plugin(map() | keyword() | plugin_t()) :: {:ok, plugin_t()} | {:error, {:invalid_plugin_marketplace_plugin, CliSubprocessCore.Schema.error_detail()}}
Parses a single marketplace entry for add/update flows.
@spec schema() :: Zoi.schema()
Returns the schema used to validate marketplace data.
Serializes a marketplace struct back into canonical JSON-compatible data.