veas
Version:
Veas CLI - Command-line interface for Veas platform
50 lines • 1.68 kB
JavaScript
import { AuthManager } from '../auth/auth-manager.js';
import { logger } from '../utils/logger.js';
export async function getBestAuthToken() {
const envPat = process.env.VEAS_PAT || process.env.PAT;
if (envPat) {
logger.debug('Using PAT from environment');
return {
token: envPat,
type: 'pat',
};
}
const mcpToken = process.env.MCP_TOKEN;
if (mcpToken) {
logger.debug('Using MCP_TOKEN from environment');
return {
token: mcpToken,
type: mcpToken.includes('_') ? 'pat' : 'unknown',
};
}
const authManager = AuthManager.getInstance();
const session = await authManager.getSession();
const storedPAT = session?.patToken || session?.token;
if (storedPAT) {
logger.debug('Using PAT token from device authentication');
return {
token: storedPAT,
type: 'pat',
};
}
const cliToken = await authManager.getToken();
if (cliToken) {
logger.debug('Using CLI token from device authentication');
return {
token: cliToken,
type: 'cli',
};
}
throw new Error('No authentication token available. Please run "veas login" or set VEAS_PAT environment variable.');
}
export function prepareMCPHeaders(authToken) {
const headers = {
'Content-Type': 'application/json',
Accept: 'application/json, text/event-stream',
};
headers['X-MCP-Token'] = authToken.token;
headers.Authorization = `Bearer ${authToken.token}`;
headers['X-Token-Type'] = authToken.type;
return headers;
}
//# sourceMappingURL=auth-wrapper.js.map