The UI extension is in “Extending Workbench”.
1. add icon buttons on the title menu bar(like toolbar)
2. add icon buttons on the status bar
3. add items to any existing menu or add new context menu
4. add an outline view to show symbol list(like imenu with a list view), and add a context menu for the symbols in the list
5. add an virtual filesystem view to show files from a ftp server and open files in it
6. call any command in the VSCode and get the result. The command may be a file chooser dialog.
7. call any command registered by other extensions and get the result
8. register commands for user to use. The command is implemented in the extension with typescript(like javescript). The command can be run by user with Ctrl-P(like M-x in emacs) or can be called by other extensions(like in 7).
9. create a webview and show it like an opened file. It can be used to preview markdown.
10. add key bindings
11. create an slot in log panel and output logs to it.
12. display notifications(like the tooltip window in emacs)
13. show progress
14. get opened file list or get the active file