{"id":4072,"date":"2026-08-04T04:48:59","date_gmt":"2026-08-04T04:48:59","guid":{"rendered":"https:\/\/tucumandevelopers.com\/index.php\/2026\/08\/04\/our-first-moves-to-get-ai-spend-under-control\/"},"modified":"2026-08-04T04:48:59","modified_gmt":"2026-08-04T04:48:59","slug":"our-first-moves-to-get-ai-spend-under-control","status":"publish","type":"post","link":"https:\/\/tucumandevelopers.com\/index.php\/2026\/08\/04\/our-first-moves-to-get-ai-spend-under-control\/","title":{"rendered":"Our First Moves to Get AI Spend Under Control"},"content":{"rendered":"<div>\n<div>\n<section data-clarity-region=\"article\">\n<div>\n<p><a href=\"\/ai\/category\/ai\/\">AI<\/a> <a href=\"\/ai\/category\/jetbrains-ai\/\">JetBrains AI<\/a> <a href=\"\/ai\/category\/jetbrains-central\/\">JetBrains Central<\/a> <a href=\"\/ai\/category\/tips-tricks\/\">Tips &amp; Tricks<\/a><\/p>\n<h2 id=\"major-updates\">Our First Moves to Get AI Spend Under Control<\/h2>\n<div>\n<\/p><\/div>\n<p>Over the past six months at JetBrains, our AI development expenses have increased roughly 10x. When the costs started rising, of course we noticed \u2013 and realized that we simply didn\u2019t know how to control them systematically.<\/p>\n<p>We didn\u2019t know because our developers don\u2019t just use the AI tools we build. They decide for themselves which ones will best help them get their jobs done.&nbsp;<\/p>\n<p>Most of them use between three and five AI tools in a given month. They\u2019re using our IDEs as much as ever \u2013 it\u2019s just that now they\u2019ve added more CLI agents, agentic development environments (for running several AI agents in parallel), and IDE-integrated AI tools into the mix.&nbsp;<\/p>\n<figure>\n<table>\n<tbody>\n<tr>\n<td data-align=\"center\"><em>Most JetBrains devs use at least three AI tools.<\/em><\/td>\n<td data-align=\"center\"><em>They\u2019re using all those tools in and alongside our IDEs.<\/em><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p>One way to address the problem of ballooning costs would be to limit the number of AI tools our developers can use. In discussions with people from other companies, we often hear about decisions to use just one or two options. That would potentially reduce entropy and limit the overhead of managing everything.<\/p>\n<p>However, limiting ourselves in this way would likely cause us to miss out on the best options at any given time. This week the best setup is Claude Code on Opus models, tomorrow it\u2019s Codex, and next week it might be Claude Code on a mix of GLM and Opus.<\/p>\n<p>Ideally there should be a balance between developer freedom and managing this \u201ctooling zoo\u201d in terms of cost, efficiency, budgeting, compliance, and security. Here\u2019s how we\u2019ve tried to strike that balance.<\/p>\n<h2><strong>Initial pain points<\/strong><\/h2>\n<p><strong>Skyrocketing costs.<\/strong> Starting in January 2026, we saw a sharp rise in the adoption of AI tools, along with an increase in token consumption. We attribute this spike to the release of the Claude Opus 4.5 and 4.6 models, which significantly improved agent performance. JetBrains developers began using these models in various places, like Claude Code CLI, the AI chat in JetBrains IDEs, and Junie.<\/p>\n<p>After that, usage started almost doubling every month. Soon enough, we hit 150 Claude Code seats and moved onto the Enterprise plan with rates based on API usage. That\u2019s when costs really took off.&nbsp;<\/p>\n<div>\n<figure><figcaption><em>Our AI spend increased roughly 10x in the first half of 2026.<\/em><\/figcaption><\/figure>\n<\/div>\n<p><strong>Admin headaches.<\/strong> Average consumption per developer was rising. So was the number of developers who wanted access to different tools \u2013 to compare Claude Code to Codex or to try third-party agents, for example. Several people needed to sign off on each request. The tickets piled up for administrators, and the wait times slowed down developers.<\/p>\n<h2><strong>Experimenting our way to a solution<\/strong><\/h2>\n<h3><strong>Manual spreadsheet work \u2192 unsustainable&nbsp;<\/strong><\/h3>\n<p>Our tooling zoo had grown to include the various agents available through the AI \u0441hat in JetBrains IDEs, as well as Junie CLI, the CLI and desktop versions of Claude Code and Codex, Cursor, GitHub Copilot, and a long tail of other tools. To start forecasting and managing this growth \u2013 as well its costs \u2013 we manually opened up different consoles, downloaded data, and grouped it across several dimensions by department and business unit.<\/p>\n<p>This one-time exercise took four days. We had a snapshot of the situation and not much else when it came to setting organizational usage or managing them on an ongoing basis. This was a reasonable start, but that time commitment obviously made it an unsustainable approach moving forward.<\/p>\n<h3><strong>Internal dashboards \u2192 ongoing expenses read-only&nbsp;<\/strong><\/h3>\n<p>Most AI tools, including JetBrains ones, have centralized APIs that allow you to pull per-user usage data. We put together a couple of quick-and-dirty solutions that did so (and tried a few more polished third-party ones) and combined the results into dashboards mapped to our organizational structure. This allowed us to drill down into ongoing expenses, but we still couldn\u2019t set or enforce spending limits conveniently.<\/p>\n<h3><strong>Internal console and a CLI wrapper \u2192 the winning prototype<\/strong><\/h3>\n<p>For our own AI tools, we already had a management console with analytics for consumption and efficiency baked in. It just didn\u2019t cover third-party tools \u2013 which was exactly where most of our growth was happening.<\/p>\n<p>One of our developers had quietly built a CLI wrapper for his own use: to authenticate his JetBrains account, send requests through our AI traffic routing layer, and debug local third-party agents during development. It was a personal tool, not a governance one, but it turned out to be the piece we were missing.<\/p>\n<h2><strong>From prototype to product<\/strong><\/h2>\n<p>At the beginning of April 2026, we set out to turn the repurposed personal debugging tool into a product every JetBrains developer could and would actually use. That meant it had to:&nbsp;<\/p>\n<ul>\n<li>Handle authentication, removing login hassles.<\/li>\n<li>Auto-detect installed agents, so time was no longer wasted on configuration.<\/li>\n<li>Send all requests through our traffic routing layer, allowing us to apply token budgeting rules to third-party tools (as well as our own) in the form of AI credits.&nbsp;<\/li>\n<li>Stay compliant with our security, encryption, and access isolation requirements.<\/li>\n<\/ul>\n<p>Some of this we already had. The JetBrains AI Platform is our under-the-hood AI router, and it has powered JetBrains AI for our customers and individual developers since 2023, handling more than a billion LLM requests with <a href=\"https:\/\/status.jetbrains.cloud\/\" target=\"_blank\" rel=\"noopener\">solid stability<\/a>. On the server side, we were collecting consumption statistics and other metrics, processing them through an ETL pipeline into separate, highly elastic storage in asynchronous mode \u2013 storage that met the requirements above. We were also applying AI credit budgets to our own tools.<\/p>\n<p>Over the next two months, we refined the CLI wrapper into the <a href=\"https:\/\/www.jetbrains.com\/central-cli\/\" target=\"_blank\" rel=\"noopener\">JetBrains Central CLI<\/a>.<\/p>\n<div>\n<figure><figcaption><em>Where the Central CLI fits in.<\/em><\/figcaption><\/figure>\n<\/div>\n<p>How we are all benefitting:<\/p>\n<ul>\n<li><strong>Developers<\/strong> are running terminal agents with whatever models they want with virtually no administrative friction \u2013 no more waiting weeks for approvals.<\/li>\n<\/ul>\n<ul>\n<li><strong>Managers<\/strong> can:\n<ul>\n<li>Create and view reports in the <a href=\"https:\/\/www.jetbrains.com\/help\/jetbrains-console\/eap\/ai-adoption-and-usage.html\" target=\"_blank\" rel=\"noopener\">Central Console<\/a> showing:\n<ul>\n<li>Current, historical, and forecasted AI consumption and costs for their departments.<\/li>\n<li>Distribution of AI costs and usage by developer, agent, and IDE.<\/li>\n<li>All the data aggregated with other AI expenses through an analytics API.<\/li>\n<\/ul>\n<\/li>\n<li>Set granular AI limits for individual developers, teams, and groups across every agent and IDE.<\/li>\n<li>Eliminate the piles of contracts and invoices from a growing list of third-party AI providers!<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div>\n<figure><figcaption><em>Current, historical, and forecasted AI consumption and costs.<\/em><\/figcaption><\/figure>\n<\/div>\n<div>\n<figure><figcaption><em>Granular limits.<\/em><\/figcaption><\/figure>\n<\/div>\n<figure><video controls=\"\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2026\/08\/ScreenRecordingEdited_v001.mp4\"><\/video><figcaption><em>Governing developers\u2019 AI usage shouldn\u2019t mean cramping their workflows.<\/em><\/figcaption><\/figure>\n<p>Is it possible to piece together something like this with open-source tools, scripts, and other spare parts? Yes. We know because we tried. But mid-size organizations (like ours) want a solution to work reliably out of the box without extra overhead for deployment, configuration, and maintenance. Developers want access to the AI tools they need, not extra work getting them in a way that everyone is happy with. That\u2019s why we built this solution.<\/p>\n<h2><strong>What happened when we launched <\/strong><strong><em>fast&nbsp;<\/em><\/strong><\/h2>\n<p>We built and rolled out this solution internally in a couple months. That was unexpectedly fast for us, and it came with:<\/p>\n<h3><strong>Good problems<\/strong><\/h3>\n<ul>\n<li><strong>Rapid growth found the edge cases.<\/strong> Over a thousand JetBrains developers switched to this tool in just a few weeks. Many of them, however, brought edge cases \u2013 an obscure Windows terminal here, a remote machine there. We had to work on fine-tuning our login flow to cover everyone.<\/li>\n<\/ul>\n<ul>\n<li><strong>The Central CLI became infrastructure overnight.<\/strong> Our developers began depending on it every day, and feature requests and support questions came along with that. The CLI team is small, and keeping up with that demand is most of what they do right now, which is a good sign for a tool that\u2019s a few months old.&nbsp;<\/li>\n<\/ul>\n<h3><strong>Loose ends<\/strong><\/h3>\n<ul>\n<li><strong>We needed more granular policies.<\/strong> Now that we had a clear mechanism for setting AI usage policies, the next question was what those policies should be. We needed to determine how much a given developer can consume, whether they can request more, whether they can use their quota for personal purposes, etc. Many departments have different AI workflows and consumption patterns. We\u2019re now working on an advanced rights and permission system that puts limits in the hands of engineering managers, since they\u2019re the ones who know how many tokens their team needs and who needs them.<\/li>\n<\/ul>\n<ul>\n<li><strong>We\u2019re expanding coverage. <\/strong>The CLI currently supports three of the most popular terminal agents. Four more are in internal Beta. Niche setups and personal AI subscriptions will remain out of scope, as our goal is to cover the AI traffic running through the tools developers rely on most.&nbsp;<\/li>\n<\/ul>\n<h2><strong>Try it for yourself<\/strong><\/h2>\n<p>After being our own test subjects, on July 8 we opened the Central CLI to early access. It\u2019s available to anyone, individual or organization, who has JetBrains AI credits. A quick heads up: This solution is designed for teams running heavy API-based usage across multiple third-party tools. If your AI usage is not that big and costs aren\u2019t yet a pressure point, the economics probably won\u2019t work in your favor. But if you\u2019re already feeling the pinch, it\u2019s worth a look.<\/p>\n<p>The CLI is one of several entry points into<a href=\"https:\/\/www.jetbrains.com\/agentic-software-development\/\" target=\"_blank\" rel=\"noopener\"> JetBrains AI for teams and organizations<\/a>, our system for agentic software development, which we started rolling out in early access in July. It covers everything, from the tools, agents, and models developers choose to the governance layer this post has been about.&nbsp;<\/p>\n<p>We\u2019ve made fast progress, but we\u2019ve got plenty of work still in front of us. Let us know in the comments what you\u2019d like to hear more about \u2013 whether that\u2019s how we got here, or where we\u2019re headed next.<\/p>\n<p><em>Written by hand, proofed by claude-opus-4-8 ($0.60): 3.9k input, 3.9k output, 105.3k cache read, 43.0k cache write<\/em><\/p>\n<\/p><\/div>\n<p> <a href=\"#\"><\/a> <\/section>\n<div>\n<p><h2>Discover more<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>Fuente: <a href=\"https:\/\/blog.jetbrains.com\/ai\/2026\/08\/our-first-moves-to-get-ai-spend-under-control\/\">Art\u00edculo original<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>AI JetBrains AI JetBrains Central Tips &amp; Tricks Our First Moves to Get AI Spend Under Control Over the past six months at JetBrains, our AI development expenses have increased roughly 10x. When the costs started rising, of course we noticed \u2013 and realized that we simply didn\u2019t know how to control them systematically. We [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2648,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[46],"tags":[],"class_list":["post-4072","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jetbrain"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/4072","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/comments?post=4072"}],"version-history":[{"count":0,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/4072\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media\/2648"}],"wp:attachment":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media?parent=4072"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/categories?post=4072"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/tags?post=4072"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}