MCPcopy Create free account
hub / github.com/AI45Lab/Code / apply_claude_style_tools_to_spec

Function apply_claude_style_tools_to_spec

core/src/subagent.rs:742–762  ·  view source on GitHub ↗
(
    spec: &mut WorkerAgentSpec,
    tools: &[String],
    disallowed_tools: &[String],
)

Source from the content-addressed store, hash-verified

740}
741
742fn apply_claude_style_tools_to_spec(
743 spec: &mut WorkerAgentSpec,
744 tools: &[String],
745 disallowed_tools: &[String],
746) {
747 if tools.is_empty() && disallowed_tools.is_empty() {
748 return;
749 }
750
751 let base = if tools.is_empty() {
752 spec.permissions
753 .clone()
754 .unwrap_or_else(|| spec.kind.default_permissions())
755 } else {
756 allow_only_permission_policy(tools)
757 };
758 spec.permissions = Some(add_denied_tools(base, disallowed_tools));
759 if spec.confirmation_inheritance.is_none() {
760 spec.confirmation_inheritance = Some(ConfirmationInheritance::AutoApprove);
761 }
762}
763
764fn parse_worker_yaml_value(
765 value: serde_yaml::Value,

Callers 2

parse_agent_yaml_valueFunction · 0.85
parse_agent_mdFunction · 0.85

Calls 5

add_denied_toolsFunction · 0.85
default_permissionsMethod · 0.80
is_emptyMethod · 0.45
cloneMethod · 0.45

Tested by

no test coverage detected