INNER CODE UNIT · TypeScript
runBackgroundDelegation
superagent-ai/grok-cli · src/index.ts:251
async function runBackgroundDelegation(jobPath: string, options: CliOptions) {
let output = "";
let agent: Agent | undefined;
try {
const delegation = await loadDelegation(jobPath);
const apiKey = stringOption(options.apiKey) || getApiKey();
if (!apiKey) {
throw new Error("API key required. Set GROK_API_KEY, use --api-key, or save it to ~/.grok/user-settings.json.");
}
const baseURL = stringOption(options.baseUrl) || getBaseURL();
const explicitModel = stringOption(options.model) || delegation.model;
const model = explicitModel ? normalizeModelId(explicitModel) : undefined;
const maxToolRounds =
parseInt(stringOption(options.maxToolRounds) || String(delegation.maxToolRounds), 10) || delegation.maxToolRounds;
const sandboxMode = resolveCliSandboxMode(options.sandbox) || delegation.sandboxMode || getCurrentSandboxMode();
const sandboxSettings = mergeSandboxSettings(getCurrentSandboxSettings(), delegation.sandboxSettings);