first commit

This commit is contained in:
npc0-hue
2026-07-11 14:56:10 +08:00
commit 7e05d0a4e7
660 changed files with 78119 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
export type PluginPermission =
| "server.create"
| "server.read"
| "server.lifecycle"
| "server.files.read"
| "server.files.write"
| "server.logs.read"
| "server.artifacts.read"
| "server.artifacts.write"
| "ai.invoke";
export type PluginBridgeAction =
| "server.instances.read"
| "jobs.dispatch"
| "logs.query"
| "artifacts.open"
| "files.request"
| "ai.invoke";
export interface PluginPageContract {
key: string;
title: string;
path: string;
permissions?: PluginPermission[];
bridgeActions?: PluginBridgeAction[];
}
export interface PluginBridgeManifestContract {
id: string;
declaredPermissions: PluginPermission[];
bridgeActions: PluginBridgeAction[];
pages: PluginPageContract[];
aiPurposes?: string[];
}
export interface PluginBridgeThemeTokens {
colorScheme: "light" | "dark";
accentColor: string;
}
export interface PluginBridgeHostContext {
pluginId: string;
routeKey: string;
serverInstanceId?: string;
themeTokens: PluginBridgeThemeTokens;
permissions: PluginPermission[];
bridgeActions: PluginBridgeAction[];
aiPurposes: string[];
}
export interface PluginBridgeExecuteEnvelope {
requestId: string;
action: PluginBridgeAction;
aiPurpose?: string;
payload?: Record<string, string>;
}
export interface PluginBridgeSafeError {
code: string;
message: string;
details?: string[];
}
export interface PluginBridgeExecutionResult {
requestId: string;
action: PluginBridgeAction;
status: "ok" | "queued" | "denied" | "unsupported" | "cancelled" | "error" | string;
result?: Record<string, string>;
error?: PluginBridgeSafeError;
}