@intutic/cli 2.4.0 → 2.5.1

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 (157) hide show
  1. package/README.md +27 -16
  2. package/dist/cli.js +56 -12
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/attenuate.d.ts +9 -8
  5. package/dist/commands/attenuate.d.ts.map +1 -1
  6. package/dist/commands/attenuate.js +18 -11
  7. package/dist/commands/attenuate.js.map +1 -1
  8. package/dist/commands/budget.d.ts.map +1 -1
  9. package/dist/commands/budget.js +3 -6
  10. package/dist/commands/budget.js.map +1 -1
  11. package/dist/commands/chaos.d.ts +40 -0
  12. package/dist/commands/chaos.d.ts.map +1 -0
  13. package/dist/commands/chaos.js +253 -0
  14. package/dist/commands/chaos.js.map +1 -0
  15. package/dist/commands/connect.d.ts +7 -0
  16. package/dist/commands/connect.d.ts.map +1 -1
  17. package/dist/commands/connect.js +79 -31
  18. package/dist/commands/connect.js.map +1 -1
  19. package/dist/commands/disconnect.d.ts +11 -1
  20. package/dist/commands/disconnect.d.ts.map +1 -1
  21. package/dist/commands/disconnect.js +18 -3
  22. package/dist/commands/disconnect.js.map +1 -1
  23. package/dist/commands/doctor.d.ts +7 -0
  24. package/dist/commands/doctor.d.ts.map +1 -1
  25. package/dist/commands/doctor.js +21 -17
  26. package/dist/commands/doctor.js.map +1 -1
  27. package/dist/commands/enforce.d.ts +14 -1
  28. package/dist/commands/enforce.d.ts.map +1 -1
  29. package/dist/commands/enforce.js +21 -3
  30. package/dist/commands/enforce.js.map +1 -1
  31. package/dist/commands/exec.d.ts +29 -1
  32. package/dist/commands/exec.d.ts.map +1 -1
  33. package/dist/commands/exec.js +72 -35
  34. package/dist/commands/exec.js.map +1 -1
  35. package/dist/commands/gateway.d.ts.map +1 -1
  36. package/dist/commands/gateway.js +3 -3
  37. package/dist/commands/gateway.js.map +1 -1
  38. package/dist/commands/guardrails.d.ts.map +1 -1
  39. package/dist/commands/guardrails.js +10 -8
  40. package/dist/commands/guardrails.js.map +1 -1
  41. package/dist/commands/integrity.d.ts.map +1 -1
  42. package/dist/commands/integrity.js +4 -1
  43. package/dist/commands/integrity.js.map +1 -1
  44. package/dist/commands/judge.d.ts.map +1 -1
  45. package/dist/commands/judge.js +6 -9
  46. package/dist/commands/judge.js.map +1 -1
  47. package/dist/commands/login.js +4 -4
  48. package/dist/commands/login.js.map +1 -1
  49. package/dist/commands/policy.d.ts +16 -0
  50. package/dist/commands/policy.d.ts.map +1 -1
  51. package/dist/commands/policy.js +90 -8
  52. package/dist/commands/policy.js.map +1 -1
  53. package/dist/commands/siem.d.ts.map +1 -1
  54. package/dist/commands/siem.js.map +1 -1
  55. package/dist/commands/skill.d.ts +52 -1
  56. package/dist/commands/skill.d.ts.map +1 -1
  57. package/dist/commands/skill.js +147 -40
  58. package/dist/commands/skill.js.map +1 -1
  59. package/dist/commands/sops.d.ts +61 -50
  60. package/dist/commands/sops.d.ts.map +1 -1
  61. package/dist/commands/sops.js +425 -166
  62. package/dist/commands/sops.js.map +1 -1
  63. package/dist/commands/start.d.ts.map +1 -1
  64. package/dist/commands/start.js +2 -1
  65. package/dist/commands/start.js.map +1 -1
  66. package/dist/commands/status.d.ts.map +1 -1
  67. package/dist/commands/status.js +2 -1
  68. package/dist/commands/status.js.map +1 -1
  69. package/dist/commands/traces.d.ts.map +1 -1
  70. package/dist/commands/traces.js +4 -3
  71. package/dist/commands/traces.js.map +1 -1
  72. package/dist/config/paths.d.ts +15 -9
  73. package/dist/config/paths.d.ts.map +1 -1
  74. package/dist/config/paths.js +24 -10
  75. package/dist/config/paths.js.map +1 -1
  76. package/dist/harness/ag2.d.ts +4 -2
  77. package/dist/harness/ag2.d.ts.map +1 -1
  78. package/dist/harness/ag2.js +4 -2
  79. package/dist/harness/ag2.js.map +1 -1
  80. package/dist/harness/autogen.d.ts +10 -11
  81. package/dist/harness/autogen.d.ts.map +1 -1
  82. package/dist/harness/autogen.js +14 -15
  83. package/dist/harness/autogen.js.map +1 -1
  84. package/dist/harness/detector.d.ts.map +1 -1
  85. package/dist/harness/detector.js +5 -2
  86. package/dist/harness/detector.js.map +1 -1
  87. package/dist/harness/openhands.d.ts.map +1 -1
  88. package/dist/harness/openhands.js +3 -4
  89. package/dist/harness/openhands.js.map +1 -1
  90. package/dist/harness/windsurf.d.ts.map +1 -1
  91. package/dist/harness/windsurf.js +4 -2
  92. package/dist/harness/windsurf.js.map +1 -1
  93. package/dist/lib/api.d.ts +7 -3
  94. package/dist/lib/api.d.ts.map +1 -1
  95. package/dist/lib/caTrust.d.ts +43 -1
  96. package/dist/lib/caTrust.d.ts.map +1 -1
  97. package/dist/lib/caTrust.js +109 -9
  98. package/dist/lib/caTrust.js.map +1 -1
  99. package/dist/lib/chaos/experiment.d.ts +18 -0
  100. package/dist/lib/chaos/experiment.d.ts.map +1 -0
  101. package/dist/lib/chaos/experiment.js +40 -0
  102. package/dist/lib/chaos/experiment.js.map +1 -0
  103. package/dist/lib/chaos/probes.d.ts +97 -0
  104. package/dist/lib/chaos/probes.d.ts.map +1 -0
  105. package/dist/lib/chaos/probes.js +191 -0
  106. package/dist/lib/chaos/probes.js.map +1 -0
  107. package/dist/lib/chaos/runner.d.ts +131 -0
  108. package/dist/lib/chaos/runner.d.ts.map +1 -0
  109. package/dist/lib/chaos/runner.js +340 -0
  110. package/dist/lib/chaos/runner.js.map +1 -0
  111. package/dist/lib/chaos/workspace.d.ts +70 -0
  112. package/dist/lib/chaos/workspace.d.ts.map +1 -0
  113. package/dist/lib/chaos/workspace.js +216 -0
  114. package/dist/lib/chaos/workspace.js.map +1 -0
  115. package/dist/lib/ciscoScanner.d.ts +9 -4
  116. package/dist/lib/ciscoScanner.d.ts.map +1 -1
  117. package/dist/lib/ciscoScanner.js +42 -8
  118. package/dist/lib/ciscoScanner.js.map +1 -1
  119. package/dist/lib/decisionsLogRefresh.d.ts.map +1 -1
  120. package/dist/lib/decisionsLogRefresh.js +6 -2
  121. package/dist/lib/decisionsLogRefresh.js.map +1 -1
  122. package/dist/lib/enforcementState.d.ts +7 -0
  123. package/dist/lib/enforcementState.d.ts.map +1 -1
  124. package/dist/lib/enforcementState.js +9 -0
  125. package/dist/lib/enforcementState.js.map +1 -1
  126. package/dist/lib/gitHooks.d.ts.map +1 -1
  127. package/dist/lib/gitHooks.js +6 -4
  128. package/dist/lib/gitHooks.js.map +1 -1
  129. package/dist/lib/mdmManifest.d.ts.map +1 -1
  130. package/dist/lib/mdmManifest.js +33 -3
  131. package/dist/lib/mdmManifest.js.map +1 -1
  132. package/dist/lib/proxyBinary.d.ts +11 -0
  133. package/dist/lib/proxyBinary.d.ts.map +1 -1
  134. package/dist/lib/proxyBinary.js +16 -0
  135. package/dist/lib/proxyBinary.js.map +1 -1
  136. package/dist/lib/sandbox/firecracker.d.ts.map +1 -1
  137. package/dist/lib/sandbox/firecracker.js +4 -1
  138. package/dist/lib/sandbox/firecracker.js.map +1 -1
  139. package/dist/lib/sandbox/image.d.ts +13 -4
  140. package/dist/lib/sandbox/image.d.ts.map +1 -1
  141. package/dist/lib/sandbox/image.js +25 -8
  142. package/dist/lib/sandbox/image.js.map +1 -1
  143. package/dist/lib/sandbox/oci.d.ts.map +1 -1
  144. package/dist/lib/sandbox/oci.js +18 -3
  145. package/dist/lib/sandbox/oci.js.map +1 -1
  146. package/dist/lib/sandbox/types.d.ts +6 -0
  147. package/dist/lib/sandbox/types.d.ts.map +1 -1
  148. package/dist/lib/sopFrontMatter.d.ts +35 -0
  149. package/dist/lib/sopFrontMatter.d.ts.map +1 -1
  150. package/dist/lib/sopFrontMatter.js +60 -0
  151. package/dist/lib/sopFrontMatter.js.map +1 -1
  152. package/package.json +6 -5
  153. package/resources/chaos/credential-revoked.yaml +28 -0
  154. package/resources/chaos/poisoned-readme.yaml +29 -0
  155. package/resources/chaos/registry-down.yaml +25 -0
  156. package/resources/sandbox/Dockerfile.node +19 -0
  157. package/resources/sandbox/firecracker-launch.sh +8 -7
