You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
auto upgrade to 1.1.1, surprise! commands no longer require approval #6873
The bash:allow in the build agent configuration is overriding the global bash config that you set. This has yet to be documented but from my understanding of the new system this is how it should work. Try removing that line and see what happens
there's no bash:allow in build agent config, but there is a bash: true, so I've removed that and i'll test. weird thing is, the config was working for months.
oh looking closer this is likely because of your tools config because it says bash: true - we got rid of that field but we try to convert it to permissions
however we merge it before the rest of your permissions so not sure why it seems to be overriding
ok, i removed bash: true from build agent config. the changed behavior caught me off guard as soon as opencode started automatically running commands that it used to prompt for 5 minutes ago. removing bash:true fixed it.
Old behaviour - bash: true inherits the top level bash permissions
New behaviour - not having bash: true or bash: false inherits top level bash permissions, whereas bash: true overrides the top level permissions and sets every bash command to be allowed
Not sure why the new behaviour is implemented. The old one seems to make more sense.
This issue helped us identify the root cause of the permission bug! We found that the tools field in the Agent schema is being spread into the resolved config, overriding permission-based restrictions.
Fix verified in #6527 - see the detailed fix and verification there.
The solution is to exclude tools and maxSteps during the Agent config transform:
Note: Our earlier comments here were incorrect - that fix attempt didn't address the root cause.
The workaround in this thread (removing tools field) fixes primary agent permissions, but subagent permissions remain broken in v1.1.x. See #6527 for the full analysis and tracking.
Activity
rekram1-node commentedon Jan 4, 2026
can u show me output of:
opencode debug config
aaronnewsome commentedon Jan 4, 2026
malhashemi commentedon Jan 4, 2026
The
bash:allowin the build agent configuration is overriding the global bash config that you set. This has yet to be documented but from my understanding of the new system this is how it should work. Try removing that line and see what happensaaronnewsome commentedon Jan 4, 2026
there's no bash:allow in build agent config, but there is a bash: true, so I've removed that and i'll test. weird thing is, the config was working for months.
malhashemi commentedon Jan 4, 2026
Oh I was just going by the reply you posted which showed
agent.build.permission.bash was set to allow.
Yeah the permission system just got a big overhaul in the latest release few hours ago.
thdxr commentedon Jan 4, 2026
hm this isn't intentional. can i see your full config?
thdxr commentedon Jan 4, 2026
oh looking closer this is likely because of your tools config because it says
bash: true- we got rid of that field but we try to convert it to permissionshowever we merge it before the rest of your permissions so not sure why it seems to be overriding
thdxr commentedon Jan 4, 2026
can you run
opencode debug agent buildthdxr commentedon Jan 5, 2026
ok looked closer into this - our backwards compatible logic for the
toolsfield isn't greatwe see
bash: trueat the agent level and assume that means you want to enable all bash permissions which overrides the global permissionsi'm not too sure of a good way to do it otherwise though, gets messy. best thing to do is to get rid of
toolsfield everywhereaaronnewsome commentedon Jan 5, 2026
ok, i removed
bash: truefrom build agent config. the changed behavior caught me off guard as soon as opencode started automatically running commands that it used to prompt for 5 minutes ago. removing bash:true fixed it.Mithrillion commentedon Jan 7, 2026
So if I understand correctly,
Old behaviour -
bash: trueinherits the top level bash permissionsNew behaviour - not having
bash: trueorbash: falseinherits top level bash permissions, whereasbash: trueoverrides the top level permissions and sets every bash command to be allowedNot sure why the new behaviour is implemented. The old one seems to make more sense.
randomm commentedon Jan 7, 2026
Root Cause Found and Fixed
This issue helped us identify the root cause of the permission bug! We found that the
toolsfield in the Agent schema is being spread into the resolved config, overriding permission-based restrictions.Fix verified in #6527 - see the detailed fix and verification there.
The solution is to exclude
toolsandmaxStepsduring the Agent config transform:This ensures
permissionproperly controls tool availability for subagents.randomm commentedon Jan 7, 2026
FYI - we've submitted PR #7237 which addresses the related
toolsfield issue by excluding it from the agent config spread.This complements the fix discussed in this thread.
randomm commentedon Jan 8, 2026
Note: Our earlier comments here were incorrect - that fix attempt didn't address the root cause.
The workaround in this thread (removing
toolsfield) fixes primary agent permissions, but subagent permissions remain broken in v1.1.x. See #6527 for the full analysis and tracking.