HTMLShell: Run. The target loads sandboxed with one global, vsc:
// fire a command in the integrated terminal
let r = await vsc.run('deploy myapp myapp.example.com 203.0.113.10')
// wait boolean, default true; false = don't wait if terminal busy, return busy:true instead
// r.ok true | false | null (null = degraded)
// r.exitCode number | null
// r.stdout string | null, stdout+stderr merged, CRLF lines
// r.degraded true = no shell integration; command ran, status unknown
// r.busy true = wait was false and terminal was busy, command never ran
// open a file or folder in the editor, no shell
let o = await vsc.open('/path/to/project')
// file: opens/focuses an editor tab
// directory: adds as a workspace root if missing, reveals it in Explorer
// o.ok true | false, o.error string | null, o.path absolute path this result is for
// add a folder as a workspace root without pulling Explorer focus to it
let a = await vsc.addFolder('/path/to/project')
// same result shape as vsc.open; already-added directory is a no-op