pub fn effective_script_permissions(
global: &ScriptToolPermissions,
manifest_toml: &str,
) -> ScriptToolPermissionsExpand description
The effective [tool_script_permissions] for an agent: the user’s global
config with the agent’s own blueprint [tool_script_permissions] overlaid
per field - but only where the manifest is more restrictive.
Agents ship their own .rhai tool scripts, so it is reasonable for a
manifest to say “this agent never needs shell”. It is not reasonable for it
to say the opposite: a manifest that could set shell = "allow" over a user’s
global deny meant installing an agent was enough to overrule the machine’s
configuration. So a manifest may tighten a field and never loosen it, the same
rule crate::tools::resolve_policy applies to [tool_permissions].
Parsed CLI-side (these types live in the CLI config, not leviath-core),
mirroring parse_blueprint_mcp_servers.