Source: Preliminary findings from the JetBrains Developer Ecosystem Survey 2026 • 15,000+ developers worldwide

{"ts": "2026-08-21T14:02:11Z", "session": "s-4c19", "user": "aria.k",
"tool": "update_ticket", "args": {"id": 4821, "status": "closed"},
"approved_by": "m.osei", "outcome": "ok"}The checklist above is the full set; the non-negotiable core is smaller. An agent shouldn't reach production until its permissions are scoped to its task, its high-risk actions pass a human gate, every call it makes is logged with an identity attached, and someone has tried to break each of those boundaries on purpose. The last of those is what tells you the other three actually hold.
Give it a tool whose signature already encodes the limit. search_documents(query, project_id) can only ever search documents, in one project, and your application fills in that project rather than letting the model choose it. A tool that accepts a free-form command string encodes no limit at all, so every restriction has to be rebuilt somewhere downstream.
The useful test is per call rather than per category: would this field change what the agent does on this step? If not, it has no reason to be in the payload. Credentials fail that test every time, since an agent should authenticate through a secret manager instead of reading a key. For a customer record, it usually rules out most of the row, leaving the two or three fields the task actually turns on.
Until you have evidence it behaves under the failure cases above, and again whenever its access changes. A sandbox is where an unsafe request costs nothing to discover.
Start with the worst-case outcome if the write executes incorrectly. If the answer involves data loss, production impact, external communication, or security exposure, require human approval first. Writes that are easily reversible and confined to a scope you set in advance, like drafting a ticket a human still has to submit, can usually run automatically inside defined guardrails.
The structural half is keeping the layers apart, as described above. The half teams skip is proving it: plant a known injection string in a document the agent will retrieve, run the workflow, then check the logs for the tool call it should never have made. Repeat that at each autonomy increase rather than once at launch.
Write explicit cases for the approval boundary: high-risk actions don't execute without a decision, rejected actions are logged, edge cases such as expired approvals and approvals from unauthorized users are handled, and the agent stops and escalates when it can't proceed. Run all of it in a sandbox first.
Two triggers: any change in the agent's capabilities or access scope, and a fixed schedule, monthly at a minimum for production agents. Log review belongs in your security operations workflow. An unexpected tool call, an access attempt outside the defined scope, or an approval override should trigger a review immediately rather than waiting for the next cycle.
Damaso Sanoja is an engineer who is passionate about helping others make data-driven decisions to achieve their goals. This has motivated him to write numerous articles on the most popular relational databases, customer relationship management systems, enterprise resource planning systems, master data management tools, and, more recently, data warehouse systems used for machine learning and AI projects. You can blame this fixation on data management on his first computer being a Commodore 64 without a floppy disk.
Explore JetBrains AI solutions that help you build, use, and scale AI agents across the software development lifecycle.
Run terminal agents through one JetBrains account, with access, models, and usage governed centrally.
Plan, code, debug, and automate tasks with a coding agent that works across your terminal, IDE, GitHub, and GitLab.
Orchestrate AI agents and verify their output directly in JetBrains IDEs, with full control over how changes are reviewed.
Automate software delivery workflows, coordinate agentic work across teams, identify bottlenecks affecting delivery.
Govern AI usage, models, policies, and costs across your organization, including JetBrains and third-party tools.
Give agents shared organizational memory and context that carries across tools, workflows, and execution environments.
An open system of AI products for developers, teams, and organizations – from coding with agents to automating workflows and governing AI at scale.
Continue Exploring the AI Agents for Developers Guide
Learn about the most common security risks in AI agents, including tool misuse, prompt injection, excessive permissions.
Learn how to test AI agents in production using evaluation frameworks, benchmarks, monitoring, and reliability practices for autonomous systems.
Learn what Model Context Protocol (MCP) is, how it connects AI agents with external tools and data, and why it matters for developers.