Capability Invoked from Invoked by Description Context Requires prompt Prompt example Customization Supported languages Docs links Additional links Capability combinations IDE support | ||||||||||||
Capability name | Can be invoked from | Invocation method | Description | Context available to the capability | Does the capability requires a prompt? | Prompt example | Is customization available for the capability? | Supported languages | Docs links | Additional links | Can this be used with other capabilities? | Supported IDEs |
---|---|---|---|---|---|---|---|---|---|---|---|---|
In-line suggestions | File being edited | automatic or via shortcut keys (see this link) | This capability allows you to start typing the code you want write and letting Q suggesting "inline" the remaining of your code. The suggestions are on a line by line basis or entire codeblocks depending on the language | File being edited + open file(s) (depending on the language) | No (just start typing your code) | ----- | Yes (code and docs) | A specific subset of languages (see this link) | Link | Link (CodeWhisperer is now Q Dev inline suggestions) | No | VS Code, JetBrains, Visual Studio, Eclipse (preview) |
Standard chat | Q chat panel | ----- | This capability is a standard chat capability. There is no direct integration with the editor (but you can for example `copy` the code snippets or `insert at cursor`. Here you'd typically ask open ended coding questions or how-to but it also supports the in-the-editor workflows to explain, refactor, fix, or optimize a selected fragment of code | File in focus | Yes | How do I connect a Lambda to an SQS queue? | Yes (code and docs) | Any language (quality increases with more popular languages) | Link | ----- | @workspace, /dev, /test, /doc, /review, /transform | VS Code, JetBrains, Visual Studio, Eclipse (preview) |
Workspace context awareness | Q chat panel | @workspace | This capability simply adds workspace awareness to the standard chat. Use this feature if you want to consider the whole workspace as a potential context candidate (Q will search for relevant files and will automatically add them to the context of the prompt) | Entire workspace | Yes | @workspace where does this application manage user logins? | No | Any language (quality increases with more popular languages) | Link | Link | Standard chat (invoked from there) | VS Code, JetBrains |
In-line chat | File being edited | ⌘+I (Mac) or Ctrl+I (Windows) | This capability merges the benefits of NL prompting right inside the the editor. Use this capability if you want to stay in the flow in your editor while using a chat like interface to prompt | File being edited | Yes | Add proper logging for this function | No | Any language (quality increases with more popular languages) | Link | Link | No | VS Code, JetBrains |
Agent for software development | Q chat panel | /dev | This capability allows you to assign Q a complex programming task that requires multiple changes and deep reasoning. It's a generic agent that has access to all the workspace and can edit/create multiple files as part of its output | Entire workspace | Yes | Create a new Flask route in a dedicated web page at the following path: "/votes". This page should be password protected. The page will show a table (in a grid format) with the four restaurants and the vote for each restaurant. The page will also allow a user to vote for the restaurant of their choosing | No | Any language (quality increases with more popular languages) | Link | Link | Standard chat (invoked from there) | VS Code, JetBrains |
Agent for code transformation | Q chat panel | /transform | This capability, in the IDE, allows you to upgrade your Java 7/11 applications to Java 18 as well as Windows .Net Framework 4.5 to Linux .Net core. It also allows to migrate embedded SQL in Java apps from Oracle to PostgreSQL. Outside the IDE, this capability can assist with mainframe and VMware migrations as well | Entire workspace | No (guided workflow) | ----- | No | Specific versions of Java, .Net and SQL (see this link) | Link | Link | Standard chat (invoked from there) | VS Code (only Java and SQL transformations), JetBrains (only Java and SQL transformations), Visual Studio (only .Net transformations) |
Agent for test generation | Q chat panel | /test | This capability allows you to build unit tests for an entire file or for a subset of it. It's a specialized agent that has enhanced workflows that checks the unit tests (locally, in the IDE) and iterate until they work | Single file or single function | Yes (optional) | Create a unit test for the function thisIsMyFunction | No | Java and Python (see this link) | Link | Link | Standard chat (invoked from there) | VS Code, JetBrains |
Agent for documentation generation | Q chat panel | /doc | This capability allows you to create or update README files in your repository. It can create/update the README in the root of the workspace or you can select a folder (that will become the base of the workflow and where it will create the README) | Entire workspace or a subfolder | No (only select the folder) | ----- | No | Java, Python, JavaScript and TypeScript (see this link) | Link | Link | Standard chat (invoked from there) | VS Code, JetBrains |
Agent for code reviews | Q chat panel | /review | This capability allows you to review your code across dimensions such as security and best practices. It works with a mix of static and LLM based analysis and proposed resolution. | Entire workspace | No (guided workflow) | ----- | No | A specific subset of languages (see this link) | Link | Link | Standard chat (invoked from there) | VS Code, JetBrains |
Back to the blog post Amazon Q Developer in the IDE cheat sheet