aws-toolkit-vscode icon indicating copy to clipboard operation
aws-toolkit-vscode copied to clipboard

Ability to disable CodeWhisperer

Open timfallmk opened this issue 1 year ago • 16 comments

Problem

We used to be able to disable Codewhisperer (but not the whole extension) under "AWS > experiments" but this option has been removed (I assume because it's no longer an experiment). image

My organization is not legally allowed to use Codewhisperer, but we can't disable just that feature without disabling the entire extension. Can we get some way of turning this off?

It would be great if it also removed highly annoying highlighted footer as well. image

Expected behavior

Ability to disable entire Codewhisperer feature via settings.

timfallmk avatar Apr 13 '23 20:04 timfallmk

My organization is not legally allowed to use Codewhisperer, but we can't disable just that feature without disabling the entire extension. Can we get some way of turning this off?

Seems reasonable, and I think being able to selectively turn off components would be nice in the resource explorer as well.

It would be great if it also removed highly annoying highlighted footer as well.

Looks like a bug to me. It shouldn't be showing if you're not using the feature.

JadenSimon avatar Apr 13 '23 22:04 JadenSimon

Ugh, came here looking for how to get rid of that footer.

Guess I'll just knock AWS Toolkit out of there entirely for now.

George-B-Simpson avatar Apr 14 '23 20:04 George-B-Simpson

@timfallmk On which version were you able to disable it? I've downgraded all the way to 1.59.0, and there is still no option to disable it. The "CodeWhisperer release" commit was two days ago, so I thought rolling it back would help, but no, even downgrading does not help.

dark-penguin avatar Apr 15 '23 08:04 dark-penguin

It was quite some time ago, I'm afraid I don't have a version number. The entire extension was "experimental" at that point.

timfallmk avatar Apr 15 '23 17:04 timfallmk

CodeWhisperer features are not enabled at all if you don't sign in. So there should be no performance or UI cost, thus no need to disable it?

Showing the CW statusbar definitely shouldn't happen if not being used, so that will be fixed. https://github.com/aws/aws-toolkit-vscode/pull/3402

justinmk3 avatar Apr 17 '23 16:04 justinmk3

@justinmk3 What specifically do you mean when you say "not signed in"? To AWS, To Codewhisperer? If it's AWS at all, then what's the point of keeping the extension on, as it's the same as disabling the entire thing.

timfallmk avatar Apr 17 '23 16:04 timfallmk

@timfallmk CodeWhisperer has a "Start" button. If you don't click that button and sign-in, its features are already disabled.

image

justinmk3 avatar Apr 17 '23 19:04 justinmk3

@justinmk3 Thanks for pointing that out, I was not aware of it. I don't think it solves the problem though, as an explicit opt-in "enable" feature checkbox would clarify that CodeWhisperer is not currently active, nor has ever been activated. The latter is important for a legal compliance perspective, aside from being good practice.

It's not clear to me (and I think others are in the same position) that clicking that button is the difference between codewhisperer being "on" and "off". For example, I still am able to run commands from the command pallet for CW and be told things like "this language is not supported". That would suggest to me that at least some set of CW functionality is "on".

This would also possibly make it easier to solve the UI display bug.

timfallmk avatar Apr 17 '23 19:04 timfallmk

an explicit opt-in "enable" feature checkbox ... important for a legal compliance perspective

Didn't consider that, thanks for mentioning it.

aside from being good practice

True. We're also trying to avoid unnecessary configuration where possible, but need to revisit this case.

justinmk3 avatar Apr 17 '23 19:04 justinmk3

an explicit opt-in "enable" feature checkbox ... important for a legal compliance perspective

Didn't consider that, thanks for mentioning it.

aside from being good practice

True. We're also trying to avoid unnecessary configuration where possible, but need to revisit this case.

I will echo other's sentiments that for many of us not having options to disable codewhisperer will effectively force us to not use the extension.

bafonso avatar Apr 26 '23 12:04 bafonso

So there should be no performance or UI cost, thus no need to disable it?

The annoyingly highlighted "CodeWhisperer" portion of the status bar enrages me and I want to burn it to the ground. I did not ask for advertising, nor do I want it. In the end, I've uninstalled the AWS Toolkit extension and will use the good old CLI. Being able to disable that annoying crap would return control of my IDE to me.

ZebraFlesh avatar Apr 27 '23 15:04 ZebraFlesh

The annoyingly highlighted "CodeWhisperer" portion of the status bar enrages me and I want to burn it to the ground.

We do plan to fix that.

Please avoid comments that don't add new information to this discussion.

justinmk3 avatar Apr 27 '23 17:04 justinmk3

I don't believe sign is working correctly. No matter what I do I see Select IAM Credentials to View Resources.

image

spencerthayer avatar Apr 27 '23 17:04 spencerthayer

Select IAM Credentials to View Resources is for AWS Explorer, not CodeWhisperer.

CodeWhisperer sign-in is available in the Developer Tools panel. If you don't see that panel, right-click on vscode to enable it: image

justinmk3 avatar Apr 27 '23 17:04 justinmk3

an explicit opt-in "enable" feature checkbox ... important for a legal compliance perspective

Didn't consider that, thanks for mentioning it.

I wanted to second this request: we have the same challenge of not wanting people to use it until our organization's policies allow it. The latest update to the toolkit changed it so that it now shows up in the status bar next to the profile selector and when VSC starts it opens the “CodeWhisperer Reference Log” panel without prompting. Based on the age of #3421 this makes me wonder whether something changed in the process of how it detects use of that feature since nothing changed in the AWS account I'm using and it's correctly detected that I don't have it enabled.

I'd also really strongly recommend make the “share with AWS setting” disabled by default with an explicit prompt (“Enable and Share”, “Enable”, “Disable”) – that seems like an unnecessary tech press furor cycle in the making and I'd imagine it loses most of the legal weight.

acdha avatar Nov 27 '23 18:11 acdha

not wanting people to use it until our organization's policies allow it.

If your org can block traffic to codewhisperer.us-east-1.amazon.com, that will block all CodeWhisperer functionality. That is the current recommended workaround.

We are planning to add a more turnkey setting for this in AWS Toolkit, and will update here when that's available.

Related issue for jetbrains: https://github.com/aws/aws-toolkit-jetbrains/issues/4065

justinmk3 avatar Nov 29 '23 19:11 justinmk3

Amazon Q and its "inline suggestion" features (formerly CodeWhisperer) is now a separate Amazon Q extension.

justinmk3 avatar Apr 30 '24 08:04 justinmk3