INNER CODE UNIT · Go

parseAgentPermissions

k1LoW/runn · agent.go:46

func parseAgentPermissions(perms []string) (*agentParsedPermissions, error) {
	p := &agentParsedPermissions{}
	for _, perm := range perms {
		perm = strings.TrimSpace(perm)
		if perm == "" {
			continue
		}
		switch {
		case strings.HasPrefix(perm, agentPermissionsAllowPrefix):
			toolName := strings.TrimPrefix(perm, agentPermissionsAllowPrefix)
			if toolName == "" {
				return nil, fmt.Errorf("invalid permission rule %q: tool name is required", perm)
			}
			p.rules = append(p.rules, agentPermissionRule{
				prefix:   "allow",
				toolName: toolName,
			})
		case strings.HasPrefix(perm, agentPermissionsDenyPrefix):

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…