@agenshield/daemon 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +118 -0
- package/acl.d.ts +44 -0
- package/acl.d.ts.map +1 -0
- package/auth/index.d.ts +9 -0
- package/auth/index.d.ts.map +1 -0
- package/auth/middleware.d.ts +49 -0
- package/auth/middleware.d.ts.map +1 -0
- package/auth/passcode.d.ts +70 -0
- package/auth/passcode.d.ts.map +1 -0
- package/auth/session.d.ts +71 -0
- package/auth/session.d.ts.map +1 -0
- package/command-sync.d.ts +41 -0
- package/command-sync.d.ts.map +1 -0
- package/config/defaults.d.ts +10 -0
- package/config/defaults.d.ts.map +1 -0
- package/config/index.d.ts +7 -0
- package/config/index.d.ts.map +1 -0
- package/config/loader.d.ts +25 -0
- package/config/loader.d.ts.map +1 -0
- package/config/paths.d.ts +20 -0
- package/config/paths.d.ts.map +1 -0
- package/data/integration-catalog.d.ts +32 -0
- package/data/integration-catalog.d.ts.map +1 -0
- package/events/emitter.d.ts +126 -0
- package/events/emitter.d.ts.map +1 -0
- package/events/index.d.ts +5 -0
- package/events/index.d.ts.map +1 -0
- package/index.d.ts +19 -0
- package/index.d.ts.map +1 -0
- package/index.js +7591 -0
- package/main.d.ts +6 -0
- package/main.d.ts.map +1 -0
- package/main.js +7539 -0
- package/mcp/client.d.ts +73 -0
- package/mcp/client.d.ts.map +1 -0
- package/mcp/index.d.ts +7 -0
- package/mcp/index.d.ts.map +1 -0
- package/mcp/oauth-provider.d.ts +27 -0
- package/mcp/oauth-provider.d.ts.map +1 -0
- package/mcp/state.d.ts +31 -0
- package/mcp/state.d.ts.map +1 -0
- package/package.json +43 -0
- package/routes/agenco.d.ts +13 -0
- package/routes/agenco.d.ts.map +1 -0
- package/routes/auth.d.ts +11 -0
- package/routes/auth.d.ts.map +1 -0
- package/routes/config.d.ts +6 -0
- package/routes/config.d.ts.map +1 -0
- package/routes/discovery.d.ts +8 -0
- package/routes/discovery.d.ts.map +1 -0
- package/routes/exec.d.ts +6 -0
- package/routes/exec.d.ts.map +1 -0
- package/routes/fs.d.ts +6 -0
- package/routes/fs.d.ts.map +1 -0
- package/routes/health.d.ts +6 -0
- package/routes/health.d.ts.map +1 -0
- package/routes/index.d.ts +9 -0
- package/routes/index.d.ts.map +1 -0
- package/routes/marketplace.d.ts +9 -0
- package/routes/marketplace.d.ts.map +1 -0
- package/routes/rpc.d.ts +9 -0
- package/routes/rpc.d.ts.map +1 -0
- package/routes/secrets.d.ts +6 -0
- package/routes/secrets.d.ts.map +1 -0
- package/routes/security.d.ts +6 -0
- package/routes/security.d.ts.map +1 -0
- package/routes/skills.d.ts +11 -0
- package/routes/skills.d.ts.map +1 -0
- package/routes/sse.d.ts +9 -0
- package/routes/sse.d.ts.map +1 -0
- package/routes/status.d.ts +6 -0
- package/routes/status.d.ts.map +1 -0
- package/routes/wrappers.d.ts +12 -0
- package/routes/wrappers.d.ts.map +1 -0
- package/server.d.ts +18 -0
- package/server.d.ts.map +1 -0
- package/services/activity-log.d.ts +21 -0
- package/services/activity-log.d.ts.map +1 -0
- package/services/broker-bridge.d.ts +43 -0
- package/services/broker-bridge.d.ts.map +1 -0
- package/services/integration-skills.d.ts +26 -0
- package/services/integration-skills.d.ts.map +1 -0
- package/services/marketplace.d.ts +79 -0
- package/services/marketplace.d.ts.map +1 -0
- package/services/openclaw-config.d.ts +15 -0
- package/services/openclaw-config.d.ts.map +1 -0
- package/services/skill-analyzer.d.ts +21 -0
- package/services/skill-analyzer.d.ts.map +1 -0
- package/services/skill-lifecycle.d.ts +23 -0
- package/services/skill-lifecycle.d.ts.map +1 -0
- package/state/index.d.ts +76 -0
- package/state/index.d.ts.map +1 -0
- package/static.d.ts +9 -0
- package/static.d.ts.map +1 -0
- package/ui-assets/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff +0 -0
- package/ui-assets/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2 +0 -0
- package/ui-assets/assets/index-CC_zbvUx.css +1 -0
- package/ui-assets/assets/index-Chp3YFDr.js +947 -0
- package/ui-assets/assets/manrope-latin-400-normal-8tf8FM3T.woff +0 -0
- package/ui-assets/assets/manrope-latin-400-normal-PaqtzbVb.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-500-normal-BYYD-dBL.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-500-normal-DMZssgOp.woff +0 -0
- package/ui-assets/assets/manrope-latin-600-normal-4f0koTD-.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-600-normal-BqgrALkZ.woff +0 -0
- package/ui-assets/assets/manrope-latin-700-normal-BZp_XxE4.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-700-normal-DGRFkw-m.woff +0 -0
- package/ui-assets/assets/manrope-latin-800-normal-BfWYOv1c.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-800-normal-uHUdIJgA.woff +0 -0
- package/ui-assets/favicon.svg +1 -0
- package/ui-assets/index.html +14 -0
- package/ui-assets/package.json +34 -0
- package/utils/logged-fetch.d.ts +13 -0
- package/utils/logged-fetch.d.ts.map +1 -0
- package/vault/crypto.d.ts +28 -0
- package/vault/crypto.d.ts.map +1 -0
- package/vault/index.d.ts +64 -0
- package/vault/index.d.ts.map +1 -0
- package/watchers/index.d.ts +6 -0
- package/watchers/index.d.ts.map +1 -0
- package/watchers/security.d.ts +20 -0
- package/watchers/security.d.ts.map +1 -0
- package/watchers/skills.d.ts +85 -0
- package/watchers/skills.d.ts.map +1 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24" fill="#171717" stroke="none"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 .67-.95l7-2.5a1 1 0 0 1 .67 0l7 2.5A1 1 0 0 1 20 6z"/></svg>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>AgenShield Dashboard</title>
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-Chp3YFDr.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CC_zbvUx.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@agenshield/ui",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"private": true,
|
|
5
|
+
"description": "AgenShield Web UI Dashboard",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"dependencies": {
|
|
8
|
+
"@agenshield/ipc": "0.1.0",
|
|
9
|
+
"@emotion/react": "^11.14.0",
|
|
10
|
+
"@emotion/styled": "^11.14.0",
|
|
11
|
+
"@fontsource/ibm-plex-mono": "^5.2.7",
|
|
12
|
+
"@fontsource/manrope": "^5.2.8",
|
|
13
|
+
"@mui/material": "^6.4.0",
|
|
14
|
+
"@tanstack/react-query": "^5.60.0",
|
|
15
|
+
"@tanstack/react-virtual": "^3.0.0",
|
|
16
|
+
"@xyflow/react": "^12.0.0",
|
|
17
|
+
"date-fns": "^4.1.0",
|
|
18
|
+
"lucide-react": "^0.563.0",
|
|
19
|
+
"react": "^19.0.0",
|
|
20
|
+
"react-dom": "^19.0.0",
|
|
21
|
+
"react-markdown": "^10.1.0",
|
|
22
|
+
"react-router-dom": "^7.0.0",
|
|
23
|
+
"recharts": "^3.7.0",
|
|
24
|
+
"remark-gfm": "^4.0.1",
|
|
25
|
+
"valtio": "^2.3.0"
|
|
26
|
+
},
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"@types/react": "^19.0.0",
|
|
29
|
+
"@types/react-dom": "^19.0.0",
|
|
30
|
+
"@vitejs/plugin-react": "^4.3.0",
|
|
31
|
+
"typescript": "^5.9.3",
|
|
32
|
+
"vite": "^6.0.0"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logged fetch utility — wraps fetch() with console logging and SSE event emission.
|
|
3
|
+
* Sanitizes sensitive parameters from URLs and bodies before logging.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Logged fetch — wraps native fetch with request/response logging and SSE emission.
|
|
7
|
+
*
|
|
8
|
+
* @param url - The URL to fetch
|
|
9
|
+
* @param init - Standard RequestInit options
|
|
10
|
+
* @param context - A label for the call context (e.g. 'agenco:token-refresh')
|
|
11
|
+
*/
|
|
12
|
+
export declare function loggedFetch(url: string, init: RequestInit, context: string): Promise<Response>;
|
|
13
|
+
//# sourceMappingURL=logged-fetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logged-fetch.d.ts","sourceRoot":"","sources":["../../src/utils/logged-fetch.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2DH;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAkEpG"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cryptographic utilities for vault encryption
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Get machine-specific identifier for key derivation
|
|
6
|
+
* Uses hardware UUID, hostname, and user info to create a unique identifier
|
|
7
|
+
*/
|
|
8
|
+
export declare function getMachineId(): string;
|
|
9
|
+
/**
|
|
10
|
+
* Derive encryption key from machine ID using scrypt
|
|
11
|
+
*/
|
|
12
|
+
export declare function deriveKey(machineId: string): Buffer;
|
|
13
|
+
/**
|
|
14
|
+
* Encrypt data using AES-256-GCM
|
|
15
|
+
* @param data - Plaintext data to encrypt
|
|
16
|
+
* @param key - 32-byte encryption key
|
|
17
|
+
* @returns Encrypted data in format: iv:authTag:ciphertext (base64 encoded)
|
|
18
|
+
*/
|
|
19
|
+
export declare function encrypt(data: string, key: Buffer): string;
|
|
20
|
+
/**
|
|
21
|
+
* Decrypt data using AES-256-GCM
|
|
22
|
+
* @param encryptedData - Encrypted data in format: iv:authTag:ciphertext
|
|
23
|
+
* @param key - 32-byte encryption key
|
|
24
|
+
* @returns Decrypted plaintext
|
|
25
|
+
* @throws Error if decryption fails (wrong key, tampered data, etc.)
|
|
26
|
+
*/
|
|
27
|
+
export declare function decrypt(encryptedData: string, key: Buffer): string;
|
|
28
|
+
//# sourceMappingURL=crypto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/vault/crypto.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,CA0BrC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAqBlE"}
|
package/vault/index.d.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Encrypted vault manager
|
|
3
|
+
*
|
|
4
|
+
* Provides secure storage for sensitive data like OAuth tokens
|
|
5
|
+
* using machine-specific encryption.
|
|
6
|
+
*/
|
|
7
|
+
import type { VaultContents } from '@agenshield/ipc';
|
|
8
|
+
/**
|
|
9
|
+
* Vault manager class for encrypted storage
|
|
10
|
+
*/
|
|
11
|
+
export declare class Vault {
|
|
12
|
+
private key;
|
|
13
|
+
private vaultPath;
|
|
14
|
+
private cache;
|
|
15
|
+
constructor();
|
|
16
|
+
/**
|
|
17
|
+
* Load vault contents from disk
|
|
18
|
+
* Returns cached contents if available
|
|
19
|
+
*/
|
|
20
|
+
load(): Promise<VaultContents>;
|
|
21
|
+
/**
|
|
22
|
+
* Save vault contents to disk
|
|
23
|
+
*/
|
|
24
|
+
save(contents: VaultContents): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Get a specific key from vault
|
|
27
|
+
*/
|
|
28
|
+
get<K extends keyof VaultContents>(key: K): Promise<VaultContents[K]>;
|
|
29
|
+
/**
|
|
30
|
+
* Set a specific key in vault
|
|
31
|
+
*/
|
|
32
|
+
set<K extends keyof VaultContents>(key: K, value: VaultContents[K]): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Delete a specific key from vault
|
|
35
|
+
*/
|
|
36
|
+
delete<K extends keyof VaultContents>(key: K): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Check if vault file exists
|
|
39
|
+
*/
|
|
40
|
+
exists(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Clear the in-memory cache
|
|
43
|
+
* Useful for testing or when vault file is modified externally
|
|
44
|
+
*/
|
|
45
|
+
clearCache(): void;
|
|
46
|
+
/**
|
|
47
|
+
* Delete the vault file entirely
|
|
48
|
+
*/
|
|
49
|
+
destroy(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Get default empty vault contents
|
|
52
|
+
*/
|
|
53
|
+
private getDefaultContents;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get the singleton vault instance
|
|
57
|
+
*/
|
|
58
|
+
export declare function getVault(): Vault;
|
|
59
|
+
/**
|
|
60
|
+
* Reset the vault singleton (for testing)
|
|
61
|
+
*/
|
|
62
|
+
export declare function resetVault(): void;
|
|
63
|
+
export { getMachineId, deriveKey, encrypt, decrypt } from './crypto';
|
|
64
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vault/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAA8B;;IAQ3C;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,aAAa,CAAC;IAwBpC;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlD;;OAEG;IACG,GAAG,CAAC,CAAC,SAAS,MAAM,aAAa,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAK3E;;OAEG;IACG,GAAG,CAAC,CAAC,SAAS,MAAM,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxF;;OAEG;IACG,MAAM,CAAC,CAAC,SAAS,MAAM,aAAa,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlE;;OAEG;IACH,MAAM,IAAI,OAAO;IAIjB;;;OAGG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAM3B;AAKD;;GAEG;AACH,wBAAgB,QAAQ,IAAI,KAAK,CAKhC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAEjC;AAGD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/watchers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Security status watcher
|
|
3
|
+
*
|
|
4
|
+
* Periodically checks security status and emits events when it changes.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Start the security watcher
|
|
8
|
+
*
|
|
9
|
+
* @param intervalMs - Check interval in milliseconds (default: 10 seconds)
|
|
10
|
+
*/
|
|
11
|
+
export declare function startSecurityWatcher(intervalMs?: number): void;
|
|
12
|
+
/**
|
|
13
|
+
* Stop the security watcher
|
|
14
|
+
*/
|
|
15
|
+
export declare function stopSecurityWatcher(): void;
|
|
16
|
+
/**
|
|
17
|
+
* Force an immediate security check
|
|
18
|
+
*/
|
|
19
|
+
export declare function triggerSecurityCheck(): void;
|
|
20
|
+
//# sourceMappingURL=security.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/watchers/security.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmEH;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,SAAQ,GAAG,IAAI,CAY7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAM1C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills Watcher
|
|
3
|
+
*
|
|
4
|
+
* Monitors the agent's skills directory for unapproved skills.
|
|
5
|
+
* Unapproved skills are moved to a quarantine directory.
|
|
6
|
+
* Follows the pattern of the existing security watcher.
|
|
7
|
+
*/
|
|
8
|
+
export interface ApprovedSkillEntry {
|
|
9
|
+
name: string;
|
|
10
|
+
approvedAt: string;
|
|
11
|
+
hash?: string;
|
|
12
|
+
publisher?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface QuarantinedSkillInfo {
|
|
15
|
+
name: string;
|
|
16
|
+
quarantinedAt: string;
|
|
17
|
+
originalPath: string;
|
|
18
|
+
reason: string;
|
|
19
|
+
}
|
|
20
|
+
interface SkillsWatcherCallbacks {
|
|
21
|
+
onQuarantined?: (info: QuarantinedSkillInfo) => void;
|
|
22
|
+
onApproved?: (name: string) => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Start the skills watcher
|
|
26
|
+
*
|
|
27
|
+
* @param watchDir - The skills directory to watch (e.g., $HOME/.openclaw/skills)
|
|
28
|
+
* @param cbs - Callbacks for quarantine/approve events
|
|
29
|
+
* @param pollIntervalMs - Polling fallback interval (default: 30 seconds)
|
|
30
|
+
*/
|
|
31
|
+
export declare function startSkillsWatcher(watchDir: string, cbs?: SkillsWatcherCallbacks, pollIntervalMs?: number): void;
|
|
32
|
+
/**
|
|
33
|
+
* Stop the skills watcher
|
|
34
|
+
*/
|
|
35
|
+
export declare function stopSkillsWatcher(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Approve a skill (move from quarantine back to skills directory)
|
|
38
|
+
*/
|
|
39
|
+
export declare function approveSkill(skillName: string): {
|
|
40
|
+
success: boolean;
|
|
41
|
+
error?: string;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Reject a quarantined skill (permanently delete)
|
|
45
|
+
*/
|
|
46
|
+
export declare function rejectSkill(skillName: string): {
|
|
47
|
+
success: boolean;
|
|
48
|
+
error?: string;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Revoke an approved skill (remove from approved list and quarantine)
|
|
52
|
+
*/
|
|
53
|
+
export declare function revokeSkill(skillName: string): {
|
|
54
|
+
success: boolean;
|
|
55
|
+
error?: string;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* List quarantined skills
|
|
59
|
+
*/
|
|
60
|
+
export declare function listQuarantined(): QuarantinedSkillInfo[];
|
|
61
|
+
/**
|
|
62
|
+
* List approved skills
|
|
63
|
+
*/
|
|
64
|
+
export declare function listApproved(): ApprovedSkillEntry[];
|
|
65
|
+
/**
|
|
66
|
+
* Force an immediate skill scan
|
|
67
|
+
*/
|
|
68
|
+
export declare function triggerSkillsScan(): void;
|
|
69
|
+
/**
|
|
70
|
+
* Get the configured skills directory path
|
|
71
|
+
*/
|
|
72
|
+
export declare function getSkillsDir(): string;
|
|
73
|
+
/**
|
|
74
|
+
* Add a skill to the approved list without requiring quarantine.
|
|
75
|
+
* Used by marketplace install to pre-approve before writing files,
|
|
76
|
+
* preventing a race condition with the watcher quarantining new skills.
|
|
77
|
+
*/
|
|
78
|
+
export declare function addToApprovedList(skillName: string, publisher?: string): void;
|
|
79
|
+
/**
|
|
80
|
+
* Remove a skill from the approved list (without quarantining).
|
|
81
|
+
* Used for cleanup when marketplace install fails after pre-approval.
|
|
82
|
+
*/
|
|
83
|
+
export declare function removeFromApprovedList(skillName: string): void;
|
|
84
|
+
export {};
|
|
85
|
+
//# sourceMappingURL=skills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/watchers/skills.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,sBAAsB;IAC9B,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACrD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAkID;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,sBAA2B,EAChC,cAAc,SAAQ,GACrB,IAAI,CAiCN;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAiBxC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAmCpF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAenF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBnF;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,oBAAoB,EAAE,CAyBxD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,kBAAkB,EAAE,CAEnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAU7E;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAM9D"}
|