From d473c3ae882a02ddf9176cbe0393529e5bf9037c Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Fri, 21 Nov 2025 01:53:58 +0800 Subject: [PATCH] Fix SSH global private key matching before subscription-specific keys (#2845) * Initial plan * Fix SSH global private key loading order by using zzz_ prefix Co-authored-by: whyour <22700758+whyour@users.noreply.github.com> * Use tilde (~) prefix for global SSH config to ensure it loads last Co-authored-by: whyour <22700758+whyour@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: whyour <22700758+whyour@users.noreply.github.com> --- back/services/sshKey.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/back/services/sshKey.ts b/back/services/sshKey.ts index f3b6308e..99465109 100644 --- a/back/services/sshKey.ts +++ b/back/services/sshKey.ts @@ -133,15 +133,15 @@ export default class SshKeyService { } public async addGlobalSSHKey(key: string, alias: string): Promise { - await this.generatePrivateKeyFile(`global_${alias}`, key); + await this.generatePrivateKeyFile(`~global_${alias}`, key); // Create a global SSH config entry that matches all hosts // This allows the key to be used for any Git repository - await this.generateGlobalSshConfig(`global_${alias}`); + await this.generateGlobalSshConfig(`~global_${alias}`); } public async removeGlobalSSHKey(alias: string): Promise { - await this.removePrivateKeyFile(`global_${alias}`); - await this.removeSshConfig(`global_${alias}`); + await this.removePrivateKeyFile(`~global_${alias}`); + await this.removeSshConfig(`~global_${alias}`); } private async generateGlobalSshConfig(alias: string) {