refactor(agents): use authorization headers instead of param for token

This commit is contained in:
Nicolas Meienberger 2026-04-09 18:51:55 +02:00
parent 9b0d307620
commit d1f872573e
No known key found for this signature in database
3 changed files with 9 additions and 7 deletions

View file

@ -121,8 +121,8 @@ export function createAgentManagerRuntime() {
Bun.serve<AgentConnectionData>({ Bun.serve<AgentConnectionData>({
port: 3001, port: 3001,
async fetch(req, srv) { async fetch(req, srv) {
const url = new URL(req.url); const authorizationHeader = req.headers.get("authorization");
const token = url.searchParams.get("token"); const token = authorizationHeader?.slice("Bearer ".length);
if (!token) { if (!token) {
return new Response("Missing token", { status: 401 }); return new Response("Missing token", { status: 401 });

View file

@ -35,9 +35,11 @@ class Agent {
} }
const url = new URL(controllerUrl); const url = new URL(controllerUrl);
url.searchParams.set("token", agentToken); this.ws = new WebSocket(url.toString(), {
headers: {
this.ws = new WebSocket(url.toString()); authorization: `Bearer ${agentToken}`,
},
});
this.controllerSession = createControllerSession(this.ws); this.controllerSession = createControllerSession(this.ws);
this.ws.onopen = () => { this.ws.onopen = () => {

View file

@ -2,12 +2,12 @@
"compilerOptions": { "compilerOptions": {
"plugins": [{ "name": "@effect/language-service" }], "plugins": [{ "name": "@effect/language-service" }],
// Environment setup & latest features // Environment setup & latest features
"lib": ["DOM", "ESNext"], "lib": ["ESNext"],
"target": "ESNext", "target": "ESNext",
"module": "Preserve", "module": "Preserve",
"moduleDetection": "force", "moduleDetection": "force",
"jsx": "react-jsx", "jsx": "react-jsx",
"types": ["bun", "node"], "types": ["node", "bun"],
"allowJs": true, "allowJs": true,
// Bundler mode // Bundler mode