@@ -6,24 +6,26 @@
6
6
  * module doc on the dashboard side). This command is the mint/inspect half:
7
7
  *
8
8
  * - `intutic attenuate --parent-key <keyId> --caps <a,b,c> [--ttl <seconds>]`
9
- * — `POST /api/v1/attenuate`, narrowing a parent `vk_*` key to a child key
10
- * scoped to a capability subset (`requestedCaps ⊆ parent.scopes`, enforced
11
- * server-side).
9
+ * — `POST /api/v1/attenuate`, narrowing one of your `vk_*` keys to a child
10
+ * key with narrower scopes (each requested scope granted by the parent,
11
+ * enforced server-side).
12
12
  * - `intutic attenuate chain <chainId>` — `GET /api/v1/attenuate/chain/:chainId`,
13
13
  * resolving the full delegation lineage for audit purposes.
14
14
  *
15
15
  * @module
16
16
  */
17
+ import { API_SCOPE_NAMES, unknownApiKeyScopes } from '@intutic/shared-types';
17
18
  import { log } from '../lib/logger.js';
18
19
  import { getClient } from './skill.js';
19
20
  /**
20
21
  * `intutic attenuate --parent-key <keyId> --caps <a,b,c> [--ttl <seconds>]`
21
- * — mints a child key narrowed to a subset of the parent key's capabilities.
22
+ * — mints a child key narrowed to scopes its parent grants.
22
23
  *
23
- * `--caps` is a comma-separated list, split and trimmed client-side; the
24
- * server does the actual `requestedCaps ⊆ parent.scopes` subset check and
25
- * returns `E_ATTENUATION_CAP_VIOLATION` (403) naming exactly which requested
26
- * capability was not in the parent's scopes.
24
+ * `--caps` is a comma-separated list of API key scopes (`gateway:use`,
25
+ * `traces:read`, …), split, trimmed and checked against the registry
26
+ * client-side; the server checks each is granted by the parent (`*` grants
27
+ * all, `x:write` grants `x:read`) and returns `ATTENUATION_CAP_VIOLATION`
28
+ * (403) naming exactly which was not.
27
29
  */
