I’ve brought this up before. If I install the Cody plugin in two different JB IDEs (in this case Goland and WebStorm), I always get prompted to enter my keychain password on one of the IDEs:
Entering my password and clicking “Always Allow” never works. Entering my password and clicking “Allow” sometimes works. Giving up out of frustration and clicking “Deny” feels good but triggers an IDE error sometimes:
opened 12:45AM - 10 Feb 25 UTC
bug
repo/jetbrains
### IDE Information
WebStorm 2024.3.2.1
Build #WS-243.23654.157, built on Janua… ry 23, 2025
Licensed to Michael Henderson
You have a perpetual fallback license for this version.
Subscription is active until January 31, 2026.
Runtime version: 21.0.5+8-b631.30 aarch64 (JCEF 122.1.9)
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Toolkit: sun.lwawt.macosx.LWCToolkit
macOS 15.3
GC: G1 Young Generation, G1 Concurrent GC, G1 Old Generation
Memory: 4096M
Cores: 10
Metal Rendering is ON
Registry:
suggest.all.run.configurations.from.context=true
ide.experimental.ui=true
terminal.new.ui=true
Non-Bundled Plugins:
org.asciidoctor.intellij.asciidoc (0.43.6)
com.sourcegraph.jetbrains (7.67.1-nightly)
mdx.js (243.21565.120)
### Bug Description
When I have the plugin installed in two JB IDEs, I get prompted to allow access to my keychain.
The prompt never seems to work. When I get discouraged and click "Deny," I get this.
### Additional context
Stacktrace:
```text
java.lang.AssertionError: Assertion failed
at com.sourcegraph.cody.ui.web.CodyToolWindowContentWebviewHost.adopt$lambda$0(WebviewView.kt:39)
at com.intellij.openapi.application.ActionsKt.runInEdt(actions.kt:51)
at com.intellij.openapi.application.ActionsKt.runInEdt$default(actions.kt:48)
at com.sourcegraph.cody.ui.web.CodyToolWindowContentWebviewHost.adopt(WebviewView.kt:38)
at com.sourcegraph.cody.ui.web.WebviewViewManager.provideView$lambda$6(WebviewView.kt:110)
at com.sourcegraph.cody.ui.web.WebUIService.createWebviewView$Sourcegraph(WebUIService.kt:121)
at com.sourcegraph.cody.ui.web.WebviewViewManager.provideView(WebviewView.kt:109)
at com.sourcegraph.cody.ui.web.WebviewViewManager.registerProvider$lambda$3(WebviewView.kt:89)
at com.intellij.openapi.application.ActionsKt.invokeLater$lambda$5(actions.kt:60)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:236)
at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:25)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:198)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread$lambda$2(AnyThreadWriteThreadingSupport.kt:217)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:128)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread(AnyThreadWriteThreadingSupport.kt:216)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:843)
at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:421)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:107)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:101)
at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:117)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:43)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:781)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:728)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:750)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:675)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:573)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18$lambda$17$lambda$16$lambda$15(IdeEventQueue.kt:355)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:857)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18$lambda$17$lambda$16(IdeEventQueue.kt:354)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$2$lambda$1(IdeEventQueue.kt:1045)
at com.intellij.openapi.application.WriteIntentReadAction.lambda$run$0(WriteIntentReadAction.java:24)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:128)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:917)
at com.intellij.openapi.application.WriteIntentReadAction.compute(WriteIntentReadAction.java:55)
at com.intellij.openapi.application.WriteIntentReadAction.run(WriteIntentReadAction.java:23)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$2(IdeEventQueue.kt:1045)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$3(IdeEventQueue.kt:1054)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:109)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1054)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18(IdeEventQueue.kt:349)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:395)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
```
Additional info:
```text
When I have the plugin installed in two JB IDEs, I get prompted to allow access to my keychain.
The prompt never seems to work. When I get discouraged and click "Deny," I get this.
```
I don’t know if it matters but my Sourcegraph account uses Google for auth.
I actually stopped using multiple IDEs for a while because this is so annoying. But with the recent builds (7.67.1-nightly) the Allow button usually works after the second or third attempt, so I’m putting up with it. It would be great, as they say, if this did work.