@id-wispera/core 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.
Files changed (154) hide show
  1. package/README.md +268 -0
  2. package/dist/audit.d.ts +68 -0
  3. package/dist/audit.d.ts.map +1 -0
  4. package/dist/audit.js +252 -0
  5. package/dist/audit.js.map +1 -0
  6. package/dist/auth/index.d.ts +8 -0
  7. package/dist/auth/index.d.ts.map +1 -0
  8. package/dist/auth/index.js +8 -0
  9. package/dist/auth/index.js.map +1 -0
  10. package/dist/auth/keychainProvider.d.ts +40 -0
  11. package/dist/auth/keychainProvider.d.ts.map +1 -0
  12. package/dist/auth/keychainProvider.js +98 -0
  13. package/dist/auth/keychainProvider.js.map +1 -0
  14. package/dist/auth/passphraseProvider.d.ts +80 -0
  15. package/dist/auth/passphraseProvider.d.ts.map +1 -0
  16. package/dist/auth/passphraseProvider.js +188 -0
  17. package/dist/auth/passphraseProvider.js.map +1 -0
  18. package/dist/auth/sessionTokenManager.d.ts +106 -0
  19. package/dist/auth/sessionTokenManager.d.ts.map +1 -0
  20. package/dist/auth/sessionTokenManager.js +263 -0
  21. package/dist/auth/sessionTokenManager.js.map +1 -0
  22. package/dist/delegation.d.ts +81 -0
  23. package/dist/delegation.d.ts.map +1 -0
  24. package/dist/delegation.js +299 -0
  25. package/dist/delegation.js.map +1 -0
  26. package/dist/detection.d.ts +35 -0
  27. package/dist/detection.d.ts.map +1 -0
  28. package/dist/detection.js +474 -0
  29. package/dist/detection.js.map +1 -0
  30. package/dist/exec/execManager.d.ts +60 -0
  31. package/dist/exec/execManager.d.ts.map +1 -0
  32. package/dist/exec/execManager.js +226 -0
  33. package/dist/exec/execManager.js.map +1 -0
  34. package/dist/exec/index.d.ts +6 -0
  35. package/dist/exec/index.d.ts.map +1 -0
  36. package/dist/exec/index.js +5 -0
  37. package/dist/exec/index.js.map +1 -0
  38. package/dist/index.d.ts +35 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +98 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/integrations/base.d.ts +64 -0
  43. package/dist/integrations/base.d.ts.map +1 -0
  44. package/dist/integrations/base.js +173 -0
  45. package/dist/integrations/base.js.map +1 -0
  46. package/dist/integrations/envMapping.d.ts +47 -0
  47. package/dist/integrations/envMapping.d.ts.map +1 -0
  48. package/dist/integrations/envMapping.js +174 -0
  49. package/dist/integrations/envMapping.js.map +1 -0
  50. package/dist/integrations/google-a2a.d.ts +48 -0
  51. package/dist/integrations/google-a2a.d.ts.map +1 -0
  52. package/dist/integrations/google-a2a.js +108 -0
  53. package/dist/integrations/google-a2a.js.map +1 -0
  54. package/dist/integrations/index.d.ts +14 -0
  55. package/dist/integrations/index.d.ts.map +1 -0
  56. package/dist/integrations/index.js +14 -0
  57. package/dist/integrations/index.js.map +1 -0
  58. package/dist/integrations/langchain.d.ts +38 -0
  59. package/dist/integrations/langchain.d.ts.map +1 -0
  60. package/dist/integrations/langchain.js +45 -0
  61. package/dist/integrations/langchain.js.map +1 -0
  62. package/dist/integrations/openai-agents.d.ts +76 -0
  63. package/dist/integrations/openai-agents.d.ts.map +1 -0
  64. package/dist/integrations/openai-agents.js +95 -0
  65. package/dist/integrations/openai-agents.js.map +1 -0
  66. package/dist/integrations/slack.d.ts +59 -0
  67. package/dist/integrations/slack.d.ts.map +1 -0
  68. package/dist/integrations/slack.js +113 -0
  69. package/dist/integrations/slack.js.map +1 -0
  70. package/dist/integrations/types.d.ts +107 -0
  71. package/dist/integrations/types.d.ts.map +1 -0
  72. package/dist/integrations/types.js +6 -0
  73. package/dist/integrations/types.js.map +1 -0
  74. package/dist/locations.d.ts +157 -0
  75. package/dist/locations.d.ts.map +1 -0
  76. package/dist/locations.js +733 -0
  77. package/dist/locations.js.map +1 -0
  78. package/dist/passport.d.ts +70 -0
  79. package/dist/passport.d.ts.map +1 -0
  80. package/dist/passport.js +429 -0
  81. package/dist/passport.js.map +1 -0
  82. package/dist/policy.d.ts +80 -0
  83. package/dist/policy.d.ts.map +1 -0
  84. package/dist/policy.js +392 -0
  85. package/dist/policy.js.map +1 -0
  86. package/dist/providers/openclaw.d.ts +80 -0
  87. package/dist/providers/openclaw.d.ts.map +1 -0
  88. package/dist/providers/openclaw.js +712 -0
  89. package/dist/providers/openclaw.js.map +1 -0
  90. package/dist/provisioning/adminPassport.d.ts +51 -0
  91. package/dist/provisioning/adminPassport.d.ts.map +1 -0
  92. package/dist/provisioning/adminPassport.js +101 -0
  93. package/dist/provisioning/adminPassport.js.map +1 -0
  94. package/dist/provisioning/index.d.ts +81 -0
  95. package/dist/provisioning/index.d.ts.map +1 -0
  96. package/dist/provisioning/index.js +141 -0
  97. package/dist/provisioning/index.js.map +1 -0
  98. package/dist/provisioning/provider.d.ts +59 -0
  99. package/dist/provisioning/provider.d.ts.map +1 -0
  100. package/dist/provisioning/provider.js +52 -0
  101. package/dist/provisioning/provider.js.map +1 -0
  102. package/dist/provisioning/providers/anthropic.d.ts +32 -0
  103. package/dist/provisioning/providers/anthropic.d.ts.map +1 -0
  104. package/dist/provisioning/providers/anthropic.js +116 -0
  105. package/dist/provisioning/providers/anthropic.js.map +1 -0
  106. package/dist/provisioning/providers/aws.d.ts +29 -0
  107. package/dist/provisioning/providers/aws.d.ts.map +1 -0
  108. package/dist/provisioning/providers/aws.js +455 -0
  109. package/dist/provisioning/providers/aws.js.map +1 -0
  110. package/dist/provisioning/providers/azure-entra.d.ts +32 -0
  111. package/dist/provisioning/providers/azure-entra.d.ts.map +1 -0
  112. package/dist/provisioning/providers/azure-entra.js +312 -0
  113. package/dist/provisioning/providers/azure-entra.js.map +1 -0
  114. package/dist/provisioning/providers/github.d.ts +24 -0
  115. package/dist/provisioning/providers/github.d.ts.map +1 -0
  116. package/dist/provisioning/providers/github.js +219 -0
  117. package/dist/provisioning/providers/github.js.map +1 -0
  118. package/dist/provisioning/providers/google-cloud.d.ts +34 -0
  119. package/dist/provisioning/providers/google-cloud.d.ts.map +1 -0
  120. package/dist/provisioning/providers/google-cloud.js +366 -0
  121. package/dist/provisioning/providers/google-cloud.js.map +1 -0
  122. package/dist/provisioning/providers/openai.d.ts +29 -0
  123. package/dist/provisioning/providers/openai.d.ts.map +1 -0
  124. package/dist/provisioning/providers/openai.js +263 -0
  125. package/dist/provisioning/providers/openai.js.map +1 -0
  126. package/dist/provisioning/providers/sendgrid.d.ts +27 -0
  127. package/dist/provisioning/providers/sendgrid.d.ts.map +1 -0
  128. package/dist/provisioning/providers/sendgrid.js +186 -0
  129. package/dist/provisioning/providers/sendgrid.js.map +1 -0
  130. package/dist/provisioning/providers/twilio.d.ts +27 -0
  131. package/dist/provisioning/providers/twilio.d.ts.map +1 -0
  132. package/dist/provisioning/providers/twilio.js +194 -0
  133. package/dist/provisioning/providers/twilio.js.map +1 -0
  134. package/dist/provisioning/types.d.ts +274 -0
  135. package/dist/provisioning/types.d.ts.map +1 -0
  136. package/dist/provisioning/types.js +6 -0
  137. package/dist/provisioning/types.js.map +1 -0
  138. package/dist/sharing.d.ts +60 -0
  139. package/dist/sharing.d.ts.map +1 -0
  140. package/dist/sharing.js +305 -0
  141. package/dist/sharing.js.map +1 -0
  142. package/dist/types.d.ts +396 -0
  143. package/dist/types.d.ts.map +1 -0
  144. package/dist/types.js +88 -0
  145. package/dist/types.js.map +1 -0
  146. package/dist/utils.d.ts +45 -0
  147. package/dist/utils.d.ts.map +1 -0
  148. package/dist/utils.js +110 -0
  149. package/dist/utils.js.map +1 -0
  150. package/dist/vault.d.ts +151 -0
  151. package/dist/vault.d.ts.map +1 -0
  152. package/dist/vault.js +499 -0
  153. package/dist/vault.js.map +1 -0
  154. package/package.json +117 -0
