@akasecurity/ai-tc-claude-code 0.9.7 → 0.9.8
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/.claude-plugin/plugin.json +1 -1
- package/README.md +2 -2
- package/package.json +4 -4
- package/scripts/apply-suppressions.js +283 -132
- package/scripts/backfill.js +1711 -250
- package/scripts/filescan.js +1713 -235
- package/scripts/firstrun.js +1724 -206
- package/scripts/intro.js +171 -47
- package/scripts/message-display.js +279 -128
- package/scripts/onboard.js +261 -110
- package/scripts/post-tool-use.js +1842 -272
- package/scripts/pre-tool-use.js +1841 -284
- package/scripts/query.js +1726 -208
- package/scripts/reconcile.js +1698 -237
- package/scripts/remediate.js +1704 -243
- package/scripts/scan-worker.js +118 -0
- package/scripts/session-start.js +1951 -299
- package/scripts/start-light.js +169 -45
- package/scripts/statusline.js +1726 -206
- package/scripts/stop.js +374 -67
- package/scripts/sync.js +19413 -0
- package/scripts/user-prompt-submit.js +1841 -284
package/scripts/scan-worker.js
CHANGED
|
@@ -16284,6 +16284,124 @@ var ConfigScanRecord = external_exports.object({
|
|
|
16284
16284
|
findings: external_exports.array(ConfigPostureFindingInput).optional()
|
|
16285
16285
|
});
|
|
16286
16286
|
|
|
16287
|
+
// ../../packages/schema/src/zod/control-plane.ts
|
|
16288
|
+
var ATTACHED_CREDENTIAL_SPEC_VERSION = 1;
|
|
16289
|
+
var AttachedCredential = external_exports.object({
|
|
16290
|
+
specVersion: external_exports.literal(ATTACHED_CREDENTIAL_SPEC_VERSION),
|
|
16291
|
+
// The control-plane endpoint this credential was minted against.
|
|
16292
|
+
endpoint: external_exports.string().min(1),
|
|
16293
|
+
// The bearer credential itself. Never logged, never rendered — status
|
|
16294
|
+
// surfaces show `keyPrefix` and nothing else.
|
|
16295
|
+
apiKey: external_exports.string().min(1),
|
|
16296
|
+
// First few characters of the key, safe to display so a user can match the
|
|
16297
|
+
// credential against their organization's key list.
|
|
16298
|
+
keyPrefix: external_exports.string().min(1).max(16).optional(),
|
|
16299
|
+
mintedAt: external_exports.iso.datetime().optional()
|
|
16300
|
+
});
|
|
16301
|
+
var MAX_DATE_MS = 253402300799999;
|
|
16302
|
+
var MAX_INT4 = 2147483647;
|
|
16303
|
+
var StorePosturePack = external_exports.object({
|
|
16304
|
+
packId: external_exports.string().min(1),
|
|
16305
|
+
// 'namespace/packId'
|
|
16306
|
+
version: external_exports.string().min(1),
|
|
16307
|
+
enabled: external_exports.boolean(),
|
|
16308
|
+
// Stringified pass-through of the local store's `installed_packs.updated_at`
|
|
16309
|
+
// — the column format is store-version-dependent (epoch millis vs ISO), so
|
|
16310
|
+
// the wire shape assumes neither.
|
|
16311
|
+
updatedAt: external_exports.string().nullable()
|
|
16312
|
+
}).meta({ id: "StorePosturePack" });
|
|
16313
|
+
var StorePosturePolicyCounts = external_exports.object({
|
|
16314
|
+
total: external_exports.number().int().min(0),
|
|
16315
|
+
disabled: external_exports.number().int().min(0),
|
|
16316
|
+
// Exhaustive per-action map; the builder pre-fills every action with 0.
|
|
16317
|
+
//
|
|
16318
|
+
// Spelled out member-by-member rather than `z.record(ActionTaken, …)`. Zod
|
|
16319
|
+
// enforces exhaustiveness either way, but z.record emits `propertyNames` +
|
|
16320
|
+
// `additionalProperties` into a generated schema document, and a type
|
|
16321
|
+
// generator renders THAT with every key optional — a sender built against
|
|
16322
|
+
// the generated type would typecheck and still be rejected at runtime. An
|
|
16323
|
+
// explicit object emits `properties` + `required`, so generated types
|
|
16324
|
+
// demand all five.
|
|
16325
|
+
//
|
|
16326
|
+
// `satisfies Record<ActionTaken, …>` keeps the link to the enum: adding an
|
|
16327
|
+
// ActionTaken member is a COMPILE error here instead of silent drift.
|
|
16328
|
+
// `.strict()` is load-bearing — it rejects an unknown action key, which a
|
|
16329
|
+
// bare object would silently STRIP, accepting a miscounted map as valid.
|
|
16330
|
+
byAction: external_exports.object({
|
|
16331
|
+
warn: external_exports.number().int().min(0),
|
|
16332
|
+
redact: external_exports.number().int().min(0),
|
|
16333
|
+
block: external_exports.number().int().min(0),
|
|
16334
|
+
allow: external_exports.number().int().min(0),
|
|
16335
|
+
log: external_exports.number().int().min(0)
|
|
16336
|
+
}).strict()
|
|
16337
|
+
}).meta({ id: "StorePosturePolicyCounts" });
|
|
16338
|
+
var StorePosturePlugin = external_exports.object({
|
|
16339
|
+
/** Package name of the reporting plugin. */
|
|
16340
|
+
package: external_exports.string().min(1).max(200),
|
|
16341
|
+
version: external_exports.string().min(1).max(64),
|
|
16342
|
+
/** Version of the bundled core, when the build records one separately. */
|
|
16343
|
+
ossVersion: external_exports.string().max(64).nullable(),
|
|
16344
|
+
/**
|
|
16345
|
+
* `version` of the policy bundle this machine last fetched. Bounded at 200
|
|
16346
|
+
* rather than the 64 a bare sha256 hex digest needs today, so a later
|
|
16347
|
+
* format with an algorithm prefix does not start rejecting the channel.
|
|
16348
|
+
*/
|
|
16349
|
+
policyBundleVersion: external_exports.string().max(200).nullable(),
|
|
16350
|
+
/** Epoch millis, on the CLIENT clock, of that fetch. */
|
|
16351
|
+
policyFetchedAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable()
|
|
16352
|
+
}).meta({ id: "StorePosturePlugin" });
|
|
16353
|
+
var StorePostureSnapshot = external_exports.object({
|
|
16354
|
+
deviceId: external_exports.guid(),
|
|
16355
|
+
hostname: external_exports.string().min(1).max(253),
|
|
16356
|
+
// Epoch millis on the CLIENT clock. Bounded by what a receiving store
|
|
16357
|
+
// accepts (see MAX_DATE_MS), not by what a JavaScript Date can hold.
|
|
16358
|
+
capturedAt: external_exports.number().int().min(0).max(MAX_DATE_MS),
|
|
16359
|
+
// False is a measurement, not an error state: "no local store exists on
|
|
16360
|
+
// this machine".
|
|
16361
|
+
storePresent: external_exports.boolean(),
|
|
16362
|
+
schemaVersion: external_exports.number().int().min(0).max(MAX_INT4).nullable(),
|
|
16363
|
+
// PRAGMA user_version
|
|
16364
|
+
findingsTotal: external_exports.number().int().min(0).max(MAX_INT4),
|
|
16365
|
+
// Epoch millis, bounded like `capturedAt` — see MAX_DATE_MS on what that
|
|
16366
|
+
// bound does and does not do. Worth stating for these two specifically:
|
|
16367
|
+
// they are read from the local store's own ROWS rather than from this
|
|
16368
|
+
// machine's clock, so a damaged or hand-edited store is enough to produce
|
|
16369
|
+
// an out-of-range value with no clock skew involved.
|
|
16370
|
+
findingsFirstAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable(),
|
|
16371
|
+
findingsLastAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable(),
|
|
16372
|
+
packs: external_exports.array(StorePosturePack).max(500),
|
|
16373
|
+
policyCounts: StorePosturePolicyCounts,
|
|
16374
|
+
// OPTIONAL, not nullable: a reporter that predates this member keeps
|
|
16375
|
+
// getting its 200 without a payload change.
|
|
16376
|
+
plugin: StorePosturePlugin.optional()
|
|
16377
|
+
}).meta({ id: "StorePostureSnapshot" });
|
|
16378
|
+
var CAPTURE_VERSION_PREFIX = "capture/";
|
|
16379
|
+
var RecordAuditEventRequest = AuditEventInput.extend({
|
|
16380
|
+
inspections: external_exports.array(ToolCallInspection).default([])
|
|
16381
|
+
}).refine((v) => v.inspections.every((i) => !i.ruleVersion.startsWith(CAPTURE_VERSION_PREFIX)), {
|
|
16382
|
+
message: `inspections[].ruleVersion must not start with \`${CAPTURE_VERSION_PREFIX}\` \u2014 that namespace is reserved for capture definitions the control plane mints itself`,
|
|
16383
|
+
path: ["inspections"]
|
|
16384
|
+
}).meta({ id: "RecordAuditEventRequest" });
|
|
16385
|
+
var IngestAck = external_exports.object({
|
|
16386
|
+
accepted: external_exports.number().int().nonnegative(),
|
|
16387
|
+
duplicates: external_exports.number().int().nonnegative()
|
|
16388
|
+
});
|
|
16389
|
+
var PRINTABLE = /^[^\p{Cc}\p{Cf}]*$/u;
|
|
16390
|
+
var printable = (max) => external_exports.string().max(max).regex(PRINTABLE, "must not contain control characters");
|
|
16391
|
+
var PluginWhoami = external_exports.object({
|
|
16392
|
+
tenantName: printable(200),
|
|
16393
|
+
userEmail: printable(320),
|
|
16394
|
+
role: printable(64),
|
|
16395
|
+
keyKind: printable(64),
|
|
16396
|
+
serverTime: printable(64)
|
|
16397
|
+
});
|
|
16398
|
+
var ControlPlaneErrorBody = external_exports.object({
|
|
16399
|
+
error: external_exports.object({
|
|
16400
|
+
code: external_exports.string().optional(),
|
|
16401
|
+
message: external_exports.string().optional()
|
|
16402
|
+
}).optional()
|
|
16403
|
+
});
|
|
16404
|
+
|
|
16287
16405
|
// ../../packages/schema/src/zod/registry.ts
|
|
16288
16406
|
var Namespace = external_exports.string().regex(/^[a-z][a-z0-9-]*$/);
|
|
16289
16407
|
var PackId = external_exports.string().regex(/^[a-z][a-z0-9-]*$/);
|