MCPcopy Create free account
hub / github.com/Louisym/MiniCC / PermissionPolicy

Class PermissionPolicy

tutorials/18_design_patterns_for_agents.py:538–552  ·  view source on GitHub ↗

对应 permissions.rs:49-73

Source from the content-addressed store, hash-verified

536 Allow = 4
537
538 class PermissionPolicy:
539 """对应 permissions.rs:49-73"""
540 def __init__(self, active_mode: PermissionMode):
541 self._active_mode = active_mode
542 self._requirements: dict[str, PermissionMode] = {}
543
544 def with_tool_requirement(
545 self, tool_name: str, required: PermissionMode
546 ) -> PermissionPolicy:
547 self._requirements[tool_name] = required
548 return self # 链式调用
549
550 def is_allowed(self, tool_name: str) -> bool:
551 required = self._requirements.get(tool_name, PermissionMode.DangerFullAccess)
552 return self._active_mode >= required
553
554 policy = (
555 PermissionPolicy(PermissionMode.WorkspaceWrite)

Callers 1

lesson_3_builder_patternFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected