UNPKG

@sirmrmarty/n8n-nodes-tmux-orchestrator

Version:

n8n nodes for orchestrating Claude AI agents through tmux sessions

34 lines (33 loc) 2.09 kB
export interface TmuxExecutionResult { success: boolean; stdout: string; stderr: string; command: string; timestamp: string; } export interface TmuxExecutionOptions { timeout?: number; maxBuffer?: number; cwd?: string; env?: Record<string, string>; } export declare class SecureTmuxWrapper { private static readonly DEFAULT_TIMEOUT; private static readonly DEFAULT_MAX_BUFFER; private static readonly TMUX_BINARY; static executeSecurely(command: string, args: string[], options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static sendKeysSecurely(sessionName: string, windowIndex: number, keys: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static sendCommandSecurely(sessionName: string, windowIndex: number, command: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static createSessionSecurely(sessionName: string, initialDirectory?: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static createWindowSecurely(sessionName: string, windowName: string, initialDirectory?: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static capturePaneSecurely(sessionName: string, windowIndex: number, startLine?: number, endLine?: number, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static listSessionsSecurely(options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static listWindowsSecurely(sessionName: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static killSessionSecurely(sessionName: string, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; static hasSessionSecurely(sessionName: string, options?: TmuxExecutionOptions): Promise<boolean>; static killWindowSecurely(sessionName: string, windowIndex: number, options?: TmuxExecutionOptions): Promise<TmuxExecutionResult>; private static buildCommand; private static sanitizeKeys; private static escapeShellArgument; static validateTmuxAvailable(): Promise<boolean>; }