anthropics / anthropics/claude-agent-sdk-python

Claude Code SDK permission system is a complete mess

未關閉
#1,220 1 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
documentation enhancement
主要語言
Python
星號
8.1k
分支
1.3k
PR 合併指標
PR 指標待擷取

描述

I am trying to create an agent that will change configurations in the background - and I am seeting permission layer on top of permission layer on top of ... - and eventually - at times when it was activated in the background - it still does not help - Claude SDK Stops and wait for permission to do config edits.

This is what Claude is suggesting as a solution: (After I tried like 10 solutions with Claude Code guidance and failed)

self._options = ClaudeCodeOptions(
cwd=str(activation_root),
permission_mode="bypassPermissions",
system_prompt=self.AUTONOMOUS_SYSTEM_PROMPT,
mcp_servers=mcp_servers,
settings=project_settings, # now only carries `permissions.deny`
env=env,
can_use_tool=self._auto_resolve, # see below — without this, any ask-rule
# hit or requiresUserInteraction MCP
# tool call just hangs forever
)

async def _auto_resolve(self, tool_name, input_data, context):
# This is the thing that actually makes it "fully" autonomous.
# bypassPermissions can't skip ask-rules / AskUserQuestion / MCP tools
# marked requiresUserInteraction — they always fall through to this
# callback. If you don't supply one, those calls just stall.
return PermissionResultAllow()

{
"permissions": {
"deny": [
"Bash(rm -rf /*)",
"Bash(rm -rf ~*)",
"Read(//etc/shadow)",
"Read(~/.ssh/**)",
"Edit(~/.ssh/**)"
]
}
}

Really?
Can someone take it seriously?
And let SDK Do SDK stuff? I expect complete sereration from SDK activation and whatever Claude code is looking at when I activate it manually

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。