feat: add integrated terminal with xterm.js and shell sessions

This commit is contained in:
plenarius
2026-04-20 19:32:02 -04:00
parent b36391b520
commit 64908098cd
7 changed files with 242 additions and 10 deletions
+25
View File
@@ -0,0 +1,25 @@
import { Router } from "express";
import {
createTerminalSession,
listSessions,
destroySession,
} from "../services/terminal.service.js";
const router = Router();
router.get("/sessions", (_req, res) => {
res.json({ sessions: listSessions() });
});
router.post("/sessions", (req, res) => {
const id = (req.body.id as string) || `term-${Date.now()}`;
createTerminalSession(id);
res.json({ id });
});
router.delete("/sessions/:id", (req, res) => {
destroySession(req.params.id);
res.json({ ok: true });
});
export default router;