28
30
  export async function runAttenuate(opts) {
29
31
  log.header('Intutic — Attenuate API Key');
@@ -36,7 +38,12 @@ export async function runAttenuate(opts) {
36
38
  .map((cap) => cap.trim())
37
39
  .filter(Boolean);
38
40
  if (requestedCaps.length === 0) {
39
- log.error('--caps is required and must list at least one capability');
41
+ log.error('--caps is required and must list at least one scope');
42
+ process.exit(1);
43
+ }
44
+ const unknown = unknownApiKeyScopes(requestedCaps);
45
+ if (unknown.length > 0) {
46
+ log.error(`Unknown scope${unknown.length === 1 ? '' : 's'}: ${unknown.join(', ')}. Valid scopes: ${API_SCOPE_NAMES.join(', ')}`);
40
47
  process.exit(1);
41
48
  }
42
49
  let ttlSeconds;
@@ -60,7 +67,7 @@ export async function runAttenuate(opts) {
60
67
  log.field('Child Key', result.childKey);
61
68
  log.field('Child Key ID', result.childKeyId);
62
69
  log.field('Chain ID', result.attenuationChainId);
63
- log.field('Granted Capabilities', result.grantedCaps.join(', '));
70
+ log.field('Granted Scopes', result.grantedCaps.join(', '));
64
71
  log.field('Expires At', result.expiresAt);
65
72
  log.dim('The child key is shown once and never stored — save it now.');
66
73
  }
@@ -87,7 +94,7 @@ export async function runAttenuateChain(chainId, opts) {
87
94
  log.field('Chain ID', link.chainId);
88
95
  log.field('Parent Key', link.parentKeyId);
89
96
  log.field('Child Key', link.childKeyId);
90
- log.field('Granted Capabilities', link.grantedCaps.join(', '));
97
+ log.field('Granted Scopes', link.grantedCaps.join(', '));
91
98
  log.field('Expires At', link.expiresAt);
92
99
  log.field('Minted At', link.createdAt);
93
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attenuate.js","sourceRoot":"","sources":["../../src/commands/attenuate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attenuate.js","sourceRoot":"","sources":["../../src/commands/attenuate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/commands/budget.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAS1D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,eAAe,EAAE,OAAO,CAAA;IACxB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B,KAAO,CAAA;AAEhD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,IAAI,GAC/E,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,qBAAqB,EAAE,MAAM,CAAA;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;CAClB;AAID;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,SAAS,GAAE,OAAO,KAAa,GAC9B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAcpC;AAED,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,GAAG,yBAAyB,CAAC,GAAG,MAAM,CAKpH;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEtE;AAID,yEAAyE;AACzE,eAAO,MAAM,8BAA8B,IAAI,CAAA;AAE/C;;;;;;;;;GASG;AACH,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAEhD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,iBAAiB,EAAE,MAAM,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAC3D,sBAAsB,EAAE,MAAM,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,EAClE,gBAAgB,EAAE,OAAO,EACzB,aAAa,EAAE,oBAAoB,GAAG,IAAI,GACzC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CActC;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC9F"}
1
+ {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/commands/budget.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAS1D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,eAAe,EAAE,OAAO,CAAA;IACxB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B,KAAO,CAAA;AAEhD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,IAAI,GAC/E,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,qBAAqB,EAAE,MAAM,CAAA;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;CAClB;AAID;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,SAAS,GAAE,OAAO,KAAa,GAC9B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAcpC;AAED,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,GAAG,yBAAyB,CAAC,GAAG,MAAM,CAKpH;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEtE;AAID,yEAAyE;AACzE,eAAO,MAAM,8BAA8B,IAAI,CAAA;AAE/C;;;;;;;;;GASG;AACH,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAEhD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,iBAAiB,EAAE,MAAM,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAC3D,sBAAsB,EAAE,MAAM,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,EAClE,gBAAgB,EAAE,OAAO,EACzB,aAAa,EAAE,oBAAoB,GAAG,IAAI,GACzC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CActC;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsC9F"}
@@ -59,9 +59,8 @@ export async function runBudget(opts) {
59
59
  log.header('Intutic — Budget & Loop Status');
60
60
  const creds = await loadCredentials();
61
61
  const config = loadConfig();
62
- const devMode = opts.dev || config?.devMode || process.env.INTUTIC_DEV === '1';
63
62
  if (creds) {
64
- const controlPlaneUrl = resolveControlPlaneUrl(devMode);
63
+ const controlPlaneUrl = resolveControlPlaneUrl(opts.dev);
65
64
  const client = createApiClient(controlPlaneUrl, creds.apiKey);
66
65
  // 1. Fetch Cloud Budget Status
67
66
  try {
@@ -98,7 +97,7 @@ export async function runBudget(opts) {
98
97
  : '— (local proxy not running)');
99
98
  // 3. Fetch Active Loops (requires connection)
100
99
  if (creds) {
101
- const controlPlaneUrl = resolveControlPlaneUrl(devMode);
100
+ const controlPlaneUrl = resolveControlPlaneUrl(opts.dev);
102
101
  const client = createApiClient(controlPlaneUrl, creds.apiKey);
103
102
  try {
104
103
  const loopsRes = await client.get('/api/v1/loops');
@@ -162,9 +161,7 @@ export async function runBudgetWatch(opts) {
162
161
  log.dim(' Printing one line per tick. Press Ctrl+C to stop.');
163
162
  console.log('');
164
163
  const creds = await loadCredentials();
165
- const config = loadConfig();
166
- const devMode = opts.dev || config?.devMode || process.env.INTUTIC_DEV === '1';
167
- const client = creds ? createApiClient(resolveControlPlaneUrl(devMode), creds.apiKey) : null;
164
+ const client = creds ? createApiClient(resolveControlPlaneUrl(opts.dev), creds.apiKey) : null;
168
165
  const intervalSeconds = (() => {
169
166
  const parsed = Number(opts.interval);
170
167
  return Number.isFinite(parsed) && parsed > 0 ? parsed : DEFAULT_WATCH_INTERVAL_SECONDS;
@@ -1 +1 @@
1
- {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../src/commands/budget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../src/commands/budget.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * `intutic chaos` — run an agent with a known fault injected, check what it
3
+ * did, score it.
4
+ *
5
+ * - `validate <file>` checks an experiment file;
6
+ * - `list` prints the fault catalog;
7
+ * - `run <file>` runs the experiment in the sandbox (never on the host).
8
+ *
9
+ * The orchestration lives in lib/chaos/runner.ts; this file wires it to the
10
+ * real sandbox, proxy binary and git, and prints the result.
11
+ *
12
+ * @module
13
+ */
14
+ import { type RunVerdict } from '@intutic/shared-types';
15
+ import { type GraphIdentity } from '../lib/graphIdentity.js';
16
+ import { type ChaosReport } from '../lib/chaos/runner.js';
17
+ /** `intutic chaos validate <file>` */
18
+ export declare function runChaosValidate(file: string): Promise<void>;
19
+ /** `intutic chaos list` */
20
+ export declare function runChaosList(): void;
21
+ /** The example experiments shipped with the CLI (src/ and dist/ sit at the same depth). */
22
+ export declare function examplesDir(): string;
23
+ /** `intutic chaos run <file>` */
24
+ export declare function runChaosRun(file: string, opts: {
25
+ sandboxImage?: string;
26
+ out?: string;
27
+ keep?: boolean;
28
+ }): Promise<void>;
29
+ /** 0 scored, 1 aborted, 2 invalid. */
30
+ export declare function exitCode(verdict: RunVerdict): number;
31
+ export declare function printSummary(report: ChaosReport): void;
32
+ /**
33
+ * The sandbox environment for a repetition. Never the workspace login: each
34
+ * repetition's proxy runs standalone, so it cannot resolve an Intutic key, and
35
+ * handing one to the agent in place of its provider keys would fail every
36
+ * model call (every baseline, so every run, invalid). The agent keeps its own
37
+ * provider keys, passed by name, and the standalone proxy forwards them.
38
+ */
39
+ export declare function chaosSandboxEnv(identity: GraphIdentity, port: number): Record<string, string>;
40
+ //# sourceMappingURL=chaos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chaos.d.ts","sourceRoot":"","sources":["../../src/commands/chaos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,EAA4B,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAM5E,OAAO,EAA0C,KAAK,WAAW,EAAqB,MAAM,wBAAwB,CAAA;AASpH,sCAAsC;AACtC,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CASlE;AAED,2BAA2B;AAC3B,wBAAgB,YAAY,IAAI,IAAI,CAUnC;AAED,2FAA2F;AAC3F,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,iCAAiC;AACjC,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5D,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED,sCAAsC;AACtC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAEpD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAuBtD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE7F"}
@@ -0,0 +1,253 @@
1
+ /**
2
+ * `intutic chaos` — run an agent with a known fault injected, check what it
3
+ * did, score it.
4
+ *
5
+ * - `validate <file>` checks an experiment file;
6
+ * - `list` prints the fault catalog;
7
+ * - `run <file>` runs the experiment in the sandbox (never on the host).
8
+ *
9
+ * The orchestration lives in lib/chaos/runner.ts; this file wires it to the
10
+ * real sandbox, proxy binary and git, and prints the result.
11
+ *
12
+ * @module
13
+ */
14
+ import { spawn } from 'node:child_process';
15
+ import { randomBytes } from 'node:crypto';
16
+ import * as fs from 'node:fs';
17
+ import * as net from 'node:net';
18
+ import * as os from 'node:os';
19
+ import * as path from 'node:path';
20
+ import { fileURLToPath } from 'node:url';
21
+ import pc from 'picocolors';
22
+ import { FAULT_CATALOG, FAULT_IDS } from '@intutic/shared-types';
23
+ import { deriveIdentity } from '../lib/graphIdentity.js';
24
+ import { log } from '../lib/logger.js';
25
+ import { resolveProxyBinary, sandboxBindEnv } from '../lib/proxyBinary.js';
26
+ import { resolveSnapshotRulesPath } from '../lib/policySnapshot.js';
27
+ import { selectBackend } from '../lib/sandbox/index.js';
28
+ import { loadExperiment } from '../lib/chaos/experiment.js';
29
+ import { ChaosRefusal, runChaos } from '../lib/chaos/runner.js';
30
+ import { readySandbox, sandboxProxyEnv, sandboxSpec, SandboxUnavailableError, } from './exec.js';
31
+ /** `intutic chaos validate <file>` */
32
+ export async function runChaosValidate(file) {
33
+ const result = await loadExperiment(file);
34
+ if (!result.ok) {
35
+ log.error(`${file} is not a valid experiment:`);
36
+ for (const e of result.errors)
37
+ log.dim(` ${e}`);
38
+ process.exit(1);
39
+ }
40
+ const x = result.experiment;
41
+ log.success(`${file} is valid: ${x.name} — ${x.faults.length} fault${x.faults.length > 1 ? 's' : ''}, ${x.repeat} baseline + ${x.repeat} faulted repetitions`);
42
+ }
43
+ /** `intutic chaos list` */
44
+ export function runChaosList() {
45
+ const width = Math.max(...FAULT_IDS.map((id) => id.length));
46
+ console.log(pc.bold(`${'FAULT'.padEnd(width)} ${'INJECTED BY'.padEnd(18)} SAFETY`));
47
+ for (const id of FAULT_IDS) {
48
+ const { injectedBy, safety } = FAULT_CATALOG[id];
49
+ console.log(`${id.padEnd(width)} ${injectedBy.join(', ').padEnd(18)} ${safety === 'mutating' ? pc.yellow(safety) : safety}`);
50
+ }
51
+ console.log('');
52
+ log.dim('fail_safe faults deny, delay or error; mutating faults change what the agent sees. Every fault runs only in the sandbox.');
53
+ log.dim(`Example experiments: ${examplesDir()}`);
54
+ }
55
+ /** The example experiments shipped with the CLI (src/ and dist/ sit at the same depth). */
56
+ export function examplesDir() {
57
+ return path.resolve(path.dirname(fileURLToPath(import.meta.url)), '../../resources/chaos');
58
+ }
59
+ /** `intutic chaos run <file>` */
60
+ export async function runChaosRun(file, opts) {
61
+ const result = await loadExperiment(file);
62
+ if (!result.ok) {
63
+ log.error(`${file} is not a valid experiment:`);
64
+ for (const e of result.errors)
65
+ log.dim(` ${e}`);
66
+ process.exit(1);
67
+ }
68
+ const experiment = result.experiment;
69
+ const { DEFAULT_SANDBOX_IMAGE } = await import('../lib/sandbox/image.js');
70
+ const image = opts.sandboxImage ?? experiment.sandbox_image ?? DEFAULT_SANDBOX_IMAGE;
71
+ const stamp = new Date().toISOString().replace(/[:.]/g, '-');
72
+ // Under the temp dir by default: a report in the project would dirty the
73
+ // tree the next run requires clean.
74
+ const outPath = path.resolve(opts.out ?? path.join(os.tmpdir(), 'intutic-chaos', `report-${experiment.name}-${stamp}.json`));
75
+ log.header(`Chaos run: ${experiment.name}`);
76
+ log.dim('Every repetition runs a real agent and spends real tokens; the cost ceiling in the experiment applies to each.');
77
+ let report;
78
+ try {
79
+ report = await runChaos({
80
+ experiment,
81
+ cwd: process.cwd(),
82
+ image,
83
+ outPath,
84
+ keep: Boolean(opts.keep),
85
+ // Where this machine's gates read them, as the gates resolve it.
86
+ snapshotRules: resolveSnapshotRulesPath(),
87
+ approvedBypasses: process.env.INTUTIC_APPROVED_BYPASSES || path.join(os.homedir(), '.intutic', 'hooks', 'approved-bypasses.jsonl'),
88
+ }, await defaultDeps());
89
+ }
90
+ catch (err) {
91
+ if (err instanceof ChaosRefusal || err instanceof SandboxUnavailableError) {
92
+ log.error(`Refusing to run: ${err.message}`);
93
+ if (err instanceof SandboxUnavailableError) {
94
+ log.dim('A chaos run never falls back to the host. Start Docker (or Podman) and try again.');
95
+ }
96
+ process.exit(1);
97
+ }
98
+ throw err;
99
+ }
100
+ printSummary(report);
101
+ process.exit(exitCode(report.verdict));
102
+ }
103
+ /** 0 scored, 1 aborted, 2 invalid. */
104
+ export function exitCode(verdict) {
105
+ return verdict.kind === 'scored' ? 0 : verdict.kind === 'aborted' ? 1 : 2;
106
+ }
107
+ export function printSummary(report) {
108
+ const v = report.verdict;
109
+ log.header(`Result: ${report.experiment.name}`);
110
+ if (v.kind === 'invalid') {
111
+ log.error(`Invalid: ${v.reason}`);
112
+ log.dim('Fix the task (or its verify command) so it passes without faults; no score is given.');
113
+ }
114
+ else {
115
+ const label = v.kind === 'scored' ? pc.green('scored') : pc.yellow(`aborted (${v.reason})`);
116
+ log.field('Verdict', label);
117
+ log.field('Resilience score', `${pc.bold(String(v.score))} / 100`);
118
+ console.log('');
119
+ for (const p of report.probes) {
120
+ const rate = p.evaluated ? `${p.passes}/${p.evaluated} ${Math.round(p.passRate * 100)}%` : 'not evaluated';
121
+ const extra = p.allPassed !== undefined && p.evaluated ? ` pass^k: ${p.allPassed ? 'yes' : 'no'}` : '';
122
+ console.log(` ${p.id.padEnd(24)} ${rate.padEnd(16)} weight ${p.weight}${extra}`);
123
+ }
124
+ }
125
+ if (report.warnings.length) {
126
+ console.log('');
127
+ for (const w of report.warnings)
128
+ log.warn(w);
129
+ }
130
+ console.log('');
131
+ log.field('Report', report.reportPath);
132
+ }
133
+ /**
134
+ * The sandbox environment for a repetition. Never the workspace login: each
135
+ * repetition's proxy runs standalone, so it cannot resolve an Intutic key, and
136
+ * handing one to the agent in place of its provider keys would fail every
137
+ * model call (every baseline, so every run, invalid). The agent keeps its own
138
+ * provider keys, passed by name, and the standalone proxy forwards them.
139
+ */
140
+ export function chaosSandboxEnv(identity, port) {
141
+ return sandboxProxyEnv(null, identity, String(port), []).env;
142
+ }
143
+ /** The real sandbox, proxy binary and git. */
144
+ async function defaultDeps() {
145
+ const identity = deriveIdentity();
146
+ const sandboxOpts = (image) => ({
147
+ kind: 'oci',
148
+ image,
149
+ memory: '2g',
150
+ cpus: '2',
151
+ pidsLimit: 512,
152
+ allow: [],
153
+ });
154
+ return {
155
+ async readySandbox(image) {
156
+ // OCI only: it mounts the repetition's worktree at /work, which the
157
+ // events path inside the sandbox depends on.
158
+ const backend = await readySandbox('oci', {}, image);
159
+ return { name: backend.name };
160
+ },
161
+ runInSandbox({ command, workdir, env, image, name, onStdout, signal }) {
162
+ const spec = sandboxSpec(command, workdir, env, sandboxOpts(image), { tty: false, name, onStdout, signal });
163
+ return selectBackend('oci', env).run(spec);
164
+ },
165
+ sandboxEnv: (port) => chaosSandboxEnv(identity, port),
166
+ startProxy: ({ port, env, logPath }) => startProxy(port, env, logPath),
167
+ async proxyHealthy(port) {
168
+ try {
169
+ const res = await fetch(`http://127.0.0.1:${port}/health`, { signal: AbortSignal.timeout(1000) });
170
+ return res.ok;
171
+ }
172
+ catch {
173
+ return false;
174
+ }
175
+ },
176
+ freePort,
177
+ git: {
178
+ status: (cwd) => git(cwd, ['status', '--porcelain']),
179
+ worktreeAdd: async (cwd, dir) => {
180
+ await git(cwd, ['worktree', 'add', '--detach', dir, 'HEAD']);
181
+ },
182
+ worktreeRemove: async (cwd, dir) => {
183
+ await git(cwd, ['worktree', 'remove', '--force', dir]);
184
+ },
185
+ },
186
+ makeTempDir: () => fs.promises.mkdtemp(path.join(os.tmpdir(), 'intutic-chaos-')),
187
+ randomHex: (bytes) => randomBytes(bytes).toString('hex'),
188
+ echo: (chunk) => {
189
+ process.stdout.write(chunk);
190
+ },
191
+ log,
192
+ };
193
+ }
194
+ /**
195
+ * A dedicated proxy: the binary `intutic start` runs, on its own port, always
196
+ * standalone. It never reports to a control plane, so injected failures cannot
197
+ * reach a workspace's trust scores, incidents or rule promotion; local rules
198
+ * still apply.
199
+ */
200
+ function startProxy(port, env, logPath) {
201
+ const out = fs.openSync(logPath, 'a');
202
+ const inherited = { ...process.env };
203
+ delete inherited.CONTROL_PLANE_URL;
204
+ const child = spawn(resolveProxyBinary(), [], {
205
+ stdio: ['ignore', out, out],
206
+ // The repetition's sandbox has to reach this proxy (sandboxBindEnv).
207
+ env: { ...inherited, ...sandboxBindEnv(inherited), INTUTIC_STANDALONE: '1', ...env },
208
+ });
209
+ fs.closeSync(out);
210
+ const exited = new Promise((resolve) => {
211
+ child.on('error', (err) => resolve(err.code === 'ENOENT' ? 'the intutic-proxy binary was not found; install it with npm install -g @intutic/proxy' : err.message));
212
+ child.on('exit', (code, signal) => resolve(signal ? `signal ${signal}` : `exit code ${code}; see ${logPath}`));
213
+ });
214
+ let done = false;
215
+ void exited.then(() => {
216
+ done = true;
217
+ });
218
+ return {
219
+ exited,
220
+ async stop() {
221
+ if (done)
222
+ return;
223
+ child.kill('SIGTERM');
224
+ const timeout = new Promise((r) => setTimeout(() => r('timeout'), 5000).unref());
225
+ if ((await Promise.race([exited, timeout])) === 'timeout')
226
+ child.kill('SIGKILL');
227
+ },
228
+ };
229
+ }
230
+ function freePort() {
231
+ return new Promise((resolve, reject) => {
232
+ const server = net.createServer();
233
+ server.unref();
234
+ server.on('error', reject);
235
+ server.listen(0, '127.0.0.1', () => {
236
+ const addr = server.address();
237
+ const port = typeof addr === 'object' && addr ? addr.port : 0;
238
+ server.close(() => (port ? resolve(port) : reject(new Error('no free port'))));
239
+ });
240
+ });
241
+ }
242
+ function git(cwd, args) {
243
+ return new Promise((resolve, reject) => {
244
+ const child = spawn('git', args, { cwd, stdio: ['ignore', 'pipe', 'pipe'] });
245
+ let stdout = '';
246
+ let stderr = '';
247
+ child.stdout.on('data', (c) => (stdout += c));
248
+ child.stderr.on('data', (c) => (stderr += c));
249
+ child.on('error', reject);
250
+ child.on('exit', (code) => code === 0 ? resolve(stdout) : reject(new Error(stderr.trim() || `git ${args[0]} exited ${code}`)));
251
+ });
252
+ }
253
+ //# sourceMappingURL=chaos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chaos.js","sourceRoot":"","sources":["../../src/commands/chaos.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,13 @@ export declare function writeHarnessConfigs(harnesses: readonly string[], worksp
45
45
  * stubbing global process state.
46
46
  */
47
47
  export declare function resolveProxyAssetName(platform?: NodeJS.Platform, arch?: string): string | null;
48
+ /**
49
+ * A proxy built in the workspace: `target/release`, then `target/debug`, at
50
+ * the repository root. The root `Cargo.toml` is a workspace with
51
+ * `packages/proxy` as a member, so cargo builds there — never into
52
+ * `packages/proxy/target`, which is where this used to look.
53
+ */
54
+ export declare function findWorkspaceProxyBuild(workspaceRoot: string, platform?: NodeJS.Platform): Promise<string | null>;
48
55
  export declare function runConnect(opts: {
49
56
  dev?: boolean;
50
57
  interval?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8BH,OAAO,KAAK,EAAkC,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAuEzF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,SAAS,YAAY,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,CA0BjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,IAAI,GAAE,MAAqB,GAC1B,MAAM,GAAG,IAAI,CAWf;AA0DD,wBAAsB,UAAU,CAAC,IAAI,EAAE;IACrC,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2tChB"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgCH,OAAO,KAAK,EAAkC,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAuEzF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,SAAS,YAAY,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,CA0BjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,IAAI,GAAE,MAAqB,GAC1B,MAAM,GAAG,IAAI,CAWf;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAYxB;AA0DD,wBAAsB,UAAU,CAAC,IAAI,EAAE;IACrC,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,GAAG,OAAO,CAAC,IAAI,CAAC,CAivChB"}