@Michael Davidovich 
You can export individual packages or files from the ObjectScript Explorer. Simply right-click on the node(s) that you want to export and click the "Export" menu option. The command may be better in your use case though because once you have your settings configured properly, you don't need to do anything else besides run the command to update your local copies.

Unfortunately there isn't a way to automatically update your copy if changes are detected. If you make an edit and then try to save it to the server the extension will check if there's a conflict and help you resolve it. If you are working client-side then I wouldn't expect a server conflict though because your local copies (synced with source control of course) should be the "source of truth". You can always re-run the export command before you edit if you want to avoid conflicts.

As for the disappearing disp class, editing the impl class will not force the disp class to be regenerated so its state shouldn't change. That may be due to your Studio configuration being set to hide generated files.

@Michael Davidovich

As a first step I suggest you read through our online documentation to familiarize yourself with common workflows. The extension supports a client-side workflow where you export files to the currently open local folder and handle the source control yourself. To edit client-side, you can use the ObjectScript Explorer to export files. You can also use the Export Code From Server command, which uses the objectscript.export configuration settings to determine what to export. Our extension does not support VS Code's "Download" menu option.

Since the disp class is generated from the spec class you probably don't want to store it in source control but if you still want to export it, you can have the Explorer show generated files before you export a package or if you're using the command you can set the objectscript.export.generatedto true.

@Jonathan Lent 
Starting in IRIS 2020.1.2, 2021.1.1 and 2021.2 you can directly drill down into objects and see all of their properties during debugging. If a variable is an object, you will see its class name in grey next to it and an arrow to expand it like you would a folder in the VS Code file explorer view. This new feature is shown around timestamp 3:30 in this Learning Services produced video on debugging using VS Code.

Before SAM, there was no way to monitor Cache or IRIS using Prometheus out of the box. You had to implement the metrics exporter API yourself or use a community implementation like the one you linked. Since 2020.1, the /api/monitor API is provided by InterSystems out of the box. SAM uses this API to collect metrics and alerts from servers.

Yes, that's expected behavior. The vscode-objectscript extension defines the languages based on file extensions:

      {
        "id": "objectscript",
        "aliases": [
          "ObjectScript"
        ],
        "extensions": [
          ".mac",
          ".int"
        ]
      },
      {
        "id": "objectscript-class",
        "aliases": [
          "ObjectScript Class"
        ],
        "extensions": [
          ".cls"
        ]
      },
      {
        "id": "objectscript-macros",
        "aliases": [
          "ObjectScript Include"
        ],
        "extensions": [
          ".inc"
        ]
      },
      {
        "id": "objectscript-csp",
        "aliases": [
          "ObjectScript CSP"
        ],
        "extensions": [
          ".csp",
          ".csr"
        ]
      },

@Julian Matthews The Language Server extension includes an ObjectScript formatter with the following features:

  • Normalize the case of ObjectScript commands, system functions and system variables.
  • Normalize the usage of short or long versions of ObjectScript commands, system functions and system variables.

You can invoke it like any other formatter in VS Code. This VS Code doc page has more information on formatting in VS Code. The Language Server README has more info on its features and configuration settings.