{"id":736891,"date":"2026-09-03T03:34:53","date_gmt":"2026-09-03T02:34:53","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=junie&#038;p=736891"},"modified":"2026-09-03T03:39:38","modified_gmt":"2026-09-03T02:39:38","slug":"junie-kann-jetzt-komplett-auf-ihrem-mac-ausgefuehrt-werden-ohne-credits-ohne-cloud","status":"publish","type":"junie","link":"https:\/\/blog.jetbrains.com\/de\/junie\/2026\/09\/junie-kann-jetzt-komplett-auf-ihrem-mac-ausgefuehrt-werden-ohne-credits-ohne-cloud\/","title":{"rendered":"Junie kann jetzt komplett auf Ihrem Mac ausgef\u00fchrt werden \u2013 ohne Credits, ohne Cloud"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Unser erster Schritt in Richtung lokaler Coding-Agents<strong>\u00a0<\/strong><\/h2>\n<p>Junie kann schon seit einiger Zeit lokale Modell-Runtimes einbinden. Sie verweisen Junie einfach auf Ollama oder LM Studio, laden Sie ein lokales Modell, und schon greift der Agent darauf zu. Viele nutzen diese M\u00f6glichkeit bereits. Dazu m\u00fcssen Sie allerdings das passende Modell ausw\u00e4hlen, die Einstellungen optimieren und eine Menge manuelle Konfigurationsarbeit leisten. Zudem sind kleinere Modelle nur f\u00fcr eine begrenzte Auswahl einfacher Aufgaben geeignet.<\/p>\n<p>Genau diese Arbeit nehmen wir Ihnen jetzt ab. Das neue Junie Local bringt ein Modell mit, das wir speziell f\u00fcr unsere Agent-Schleife ausgew\u00e4hlt und optimiert haben, installiert es mit einem einzigen Befehl und f\u00fchrt es vollst\u00e4ndig lokal auf Ihrem Computer aus. Keine Token, keine Kontingente und keine \u00dcbertragung von Code ins Internet. Und die Nutzung ist kostenlos.<\/p>\n<div class=\"buttons\">\n<div class=\"buttons__row\"><a class=\"btn\" href=\"https:\/\/jb.gg\/jlblog\" target=\"_blank\" rel=\"noopener\">Junie Local installieren<\/a><\/div>\n<\/div>\n<h2 class=\"wp-block-heading\">Ein einziger Befehl, keine weitere Konfiguration<\/h2>\n<p>Geben Sie in Junie einfach \/local ein. Junie l\u00e4dt das Modell herunter, startet den lokalen Server und nimmt die Umstellung automatisch vor. Sie m\u00fcssen weder ein JSON-Profil schreiben noch vorab eine Runtime installieren oder einen Endpunkt angeben.<\/p>\n<p>Als Modell kommt Qwen3.6-27B in 4-Bit-Quantisierung zum Einsatz. Der Download umfasst ca. 20\u00a0GB, und Sie ben\u00f6tigen einen Mac mit M5-Chip und 64\u00a0GB RAM. Sobald der Download abgeschlossen ist, l\u00e4uft alles lokal: Prompts, Quellcode und Diffs verlassen zu keinem Zeitpunkt Ihren Rechner.<\/p>\n<p>Ihre bisherige Konfiguration wird nahtlos \u00fcbernommen. Der <em>Plan<\/em>-Modus, Live-Prompting, Richtlinien, Skills und \/Befehle funktionieren weiter wie gewohnt. Nur die Engine ist neu \u2013 der Agent bleibt gleich.<\/p>\n\n\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/admin.blog.jetbrains.com\/wp-content\/uploads\/2026\/08\/Junie-local.mp4\"><\/video><\/figure>\n\n\n<h2 class=\"wp-block-heading\">Was wir bei der Performance-Optimierung gelernt haben<\/h2>\n<p>Bei Benchmarks steht meist die Generierungsgeschwindigkeit im Mittelpunkt. Bei einem Coding-Agent ist dieser Wert jedoch irref\u00fchrend, denn der Gro\u00dfteil der Zeit entf\u00e4llt auf das sogenannte Prefill \u2013 den Vorbereitungsschritt, bei dem das Modell Dateien einliest, um die Ausgangslage zu verstehen. Die entscheidenden Performancegewinne wurden durch die Optimierung des Prefill-Vorgangs erzielt \u2013 und genau deshalb setzt Junie Local mindestens einen Apple-M5-Chip voraus: Der Neural Accelerator des M5 bietet 8-Bit-Arithmetikbefehle, die dem M4 fehlen \u2013 damit konnten wir den Prefill-Durchsatz um rund 40% erh\u00f6hen. Wir werden diesen Patch als Pull-Request f\u00fcr MLX-VLM einreichen.<\/p>\n<p>Wir haben uns au\u00dferdem bewusst f\u00fcr Qwen3.6 und gegen die neuere Version 3.8 entschieden. Qwen3.8 funktioniert nur mit aktiviertem Reasoning zuverl\u00e4ssig, wodurch sich die Bearbeitungszeit der Aufgaben jedoch ungef\u00e4hr vervierfacht. Auf aktuellen Macs ist 3.6 schlicht die bessere Wahl.<\/p>\n<p>Hinzu kommen weitere Optimierungen wie eine aufgaben\u00fcbergreifende Wiederverwendung des KV-Cache und spekulatives Decoding, das die Generierungsgeschwindigkeit ann\u00e4hernd verdoppelt. Die genauen technischen Details erfahren Sie hier: <a href=\"https:\/\/blog.jetbrains.com\/junie\/2026\/08\/qwen-for-junie\/\" target=\"_blank\" rel=\"noreferrer noopener\">So haben wir das Modell Qwen 3.6 f\u00fcr unseren Agent Junie optimiert.<\/a><\/p>\n<h2 class=\"wp-block-heading\">Wie gut funktioniert es?<\/h2>\n<p>Jedes Modell durchl\u00e4uft bei uns ein propriet\u00e4res JetBrains-Testset, bevor es in Junie integriert wird. Das galt selbstverst\u00e4ndlich auch f\u00fcr Junie Local. Die Ergebnisse von Qwen3.6-27B lagen auf Augenh\u00f6he mit Sonnet 4.5 (bei einem Reasoning-Limit von 10.000 Token). GPT-5 erzielte bei \u201eMedium\u201c-Aufwand etwas bessere Werte.<\/p>\n<p>Dabei ist der Kontext dieser Zahlen zu beachten: Wir liefern das lokale Modell mit komplett deaktiviertem Reasoning aus, da es in unseren Tests kaum Qualit\u00e4tsvorteile brachte, aber zwei- bis dreimal so viele Token ben\u00f6tigte. Die Testergebnisse zeigen also die Leistung unseres lokalen Modells ohne Reasoning im Vergleich zu Cloud-Modellen mit aktiviertem Reasoning.<\/p>\n<p>Im normalen Arbeitsalltag d\u00fcrfte der Unterschied kaum auffallen. Bei komplexen Architektur\u00fcberlegungen hingegen sehr wohl.<\/p>\n<h3 class=\"wp-block-heading\">Was sich \u00e4ndert, wenn der Tokenverbrauch irrelevant ist<\/h3>\n<p>Benchmarks zeigen, ob ein Modell eine Aufgabe l\u00f6sen kann. Sie zeigen jedoch nicht, was passiert, wenn diese Aufgaben kostenlos ausgef\u00fchrt werden.<\/p>\n<p>Junie bietet bereits seit L\u00e4ngerem M\u00f6glichkeiten zur Kostenkontrolle: etwa durch Planung mit einem leistungsstarken Modell und Umsetzung mit einem g\u00fcnstigeren Modell. Junie Local senkt die Kosten jetzt auf null. Wenn Iterationen nichts mehr kosten, k\u00f6nnen Sie auch Aufgaben an den Agent \u00fcbergeben, f\u00fcr die der Einsatz von Credits zuvor unwirtschaftlich war. Junie Local ist ideal f\u00fcr:<\/p>\n<ul class=\"wp-block-list\">\n<li>Datei\u00fcbergreifende Refactorings und Umbenennungen, die den Kostenaufwand bisher nicht wert waren.<\/li>\n<li>L\u00fccken in der Test-Coverage, die Sie in den letzten Monaten aufgeschoben haben.<\/li>\n<li>Aktualisierungen von Abh\u00e4ngigkeiten und Framework-Migrationen.<\/li>\n<li>Einarbeitung in ein neu \u00fcbernommenes Repository.<\/li>\n<\/ul>\n<p>F\u00fcr langwierige, monotone Flei\u00dfarbeit sind Agents wie geschaffen. Wer jedoch st\u00e4ndig sein Guthaben im Blick behalten muss, delegiert solche T\u00e4tigkeiten oft nicht.<\/p>\n<p>F\u00fcr manche Teams ist der Datenschutz, den Junie Local bietet, der einzige Grund, diesen Blogartikel zu lesen. Sie m\u00fcssen keine Datenschutzrichtlinien von Drittanbietern pr\u00fcfen, weil schlicht kein externer Anbieter beteiligt ist. Bei Projekten mit strengen Kunden-NDAs lautet die Antwort nun nicht mehr \u201eWir haben den Dienstleister auditiert\u201c, sondern schlicht \u201eEs sind keine externen Anbieter beteiligt\u201c.<\/p>\n<p>Au\u00dferdem wird keine Internetverbindung ben\u00f6tigt. Sobald die Modellgewichte auf der Festplatte liegen, funktioniert Junie Local im Flugzeug genauso wie am Schreibtisch.<\/p>\n<h3 class=\"wp-block-heading\">Ja, die Systemanforderungen sind hoch<\/h3>\n<p>Wir wissen, dass ein M5-Mac mit 64\u00a0GB RAM eine gro\u00dfe H\u00fcrde darstellt. Es ist klar: Vielen Leser*innen dieses Blogartikels bleibt Junie Local damit vorerst verwehrt.<\/p>\n<p>Das ist schlicht der Hardwareaufwand, der heute n\u00f6tig ist, um ein 27B-Modell reibungslos auszuf\u00fchren, und wir arbeiten mit Hochdruck daran, diese H\u00fcrde zu senken. Wir m\u00f6chten den RAM-Bedarf verringern, mehr Hardware unterst\u00fctzen und den gesamten Stack weiter optimieren. Sollten die hohen Anforderungen Ihrem Test von Junie Local noch im Weg stehen: Wir setzen alles daran, die Einstiegsvoraussetzungen zu senken.<\/p>\n<h2 class=\"wp-block-heading\">Das ist erst der Anfang<\/h2>\n<p>Ein Modell, eine Chipfamilie, eine Plattform. Wir haben den Fokus zun\u00e4chst bewusst eng gew\u00e4hlt: Ein einziges Modell optimal auf den gesamten Stack abzustimmen bringt mehr, als viele Modelle nur halbherzig zu unterst\u00fctzen.<\/p>\n<p>Wir haben bei den Macs angefangen, planen aber weit \u00fcber sie hinaus. Wir verf\u00fcgen bereits \u00fcber funktionierende Prototypen f\u00fcr DGX Spark und RTX 5090 und evaluieren Grafikkarten mit 24\u00a0GB Speicher. Auf einer dedizierten GPU verh\u00e4lt sich das Prefill grundlegend anders, wodurch sich ein Gro\u00dfteil der Optimierungsarbeit auf diese Hardwarearchitektur verlagert.<\/p>\n<p>Teilen Sie uns gerne mit, f\u00fcr welche Plattformen Sie sich als N\u00e4chstes Unterst\u00fctzung w\u00fcnschen.<\/p>\n<h2 class=\"wp-block-heading\">Erste Schritte<\/h2>\n<p>Junie Local ist v\u00f6llig kostenlos \u2013 ohne Registrierung, ohne Abonnement, ohne Credits und ohne Kreditkarte.<\/p>\n<p>\u00d6ffnen Sie Junie, geben Sie \/local ein und lassen Sie den Agent eine Aufgabe erledigen, die Sie bisher aufgeschoben haben. Geben Sie uns anschlie\u00dfend Feedback: Was hat nicht geklappt, was hat Sie positiv \u00fcberrascht und welche Funktionen w\u00fcnschen Sie sich als N\u00e4chstes? Jedes Detail von Junie basiert auf diesem Feedback, und auch Junie Local ist da keine Ausnahme.<\/p>\n<div class=\"buttons\">\n<div class=\"buttons__row\"><a class=\"btn\" href=\"https:\/\/jb.gg\/jlblog\" target=\"_blank\" rel=\"noopener\">Junie Local ausprobieren<\/a><\/div>\n<\/div>\n<p><strong>Autor des urspr\u00fcnglichen Blogposts<\/strong><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2026\/04\/unnamed-file-e1775655242350-200x200.jpg\" width=\"200\" height=\"200\" alt=\"Dmitry Savelev\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                            <h4>Dmitry Savelev<\/h4>\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":732936,"comment_status":"closed","ping_status":"closed","template":"","categories":[9159,947,8397,286],"tags":[8759,76,477],"cross-post-tag":[],"class_list":["post-736891","junie","type-junie","status-publish","has-post-thumbnail","hentry","category-agentic-ai","category-coding","category-jetbrains-ai","category-new-products","tag-junie","tag-news","tag-release"],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/junie\/736891","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/junie"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/types\/junie"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/comments?post=736891"}],"version-history":[{"count":5,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/junie\/736891\/revisions"}],"predecessor-version":[{"id":736896,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/junie\/736891\/revisions\/736896"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/media\/732936"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/media?parent=736891"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/categories?post=736891"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/tags?post=736891"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/cross-post-tag?post=736891"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}