FrameworkMarius Hobbhahn

Treat Coding Agents Like Untrusted Contractors

The durable skill is not merely getting coding agents to act. It is giving them enough access to be useful while assuming they are still unsafe by default.

Sources used2 references for this edition
  1. 01Digg on high-privilege coding agents with weak guardrails
  2. 02Marius Hobbhahn on treating coding agents as untrusted
The read

The strongest gap-filling signal for June 29 was Marius Hobbhahn’s argument that coding agents should be treated as untrusted by default, amplified through Digg’s Tech cluster. The important point is not abstract AI risk. It is the present-day mismatch between agent capability and deployment discipline: shell access, internet access, internal systems, and long autonomous runs are being combined faster than most teams are redesigning controls.

So what

Product builders are now making security architecture decisions when they choose agent permissions, default tools, and execution environments. If you treat an agent like a helpful autocomplete, you will overgrant it. If you treat it like an energetic external contractor, you start making better choices about isolation, credentials, and review.

Use this

Write an explicit trust contract for any coding agent workflow. Trigger: the agent can run commands, read sensitive files, browse the web, or touch third-party systems. Context: repository scope, secret boundaries, approved tools, network policy, and allowed side effects. Tools: sandbox or worktree isolation, short-lived credentials, approval gates, and audit logs. Verifier: tests plus a human review for any privileged action. Budget: cap runtime, write scope, and outbound connectivity. Artifacts: permission manifest, run log, changed files, and escalation note. Stop condition: the agent either completes within its contract or halts when it needs a privilege it was not given.

Put it to work 12 minutes

Scored evaluation set

List every system one of your agents can currently touch. Then remove one permission and see if the workflow still works. If not, redesign the loop until it fails safer.

Your turn

Use the task above. Record the result and anything you still need to check.

Check your work

Mark only what you have checked. You can save unfinished work.

Your draft stays in this browser. No account needed.

Keep Going