@karmaniverous/jeeves 0.4.6 → 0.5.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/dist/index.d.ts CHANGED
@@ -265,13 +265,142 @@ type StatusHandler = () => Promise<StatusHandlerResult>;
265
265
  declare function createStatusHandler(options: CreateStatusHandlerOptions): StatusHandler;
266
266
 
267
267
  /**
268
- * Factory for the standard `-openclaw` plugin installer CLI.
268
+ * Runtime Node.js version floor check.
269
+ *
270
+ * @module
271
+ */
272
+ /**
273
+ * Check that the running Node.js version meets the minimum requirement.
274
+ * Prints an error and exits with code 1 if the check fails.
275
+ */
276
+ declare function checkNodeVersion(): void;
277
+
278
+ /**
279
+ * Workspace-level shared configuration: `jeeves.config.json`.
280
+ *
281
+ * @remarks
282
+ * Lives at the OpenClaw workspace root alongside TOOLS.md and SOUL.md.
283
+ * Provides namespaced shared defaults consumed by the root Jeeves CLI.
284
+ * Resolution precedence: CLI flags → env vars → jeeves.config.json → defaults.
285
+ *
286
+ * This does not replace component-owned config schemas (Decision 41).
287
+ */
288
+
289
+ /** Workspace config file name. */
290
+ declare const WORKSPACE_CONFIG_FILE = "jeeves.config.json";
291
+ /** Workspace config Zod schema. */
292
+ declare const workspaceConfigSchema: z.ZodObject<{
293
+ $schema: z.ZodOptional<z.ZodString>;
294
+ core: z.ZodOptional<z.ZodObject<{
295
+ workspace: z.ZodOptional<z.ZodOptional<z.ZodString>>;
296
+ configRoot: z.ZodOptional<z.ZodOptional<z.ZodString>>;
297
+ gatewayUrl: z.ZodOptional<z.ZodOptional<z.ZodString>>;
298
+ }, z.core.$strip>>;
299
+ memory: z.ZodOptional<z.ZodObject<{
300
+ budget: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
301
+ warningThreshold: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
302
+ staleDays: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
303
+ }, z.core.$strip>>;
304
+ }, z.core.$strip>;
305
+ /** Workspace config type. */
306
+ type WorkspaceConfig = z.infer<typeof workspaceConfigSchema>;
307
+ /** Built-in workspace config defaults. */
308
+ declare const WORKSPACE_CONFIG_DEFAULTS: {
309
+ readonly core: {
310
+ readonly workspace: ".";
311
+ readonly configRoot: "./config";
312
+ readonly gatewayUrl: "http://127.0.0.1:3000";
313
+ };
314
+ readonly memory: {
315
+ readonly budget: 20000;
316
+ readonly warningThreshold: 0.8;
317
+ readonly staleDays: 30;
318
+ };
319
+ };
320
+ /** Provenance source for a resolved config value. */
321
+ type ConfigProvenance = 'flag' | 'env' | 'file' | 'default';
322
+ /** A resolved config value with provenance. */
323
+ interface ResolvedValue<T> {
324
+ /** The resolved value. */
325
+ value: T;
326
+ /** Where the value came from. */
327
+ provenance: ConfigProvenance;
328
+ }
329
+ /**
330
+ * Load workspace config from `jeeves.config.json` at a given path.
331
+ *
332
+ * @param workspacePath - Workspace root directory.
333
+ * @returns Parsed config or undefined if missing or invalid.
334
+ */
335
+ declare function loadWorkspaceConfig(workspacePath: string): WorkspaceConfig | undefined;
336
+ /**
337
+ * Resolve a config value with four-tier precedence.
338
+ *
339
+ * @param flagValue - CLI flag value (highest priority).
340
+ * @param envValue - Environment variable value.
341
+ * @param fileValue - Value from jeeves.config.json.
342
+ * @param defaultValue - Built-in default (lowest priority).
343
+ * @returns The resolved value with provenance annotation.
344
+ */
345
+ declare function resolveConfigValue<T>(flagValue: T | undefined, envValue: T | undefined, fileValue: T | undefined, defaultValue: T): ResolvedValue<T>;
346
+ /**
347
+ * Generate a JSON Schema for the workspace config.
348
+ *
349
+ * @returns A JSON Schema object.
350
+ */
351
+ declare function generateWorkspaceJsonSchema(): Record<string, unknown>;
352
+
353
+ /**
354
+ * Shared CLI defaults and resolution for Jeeves CLI commands.
269
355
  *
270
356
  * @remarks
271
- * Produces a Commander program with `install` and `uninstall` commands
272
- * that handle the full plugin lifecycle: copy dist to extensions,
273
- * patch OpenClaw config, manage HEARTBEAT entries, and clean up
274
- * managed sections on uninstall.
357
+ * All root CLI commands share workspace/config-root resolution. Values follow
358
+ * the shared precedence model: flags → env → jeeves.config.json → defaults.
359
+ */
360
+
361
+ /** Standard workspace options parsed from CLI. */
362
+ interface WorkspaceOptions {
363
+ /** Workspace root path. */
364
+ workspace?: string;
365
+ /** Platform config root path. */
366
+ configRoot?: string;
367
+ }
368
+ /** Resolved shared CLI config with provenance. */
369
+ interface ResolvedCliConfig {
370
+ /** Core shared config. */
371
+ core: {
372
+ workspace: ResolvedValue<string>;
373
+ configRoot: ResolvedValue<string>;
374
+ gatewayUrl: ResolvedValue<string>;
375
+ };
376
+ /** Memory shared config. */
377
+ memory: {
378
+ budget: ResolvedValue<number>;
379
+ warningThreshold: ResolvedValue<number>;
380
+ staleDays: ResolvedValue<number>;
381
+ };
382
+ }
383
+
384
+ /**
385
+ * `jeeves config [jsonpath]` — inspect effective shared CLI configuration.
386
+ *
387
+ * @remarks
388
+ * Shows effective values and provenance using the shared precedence model.
389
+ * Optional JSONPath filters the resolved config tree.
390
+ */
391
+
392
+ /**
393
+ * Build the effective shared CLI config tree.
394
+ *
395
+ * @param opts - Parsed CLI workspace/config-root options.
396
+ * @returns Effective config tree with provenance on each leaf.
397
+ */
398
+ declare function buildEffectiveConfig(opts: WorkspaceOptions): ResolvedCliConfig;
399
+
400
+ /**
401
+ * Factory for the standard `-openclaw` plugin installer CLI.
402
+ *
403
+ * @module
275
404
  */