package/dist/policy.js ADDED
@@ -0,0 +1,392 @@
1
+ /**
2
+ * ID Wispera Policy Engine
3
+ * Cedar-inspired declarative policy evaluation
4
+ */
5
+ import { PolicyError, } from './types.js';
6
+ // ============================================================================
7
+ // Built-in Policy Rules
8
+ // ============================================================================
9
+ /**
10
+ * Default policy rules for credential governance
11
+ */
12
+ export const DEFAULT_POLICY_RULES = [
13
+ {
14
+ id: 'require-human-owner',
15
+ name: 'Require Human Owner',
16
+ description: 'All passports must have a human owner for accountability',
17
+ condition: {
18
+ requireHumanOwner: true,
19
+ },
20
+ effect: 'deny',
21
+ priority: 100,
22
+ enabled: true,
23
+ },
24
+ {
25
+ id: 'max-validity-90-days',
26
+ name: 'Maximum Validity Period',
27
+ description: 'Credentials should not be valid for more than 90 days',
28
+ condition: {
29
+ maxValidityDays: 90,
30
+ },
31
+ effect: 'deny',
32
+ priority: 90,
33
+ enabled: true,
34
+ },
35
+ {
36
+ id: 'max-delegation-depth-3',
37
+ name: 'Maximum Delegation Depth',
38
+ description: 'Credentials should not be delegated more than 3 levels deep',
39
+ condition: {
40
+ maxDelegationDepth: 3,
41
+ },
42
+ effect: 'deny',
43
+ priority: 80,
44
+ enabled: true,
45
+ },
46
+ {
47
+ id: 'privilege-visa-requires-approval',
48
+ name: 'Privileged Access Requires Approval',
49
+ description: 'Credentials with privilege visa type require approval',
50
+ condition: {
51
+ visaTypes: ['privilege'],
52
+ },
53
+ effect: 'require-approval',
54
+ priority: 70,
55
+ enabled: true,
56
+ },
57
+ ];
58
+ // ============================================================================
59
+ // Policy Evaluation
60
+ // ============================================================================
61
+ /**
62
+ * Check if a condition matches a passport
63
+ */
64
+ function conditionMatches(passport, condition) {
65
+ // Visa types filter
66
+ if (condition.visaTypes && condition.visaTypes.length > 0) {
67
+ if (!condition.visaTypes.includes(passport.visaType)) {
68
+ return false;
69
+ }
70
+ }
71
+ // Platforms filter
72
+ if (condition.platforms && condition.platforms.length > 0) {
73
+ if (!passport.platforms.some((p) => condition.platforms.includes(p))) {
74
+ return false;
75
+ }
76
+ }
77
+ // Scopes filter
78
+ if (condition.scopes && condition.scopes.length > 0) {
79
+ if (!passport.scope.some((s) => condition.scopes.includes(s))) {
80
+ return false;
81
+ }
82
+ }
83
+ // Credential types filter
84
+ if (condition.credentialTypes && condition.credentialTypes.length > 0) {
85
+ if (!condition.credentialTypes.includes(passport.credentialType)) {
86
+ return false;
87
+ }
88
+ }
89
+ // Tags filter
90
+ if (condition.tags && condition.tags.length > 0) {
91
+ if (!passport.tags.some((t) => condition.tags.includes(t))) {
92
+ return false;
93
+ }
94
+ }
95
+ // Violation-based conditions: match only when violated
96
+ let hasViolationCondition = false;
97
+ let hasViolation = false;
98
+ // Human owner check
99
+ if (condition.requireHumanOwner) {
100
+ hasViolationCondition = true;
101
+ if (!passport.humanOwner || passport.humanOwner.trim() === '') {
102
+ hasViolation = true;
103
+ }
104
+ }
105
+ // Delegation depth check
106
+ if (condition.maxDelegationDepth !== undefined) {
107
+ hasViolationCondition = true;
108
+ const depth = passport.delegationChain?.length ?? 0;
109
+ if (depth > condition.maxDelegationDepth) {
110
+ hasViolation = true;
111
+ }
112
+ }
113
+ // Validity period check
114
+ if (condition.maxValidityDays !== undefined && passport.validUntil) {
115
+ hasViolationCondition = true;
116
+ const validFrom = new Date(passport.validFrom);
117
+ const validUntil = new Date(passport.validUntil);
118
+ const days = (validUntil.getTime() - validFrom.getTime()) / (1000 * 60 * 60 * 24);
119
+ if (days > condition.maxValidityDays) {
120
+ hasViolation = true;
121
+ }
122
+ }
123
+ // Custom condition
124
+ if (condition.custom) {
125
+ return condition.custom(passport);
126
+ }
127
+ // If rule has violation conditions, only match when a violation was found
128
+ if (hasViolationCondition) {
129
+ return hasViolation;
130
+ }
131
+ return true;
132
+ }
133
+ /**
134
+ * Evaluate a policy rule against a passport
135
+ */
136
+ function evaluateRule(passport, rule) {
137
+ if (rule.enabled === false) {
138
+ return false; // Rule is disabled
139
+ }
140
+ return conditionMatches(passport, rule.condition);
141
+ }
142
+ /**
143
+ * Evaluate policies for a passport and action
144
+ * Returns the policy decision
145
+ */
146
+ export function evaluatePolicy(passport, action, rules = DEFAULT_POLICY_RULES) {
147
+ // Sort rules by priority (higher first)
148
+ const sortedRules = [...rules].sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0));
149
+ const matchedRules = [];
150
+ let finalEffect = 'allow';
151
+ const reasons = [];
152
+ for (const rule of sortedRules) {
153
+ if (evaluateRule(passport, rule)) {
154
+ matchedRules.push(rule);
155
+ // First matching deny or require-approval takes precedence
156
+ if (rule.effect === 'deny' && finalEffect !== 'deny') {
157
+ finalEffect = 'deny';
158
+ reasons.push(`${rule.name}: ${rule.description}`);
159
+ }
160
+ else if (rule.effect === 'require-approval' && finalEffect === 'allow') {
161
+ finalEffect = 'require-approval';
162
+ reasons.push(`${rule.name}: ${rule.description}`);
163
+ }
164
+ }
165
+ }
166
+ return {
167
+ allowed: finalEffect === 'allow',
168
+ effect: finalEffect,
169
+ matchedRules,
170
+ reason: reasons.length > 0
171
+ ? reasons.join('; ')
172
+ : `Action "${action}" is allowed by default policy`,
173
+ };
174
+ }
175
+ /**
176
+ * Validate a passport against all policy rules
177
+ * Returns list of violations
178
+ */
179
+ export function validatePassport(passport, rules = DEFAULT_POLICY_RULES) {
180
+ const violations = [];
181
+ for (const rule of rules) {
182
+ if (rule.enabled === false)
183
+ continue;
184
+ // Check specific conditions that indicate violations
185
+ const condition = rule.condition;
186
+ // Human owner check
187
+ if (condition.requireHumanOwner) {
188
+ if (!passport.humanOwner || passport.humanOwner.trim() === '') {
189
+ violations.push({
190
+ rule,
191
+ violation: 'Passport is missing a human owner',
192
+ severity: rule.effect === 'deny' ? 'error' : 'warning',
193
+ });
194
+ }
195
+ }
196
+ // Delegation depth check
197
+ if (condition.maxDelegationDepth !== undefined) {
198
+ const depth = passport.delegationChain?.length ?? 0;
199
+ if (depth > condition.maxDelegationDepth) {
200
+ violations.push({
201
+ rule,
202
+ violation: `Delegation depth (${depth}) exceeds maximum (${condition.maxDelegationDepth})`,
203
+ severity: rule.effect === 'deny' ? 'error' : 'warning',
204
+ });
205
+ }
206
+ }
207
+ // Validity period check
208
+ if (condition.maxValidityDays !== undefined && passport.validUntil) {
209
+ const validFrom = new Date(passport.validFrom);
210
+ const validUntil = new Date(passport.validUntil);
211
+ const days = (validUntil.getTime() - validFrom.getTime()) / (1000 * 60 * 60 * 24);
212
+ if (days > condition.maxValidityDays) {
213
+ violations.push({
214
+ rule,
215
+ violation: `Validity period (${Math.round(days)} days) exceeds maximum (${condition.maxValidityDays} days)`,
216
+ severity: rule.effect === 'deny' ? 'error' : 'warning',
217
+ });
218
+ }
219
+ }
220
+ // Visa type restrictions
221
+ if (condition.visaTypes && condition.visaTypes.includes(passport.visaType)) {
222
+ if (rule.effect === 'require-approval') {
223
+ violations.push({
224
+ rule,
225
+ violation: `Visa type "${passport.visaType}" requires approval`,
226
+ severity: 'warning',
227
+ });
228
+ }
229
+ }
230
+ }
231
+ return violations;
232
+ }
233
+ // ============================================================================
234
+ // Policy Management
235
+ // ============================================================================
236
+ /**
237
+ * Create a custom policy rule
238
+ */
239
+ export function createPolicyRule(input) {
240
+ return {
241
+ id: input.id ?? `rule-${Date.now()}`,
242
+ name: input.name,
243
+ description: input.description,
244
+ condition: input.condition,
245
+ effect: input.effect,
246
+ priority: input.priority ?? 50,
247
+ enabled: input.enabled ?? true,
248
+ };
249
+ }
250
+ /**
251
+ * Merge policy rules, with later rules overriding earlier ones by ID
252
+ */
253
+ export function mergePolicyRules(...ruleSets) {
254
+ const rulesById = new Map();
255
+ for (const ruleSet of ruleSets) {
256
+ for (const rule of ruleSet) {
257
+ rulesById.set(rule.id, rule);
258
+ }
259
+ }
260
+ return Array.from(rulesById.values());
261
+ }
262
+ /**
263
+ * Filter rules by enabled status
264
+ */
265
+ export function getEnabledRules(rules) {
266
+ return rules.filter((r) => r.enabled !== false);
267
+ }
268
+ // ============================================================================
269
+ // Policy Predicates (for advanced use)
270
+ // ============================================================================
271
+ /**
272
+ * Check if passport has valid human owner
273
+ */
274
+ export function hasValidHumanOwner(passport) {
275
+ return !!passport.humanOwner && passport.humanOwner.trim() !== '';
276
+ }
277
+ /**
278
+ * Check if passport is within validity period
279
+ */
280
+ export function isWithinValidityPeriod(passport) {
281
+ const now = new Date();
282
+ const validFrom = new Date(passport.validFrom);
283
+ const validUntil = passport.validUntil ? new Date(passport.validUntil) : null;
284
+ if (now < validFrom)
285
+ return false;
286
+ if (validUntil && now > validUntil)
287
+ return false;
288
+ return true;
289
+ }
290
+ /**
291
+ * Check if passport has excessive delegation
292
+ */
293
+ export function hasExcessiveDelegation(passport, maxDepth = 3) {
294
+ return (passport.delegationChain?.length ?? 0) > maxDepth;
295
+ }
296
+ /**
297
+ * Check if passport scope is too broad
298
+ */
299
+ export function hasBroadScope(passport, maxScopes = 10) {
300
+ return passport.scope.length > maxScopes;
301
+ }
302
+ /**
303
+ * Check if passport has privileged access
304
+ */
305
+ export function hasPrivilegedAccess(passport) {
306
+ return passport.visaType === 'privilege';
307
+ }
308
+ // ============================================================================
309
+ // Policy DSL Helpers
310
+ // ============================================================================
311
+ /**
312
+ * Builder for creating policy rules fluently
313
+ */
314
+ export class PolicyBuilder {
315
+ rule = {
316
+ condition: {},
317
+ effect: 'allow',
318
+ enabled: true,
319
+ };
320
+ constructor(id) {
321
+ this.rule.id = id;
322
+ }
323
+ name(name) {
324
+ this.rule.name = name;
325
+ return this;
326
+ }
327
+ description(description) {
328
+ this.rule.description = description;
329
+ return this;
330
+ }
331
+ forVisaTypes(...types) {
332
+ this.rule.condition.visaTypes = types;
333
+ return this;
334
+ }
335
+ forPlatforms(...platforms) {
336
+ this.rule.condition.platforms = platforms;
337
+ return this;
338
+ }
339
+ forCredentialTypes(...types) {
340
+ this.rule.condition.credentialTypes = types;
341
+ return this;
342
+ }
343
+ requireHumanOwner() {
344
+ this.rule.condition.requireHumanOwner = true;
345
+ return this;
346
+ }
347
+ maxDelegationDepth(depth) {
348
+ this.rule.condition.maxDelegationDepth = depth;
349
+ return this;
350
+ }
351
+ maxValidityDays(days) {
352
+ this.rule.condition.maxValidityDays = days;
353
+ return this;
354
+ }
355
+ withCustomCondition(fn) {
356
+ this.rule.condition.custom = fn;
357
+ return this;
358
+ }
359
+ deny() {
360
+ this.rule.effect = 'deny';
361
+ return this;
362
+ }
363
+ requireApproval() {
364
+ this.rule.effect = 'require-approval';
365
+ return this;
366
+ }
367
+ allow() {
368
+ this.rule.effect = 'allow';
369
+ return this;
370
+ }
371
+ priority(priority) {
372
+ this.rule.priority = priority;
373
+ return this;
374
+ }
375
+ disabled() {
376
+ this.rule.enabled = false;
377
+ return this;
378
+ }
379
+ build() {
380
+ if (!this.rule.id || !this.rule.name || !this.rule.description) {
381
+ throw new PolicyError('Policy rule requires id, name, and description', 'INVALID_RULE');
382
+ }
383
+ return this.rule;
384
+ }
385
+ }
386
+ /**
387
+ * Start building a policy rule
388
+ */
389
+ export function policy(id) {
390
+ return new PolicyBuilder(id);
391
+ }
392
+ //# sourceMappingURL=policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * ID Wispera OpenClaw Provider
3
+ * Specialized scanner for OpenClaw credential locations
4
+ */
5
+ import { DiscoveredCredential, LocationScanResult } from '../locations.js';
6
+ import { CreatePassportInput } from '../types.js';
7
+ export declare const OPENCLAW_BASE_PATH: string;
8
+ export declare const OPENCLAW_PATHS: {
9
+ /** Base OpenClaw directory */
10
+ base: string;
11
+ /** WhatsApp credentials directory */
12
+ whatsapp: string;
13
+ /** Main credentials directory */
14
+ credentials: string;
15
+ /** Agents directory */
16
+ agents: string;
17
+ /** Main config file */
18
+ config: string;
19
+ /** OAuth tokens */
20
+ oauth: string;
21
+ };
22
+ /**
23
+ * Check if OpenClaw is installed
24
+ */
25
+ export declare function isOpenClawInstalled(): Promise<boolean>;
26
+ /**
27
+ * Check file permissions and return warning if insecure
28
+ */
29
+ export declare function checkFilePermissions(filePath: string): Promise<string | undefined>;
30
+ /**
31
+ * Check directory permissions
32
+ */
33
+ export declare function checkDirectoryPermissions(dirPath: string): Promise<string | undefined>;
34
+ /**
35
+ * Scan result with OpenClaw-specific metadata
36
+ */
37
+ export interface OpenClawScanResult {
38
+ /** Whether OpenClaw is installed */
39
+ installed: boolean;
40
+ /** Path to OpenClaw installation */
41
+ installPath: string;
42
+ /** All discovered credentials */
43
+ credentials: DiscoveredCredential[];
44
+ /** Scan results by location */
45
+ locationResults: LocationScanResult[];
46
+ /** Summary statistics */
47
+ summary: {
48
+ total: number;
49
+ governed: number;
50
+ criticalCount: number;
51
+ highCount: number;
52
+ mediumCount: number;
53
+ lowCount: number;
54
+ };
55
+ /** Permission warnings for OpenClaw directory */
56
+ permissionWarnings: string[];
57
+ /** Unreadable paths */
58
+ unreadablePaths: {
59
+ path: string;
60
+ error: string;
61
+ }[];
62
+ }
63
+ /**
64
+ * Scan all OpenClaw credential locations
65
+ */
66
+ export declare function scanOpenClaw(): Promise<OpenClawScanResult>;
67
+ /**
68
+ * Convert discovered credential to passport input
69
+ */
70
+ export declare function toPassportInput(cred: DiscoveredCredential, humanOwner: string, agentId?: string): CreatePassportInput;
71
+ /**
72
+ * Format credential for table display
73
+ */
74
+ export declare function formatCredentialRow(cred: DiscoveredCredential): {
75
+ credential: string;
76
+ type: string;
77
+ visaType: string;
78
+ riskLevel: string;
79
+ };
80
+ //# sourceMappingURL=openclaw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../src/providers/openclaw.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAInB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAsC,mBAAmB,EAAiB,MAAM,aAAa,CAAC;AAMrG,eAAO,MAAM,kBAAkB,QAA+B,CAAC;AAE/D,eAAO,MAAM,cAAc;IACzB,8BAA8B;;IAE9B,qCAAqC;;IAErC,iCAAiC;;IAEjC,uBAAuB;;IAEvB,uBAAuB;;IAEvB,mBAAmB;;CAEpB,CAAC;AAMF;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ5D;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAqBxF;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAiB5F;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oCAAoC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,+BAA+B;IAC/B,eAAe,EAAE,kBAAkB,EAAE,CAAC;IACtC,yBAAyB;IACzB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,iDAAiD;IACjD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,uBAAuB;IACvB,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACpD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAgEhE;AA+iBD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,oBAAoB,EAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,mBAAmB,CAmCrB;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAOA"}