Summary
Currently, the extension sets CODER_SSH_SESSION_TYPE=vscode and --usage-app=vscode regardless of which IDE is actually being used. This means Cursor, Windsurf, and other VS Code forks are all reported as "vscode" in usage statistics.
This makes it difficult for deployment admins to understand which IDEs their users are connecting with.
Proposed Solution
Detect the IDE using vscode.env.appName and set the appropriate session type:
function getIDEName(): string {
const appName = vscode.env.appName.toLowerCase();
if (appName.includes('cursor')) return 'cursor';
if (appName.includes('windsurf')) return 'windsurf';
return 'vscode';
}
Then use this value when setting:
CODER_SSH_SESSION_TYPE via SSH SetEnv (in src/remote/remote.ts)
--usage-app flag when launching coder ssh
References
Summary
Currently, the extension sets
CODER_SSH_SESSION_TYPE=vscodeand--usage-app=vscoderegardless of which IDE is actually being used. This means Cursor, Windsurf, and other VS Code forks are all reported as "vscode" in usage statistics.This makes it difficult for deployment admins to understand which IDEs their users are connecting with.
Proposed Solution
Detect the IDE using
vscode.env.appNameand set the appropriate session type:Then use this value when setting:
CODER_SSH_SESSION_TYPEvia SSHSetEnv(insrc/remote/remote.ts)--usage-appflag when launchingcoder sshReferences