When a user sends a request , we should create a sandbox for them

import express from "express";
import { createOpenRouter } from '@openrouter/ai-sdk-provider';
import { streamText } from 'ai';
import { SYSTEM_PROMPT } from "./prompt";
import { createFile, updateFile, deleteFile, readFile } from "./tools";
import { z } from "zod";
import { Sandbox } from '@e2b/code-interpreter'

const TEMPLATE_ID = "z059huplbbffmp58wcf0";

const app = express();

app.use(express.json());

app.post("/prompt", async(req, res) => {
    const { prompt } = req.body;
    const sandbox = await Sandbox.create(TEMPLATE_ID)
    const host = sandbox.getHost(5173)

    const openrouter = createOpenRouter({
        apiKey: process.env.OPENROUTER_API_KEY,
      });
      const response = streamText({
        model: openrouter("gpt-4o-mini"),
        tools: {
            createFile: createFile,
            updateFile: updateFile,
            deleteFile: deleteFile,
            readFile: readFile
        },
        messages: [
            {
                role: "system",
                content: SYSTEM_PROMPT
            },
            {
                role: "user",
                content: prompt
            }
        ]
      });

      res.json({
        url: `https://${host}`
      })
});

app.listen(3000, () => {
  console.log("Server is running on port 3000");
});