- Add full Telegram bot functionality with Z.AI API integration
- Implement 4 tools: Bash, FileEdit, WebSearch, Git
- Add 3 agents: Code Reviewer, Architect, DevOps Engineer
- Add 6 skills for common coding tasks
- Add systemd service file for 24/7 operation
- Add nginx configuration for HTTPS webhook
- Add comprehensive documentation
- Implement WebSocket server for real-time updates
- Add logging system with Winston
- Add environment validation
🤖 zCode CLI X - Agentic coder with Z.AI + Telegram integration
42 lines
2.1 KiB
TypeScript
42 lines
2.1 KiB
TypeScript
import type { SandboxRuntimeConfig } from './sandbox-config.js';
|
|
import type { SandboxAskCallback, FsReadRestrictionConfig, FsWriteRestrictionConfig, NetworkRestrictionConfig } from './sandbox-schemas.js';
|
|
import { type SandboxDependencyCheck } from './linux-sandbox-utils.js';
|
|
import { SandboxViolationStore } from './sandbox-violation-store.js';
|
|
/**
|
|
* Interface for the sandbox manager API
|
|
*/
|
|
export interface ISandboxManager {
|
|
initialize(runtimeConfig: SandboxRuntimeConfig, sandboxAskCallback?: SandboxAskCallback, enableLogMonitor?: boolean): Promise<void>;
|
|
isSupportedPlatform(): boolean;
|
|
isSandboxingEnabled(): boolean;
|
|
checkDependencies(ripgrepConfig?: {
|
|
command: string;
|
|
args?: string[];
|
|
}): SandboxDependencyCheck;
|
|
getFsReadConfig(): FsReadRestrictionConfig;
|
|
getFsWriteConfig(): FsWriteRestrictionConfig;
|
|
getNetworkRestrictionConfig(): NetworkRestrictionConfig;
|
|
getAllowUnixSockets(): string[] | undefined;
|
|
getAllowLocalBinding(): boolean | undefined;
|
|
getIgnoreViolations(): Record<string, string[]> | undefined;
|
|
getEnableWeakerNestedSandbox(): boolean | undefined;
|
|
getProxyPort(): number | undefined;
|
|
getSocksProxyPort(): number | undefined;
|
|
getLinuxHttpSocketPath(): string | undefined;
|
|
getLinuxSocksSocketPath(): string | undefined;
|
|
waitForNetworkInitialization(): Promise<boolean>;
|
|
wrapWithSandbox(command: string, binShell?: string, customConfig?: Partial<SandboxRuntimeConfig>, abortSignal?: AbortSignal): Promise<string>;
|
|
getSandboxViolationStore(): SandboxViolationStore;
|
|
annotateStderrWithSandboxFailures(command: string, stderr: string): string;
|
|
getLinuxGlobPatternWarnings(): string[];
|
|
getConfig(): SandboxRuntimeConfig | undefined;
|
|
updateConfig(newConfig: SandboxRuntimeConfig): void;
|
|
cleanupAfterCommand(): void;
|
|
reset(): Promise<void>;
|
|
}
|
|
/**
|
|
* Global sandbox manager that handles both network and filesystem restrictions
|
|
* for this session. This runs outside of the sandbox, on the host machine.
|
|
*/
|
|
export declare const SandboxManager: ISandboxManager;
|
|
//# sourceMappingURL=sandbox-manager.d.ts.map
|