@neuroverseos/governance 0.1.0 → 0.1.2

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 (94) hide show
  1. package/LICENSE.md +190 -0
  2. package/README.md +472 -115
  3. package/dist/adapters/express.cjs +874 -0
  4. package/dist/adapters/express.d.cts +66 -0
  5. package/dist/adapters/express.d.ts +66 -0
  6. package/dist/adapters/express.js +10 -0
  7. package/dist/adapters/index.cjs +1166 -0
  8. package/dist/adapters/index.d.cts +5 -0
  9. package/dist/adapters/index.d.ts +5 -0
  10. package/dist/adapters/index.js +40 -0
  11. package/dist/adapters/langchain.cjs +861 -0
  12. package/dist/adapters/langchain.d.cts +82 -0
  13. package/dist/adapters/langchain.d.ts +82 -0
  14. package/dist/adapters/langchain.js +14 -0
  15. package/dist/adapters/openai.cjs +891 -0
  16. package/dist/adapters/openai.d.cts +92 -0
  17. package/dist/adapters/openai.d.ts +92 -0
  18. package/dist/adapters/openai.js +14 -0
  19. package/dist/adapters/openclaw.cjs +883 -0
  20. package/dist/adapters/openclaw.d.cts +92 -0
  21. package/dist/adapters/openclaw.d.ts +92 -0
  22. package/dist/adapters/openclaw.js +14 -0
  23. package/dist/bootstrap-H4HHKQ5G.js +113 -0
  24. package/dist/build-73KAVHEY.js +308 -0
  25. package/dist/chunk-4NGDRRQH.js +10 -0
  26. package/dist/chunk-B4NF3OLW.js +673 -0
  27. package/dist/chunk-BUWWN2NX.js +192 -0
  28. package/dist/chunk-CROPZ75A.js +107 -0
  29. package/dist/chunk-D7BGWV2J.js +620 -0
  30. package/dist/chunk-EIUHJXBB.js +340 -0
  31. package/dist/chunk-EQXFOKH2.js +85 -0
  32. package/dist/chunk-FYPYZFV5.js +187 -0
  33. package/dist/chunk-FYS2CBUW.js +304 -0
  34. package/dist/chunk-FZQCRGUU.js +115 -0
  35. package/dist/chunk-I3RRAYK2.js +11 -0
  36. package/dist/chunk-ITJ3LCPG.js +225 -0
  37. package/dist/chunk-M3TZFGHO.js +79 -0
  38. package/dist/chunk-MWDQ4MJB.js +11 -0
  39. package/dist/chunk-O5OMJMIE.js +590 -0
  40. package/dist/chunk-T4X42QXC.js +121 -0
  41. package/dist/chunk-XPDMYECO.js +642 -0
  42. package/dist/chunk-Z2S2HIV5.js +100 -0
  43. package/dist/cli/neuroverse.cjs +5864 -0
  44. package/dist/cli/neuroverse.d.cts +1 -0
  45. package/dist/cli/neuroverse.d.ts +1 -0
  46. package/dist/cli/neuroverse.js +128 -0
  47. package/dist/configure-ai-46JVG56I.js +129 -0
  48. package/dist/derive-6NAEWLM5.js +150 -0
  49. package/dist/explain-3B3VB6TL.js +69 -0
  50. package/dist/guard-67Y66P3I.js +82 -0
  51. package/dist/guard-contract-D_RQz9kt.d.cts +529 -0
  52. package/dist/guard-contract-D_RQz9kt.d.ts +529 -0
  53. package/dist/impact-CHERK3O6.js +57 -0
  54. package/dist/improve-YG6I6ERG.js +84 -0
  55. package/dist/index.cjs +4227 -0
  56. package/dist/index.d.cts +1147 -0
  57. package/dist/index.d.ts +1139 -25
  58. package/dist/index.js +318 -1159
  59. package/dist/init-Z66T6TDI.js +142 -0
  60. package/dist/simulate-ETHHINZ4.js +107 -0
  61. package/dist/trace-3YODSSIP.js +164 -0
  62. package/dist/validate-UVE6GKQU.js +72 -0
  63. package/dist/validate-engine-657D75OG.js +6 -0
  64. package/dist/world-WLNHL5XC.js +298 -0
  65. package/dist/worlds/derivation-world.nv-world.md +278 -0
  66. package/package.json +74 -26
  67. package/LICENSE +0 -21
  68. package/dist/audit-logger.d.ts +0 -38
  69. package/dist/audit-logger.d.ts.map +0 -1
  70. package/dist/audit-logger.js +0 -100
  71. package/dist/audit-logger.js.map +0 -1
  72. package/dist/condition-engine.d.ts +0 -16
  73. package/dist/condition-engine.d.ts.map +0 -1
  74. package/dist/condition-engine.js +0 -186
  75. package/dist/condition-engine.js.map +0 -1
  76. package/dist/drift-monitor.d.ts +0 -81
  77. package/dist/drift-monitor.d.ts.map +0 -1
  78. package/dist/drift-monitor.js +0 -228
  79. package/dist/drift-monitor.js.map +0 -1
  80. package/dist/governance-engine.d.ts +0 -131
  81. package/dist/governance-engine.d.ts.map +0 -1
  82. package/dist/governance-engine.js +0 -660
  83. package/dist/governance-engine.js.map +0 -1
  84. package/dist/index.d.ts.map +0 -1
  85. package/dist/index.js.map +0 -1
  86. package/dist/types.d.ts +0 -196
  87. package/dist/types.d.ts.map +0 -1
  88. package/dist/types.js +0 -9
  89. package/dist/types.js.map +0 -1
  90. package/dist/world-bootstrap.d.ts +0 -31
  91. package/dist/world-bootstrap.d.ts.map +0 -1
  92. package/dist/world-bootstrap.js +0 -415
  93. package/dist/world-bootstrap.js.map +0 -1
  94. package/openclaw.plugin.json +0 -59
