@exulu/backend 3.1.0 → 3.2.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/README.md CHANGED
@@ -564,6 +564,43 @@ npx @exulu/frontend
564
564
 
565
565
  Visit `http://localhost:3001` to access the admin interface. See the [**Exulu Frontend**](https://github.com/Qventu/exulu-frontend) repository for more details.
566
566
 
567
+ ## Audit logging
568
+
569
+ Enable an auditable, S3-backed trail of tool calls (which agent called which
570
+ tool, on whose behalf, using which credential identity, with what payload).
571
+ Off by default. Configure via `ExuluApp.create({ config })`:
572
+
573
+ ```ts
574
+ await app.create({
575
+ tools,
576
+ config: {
577
+ // ...existing config...
578
+ audit: {
579
+ enabled: true,
580
+ retentionDays: 90, // S3 lifecycle expiry
581
+ // Optional: a dedicated, isolated bucket. Omit to reuse `fileUploads`.
582
+ s3: {
583
+ s3region: process.env.AUDIT_S3_REGION!,
584
+ s3key: process.env.AUDIT_S3_KEY!,
585
+ s3secret: process.env.AUDIT_S3_SECRET!,
586
+ s3Bucket: process.env.AUDIT_S3_BUCKET!,
587
+ s3prefix: "audit/",
588
+ },
589
+ // failureMode: "open" (default) | "closed"
590
+ // sources: { toolCalls: { exclude: ["noisy_tool"] } },
591
+ },
592
+ },
593
+ });
594
+ ```
595
+
596
+ Records are written as newline-delimited JSON under
597
+ `audit/dt=2026-07-28/14/1753970400000-3f8c2a1b.ndjson`. **Secret material is never logged** — only
598
+ credential identity (provider, account, authType, non-secret scopes/expiry).
599
+ When reusing the shared `fileUploads` bucket, the S3 lifecycle rule is not
600
+ applied automatically (to avoid touching a bucket that also holds user files);
601
+ the exact rule to apply is logged at startup. Set `manageLifecycle: true` to
602
+ apply it anyway.
603
+
567
604
  ## 🛠️ Development
568
605
 
569
606
  ```bash