UNPKG

aws-cdk

Version:

AWS CDK CLI, the command line tool for CDK apps

36 lines 4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.guessAgent = guessAgent; /** * Guess whether we're being executed by an AI agent * * It's hard for us to say `false` for sure, so we only respond * with `yes` or `don't know`. */ function guessAgent() { const awsExecutionEnv = (process.env.AWS_EXECUTION_ENV ?? '').toLocaleLowerCase(); if (awsExecutionEnv.includes('amazonq') || awsExecutionEnv.includes('kiro')) { return true; } if (process.env.CLAUDECODE) { return true; } // Expecting CODEX_SANDBOX, CODEX_THREAD_ID if (Object.keys(process.env).some(x => x.startsWith('CODEX_'))) { return true; } if (process.env.CURSOR_AGENT) { return true; } // https://code.visualstudio.com/updates/v1_121#_agentaware-terminal-commands if (process.env.VSCODE_AGENT) { return true; } // Cline -- not sure if it sets these, but users might to configure Cline. if (Object.keys(process.env).some(x => x.startsWith('CLINE_'))) { return true; } // Copilot doesn't set an envvar (at least not in VS Code) return undefined; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Vlc3MtYWdlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJndWVzcy1hZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLGdDQWdDQztBQXRDRDs7Ozs7R0FLRztBQUNILFNBQWdCLFVBQVU7SUFDeEIsTUFBTSxlQUFlLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbEYsSUFBSSxlQUFlLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUM1RSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMkNBQTJDO0lBQzNDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMERBQTBEO0lBRTFELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbi8qKlxuICogR3Vlc3Mgd2hldGhlciB3ZSdyZSBiZWluZyBleGVjdXRlZCBieSBhbiBBSSBhZ2VudFxuICpcbiAqIEl0J3MgaGFyZCBmb3IgdXMgdG8gc2F5IGBmYWxzZWAgZm9yIHN1cmUsIHNvIHdlIG9ubHkgcmVzcG9uZFxuICogd2l0aCBgeWVzYCBvciBgZG9uJ3Qga25vd2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBndWVzc0FnZW50KCk6IHRydWUgfCB1bmRlZmluZWQge1xuICBjb25zdCBhd3NFeGVjdXRpb25FbnYgPSAocHJvY2Vzcy5lbnYuQVdTX0VYRUNVVElPTl9FTlYgPz8gJycpLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gIGlmIChhd3NFeGVjdXRpb25FbnYuaW5jbHVkZXMoJ2FtYXpvbnEnKSB8fCBhd3NFeGVjdXRpb25FbnYuaW5jbHVkZXMoJ2tpcm8nKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKHByb2Nlc3MuZW52LkNMQVVERUNPREUpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIEV4cGVjdGluZyBDT0RFWF9TQU5EQk9YLCBDT0RFWF9USFJFQURfSURcbiAgaWYgKE9iamVjdC5rZXlzKHByb2Nlc3MuZW52KS5zb21lKHggPT4geC5zdGFydHNXaXRoKCdDT0RFWF8nKSkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9jZXNzLmVudi5DVVJTT1JfQUdFTlQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIGh0dHBzOi8vY29kZS52aXN1YWxzdHVkaW8uY29tL3VwZGF0ZXMvdjFfMTIxI19hZ2VudGF3YXJlLXRlcm1pbmFsLWNvbW1hbmRzXG4gIGlmIChwcm9jZXNzLmVudi5WU0NPREVfQUdFTlQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENsaW5lIC0tIG5vdCBzdXJlIGlmIGl0IHNldHMgdGhlc2UsIGJ1dCB1c2VycyBtaWdodCB0byBjb25maWd1cmUgQ2xpbmUuXG4gIGlmIChPYmplY3Qua2V5cyhwcm9jZXNzLmVudikuc29tZSh4ID0+IHguc3RhcnRzV2l0aCgnQ0xJTkVfJykpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDb3BpbG90IGRvZXNuJ3Qgc2V0IGFuIGVudnZhciAoYXQgbGVhc3Qgbm90IGluIFZTIENvZGUpXG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdfQ==