Skip to main content

effective_script_permissions

Function effective_script_permissions 

Source
pub fn effective_script_permissions(
    global: &ScriptToolPermissions,
    manifest_toml: &str,
) -> ScriptToolPermissions
Expand 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.