@@ -0,0 +1,82 @@
1
+ import { G as GuardVerdict, a as GuardEvent, W as WorldDefinition } from '../guard-contract-D_RQz9kt.cjs';
2
+
3
+ /**
4
+ * NeuroVerse Adapter — LangChain
5
+ *
6
+ * Wraps the governance engine as a LangChain tool-calling middleware.
7
+ * Intercepts tool invocations and evaluates them against a world definition
8
+ * before allowing execution to proceed.
9
+ *
10
+ * Usage:
11
+ * import { createNeuroVerseCallbackHandler } from 'neuroverse-governance/adapters/langchain';
12
+ *
13
+ * const handler = await createNeuroVerseCallbackHandler('./world/', {
14
+ * onBlock: (verdict) => console.log('Blocked:', verdict.reason),
15
+ * onPause: (verdict) => requestHumanApproval(verdict),
16
+ * });
17
+ *
18
+ * const agent = new AgentExecutor({ ..., callbacks: [handler] });
19
+ */
20
+
21
+ interface NeuroVerseHandlerOptions {
22
+ /** Include full evaluation trace in verdicts. Default: false. */
23
+ trace?: boolean;
24
+ /** Enforcement level override. */
25
+ level?: 'basic' | 'standard' | 'strict';
26
+ /** Called when an action is blocked. */
27
+ onBlock?: (verdict: GuardVerdict, event: GuardEvent) => void;
28
+ /** Called when an action requires approval. Return true to allow. */
29
+ onPause?: (verdict: GuardVerdict, event: GuardEvent) => Promise<boolean> | boolean;
30
+ /** Called for every evaluation (logging hook). */
31
+ onEvaluate?: (verdict: GuardVerdict, event: GuardEvent) => void;
32
+ /** Map a tool call to a GuardEvent. Override for custom tool shapes. */
33
+ mapToolCall?: (toolName: string, toolInput: Record<string, unknown>) => GuardEvent;
34
+ }
35
+ declare class GovernanceBlockedError extends Error {
36
+ readonly verdict: GuardVerdict;
37
+ readonly event: GuardEvent;
38
+ constructor(verdict: GuardVerdict, event: GuardEvent);
39
+ }
40
+ /**
41
+ * A LangChain-compatible callback handler that evaluates tool calls
42
+ * against a NeuroVerse world definition.
43
+ *
44
+ * Implements the BaseCallbackHandler interface shape so it can be
45
+ * passed directly into LangChain's callbacks array.
46
+ */
47
+ declare class NeuroVerseCallbackHandler {
48
+ readonly name = "NeuroVerseGovernance";
49
+ private world;
50
+ private options;
51
+ private engineOptions;
52
+ private mapToolCall;
53
+ constructor(world: WorldDefinition, options?: NeuroVerseHandlerOptions);
54
+ /**
55
+ * Called before a tool is executed.
56
+ * Evaluates the tool call against the governance world.
57
+ *
58
+ * @throws GovernanceBlockedError if the action is BLOCKED
59
+ * @throws GovernanceBlockedError if the action is PAUSED and onPause returns false
60
+ */
61
+ handleToolStart(tool: {
62
+ name: string;
63
+ }, input: string): Promise<void>;
64
+ }
65
+ /**
66
+ * Create a NeuroVerse callback handler from a world path.
67
+ *
68
+ * @param worldPath - Path to world directory or .nv-world.zip
69
+ * @param options - Handler configuration
70
+ * @returns A callback handler ready to plug into LangChain
71
+ */
72
+ declare function createNeuroVerseCallbackHandler(worldPath: string, options?: NeuroVerseHandlerOptions): Promise<NeuroVerseCallbackHandler>;
73
+ /**
74
+ * Create a NeuroVerse callback handler from a pre-loaded world.
75
+ *
76
+ * @param world - A loaded WorldDefinition
77
+ * @param options - Handler configuration
78
+ * @returns A callback handler ready to plug into LangChain
79
+ */
80
+ declare function createNeuroVerseCallbackHandlerFromWorld(world: WorldDefinition, options?: NeuroVerseHandlerOptions): NeuroVerseCallbackHandler;
81
+
82
+ export { GovernanceBlockedError, NeuroVerseCallbackHandler, type NeuroVerseHandlerOptions, createNeuroVerseCallbackHandler, createNeuroVerseCallbackHandlerFromWorld };
@@ -0,0 +1,82 @@
1
+ import { G as GuardVerdict, a as GuardEvent, W as WorldDefinition } from '../guard-contract-D_RQz9kt.js';
2
+
3
+ /**
4
+ * NeuroVerse Adapter — LangChain
5
+ *
6
+ * Wraps the governance engine as a LangChain tool-calling middleware.
7
+ * Intercepts tool invocations and evaluates them against a world definition
8
+ * before allowing execution to proceed.
9
+ *
10
+ * Usage:
11
+ * import { createNeuroVerseCallbackHandler } from 'neuroverse-governance/adapters/langchain';
12
+ *
13
+ * const handler = await createNeuroVerseCallbackHandler('./world/', {
14
+ * onBlock: (verdict) => console.log('Blocked:', verdict.reason),
15
+ * onPause: (verdict) => requestHumanApproval(verdict),
16
+ * });
17
+ *
18
+ * const agent = new AgentExecutor({ ..., callbacks: [handler] });
19
+ */
20
+
21
+ interface NeuroVerseHandlerOptions {
22
+ /** Include full evaluation trace in verdicts. Default: false. */
23
+ trace?: boolean;
24
+ /** Enforcement level override. */
25
+ level?: 'basic' | 'standard' | 'strict';
26
+ /** Called when an action is blocked. */
27
+ onBlock?: (verdict: GuardVerdict, event: GuardEvent) => void;
28
+ /** Called when an action requires approval. Return true to allow. */
29
+ onPause?: (verdict: GuardVerdict, event: GuardEvent) => Promise<boolean> | boolean;
30
+ /** Called for every evaluation (logging hook). */
31
+ onEvaluate?: (verdict: GuardVerdict, event: GuardEvent) => void;
32
+ /** Map a tool call to a GuardEvent. Override for custom tool shapes. */
33
+ mapToolCall?: (toolName: string, toolInput: Record<string, unknown>) => GuardEvent;
34
+ }
35
+ declare class GovernanceBlockedError extends Error {
36
+ readonly verdict: GuardVerdict;
37
+ readonly event: GuardEvent;
38
+ constructor(verdict: GuardVerdict, event: GuardEvent);
39
+ }
40
+ /**
41
+ * A LangChain-compatible callback handler that evaluates tool calls
42
+ * against a NeuroVerse world definition.
43
+ *
44
+ * Implements the BaseCallbackHandler interface shape so it can be
45
+ * passed directly into LangChain's callbacks array.
46
+ */
47
+ declare class NeuroVerseCallbackHandler {
48
+ readonly name = "NeuroVerseGovernance";
49
+ private world;
50
+ private options;
51
+ private engineOptions;
52
+ private mapToolCall;
53
+ constructor(world: WorldDefinition, options?: NeuroVerseHandlerOptions);
54
+ /**
55
+ * Called before a tool is executed.
56
+ * Evaluates the tool call against the governance world.
57
+ *
58
+ * @throws GovernanceBlockedError if the action is BLOCKED
59
+ * @throws GovernanceBlockedError if the action is PAUSED and onPause returns false
60
+ */
61
+ handleToolStart(tool: {
62
+ name: string;
63
+ }, input: string): Promise<void>;
64
+ }
65
+ /**
66
+ * Create a NeuroVerse callback handler from a world path.
67
+ *
68
+ * @param worldPath - Path to world directory or .nv-world.zip
69
+ * @param options - Handler configuration
70
+ * @returns A callback handler ready to plug into LangChain
71
+ */
72
+ declare function createNeuroVerseCallbackHandler(worldPath: string, options?: NeuroVerseHandlerOptions): Promise<NeuroVerseCallbackHandler>;
73
+ /**
74
+ * Create a NeuroVerse callback handler from a pre-loaded world.
75
+ *
76
+ * @param world - A loaded WorldDefinition
77
+ * @param options - Handler configuration
78
+ * @returns A callback handler ready to plug into LangChain
79
+ */
80
+ declare function createNeuroVerseCallbackHandlerFromWorld(world: WorldDefinition, options?: NeuroVerseHandlerOptions): NeuroVerseCallbackHandler;
81
+
82
+ export { GovernanceBlockedError, NeuroVerseCallbackHandler, type NeuroVerseHandlerOptions, createNeuroVerseCallbackHandler, createNeuroVerseCallbackHandlerFromWorld };
@@ -0,0 +1,14 @@
1
+ import {
2
+ GovernanceBlockedError,
3
+ NeuroVerseCallbackHandler,
4
+ createNeuroVerseCallbackHandler,
5
+ createNeuroVerseCallbackHandlerFromWorld
6
+ } from "../chunk-EQXFOKH2.js";
7
+ import "../chunk-B4NF3OLW.js";
8
+ import "../chunk-M3TZFGHO.js";
9
+ export {
10
+ GovernanceBlockedError,
11
+ NeuroVerseCallbackHandler,
12
+ createNeuroVerseCallbackHandler,
13
+ createNeuroVerseCallbackHandlerFromWorld
14
+ };