Plugin manifest parsing for plugins.
Opt into experimental, unstable dcode behavior.
Off by default; parsed by is_env_truthy (see there for the accepted truthy
values). Marks experimental runs in UI/trace metadata. Behavior behind this
flag may change or be removed without notice.
Plugin component directory that deepagents-code does not load.
Return whether env var name is set to a recognizably truthy value.
Unlike bool(os.environ.get(name)), this does not treat "0" or
"false" as enabled. Use this for on/off flags where the user would
reasonably expect VAR=0 to mean "disabled".
Normalize a decoded value to a JSON object.
Return the first supported manifest path under root, if present.
Resolve one path declared relative to plugin_root.
Plugin manifest component fields must start with ./. Marketplace source
paths must not, because the marketplace format also accepts a bare relative
path such as tools/my-plugin; those callers pass
require_dot_prefix=False. Both forms stay inside plugin_root.
Load an Agent Plugins, Claude, or Codex plugin manifest.
Build component inventory for a plugin.
Inventory of supported plugin components.
unsupported lists plugin component directories that deepagents-code does
not load (e.g. agents/, commands/).
Parsed plugin manifest.
Raised when a plugin manifest is malformed enough to skip the plugin.