276
405
 
277
406
  /** Options for creating a plugin installer CLI. */
@@ -409,12 +538,24 @@ declare function removeComponentVersion(coreConfigDir: string, componentName: st
409
538
  * at the component's prime-interval, calling `generateToolsContent()`
410
539
  * and `refreshPlatformContent()` on each cycle.
411
540
  */
541
+ /** Options for ComponentWriter construction. */
542
+ interface ComponentWriterOptions {
543
+ /**
544
+ * Gateway URL for cleanup escalation (e.g., 'http://localhost:3000').
545
+ * When provided, the writer will attempt to spawn a cleanup session
546
+ * via the gateway when orphaned content is detected.
547
+ * When omitted, cleanup escalation is silently skipped.
548
+ */
549
+ gatewayUrl?: string;
550
+ }
412
551
  declare class ComponentWriter {
413
552
  private timer;
414
553
  private readonly component;
415
554
  private readonly configDir;
555
+ private readonly gatewayUrl;
556
+ private readonly pendingCleanups;
416
557
  /** @internal */
417
- constructor(component: JeevesComponentDescriptor);
558
+ constructor(component: JeevesComponentDescriptor, options?: ComponentWriterOptions);
418
559
  /** The component's config directory path. */
419
560
  get componentConfigDir(): string;
420
561
  /** Whether the writer timer is currently running. */
@@ -432,9 +573,10 @@ declare class ComponentWriter {
432
573
  * Execute a single write cycle.
433
574
  *
434
575
  * @remarks
435
- * Calls `generateToolsContent()` and writes the component's
436
- * TOOLS.md section via `updateManagedSection()`. Also calls
437
- * `refreshPlatformContent()` for shared content maintenance.
576
+ * 1. Write the component's TOOLS.md section.
577
+ * 2. Refresh shared platform content (SOUL.md, AGENTS.md, Platform section).
578
+ * 3. Scan for cleanup flags and escalate if a gateway URL is configured.
579
+ * 4. Run HEARTBEAT health orchestration.
438
580
  */
439
581
  cycle(): Promise<void>;
440
582
  }
@@ -513,10 +655,11 @@ declare function createAsyncContentCache(options: AsyncContentCacheOptions): ()
513
655
  * This replaces the v0.4.0 `createComponentWriter(JeevesComponent)`.
514
656
  *
515
657
  * @param descriptor - The component descriptor to validate and wrap.
658
+ * @param options - Optional writer configuration (e.g., gatewayUrl for cleanup escalation).
516
659
  * @returns A new `ComponentWriter` instance.
517
660
  * @throws ZodError if the descriptor is invalid.
518
661
  */
519
- declare function createComponentWriter(descriptor: JeevesComponentDescriptor): ComponentWriter;
662
+ declare function createComponentWriter(descriptor: JeevesComponentDescriptor, options?: ComponentWriterOptions): ComponentWriter;
520
663
 
521
664
  /**
522
665
  * Heading-based HEARTBEAT section writer.
@@ -670,8 +813,8 @@ declare const AGENTS_MARKERS: ManagedMarkers;
670
813
  declare const VERSION_STAMP_PATTERN: RegExp;
671
814
  /** Staleness threshold for version-stamp convergence in milliseconds. */
672
815
  declare const STALENESS_THRESHOLD_MS: number;
673
- /** Warning text prepended inside managed block when cleanup is needed. */
674
- declare const CLEANUP_FLAG = "> \u26A0\uFE0F CLEANUP NEEDED: Orphaned Jeeves content may exist below this managed section. Review everything after the END marker and remove any content that duplicates what appears above.";
816
+ /** Warning text injected inside managed block when cleanup is needed. */
817
+ declare const CLEANUP_FLAG = "> \u26A0\uFE0F CLEANUP NEEDED: Orphaned Jeeves content detected outside this managed block. Review the file and remove any content outside the BEGIN/END markers that duplicates what appears inside them.";
675
818
 
676
819
  /**
677
820
  * Directory and file path conventions for the Jeeves platform.
@@ -690,7 +833,13 @@ declare const WORKSPACE_FILES: {
690
833
  readonly agents: "AGENTS.md";
691
834
  /** HEARTBEAT.md — platform status and health alerts. */
692
835
  readonly heartbeat: "HEARTBEAT.md";
836
+ /** MEMORY.md — curated long-term memory. */
837
+ readonly memory: "MEMORY.md";
693
838
  };
839
+ /** Skill directory name within workspace. */
840
+ declare const SKILLS_DIR = "skills";
841
+ /** Jeeves skill directory name. */
842
+ declare const JEEVES_SKILL_DIR = "jeeves";
694
843
  /** Templates directory name within core config. */
695
844
  declare const TEMPLATES_DIR = "templates";
696
845
  /** Registry cache file name. */
@@ -1152,6 +1301,60 @@ declare function formatEndMarker(markerText: string): string;
1152
1301
  */
1153
1302
  declare function shouldWrite(myVersion: string, existing: VersionStamp | undefined, stalenessThresholdMs?: number): boolean;
1154
1303
 
1304
+ /**
1305
+ * Memory budget accounting and staleness detection for MEMORY.md.
1306
+ *
1307
+ * @remarks
1308
+ * Scans MEMORY.md for ISO date patterns in H2/H3 headings and bullet items.
1309
+ * Reports character count against a configured budget, warning threshold state,
1310
+ * and stale section candidates. Does not auto-delete: review remains
1311
+ * human- or agent-mediated (Decision 42).
1312
+ */
1313
+ /** Result of memory hygiene analysis. */
1314
+ interface MemoryHygieneResult {
1315
+ /** Whether MEMORY.md exists. */
1316
+ exists: boolean;
1317
+ /** Total character count. */
1318
+ charCount: number;
1319
+ /** Configured budget in characters. */
1320
+ budget: number;
1321
+ /** Usage as a fraction of budget (0–1+). */
1322
+ usage: number;
1323
+ /** Whether usage exceeds the warning threshold. */
1324
+ warning: boolean;
1325
+ /** Whether usage exceeds the budget. */
1326
+ overBudget: boolean;
1327
+ /** Number of H2 sections flagged as stale candidates. */
1328
+ staleCandidates: number;
1329
+ /** Names of stale sections. */
1330
+ staleSectionNames: string[];
1331
+ }
1332
+ /** Options for memory hygiene analysis. */
1333
+ interface MemoryHygieneOptions {
1334
+ /** Workspace root path. */
1335
+ workspacePath: string;
1336
+ /** Character budget. */
1337
+ budget: number;
1338
+ /** Warning threshold as a fraction of budget (0–1). */
1339
+ warningThreshold: number;
1340
+ /** Staleness threshold in days. */
1341
+ staleDays: number;
1342
+ }
1343
+ /**
1344
+ * Extract the most recent ISO date from a string.
1345
+ *
1346
+ * @param text - Text to scan for dates.
1347
+ * @returns The most recent date found, or undefined.
1348
+ */
1349
+ declare function extractMostRecentDate(text: string): Date | undefined;
1350
+ /**
1351
+ * Analyze MEMORY.md for budget and staleness.
1352
+ *
1353
+ * @param options - Analysis configuration.
1354
+ * @returns Memory hygiene result.
1355
+ */
1356
+ declare function analyzeMemory(options: MemoryHygieneOptions): MemoryHygieneResult;
1357
+
1155
1358
  /**
1156
1359
  * Internal function to maintain SOUL.md, AGENTS.md, and TOOLS.md Platform section.
1157
1360
  *
@@ -1209,6 +1412,21 @@ interface SeedContentOptions {
1209
1412
  */
1210
1413
  declare function seedContent(options: SeedContentOptions): Promise<void>;
1211
1414
 
1415
+ /**
1416
+ * Skill seeding: write the `jeeves` workspace skill unconditionally.
1417
+ *
1418
+ * @remarks
1419
+ * The skill file is entirely generated — no user-authored content (Decision 48).
1420
+ * Every installer (core CLI and component plugins) writes it unconditionally.
1421
+ * Content is inlined at build time via `rollup-plugin-md.ts`.
1422
+ */
1423
+ /**
1424
+ * Seed the jeeves workspace skill file.
1425
+ *
1426
+ * @param workspacePath - Workspace root directory.
1427
+ */
1428
+ declare function seedSkill(workspacePath: string): void;
1429
+
1212
1430
  /**
1213
1431
  * Factory for the standard plugin tool set.
1214
1432
  *
@@ -1230,6 +1448,20 @@ declare function seedContent(options: SeedContentOptions): Promise<void>;
1230
1448
  */
1231
1449
  declare function createPluginToolset(descriptor: JeevesComponentDescriptor): ToolDescriptor[];
1232
1450
 
1451
+ /**
1452
+ * Resolve the version of a package from its `import.meta.url`.
1453
+ *
1454
+ * @module
1455
+ */
1456
+ /**
1457
+ * Get the version string from the nearest `package.json` relative to the
1458
+ * caller's module URL.
1459
+ *
1460
+ * @param importMetaUrl - The `import.meta.url` of the calling module.
1461
+ * @returns The `version` field, or `'unknown'` on any error.
1462
+ */
1463
+ declare function getPackageVersion(importMetaUrl: string): string;
1464
+
1233
1465
  /**
1234
1466
  * HTTP helpers for the OpenClaw plugin SDK.
1235
1467
  *
@@ -1394,6 +1626,153 @@ declare function fail(error: unknown): ToolResult;
1394
1626
  */
1395
1627
  declare function connectionFail(error: unknown, baseUrl: string, pluginId: string): ToolResult;
1396
1628
 
1629
+ /**
1630
+ * Shared filesystem utilities for runner job scripts.
1631
+ *
1632
+ * @module
1633
+ */
1634
+ /** Return current time as ISO 8601 string. */
1635
+ declare function nowIso(): string;
1636
+ /** Generate a random UUID v4. */
1637
+ declare function uuid(): string;
1638
+ /** Create a directory and any missing parents. */
1639
+ declare function ensureDir(p: string): void;
1640
+ /** Read and parse a JSON file, returning `fallback` on any error. */
1641
+ declare function readJson<T>(p: string, fallback: T): T;
1642
+ /** Atomically write a JSON file (write to .tmp, then rename). */
1643
+ declare function writeJsonAtomic(p: string, obj: unknown): void;
1644
+ /** Append a single JSON object as a JSONL line. */
1645
+ declare function appendJsonl(p: string, obj: unknown): void;
1646
+ /** Read a JSONL file into an array of parsed objects. */
1647
+ declare function readJsonl<T = unknown>(p: string): T[];
1648
+ /** Overwrite a file with an array of objects as JSONL. */
1649
+ declare function writeJsonl(p: string, entries: unknown[]): void;
1650
+ /** Synchronous sleep using Atomics.wait. */
1651
+ declare function sleepMs(ms: number): void;
1652
+ /** Async sleep via setTimeout. */
1653
+ declare function sleepAsync(ms: number): Promise<void>;
1654
+ /** Load a .env-style key=value file into process.env. */
1655
+ declare function loadEnvFile(envPath: string): void;
1656
+ /** Parse --key=value arguments from argv into a record. */
1657
+ declare function parseArgs(argv?: string[]): Record<string, string>;
1658
+ /** Get the value following a named flag, or a default. */
1659
+ declare function getArg(argv: string[], name: string, defaultValue: string): string;
1660
+
1661
+ /**
1662
+ * Google API auth helpers for runner job scripts.
1663
+ * Supports OAuth refresh tokens and service account impersonation.
1664
+ *
1665
+ * @module
1666
+ */
1667
+ /** Service account config object specifying a key file path. */
1668
+ interface ServiceAccountFileConfig {
1669
+ /** Path to the service account JSON key file. */
1670
+ file: string;
1671
+ }
1672
+ /** Configuration for a Google account's auth method. */
1673
+ interface AccountConfig {
1674
+ /** Google account email address. */
1675
+ email: string;
1676
+ /** Path to refresh token file (relative to credentialsDir). */
1677
+ tokenFile?: string;
1678
+ /** Service account key file path or config object. */
1679
+ serviceAccount?: string | ServiceAccountFileConfig;
1680
+ }
1681
+ /** Options for the Google auth helper. */
1682
+ interface GoogleAuthOptions {
1683
+ /** Path to the OAuth client credentials JSON file. */
1684
+ clientCredentialsPath: string;
1685
+ /** Base directory for credential files. */
1686
+ credentialsDir: string;
1687
+ /** Directory containing service account JSON files. */
1688
+ serviceAccountDir?: string;
1689
+ }
1690
+ /**
1691
+ * Create a Google auth helper with the given configuration.
1692
+ * Returns a function that resolves an access token for a given account and scopes.
1693
+ */
1694
+ declare function createGoogleAuth(options: GoogleAuthOptions): {
1695
+ /** Get an access token for the given account and scopes. */
1696
+ getAccessToken: (account: AccountConfig, scopes: string[]) => Promise<string>;
1697
+ };
1698
+
1699
+ /**
1700
+ * Shared crash-handler wrapper for runner job scripts.
1701
+ * Catches uncaught errors, logs them, and exits with code 1.
1702
+ *
1703
+ * @module
1704
+ */
1705
+ /**
1706
+ * Wrap a script's main function with crash handling.
1707
+ * On uncaught errors, appends to `_crash.log` in `crashDir` and exits.
1708
+ *
1709
+ * @param name - Script identifier for the crash log.
1710
+ * @param fn - Main function to execute (sync or async).
1711
+ * @param crashDir - Directory for crash logs (default: current working directory).
1712
+ */
1713
+ declare function runScript(name: string, fn: () => void | Promise<void>, crashDir?: string): void;
1714
+
1715
+ /**
1716
+ * Shell execution utilities for runner job scripts.
1717
+ *
1718
+ * @module
1719
+ */
1720
+ /** Options for synchronous command execution. */
1721
+ interface RunOptions {
1722
+ /** Output encoding (default utf8). */
1723
+ encoding?: BufferEncoding;
1724
+ /** Max stdout/stderr buffer size in bytes. */
1725
+ maxBuffer?: number;
1726
+ /** Execution timeout in milliseconds. */
1727
+ timeout?: number;
1728
+ /** Run command through the shell. */
1729
+ shell?: boolean;
1730
+ }
1731
+ /**
1732
+ * Run a command synchronously and return trimmed stdout.
1733
+ * Throws on non-zero exit code.
1734
+ */
1735
+ declare function run(cmd: string, args: string[], opts?: RunOptions): string;
1736
+ /** Options for retry-enabled command execution. */
1737
+ interface RetryOptions {
1738
+ /** Number of retries (default 2). */
1739
+ retries?: number;
1740
+ /** Base backoff interval in milliseconds (default 5000). */
1741
+ backoffMs?: number;
1742
+ /** Custom predicate to determine if an error is retryable. */
1743
+ isRetryable?: (error: unknown) => boolean;
1744
+ }
1745
+ /**
1746
+ * Run a command with automatic retries on transient failures.
1747
+ * Uses exponential backoff between attempts.
1748
+ */
1749
+ declare function runWithRetry(cmd: string, args: string[], opts?: RetryOptions & RunOptions): string;
1750
+
1751
+ /**
1752
+ * Slack channel → workspace mapping cache.
1753
+ * Resolves which Slack workspace owns a given channel.
1754
+ *
1755
+ * @module
1756
+ */
1757
+ /** Options for the Slack workspace resolver. */
1758
+ interface SlackWorkspaceOptions {
1759
+ /** Path to the channel→workspace cache JSON file. */
1760
+ cachePath: string;
1761
+ /** Default workspace team ID when resolution fails. */
1762
+ defaultWorkspace: string;
1763
+ }
1764
+ /** Flush pending cache changes to disk. */
1765
+ declare function saveCache(): void;
1766
+ /**
1767
+ * Resolve the workspace team ID that owns a Slack channel.
1768
+ * Results are cached to disk.
1769
+ *
1770
+ * @param channelId - Slack channel ID.
1771
+ * @param token - Slack bot token for API calls.
1772
+ * @param options - Cache path and default workspace.
1773
+ */
1774
+ declare function getChannelWorkspace(channelId: string, token: string, options: SlackWorkspaceOptions): Promise<string>;
1775
+
1397
1776
  /**
1398
1777
  * Factory for platform-aware service lifecycle management.
1399
1778
  *
@@ -1437,5 +1816,5 @@ interface ServiceManager {
1437
1816
  */
1438
1817
  declare function createServiceManager(descriptor: JeevesComponentDescriptor): ServiceManager;
1439
1818
 
1440
- export { AGENTS_MARKERS, CLEANUP_FLAG, COMPONENT_CONFIG_PREFIX, COMPONENT_VERSIONS_FILE, CONFIG_FILE, CORE_CONFIG_DIR, CORE_VERSION, ComponentWriter, DEFAULT_BIND_ADDRESS, DEFAULT_CORE_VERSION, DEFAULT_PORTS, HEARTBEAT_HEADING, META_PORT, PLATFORM_COMPONENTS, REGISTRY_CACHE_FILE, RUNNER_PORT, SECTION_IDS, SECTION_ORDER, SERVER_PORT, SOUL_MARKERS, STALENESS_THRESHOLD_MS, STALE_LOCK_MS, TEMPLATES_DIR, TOOLS_MARKERS, VERSION_STAMP_PATTERN, WATCHER_PORT, WORKSPACE_FILES, atomicWrite, buildHeartbeatSection, checkRegistryVersion, connectionFail, coreConfigSchema, createAsyncContentCache, createComponentWriter, createConfigApplyHandler, createConfigQueryHandler, createPluginCli, createPluginToolset, createServiceCli, createServiceManager, createStatusHandler, fail, fetchJson, fetchWithTimeout, formatBeginMarker, formatEndMarker, generateJsonSchema, getBindAddress, getComponentConfigDir, getConfigRoot, getCoreConfigDir, getCoreConfigFile, getEffectiveServiceName, getServiceState, getServiceUrl, getWorkspacePath, init, isPrime, jaccard, jeevesComponentDescriptorSchema, needsCleanup, ok, orchestrateHeartbeat, parseHeartbeat, parseManaged, patchConfig, postJson, readComponentVersions, refreshPlatformContent, removeComponentVersion, removeManagedSection, resetInit, resolveConfigPath, resolveOpenClawHome, resolveOptionalPluginSetting, resolvePluginSetting, resolveWorkspacePath, seedContent, shingles, shouldWrite, updateManagedSection, withFileLock, writeComponentVersion, writeHeartbeatSection };
1441
- export type { AsyncContentCacheOptions, ComponentDependencies, ComponentState, ComponentVersionEntry, ComponentVersionsState, ConfigApplyHandler, ConfigApplyRequest, ConfigApplyResult, ConfigQueryHandler, ConfigQueryResponse, CoreConfig, CreatePluginCliOptions, CreateStatusHandlerOptions, HeartbeatEntry, InitOptions, JeevesComponentDescriptor, ManagedMarkers, ManagedSection, OrchestrateHeartbeatOptions, ParseManagedResult, ParsedHeartbeat, PlatformComponent, PluginApi, RefreshPlatformContentOptions, RemoveManagedSectionOptions, SectionId, SeedContentOptions, ServiceManager, ServiceManagerOptions, ServiceState, StatusHandler, StatusHandlerResult, StatusResponse, ToolDescriptor, ToolRegistrationOptions, ToolResult, UpdateManagedSectionOptions, VersionStamp, WriteComponentVersionOptions };
1819
+ export { AGENTS_MARKERS, CLEANUP_FLAG, COMPONENT_CONFIG_PREFIX, COMPONENT_VERSIONS_FILE, CONFIG_FILE, CORE_CONFIG_DIR, CORE_VERSION, ComponentWriter, DEFAULT_BIND_ADDRESS, DEFAULT_CORE_VERSION, DEFAULT_PORTS, HEARTBEAT_HEADING, JEEVES_SKILL_DIR, META_PORT, PLATFORM_COMPONENTS, REGISTRY_CACHE_FILE, RUNNER_PORT, SECTION_IDS, SECTION_ORDER, SERVER_PORT, SKILLS_DIR, SOUL_MARKERS, STALENESS_THRESHOLD_MS, STALE_LOCK_MS, TEMPLATES_DIR, TOOLS_MARKERS, VERSION_STAMP_PATTERN, WATCHER_PORT, WORKSPACE_CONFIG_DEFAULTS, WORKSPACE_CONFIG_FILE, WORKSPACE_FILES, analyzeMemory, appendJsonl, atomicWrite, buildEffectiveConfig, buildHeartbeatSection, checkNodeVersion, checkRegistryVersion, connectionFail, coreConfigSchema, createAsyncContentCache, createComponentWriter, createConfigApplyHandler, createConfigQueryHandler, createGoogleAuth, createPluginCli, createPluginToolset, createServiceCli, createServiceManager, createStatusHandler, ensureDir, extractMostRecentDate, fail, fetchJson, fetchWithTimeout, formatBeginMarker, formatEndMarker, generateJsonSchema, generateWorkspaceJsonSchema, getArg, getBindAddress, getChannelWorkspace, getComponentConfigDir, getConfigRoot, getCoreConfigDir, getCoreConfigFile, getEffectiveServiceName, getPackageVersion, getServiceState, getServiceUrl, getWorkspacePath, init, isPrime, jaccard, jeevesComponentDescriptorSchema, loadEnvFile, loadWorkspaceConfig, needsCleanup, nowIso, ok, orchestrateHeartbeat, parseArgs, parseHeartbeat, parseManaged, patchConfig, postJson, readComponentVersions, readJson, readJsonl, refreshPlatformContent, removeComponentVersion, removeManagedSection, resetInit, resolveConfigPath, resolveConfigValue, resolveOpenClawHome, resolveOptionalPluginSetting, resolvePluginSetting, resolveWorkspacePath, run, runScript, runWithRetry, saveCache, seedContent, seedSkill, shingles, shouldWrite, sleepAsync, sleepMs, updateManagedSection, uuid, withFileLock, workspaceConfigSchema, writeComponentVersion, writeHeartbeatSection, writeJsonAtomic, writeJsonl };
1820
+ export type { AccountConfig, AsyncContentCacheOptions, ComponentDependencies, ComponentState, ComponentVersionEntry, ComponentVersionsState, ComponentWriterOptions, ConfigApplyHandler, ConfigApplyRequest, ConfigApplyResult, ConfigProvenance, ConfigQueryHandler, ConfigQueryResponse, CoreConfig, CreatePluginCliOptions, CreateStatusHandlerOptions, GoogleAuthOptions, HeartbeatEntry, InitOptions, JeevesComponentDescriptor, ManagedMarkers, ManagedSection, MemoryHygieneOptions, MemoryHygieneResult, OrchestrateHeartbeatOptions, ParseManagedResult, ParsedHeartbeat, PlatformComponent, PluginApi, RefreshPlatformContentOptions, RemoveManagedSectionOptions, ResolvedValue, RetryOptions, RunOptions, SectionId, SeedContentOptions, ServiceAccountFileConfig, ServiceManager, ServiceManagerOptions, ServiceState, SlackWorkspaceOptions, StatusHandler, StatusHandlerResult, StatusResponse, ToolDescriptor, ToolRegistrationOptions, ToolResult, UpdateManagedSectionOptions, VersionStamp, WorkspaceConfig, WriteComponentVersionOptions };