Using the Copilot

Kite ships with a Copilot you can use to look up information while you code. In this article, you'll learn about what the Copilot provides and how to use it.

Searching for information

Manual search

You can search for Python expressions using the search bar up top. The Copilot will autocomplete search suggestions for you based on the most popular search terms that match your current query.

You can use the arrow keys and enter to navigate the search results. You can also select search results using the mouse.

Docs following cursor

The Copilot can also automatically search for information as you code, based on the current position of your cursor in the editor. To enable this, click on the “Click for docs to follow cursor” button to the right of the search bar.

You can click on the same button to toggle the option off/on afterwards.

Note: Autosearch only works when your code is completely indexed, which may take several minutes if you are running Kite for the first time. Refer to the editor integration guides to learn more about checking the status of Kite.

Docs

The Copilot shows several pieces of information about an expression.

Title (1)

This is the full name of the identifier, as well as the type of the value the identifier refers to. You may also navigate through the history of viewed identifiers using the arrow icons on the very right.

Type specific information (2)

The information displayed here depends on the type of the expression. In the example above, since json.dumps is a function, this area will display the function signature as well as popular calling patterns. If the expression refers to a module, we show the top members of that module.

Likewise, if the expression refers to a type, the dashboard will show the top attributes of the type.

Documentation (3)

The dashboard will also show documentation for the expression if available.

Code examples (4)

The dashboard will also show curated code examples for the expression, if available. You can click on the title of a code example to see the example in its entirety, as well as other related code examples.

Known issues

There are a number of known issues with the dashboard that we're working to fix:

  • Manual searching currently only works for identifiers from 3rd party packages (as opposed to identifiers defined in your own codebase)
  • There is currently no way to list all the code examples related to an identifier