{"version":3,"sources":["/home/mkabumattar/work/withrawi/rawi/dist/chunk-CTDDUOU6.cjs","../src/core/exec/context.ts"],"names":["execAsync","promisify","buildExecContext","directoryListing","lsCommand","stdout","error","cpus","os","totalMem","freeMem","formatContextForPrompt","context"],"mappings":"AAAA;ACAA,8CAAmB,gEACJ,4BACS,IAGlBA,CAAAA,CAAYC,6BAAAA,mBAAc,CAAA,CAEhC,MAAA,SAAsBC,CAAAA,CAAAA,CAAyC,CAC7D,IAAIC,CAAAA,CAAmB,EAAA,CACvB,GAAI,CACF,IAAMC,CAAAA,CAAY,OAAA,CAAQ,QAAA,GAAa,OAAA,CAAU,KAAA,CAAQ,QAAA,CACnD,CAAC,MAAA,CAAAC,CAAM,CAAA,CAAI,MAAML,CAAAA,CAAUI,CAAS,CAAA,CAC1CD,CAAAA,CAAmBE,CACrB,CAAA,KAAA,CAASC,CAAAA,CAAO,CACd,OAAA,CAAQ,IAAA,CAAK,2CAAA,CAA6CA,CAAK,CAAA,CAC/DH,CAAAA,CAAmB,iCACrB,CAEA,IAAMI,CAAAA,CAAOC,YAAAA,CAAG,IAAA,CAAK,CAAA,CACfC,CAAAA,CAAWD,YAAAA,CAAG,QAAA,CAAS,CAAA,CACvBE,CAAAA,CAAUF,YAAAA,CAAG,OAAA,CAAQ,CAAA,CAE3B,MAAO,CACL,EAAA,CAAI,CACF,IAAA,CAAMA,YAAAA,CAAG,IAAA,CAAK,CAAA,CACd,OAAA,CAASA,YAAAA,CAAG,OAAA,CAAQ,CAAA,CACpB,QAAA,CAAUA,YAAAA,CAAG,QAAA,CAAS,CAAA,CACtB,IAAA,CAAMA,YAAAA,CAAG,IAAA,CAAK,CAChB,CAAA,CACA,IAAA,CAAM,CACJ,OAAA,CAAS,OAAA,CAAQ,OACnB,CAAA,CACA,KAAA,CAAO,OAAA,CAAQ,GAAA,CAAI,KAAA,EAAS,SAAA,CAC5B,GAAA,CAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,CACjB,IAAA,CAAMA,YAAAA,CAAG,OAAA,CAAQ,CAAA,CACjB,GAAA,CAAK,CACH,KAAA,iBAAOD,CAAAA,mBAAK,CAAC,CAAA,6BAAG,OAAA,EAAS,SAAA,CACzB,KAAA,CAAOA,CAAAA,CAAK,MACd,CAAA,CACA,MAAA,CAAQ,CACN,KAAA,CAAO,IAAA,CAAK,KAAA,CAAME,CAAAA,CAAW,IAAA,CAAO,IAAI,CAAA,CACxC,IAAA,CAAM,IAAA,CAAK,KAAA,CAAMC,CAAAA,CAAU,IAAA,CAAO,IAAI,CACxC,CAAA,CACA,gBAAA,CAAAP,CACF,CACF,CAEO,SAASQ,CAAAA,CAAuBC,CAAAA,CAA8B,CACnE,MAAO,CAAA;AAAA;AAAA,kBAAA,EAEWA,CAAAA,CAAQ,EAAA,CAAG,IAAI,CAAA,CAAA,EAAIA,CAAAA,CAAQ,EAAA,CAAG,OAAO,CAAA,EAAA,EAAKA,CAAAA,CAAQ,EAAA,CAAG,QAAQ,CAAA,GAAA,EAAMA,CAAAA,CAAQ,EAAA,CAAG,IAAI,CAAA;AAAA,iBAAA,EACnFA,CAAAA,CAAQ,IAAA,CAAK,OAAO,CAAA;AAAA,OAAA,EAC9BA,CAAAA,CAAQ,KAAK,CAAA;AAAA,2BAAA,EACOA,CAAAA,CAAQ,GAAG,CAAA;AAAA,gBAAA,EACtBA,CAAAA,CAAQ,IAAI,CAAA;AAAA,UAAA,EAClBA,CAAAA,CAAQ,GAAA,CAAI,KAAK,CAAA,EAAA,EAAKA,CAAAA,CAAQ,GAAA,CAAI,KAAK,CAAA;AAAA,cAAA,EACnCA,CAAAA,CAAQ,MAAA,CAAO,KAAK,CAAA;AAAA,aAAA,EACrBA,CAAAA,CAAQ,MAAA,CAAO,IAAI,CAAA;AAAA;AAAA;AAAA;AAAA,EAIhCA,CAAAA,CAAQ,gBAAgB,CAAA;AAAA,CAAA,CACxB,IAAA,CAAK,CACP,CAAA,6BAAA;AD/CA","file":"/home/mkabumattar/work/withrawi/rawi/dist/chunk-CTDDUOU6.cjs","sourcesContent":[null,"import {exec} from 'node:child_process';\nimport os from 'node:os';\nimport {promisify} from 'node:util';\nimport type {ExecContext} from '../../cli/commands/exec/types.js';\n\nconst execAsync = promisify(exec);\n\nexport async function buildExecContext(): Promise<ExecContext> {\n  let directoryListing = '';\n  try {\n    const lsCommand = process.platform === 'win32' ? 'dir' : 'ls -la';\n    const {stdout} = await execAsync(lsCommand);\n    directoryListing = stdout;\n  } catch (error) {\n    console.warn('Warning: Could not get directory listing:', error);\n    directoryListing = 'Unable to get directory listing';\n  }\n\n  const cpus = os.cpus();\n  const totalMem = os.totalmem();\n  const freeMem = os.freemem();\n\n  return {\n    os: {\n      type: os.type(),\n      release: os.release(),\n      platform: os.platform(),\n      arch: os.arch(),\n    },\n    node: {\n      version: process.version,\n    },\n    shell: process.env.SHELL || 'unknown',\n    cwd: process.cwd(),\n    home: os.homedir(),\n    cpu: {\n      model: cpus[0]?.model || 'unknown',\n      cores: cpus.length,\n    },\n    memory: {\n      total: Math.round(totalMem / 1024 / 1024),\n      free: Math.round(freeMem / 1024 / 1024),\n    },\n    directoryListing,\n  };\n}\n\nexport function formatContextForPrompt(context: ExecContext): string {\n  return `\n--- ENVIRONMENT CONTEXT ---\nOperating System: ${context.os.type} ${context.os.release} (${context.os.platform} - ${context.os.arch})\nNode.js Version: ${context.node.version}\nShell: ${context.shell}\nCurrent Working Directory: ${context.cwd}\nHome Directory: ${context.home}\nCPU Info: ${context.cpu.model} (${context.cpu.cores} cores)\nTotal Memory: ${context.memory.total} MB\nFree Memory: ${context.memory.free} MB\n--- END ENVIRONMENT CONTEXT ---\n\nCurrent directory listing:\n${context.directoryListing}\n`.trim();\n}\n"]}