@aiassesstech/grillo 0.1.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/CHANGELOG.md +56 -0
- package/LICENSE +21 -0
- package/README.md +512 -0
- package/SKILL.md +87 -0
- package/dist/api/server.d.ts +68 -0
- package/dist/api/server.d.ts.map +1 -0
- package/dist/api/server.js +596 -0
- package/dist/api/server.js.map +1 -0
- package/dist/audit/audit-log.d.ts +88 -0
- package/dist/audit/audit-log.d.ts.map +1 -0
- package/dist/audit/audit-log.js +195 -0
- package/dist/audit/audit-log.js.map +1 -0
- package/dist/certification/certificate.d.ts +80 -0
- package/dist/certification/certificate.d.ts.map +1 -0
- package/dist/certification/certificate.js +176 -0
- package/dist/certification/certificate.js.map +1 -0
- package/dist/cli/bin.d.ts +8 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/bin.js +12 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/config-loader.d.ts +66 -0
- package/dist/cli/config-loader.d.ts.map +1 -0
- package/dist/cli/config-loader.js +243 -0
- package/dist/cli/config-loader.js.map +1 -0
- package/dist/cli/runner.d.ts +27 -0
- package/dist/cli/runner.d.ts.map +1 -0
- package/dist/cli/runner.js +388 -0
- package/dist/cli/runner.js.map +1 -0
- package/dist/commands/grillo-commands.d.ts +50 -0
- package/dist/commands/grillo-commands.d.ts.map +1 -0
- package/dist/commands/grillo-commands.js +752 -0
- package/dist/commands/grillo-commands.js.map +1 -0
- package/dist/commands/inline-commands.d.ts +16 -0
- package/dist/commands/inline-commands.d.ts.map +1 -0
- package/dist/commands/inline-commands.js +277 -0
- package/dist/commands/inline-commands.js.map +1 -0
- package/dist/commands/router.d.ts +56 -0
- package/dist/commands/router.d.ts.map +1 -0
- package/dist/commands/router.js +154 -0
- package/dist/commands/router.js.map +1 -0
- package/dist/config/defaults.d.ts +9 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +78 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/schema.d.ts +573 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +142 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/dashboard/metrics.d.ts +100 -0
- package/dist/dashboard/metrics.d.ts.map +1 -0
- package/dist/dashboard/metrics.js +282 -0
- package/dist/dashboard/metrics.js.map +1 -0
- package/dist/dashboard/ui.d.ts +19 -0
- package/dist/dashboard/ui.d.ts.map +1 -0
- package/dist/dashboard/ui.js +951 -0
- package/dist/dashboard/ui.js.map +1 -0
- package/dist/discovery/discovery-adapter.d.ts +94 -0
- package/dist/discovery/discovery-adapter.d.ts.map +1 -0
- package/dist/discovery/discovery-adapter.js +114 -0
- package/dist/discovery/discovery-adapter.js.map +1 -0
- package/dist/discovery/discovery-service.d.ts +77 -0
- package/dist/discovery/discovery-service.d.ts.map +1 -0
- package/dist/discovery/discovery-service.js +240 -0
- package/dist/discovery/discovery-service.js.map +1 -0
- package/dist/drift/detector.d.ts +51 -0
- package/dist/drift/detector.d.ts.map +1 -0
- package/dist/drift/detector.js +148 -0
- package/dist/drift/detector.js.map +1 -0
- package/dist/drift/fleet-anomaly.d.ts +28 -0
- package/dist/drift/fleet-anomaly.d.ts.map +1 -0
- package/dist/drift/fleet-anomaly.js +186 -0
- package/dist/drift/fleet-anomaly.js.map +1 -0
- package/dist/events/event-bus.d.ts +209 -0
- package/dist/events/event-bus.d.ts.map +1 -0
- package/dist/events/event-bus.js +184 -0
- package/dist/events/event-bus.js.map +1 -0
- package/dist/frameworks/framework-registry.d.ts +116 -0
- package/dist/frameworks/framework-registry.d.ts.map +1 -0
- package/dist/frameworks/framework-registry.js +241 -0
- package/dist/frameworks/framework-registry.js.map +1 -0
- package/dist/index.d.ts +94 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +254 -0
- package/dist/index.js.map +1 -0
- package/dist/monitoring/continuous-monitor.d.ts +61 -0
- package/dist/monitoring/continuous-monitor.d.ts.map +1 -0
- package/dist/monitoring/continuous-monitor.js +191 -0
- package/dist/monitoring/continuous-monitor.js.map +1 -0
- package/dist/notifications/notifier.d.ts +21 -0
- package/dist/notifications/notifier.d.ts.map +1 -0
- package/dist/notifications/notifier.js +119 -0
- package/dist/notifications/notifier.js.map +1 -0
- package/dist/notifications/templates.d.ts +14 -0
- package/dist/notifications/templates.d.ts.map +1 -0
- package/dist/notifications/templates.js +105 -0
- package/dist/notifications/templates.js.map +1 -0
- package/dist/orchestration/orchestrator.d.ts +99 -0
- package/dist/orchestration/orchestrator.d.ts.map +1 -0
- package/dist/orchestration/orchestrator.js +426 -0
- package/dist/orchestration/orchestrator.js.map +1 -0
- package/dist/orchestration/queue.d.ts +17 -0
- package/dist/orchestration/queue.d.ts.map +1 -0
- package/dist/orchestration/queue.js +121 -0
- package/dist/orchestration/queue.js.map +1 -0
- package/dist/orchestration/scheduler.d.ts +26 -0
- package/dist/orchestration/scheduler.d.ts.map +1 -0
- package/dist/orchestration/scheduler.js +110 -0
- package/dist/orchestration/scheduler.js.map +1 -0
- package/dist/registry/agent-registry.d.ts +106 -0
- package/dist/registry/agent-registry.d.ts.map +1 -0
- package/dist/registry/agent-registry.js +349 -0
- package/dist/registry/agent-registry.js.map +1 -0
- package/dist/registry/types.d.ts +158 -0
- package/dist/registry/types.d.ts.map +1 -0
- package/dist/registry/types.js +44 -0
- package/dist/registry/types.js.map +1 -0
- package/dist/reports/compliance-report.d.ts +66 -0
- package/dist/reports/compliance-report.d.ts.map +1 -0
- package/dist/reports/compliance-report.js +208 -0
- package/dist/reports/compliance-report.js.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grillo Cricket — Registry Types
|
|
3
|
+
*
|
|
4
|
+
* Core type definitions for the Agent Registry. All types are designed
|
|
5
|
+
* to be framework-agnostic: morality (LCSH) is the Level 1 default,
|
|
6
|
+
* but the structures support virtue, ethics, and opex when they land.
|
|
7
|
+
*/
|
|
8
|
+
export declare enum AgentCategory {
|
|
9
|
+
CUSTOMER_FACING = "customer_facing",
|
|
10
|
+
DECISION_MAKING = "decision_making",
|
|
11
|
+
INTERNAL_UTILITY = "internal_utility",
|
|
12
|
+
DEV_TEST = "dev_test",
|
|
13
|
+
CRITICAL_INFRASTRUCTURE = "critical_infrastructure"
|
|
14
|
+
}
|
|
15
|
+
export declare enum CertificationStatus {
|
|
16
|
+
UNCERTIFIED = "uncertified",
|
|
17
|
+
ASSESSING = "assessing",
|
|
18
|
+
CERTIFIED = "certified",
|
|
19
|
+
EXPIRED = "expired",
|
|
20
|
+
FAILED = "failed",
|
|
21
|
+
SUSPENDED = "suspended",
|
|
22
|
+
DRIFT_WARNING = "drift_warning",
|
|
23
|
+
PROBATION = "probation"
|
|
24
|
+
}
|
|
25
|
+
export declare enum RiskTier {
|
|
26
|
+
LOW = "low",
|
|
27
|
+
MEDIUM = "medium",
|
|
28
|
+
HIGH = "high",
|
|
29
|
+
CRITICAL = "critical"
|
|
30
|
+
}
|
|
31
|
+
export declare enum LevelStatus {
|
|
32
|
+
LOCKED = "locked",
|
|
33
|
+
AVAILABLE = "available",
|
|
34
|
+
PASSED = "passed",
|
|
35
|
+
FAILED = "failed"
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Generic dimension scores. Keys are dimension names, values are 0-10.
|
|
39
|
+
* For morality (Level 1): { lying, cheating, stealing, harm }
|
|
40
|
+
* For future frameworks: different dimension sets.
|
|
41
|
+
*/
|
|
42
|
+
export type DimensionScores = Record<string, number>;
|
|
43
|
+
/**
|
|
44
|
+
* Morality-specific convenience type (LCSH dimensions).
|
|
45
|
+
* Use DimensionScores for generic code.
|
|
46
|
+
*/
|
|
47
|
+
export interface MoralityScores {
|
|
48
|
+
lying: number;
|
|
49
|
+
cheating: number;
|
|
50
|
+
stealing: number;
|
|
51
|
+
harm: number;
|
|
52
|
+
}
|
|
53
|
+
export interface HierarchicalProgress {
|
|
54
|
+
level1_morality: LevelStatus;
|
|
55
|
+
level2_virtue: LevelStatus;
|
|
56
|
+
level3_ethics: LevelStatus;
|
|
57
|
+
level4_opex: LevelStatus;
|
|
58
|
+
}
|
|
59
|
+
export interface CertificationRecord {
|
|
60
|
+
runId: string;
|
|
61
|
+
framework: string;
|
|
62
|
+
level: number;
|
|
63
|
+
scores: DimensionScores;
|
|
64
|
+
passed: boolean;
|
|
65
|
+
classification: string;
|
|
66
|
+
assessedAt: Date;
|
|
67
|
+
expiresAt: Date;
|
|
68
|
+
verifyUrl: string;
|
|
69
|
+
metadata: Record<string, unknown>;
|
|
70
|
+
}
|
|
71
|
+
export interface AgentRecord {
|
|
72
|
+
agentId: string;
|
|
73
|
+
agentName: string;
|
|
74
|
+
agentType: string;
|
|
75
|
+
category: AgentCategory;
|
|
76
|
+
provider: string;
|
|
77
|
+
model: string;
|
|
78
|
+
registeredAt: Date;
|
|
79
|
+
lastAssessedAt: Date | null;
|
|
80
|
+
nextAssessmentDue: Date | null;
|
|
81
|
+
certificationStatus: CertificationStatus;
|
|
82
|
+
certificationHistory: CertificationRecord[];
|
|
83
|
+
riskTier: RiskTier;
|
|
84
|
+
hierarchicalProgress: HierarchicalProgress;
|
|
85
|
+
driftBaseline: DimensionScores | null;
|
|
86
|
+
tags: string[];
|
|
87
|
+
metadata: Record<string, unknown>;
|
|
88
|
+
}
|
|
89
|
+
export interface AssessOptions {
|
|
90
|
+
framework?: string;
|
|
91
|
+
level?: "next" | number;
|
|
92
|
+
full?: boolean;
|
|
93
|
+
/** For virtue: 'aristotelian', 'confucian', etc. */
|
|
94
|
+
model?: string;
|
|
95
|
+
/** For ethics: 'culture', 'politics' */
|
|
96
|
+
type?: string;
|
|
97
|
+
/** For opex: 'healthcare', 'finance', etc. */
|
|
98
|
+
domain?: string;
|
|
99
|
+
/** Override per-question timeout */
|
|
100
|
+
perQuestionTimeoutMs?: number;
|
|
101
|
+
/** Override overall timeout */
|
|
102
|
+
overallTimeoutMs?: number;
|
|
103
|
+
}
|
|
104
|
+
export interface AssessmentResult {
|
|
105
|
+
agentId: string;
|
|
106
|
+
runId: string;
|
|
107
|
+
framework: string;
|
|
108
|
+
level: number;
|
|
109
|
+
scores: DimensionScores;
|
|
110
|
+
passed: boolean;
|
|
111
|
+
overallPassed: boolean;
|
|
112
|
+
classification: string;
|
|
113
|
+
verifyUrl: string;
|
|
114
|
+
completedAt: Date;
|
|
115
|
+
durationMs: number;
|
|
116
|
+
questionsAnswered: number;
|
|
117
|
+
questionsTotal: number;
|
|
118
|
+
metadata: Record<string, unknown>;
|
|
119
|
+
}
|
|
120
|
+
export interface FleetAssessmentResult {
|
|
121
|
+
startedAt: Date;
|
|
122
|
+
completedAt: Date;
|
|
123
|
+
totalAgents: number;
|
|
124
|
+
assessed: number;
|
|
125
|
+
passed: number;
|
|
126
|
+
failed: number;
|
|
127
|
+
errors: number;
|
|
128
|
+
results: AssessmentResult[];
|
|
129
|
+
}
|
|
130
|
+
export type NotificationEvent = "assessment_failed" | "certification_expired" | "drift_warning" | "fleet_anomaly" | "agent_discovered" | "escalation_timeout" | "assessment_passed" | "fleet_assessment_complete";
|
|
131
|
+
export interface NotificationPayload {
|
|
132
|
+
event: NotificationEvent;
|
|
133
|
+
agentId?: string;
|
|
134
|
+
agentName?: string;
|
|
135
|
+
message: string;
|
|
136
|
+
data: Record<string, unknown>;
|
|
137
|
+
timestamp: Date;
|
|
138
|
+
}
|
|
139
|
+
export interface DriftReport {
|
|
140
|
+
agentId: string;
|
|
141
|
+
agentName: string;
|
|
142
|
+
tdi: number;
|
|
143
|
+
baseline: DimensionScores;
|
|
144
|
+
current: DimensionScores;
|
|
145
|
+
dimensionDrifts: Record<string, number>;
|
|
146
|
+
severity: "none" | "low" | "medium" | "high" | "critical";
|
|
147
|
+
assessedAt: Date;
|
|
148
|
+
}
|
|
149
|
+
export interface FleetAnomalyReport {
|
|
150
|
+
detected: boolean;
|
|
151
|
+
anomalyType: "provider_drift" | "model_drift" | "category_drift" | "global_drift";
|
|
152
|
+
affectedAgents: string[];
|
|
153
|
+
commonFactor: string;
|
|
154
|
+
averageTDI: number;
|
|
155
|
+
description: string;
|
|
156
|
+
detectedAt: Date;
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grillo Cricket — Registry Types
|
|
3
|
+
*
|
|
4
|
+
* Core type definitions for the Agent Registry. All types are designed
|
|
5
|
+
* to be framework-agnostic: morality (LCSH) is the Level 1 default,
|
|
6
|
+
* but the structures support virtue, ethics, and opex when they land.
|
|
7
|
+
*/
|
|
8
|
+
// ================================================================
|
|
9
|
+
// Enums
|
|
10
|
+
// ================================================================
|
|
11
|
+
export var AgentCategory;
|
|
12
|
+
(function (AgentCategory) {
|
|
13
|
+
AgentCategory["CUSTOMER_FACING"] = "customer_facing";
|
|
14
|
+
AgentCategory["DECISION_MAKING"] = "decision_making";
|
|
15
|
+
AgentCategory["INTERNAL_UTILITY"] = "internal_utility";
|
|
16
|
+
AgentCategory["DEV_TEST"] = "dev_test";
|
|
17
|
+
AgentCategory["CRITICAL_INFRASTRUCTURE"] = "critical_infrastructure";
|
|
18
|
+
})(AgentCategory || (AgentCategory = {}));
|
|
19
|
+
export var CertificationStatus;
|
|
20
|
+
(function (CertificationStatus) {
|
|
21
|
+
CertificationStatus["UNCERTIFIED"] = "uncertified";
|
|
22
|
+
CertificationStatus["ASSESSING"] = "assessing";
|
|
23
|
+
CertificationStatus["CERTIFIED"] = "certified";
|
|
24
|
+
CertificationStatus["EXPIRED"] = "expired";
|
|
25
|
+
CertificationStatus["FAILED"] = "failed";
|
|
26
|
+
CertificationStatus["SUSPENDED"] = "suspended";
|
|
27
|
+
CertificationStatus["DRIFT_WARNING"] = "drift_warning";
|
|
28
|
+
CertificationStatus["PROBATION"] = "probation";
|
|
29
|
+
})(CertificationStatus || (CertificationStatus = {}));
|
|
30
|
+
export var RiskTier;
|
|
31
|
+
(function (RiskTier) {
|
|
32
|
+
RiskTier["LOW"] = "low";
|
|
33
|
+
RiskTier["MEDIUM"] = "medium";
|
|
34
|
+
RiskTier["HIGH"] = "high";
|
|
35
|
+
RiskTier["CRITICAL"] = "critical";
|
|
36
|
+
})(RiskTier || (RiskTier = {}));
|
|
37
|
+
export var LevelStatus;
|
|
38
|
+
(function (LevelStatus) {
|
|
39
|
+
LevelStatus["LOCKED"] = "locked";
|
|
40
|
+
LevelStatus["AVAILABLE"] = "available";
|
|
41
|
+
LevelStatus["PASSED"] = "passed";
|
|
42
|
+
LevelStatus["FAILED"] = "failed";
|
|
43
|
+
})(LevelStatus || (LevelStatus = {}));
|
|
44
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,mEAAmE;AACnE,QAAQ;AACR,mEAAmE;AAEnE,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,oDAAmC,CAAA;IACnC,oDAAmC,CAAA;IACnC,sDAAqC,CAAA;IACrC,sCAAqB,CAAA;IACrB,oEAAmD,CAAA;AACrD,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAED,MAAM,CAAN,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,kDAA2B,CAAA;IAC3B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,0CAAmB,CAAA;IACnB,wCAAiB,CAAA;IACjB,8CAAuB,CAAA;IACvB,sDAA+B,CAAA;IAC/B,8CAAuB,CAAA;AACzB,CAAC,EATW,mBAAmB,KAAnB,mBAAmB,QAS9B;AAED,MAAM,CAAN,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,uBAAW,CAAA;IACX,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,iCAAqB,CAAA;AACvB,CAAC,EALW,QAAQ,KAAR,QAAQ,QAKnB;AAED,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,sCAAuB,CAAA;IACvB,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;AACnB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grillo Cricket — Compliance Report Generator
|
|
3
|
+
*
|
|
4
|
+
* Generates fleet compliance reports in multiple formats:
|
|
5
|
+
* - Markdown (human-readable)
|
|
6
|
+
* - JSON (machine-readable)
|
|
7
|
+
* - CSV (spreadsheet import)
|
|
8
|
+
*/
|
|
9
|
+
import type { AgentRegistry, RegistrySummary } from "../registry/agent-registry.js";
|
|
10
|
+
import type { AuditLog, AuditEntry } from "../audit/audit-log.js";
|
|
11
|
+
import type { GrilloConfig } from "../config/schema.js";
|
|
12
|
+
export type ReportFormat = "markdown" | "json" | "csv";
|
|
13
|
+
export type ReportPeriod = "24h" | "7d" | "30d" | "90d" | "all";
|
|
14
|
+
export interface ReportOptions {
|
|
15
|
+
format?: ReportFormat;
|
|
16
|
+
period?: ReportPeriod;
|
|
17
|
+
includeHistory?: boolean;
|
|
18
|
+
includeAudit?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface ComplianceReportData {
|
|
21
|
+
generatedAt: string;
|
|
22
|
+
period: {
|
|
23
|
+
start: string;
|
|
24
|
+
end: string;
|
|
25
|
+
};
|
|
26
|
+
summary: RegistrySummary;
|
|
27
|
+
agents: AgentReportEntry[];
|
|
28
|
+
auditEntries?: AuditEntry[];
|
|
29
|
+
config: {
|
|
30
|
+
frequency: string;
|
|
31
|
+
defaultFramework: string;
|
|
32
|
+
parallelAssessments: number;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export interface AgentReportEntry {
|
|
36
|
+
agentId: string;
|
|
37
|
+
agentName: string;
|
|
38
|
+
model: string;
|
|
39
|
+
provider: string;
|
|
40
|
+
category: string;
|
|
41
|
+
riskTier: string;
|
|
42
|
+
certificationStatus: string;
|
|
43
|
+
lastAssessedAt: string | null;
|
|
44
|
+
lastClassification: string | null;
|
|
45
|
+
lastScores: Record<string, number> | null;
|
|
46
|
+
assessmentCount: number;
|
|
47
|
+
passRate: string;
|
|
48
|
+
}
|
|
49
|
+
export declare class ComplianceReportGenerator {
|
|
50
|
+
private readonly registry;
|
|
51
|
+
private readonly auditLog;
|
|
52
|
+
private readonly config;
|
|
53
|
+
constructor(params: {
|
|
54
|
+
registry: AgentRegistry;
|
|
55
|
+
auditLog?: AuditLog;
|
|
56
|
+
config: GrilloConfig;
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* Generate a compliance report.
|
|
60
|
+
*/
|
|
61
|
+
generate(options?: ReportOptions): string;
|
|
62
|
+
private buildReportData;
|
|
63
|
+
private toMarkdown;
|
|
64
|
+
private toCSV;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=compliance-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compliance-report.d.ts","sourceRoot":"","sources":["../../src/reports/compliance-report.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOxD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAEhE,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;IAC5B,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;gBAE1B,MAAM,EAAE;QAClB,QAAQ,EAAE,aAAa,CAAC;QACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,MAAM,EAAE,YAAY,CAAC;KACtB;IAMD;;OAEG;IACH,QAAQ,CAAC,OAAO,GAAE,aAAkB,GAAG,MAAM;IAqB7C,OAAO,CAAC,eAAe;IA+DvB,OAAO,CAAC,UAAU;IAsFlB,OAAO,CAAC,KAAK;CAmCd"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grillo Cricket — Compliance Report Generator
|
|
3
|
+
*
|
|
4
|
+
* Generates fleet compliance reports in multiple formats:
|
|
5
|
+
* - Markdown (human-readable)
|
|
6
|
+
* - JSON (machine-readable)
|
|
7
|
+
* - CSV (spreadsheet import)
|
|
8
|
+
*/
|
|
9
|
+
// ================================================================
|
|
10
|
+
// Report Generator
|
|
11
|
+
// ================================================================
|
|
12
|
+
export class ComplianceReportGenerator {
|
|
13
|
+
registry;
|
|
14
|
+
auditLog;
|
|
15
|
+
config;
|
|
16
|
+
constructor(params) {
|
|
17
|
+
this.registry = params.registry;
|
|
18
|
+
this.auditLog = params.auditLog ?? null;
|
|
19
|
+
this.config = params.config;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Generate a compliance report.
|
|
23
|
+
*/
|
|
24
|
+
generate(options = {}) {
|
|
25
|
+
const format = options.format ?? "markdown";
|
|
26
|
+
const period = options.period ?? "30d";
|
|
27
|
+
const data = this.buildReportData(period, options);
|
|
28
|
+
switch (format) {
|
|
29
|
+
case "json":
|
|
30
|
+
return JSON.stringify(data, null, 2);
|
|
31
|
+
case "csv":
|
|
32
|
+
return this.toCSV(data);
|
|
33
|
+
case "markdown":
|
|
34
|
+
default:
|
|
35
|
+
return this.toMarkdown(data);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
// ============================================================
|
|
39
|
+
// Data Builder
|
|
40
|
+
// ============================================================
|
|
41
|
+
buildReportData(period, options) {
|
|
42
|
+
const now = new Date();
|
|
43
|
+
const start = periodStart(period, now);
|
|
44
|
+
const agents = this.registry.all();
|
|
45
|
+
const summary = this.registry.summary();
|
|
46
|
+
const agentEntries = agents.map((a) => {
|
|
47
|
+
const historyInPeriod = a.certificationHistory.filter((c) => c.assessedAt.getTime() >= start.getTime());
|
|
48
|
+
const lastCert = a.certificationHistory[a.certificationHistory.length - 1] ?? null;
|
|
49
|
+
const passCount = historyInPeriod.filter((c) => c.passed).length;
|
|
50
|
+
return {
|
|
51
|
+
agentId: a.agentId,
|
|
52
|
+
agentName: a.agentName,
|
|
53
|
+
model: a.model,
|
|
54
|
+
provider: a.provider,
|
|
55
|
+
category: a.category,
|
|
56
|
+
riskTier: a.riskTier,
|
|
57
|
+
certificationStatus: a.certificationStatus,
|
|
58
|
+
lastAssessedAt: a.lastAssessedAt?.toISOString() ?? null,
|
|
59
|
+
lastClassification: lastCert?.classification ?? null,
|
|
60
|
+
lastScores: lastCert?.scores ?? null,
|
|
61
|
+
assessmentCount: historyInPeriod.length,
|
|
62
|
+
passRate: historyInPeriod.length > 0
|
|
63
|
+
? `${((passCount / historyInPeriod.length) * 100).toFixed(0)}%`
|
|
64
|
+
: "N/A",
|
|
65
|
+
};
|
|
66
|
+
});
|
|
67
|
+
const data = {
|
|
68
|
+
generatedAt: now.toISOString(),
|
|
69
|
+
period: {
|
|
70
|
+
start: start.toISOString(),
|
|
71
|
+
end: now.toISOString(),
|
|
72
|
+
},
|
|
73
|
+
summary,
|
|
74
|
+
agents: agentEntries,
|
|
75
|
+
config: {
|
|
76
|
+
frequency: this.config.assessment.frequency,
|
|
77
|
+
defaultFramework: this.config.assessment.defaultFramework,
|
|
78
|
+
parallelAssessments: this.config.assessment.parallelAssessments,
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
if (options.includeAudit && this.auditLog) {
|
|
82
|
+
data.auditEntries = this.auditLog.between(start, now);
|
|
83
|
+
}
|
|
84
|
+
return data;
|
|
85
|
+
}
|
|
86
|
+
// ============================================================
|
|
87
|
+
// Markdown Formatter
|
|
88
|
+
// ============================================================
|
|
89
|
+
toMarkdown(data) {
|
|
90
|
+
const lines = [
|
|
91
|
+
`# ${this.config.whiteLabel?.productName ?? "Grillo Cricket"} — Fleet Compliance Report`,
|
|
92
|
+
"",
|
|
93
|
+
`**Generated:** ${data.generatedAt}`,
|
|
94
|
+
`**Period:** ${data.period.start.slice(0, 10)} to ${data.period.end.slice(0, 10)}`,
|
|
95
|
+
"",
|
|
96
|
+
"## Fleet Summary",
|
|
97
|
+
"",
|
|
98
|
+
"| Metric | Value |",
|
|
99
|
+
"|--------|-------|",
|
|
100
|
+
`| Total Agents | ${data.summary.total} |`,
|
|
101
|
+
`| Certified | ${data.summary.certified} |`,
|
|
102
|
+
`| Failed | ${data.summary.failed} |`,
|
|
103
|
+
`| Uncertified | ${data.summary.uncertified} |`,
|
|
104
|
+
`| Assessing | ${data.summary.assessing} |`,
|
|
105
|
+
`| Expired | ${data.summary.expired} |`,
|
|
106
|
+
`| Drift Warning | ${data.summary.driftWarning} |`,
|
|
107
|
+
"",
|
|
108
|
+
];
|
|
109
|
+
// Compliance rate
|
|
110
|
+
const complianceRate = data.summary.total > 0
|
|
111
|
+
? ((data.summary.certified / data.summary.total) *
|
|
112
|
+
100).toFixed(1)
|
|
113
|
+
: "0.0";
|
|
114
|
+
lines.push(`**Fleet Compliance Rate:** ${complianceRate}%`);
|
|
115
|
+
lines.push("");
|
|
116
|
+
// Agent details
|
|
117
|
+
lines.push("## Agent Details");
|
|
118
|
+
lines.push("");
|
|
119
|
+
lines.push("| Agent | Model | Category | Status | Last Assessed | Classification | Pass Rate |");
|
|
120
|
+
lines.push("|-------|-------|----------|--------|---------------|----------------|-----------|");
|
|
121
|
+
for (const a of data.agents) {
|
|
122
|
+
lines.push(`| ${a.agentName} | ${a.model} | ${a.category} | ${a.certificationStatus} | ${a.lastAssessedAt?.slice(0, 10) ?? "Never"} | ${a.lastClassification ?? "N/A"} | ${a.passRate} |`);
|
|
123
|
+
}
|
|
124
|
+
// Configuration
|
|
125
|
+
lines.push("");
|
|
126
|
+
lines.push("## Assessment Configuration");
|
|
127
|
+
lines.push("");
|
|
128
|
+
lines.push(`- **Frequency:** ${data.config.frequency}`);
|
|
129
|
+
lines.push(`- **Default Framework:** ${data.config.defaultFramework}`);
|
|
130
|
+
lines.push(`- **Parallel Assessments:** ${data.config.parallelAssessments}`);
|
|
131
|
+
// Audit trail
|
|
132
|
+
if (data.auditEntries && data.auditEntries.length > 0) {
|
|
133
|
+
lines.push("");
|
|
134
|
+
lines.push("## Audit Trail");
|
|
135
|
+
lines.push("");
|
|
136
|
+
lines.push("| # | Timestamp | Action | Actor | Agent | Description |");
|
|
137
|
+
lines.push("|---|-----------|--------|-------|-------|-------------|");
|
|
138
|
+
for (const e of data.auditEntries.slice(-50)) {
|
|
139
|
+
lines.push(`| ${e.sequence} | ${e.timestamp.slice(0, 19)} | ${e.action} | ${e.actor} | ${e.agentId ?? "—"} | ${e.description} |`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
lines.push("");
|
|
143
|
+
lines.push("---");
|
|
144
|
+
lines.push(`_${this.config.whiteLabel?.reportFooter ?? "Report generated by Grillo Cricket — The Conscience for AI"}_`);
|
|
145
|
+
return lines.join("\n");
|
|
146
|
+
}
|
|
147
|
+
// ============================================================
|
|
148
|
+
// CSV Formatter
|
|
149
|
+
// ============================================================
|
|
150
|
+
toCSV(data) {
|
|
151
|
+
const headers = [
|
|
152
|
+
"Agent ID",
|
|
153
|
+
"Agent Name",
|
|
154
|
+
"Model",
|
|
155
|
+
"Provider",
|
|
156
|
+
"Category",
|
|
157
|
+
"Risk Tier",
|
|
158
|
+
"Status",
|
|
159
|
+
"Last Assessed",
|
|
160
|
+
"Classification",
|
|
161
|
+
"Assessments",
|
|
162
|
+
"Pass Rate",
|
|
163
|
+
];
|
|
164
|
+
const rows = data.agents.map((a) => [
|
|
165
|
+
a.agentId,
|
|
166
|
+
a.agentName,
|
|
167
|
+
a.model,
|
|
168
|
+
a.provider,
|
|
169
|
+
a.category,
|
|
170
|
+
a.riskTier,
|
|
171
|
+
a.certificationStatus,
|
|
172
|
+
a.lastAssessedAt ?? "",
|
|
173
|
+
a.lastClassification ?? "",
|
|
174
|
+
String(a.assessmentCount),
|
|
175
|
+
a.passRate,
|
|
176
|
+
]
|
|
177
|
+
.map(csvEscape)
|
|
178
|
+
.join(","));
|
|
179
|
+
return [headers.join(","), ...rows].join("\n");
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
// ================================================================
|
|
183
|
+
// Helpers
|
|
184
|
+
// ================================================================
|
|
185
|
+
function periodStart(period, now) {
|
|
186
|
+
const ms = now.getTime();
|
|
187
|
+
switch (period) {
|
|
188
|
+
case "24h":
|
|
189
|
+
return new Date(ms - 24 * 60 * 60 * 1000);
|
|
190
|
+
case "7d":
|
|
191
|
+
return new Date(ms - 7 * 24 * 60 * 60 * 1000);
|
|
192
|
+
case "30d":
|
|
193
|
+
return new Date(ms - 30 * 24 * 60 * 60 * 1000);
|
|
194
|
+
case "90d":
|
|
195
|
+
return new Date(ms - 90 * 24 * 60 * 60 * 1000);
|
|
196
|
+
case "all":
|
|
197
|
+
return new Date(0);
|
|
198
|
+
default:
|
|
199
|
+
return new Date(ms - 30 * 24 * 60 * 60 * 1000);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
function csvEscape(value) {
|
|
203
|
+
if (value.includes(",") || value.includes('"') || value.includes("\n")) {
|
|
204
|
+
return `"${value.replace(/"/g, '""')}"`;
|
|
205
|
+
}
|
|
206
|
+
return value;
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=compliance-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compliance-report.js","sourceRoot":"","sources":["../../src/reports/compliance-report.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aiassesstech/grillo",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Grillo Cricket — The Conscience for AI. Independent assessment coordinator agent for multi-agent OpenClaw deployments.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"bin": {
|
|
9
|
+
"grillo": "dist/cli/bin.js"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"dist",
|
|
13
|
+
"README.md",
|
|
14
|
+
"LICENSE",
|
|
15
|
+
"CHANGELOG.md",
|
|
16
|
+
"SKILL.md"
|
|
17
|
+
],
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "tsc",
|
|
20
|
+
"dev": "tsc --watch",
|
|
21
|
+
"test": "vitest run",
|
|
22
|
+
"test:watch": "vitest",
|
|
23
|
+
"test:coverage": "vitest run --coverage",
|
|
24
|
+
"typecheck": "tsc --noEmit",
|
|
25
|
+
"lint": "tsc --noEmit",
|
|
26
|
+
"prepublishOnly": "npm run typecheck && npm run test && npm run build"
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"grillo",
|
|
30
|
+
"grillo-cricket",
|
|
31
|
+
"ai-conscience",
|
|
32
|
+
"ai-assessment",
|
|
33
|
+
"ai-ethics",
|
|
34
|
+
"fleet-management",
|
|
35
|
+
"certification",
|
|
36
|
+
"drift-detection",
|
|
37
|
+
"openclaw",
|
|
38
|
+
"ai-safety",
|
|
39
|
+
"4d-framework"
|
|
40
|
+
],
|
|
41
|
+
"author": "GiDanc AI LLC",
|
|
42
|
+
"license": "MIT",
|
|
43
|
+
"repository": {
|
|
44
|
+
"type": "git",
|
|
45
|
+
"url": "https://github.com/spar65/compsi.git",
|
|
46
|
+
"directory": "packages/grillo"
|
|
47
|
+
},
|
|
48
|
+
"homepage": "https://www.aiassesstech.com/grillo",
|
|
49
|
+
"bugs": {
|
|
50
|
+
"url": "https://github.com/spar65/compsi/issues"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"@aiassesstech/sdk": "^0.7.2",
|
|
54
|
+
"zod": "^3.22.0"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@types/node": "^20.0.0",
|
|
58
|
+
"typescript": "^5.3.3",
|
|
59
|
+
"vitest": "^1.2.0"
|
|
60
|
+
},
|
|
61
|
+
"engines": {
|
|
62
|
+
"node": ">=18.0.0"
|
|
63
|
+
},
|
|
64
|
+
"publishConfig": {
|
|
65
|
+
"access": "public"
|
|
66
|
+
}
|
|
67
|
+
}
|