awslabs / awslabs/amazonq.nvim

Migrate to Auth Identity Language Server plugin instead of Device SSO command

Open
#2 0 comments 4 reactions 0 assignees View on GitHub
Dominant language
Lua
Stars
188
Forks
13
PR merge metrics
No merged PRs in 30d

Description

## Description

Currently plugin uses [Device SSO Auth command Language Server extension](https://github.com/aws/language-servers/tree/main/server/device-sso-auth-lsp) to manage SSO authentication and caching of token on filesystem. This server extension is experimental and temporary.

Migrate plugin [login flow](https://github.com/awslabs/amazonq.nvim/blob/main/lua/amazonq/sso.lua#L30-L63) command to use new standard [aws-lsp-identity: Identity server](https://github.com/aws/language-servers/tree/main/server/aws-lsp-identity). That server implements set of LSP protocol extensions to request SSO token. It also manages SSO authentication flow and management of token on disk in robust way.

* Identity Management LSP protocol extension, implemented in Identiyy Server: https://github.com/aws/language-server-runtimes/tree/main/runtimes#identity-management
* https://github.com/aws/amazon-q-eclipse/pull/125 for reference integration with Identity Server.

Contributor guide

Open the contributing guide

Research direction

Start in lua/amazonq/sso.lua at the login flow on lines 30-63, then read the Identity Management LSP protocol and the aws-lsp-identity server. The Eclipse integration in amazon-q-eclipse#125 is the stated reference. Done means the plugin uses the standard Identity server instead of the experimental Device SSO Auth server for authentication and token management.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, lua
Domain
authentication, tooling
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.