proofscan 0.2.0 → 0.3.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 (102) hide show
  1. package/README.md +205 -281
  2. package/dist/analyzers/IAnalyzer.d.ts +87 -0
  3. package/dist/analyzers/IAnalyzer.d.ts.map +1 -0
  4. package/dist/analyzers/IAnalyzer.js +48 -0
  5. package/dist/analyzers/IAnalyzer.js.map +1 -0
  6. package/dist/analyzers/NoopAnalyzer.d.ts +24 -0
  7. package/dist/analyzers/NoopAnalyzer.d.ts.map +1 -0
  8. package/dist/analyzers/NoopAnalyzer.js +50 -0
  9. package/dist/analyzers/NoopAnalyzer.js.map +1 -0
  10. package/dist/analyzers/index.d.ts +13 -0
  11. package/dist/analyzers/index.d.ts.map +1 -0
  12. package/dist/analyzers/index.js +23 -0
  13. package/dist/analyzers/index.js.map +1 -0
  14. package/dist/cli.d.ts +15 -1
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +131 -9
  17. package/dist/cli.js.map +1 -1
  18. package/dist/commands/events.d.ts +7 -0
  19. package/dist/commands/events.d.ts.map +1 -0
  20. package/dist/commands/events.js +185 -0
  21. package/dist/commands/events.js.map +1 -0
  22. package/dist/commands/explore.d.ts +9 -0
  23. package/dist/commands/explore.d.ts.map +1 -0
  24. package/dist/commands/explore.js +345 -0
  25. package/dist/commands/explore.js.map +1 -0
  26. package/dist/commands/index.d.ts +5 -0
  27. package/dist/commands/index.d.ts.map +1 -1
  28. package/dist/commands/index.js +7 -0
  29. package/dist/commands/index.js.map +1 -1
  30. package/dist/commands/monitor.d.ts +1 -0
  31. package/dist/commands/monitor.d.ts.map +1 -1
  32. package/dist/commands/monitor.js +70 -12
  33. package/dist/commands/monitor.js.map +1 -1
  34. package/dist/commands/scan.d.ts.map +1 -1
  35. package/dist/commands/scan.js +12 -7
  36. package/dist/commands/scan.js.map +1 -1
  37. package/dist/commands/status.d.ts +7 -0
  38. package/dist/commands/status.d.ts.map +1 -0
  39. package/dist/commands/status.js +108 -0
  40. package/dist/commands/status.js.map +1 -0
  41. package/dist/commands/tree.d.ts +7 -0
  42. package/dist/commands/tree.d.ts.map +1 -0
  43. package/dist/commands/tree.js +184 -0
  44. package/dist/commands/tree.js.map +1 -0
  45. package/dist/commands/view.d.ts +9 -0
  46. package/dist/commands/view.d.ts.map +1 -0
  47. package/dist/commands/view.js +210 -0
  48. package/dist/commands/view.js.map +1 -0
  49. package/dist/db/connection.d.ts.map +1 -1
  50. package/dist/db/connection.js +45 -4
  51. package/dist/db/connection.js.map +1 -1
  52. package/dist/db/events-store.d.ts +3 -0
  53. package/dist/db/events-store.d.ts.map +1 -1
  54. package/dist/db/events-store.js +6 -3
  55. package/dist/db/events-store.js.map +1 -1
  56. package/dist/db/schema.d.ts +8 -2
  57. package/dist/db/schema.d.ts.map +1 -1
  58. package/dist/db/schema.js +29 -3
  59. package/dist/db/schema.js.map +1 -1
  60. package/dist/db/types.d.ts +3 -0
  61. package/dist/db/types.d.ts.map +1 -1
  62. package/dist/eventline/index.d.ts +8 -0
  63. package/dist/eventline/index.d.ts.map +1 -0
  64. package/dist/eventline/index.js +8 -0
  65. package/dist/eventline/index.js.map +1 -0
  66. package/dist/eventline/normalizer.d.ts +79 -0
  67. package/dist/eventline/normalizer.d.ts.map +1 -0
  68. package/dist/eventline/normalizer.js +418 -0
  69. package/dist/eventline/normalizer.js.map +1 -0
  70. package/dist/eventline/schema-discovery.d.ts +79 -0
  71. package/dist/eventline/schema-discovery.d.ts.map +1 -0
  72. package/dist/eventline/schema-discovery.js +154 -0
  73. package/dist/eventline/schema-discovery.js.map +1 -0
  74. package/dist/eventline/store.d.ts +88 -0
  75. package/dist/eventline/store.d.ts.map +1 -0
  76. package/dist/eventline/store.js +358 -0
  77. package/dist/eventline/store.js.map +1 -0
  78. package/dist/eventline/types.d.ts +112 -0
  79. package/dist/eventline/types.d.ts.map +1 -0
  80. package/dist/eventline/types.js +67 -0
  81. package/dist/eventline/types.js.map +1 -0
  82. package/dist/protocols/A2aAdapter.d.ts +39 -0
  83. package/dist/protocols/A2aAdapter.d.ts.map +1 -0
  84. package/dist/protocols/A2aAdapter.js +48 -0
  85. package/dist/protocols/A2aAdapter.js.map +1 -0
  86. package/dist/protocols/IProtocolAdapter.d.ts +106 -0
  87. package/dist/protocols/IProtocolAdapter.d.ts.map +1 -0
  88. package/dist/protocols/IProtocolAdapter.js +57 -0
  89. package/dist/protocols/IProtocolAdapter.js.map +1 -0
  90. package/dist/protocols/McpAdapter.d.ts +23 -0
  91. package/dist/protocols/McpAdapter.d.ts.map +1 -0
  92. package/dist/protocols/McpAdapter.js +162 -0
  93. package/dist/protocols/McpAdapter.js.map +1 -0
  94. package/dist/protocols/index.d.ts +14 -0
  95. package/dist/protocols/index.d.ts.map +1 -0
  96. package/dist/protocols/index.js +24 -0
  97. package/dist/protocols/index.js.map +1 -0
  98. package/dist/scanner/index.d.ts +1 -0
  99. package/dist/scanner/index.d.ts.map +1 -1
  100. package/dist/scanner/index.js +97 -60
  101. package/dist/scanner/index.js.map +1 -1
  102. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/eventline/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoHH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAkC;IACzD,aAAa,EAAE,GAAG;IAClB,WAAW,EAAE,GAAG;IAChB,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;CACX,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAAmB;IAC/C,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,WAAoB,KAAK;IACtE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;IACzD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAE3D,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa;QAC9D,OAAO,GAAG,OAAO,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,IAAI,EAAE,GAAG,OAAO;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACvD,OAAO,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,KAAK,GAAG,CAAC;IACrC,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IACjE,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EAAU,EAAE,SAAiB,CAAC;IACtD,IAAI,EAAE,CAAC,MAAM,IAAI,MAAM;QAAE,OAAO,EAAE,CAAC;IACnC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;AACrC,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * A2A Protocol Adapter (Stub)
3
+ *
4
+ * Placeholder for Agent-to-Agent protocol support
5
+ * Phase 2.1: Stub only, full implementation in Phase 3
6
+ */
7
+ import type { IProtocolAdapter, RawMessage, ParsedMessage, ProtocolType } from './IProtocolAdapter.js';
8
+ /**
9
+ * A2A Protocol Adapter stub
10
+ *
11
+ * Currently returns null for all messages.
12
+ * Will be implemented when A2A protocol specification is finalized.
13
+ */
14
+ export declare class A2aAdapter implements IProtocolAdapter {
15
+ readonly protocol: ProtocolType;
16
+ /**
17
+ * Check if message is A2A protocol
18
+ *
19
+ * A2A messages are expected to have specific structure:
20
+ * - Different from JSON-RPC 2.0
21
+ * - May have agent-specific headers
22
+ *
23
+ * Currently always returns false (stub)
24
+ */
25
+ canHandle(_raw: RawMessage): boolean;
26
+ /**
27
+ * Parse A2A message
28
+ *
29
+ * Currently returns null (stub)
30
+ */
31
+ parse(_raw: RawMessage): ParsedMessage | null;
32
+ /**
33
+ * Generate summary for A2A message
34
+ *
35
+ * Currently returns empty string (stub)
36
+ */
37
+ summarize(_parsed: ParsedMessage, _raw: RawMessage): string;
38
+ }
39
+ //# sourceMappingURL=A2aAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A2aAdapter.d.ts","sourceRoot":"","sources":["../../src/protocols/A2aAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,qBAAa,UAAW,YAAW,gBAAgB;IACjD,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAS;IAExC;;;;;;;;OAQG;IACH,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;IAMpC;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI;IAK7C;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM;CAI5D"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * A2A Protocol Adapter (Stub)
3
+ *
4
+ * Placeholder for Agent-to-Agent protocol support
5
+ * Phase 2.1: Stub only, full implementation in Phase 3
6
+ */
7
+ /**
8
+ * A2A Protocol Adapter stub
9
+ *
10
+ * Currently returns null for all messages.
11
+ * Will be implemented when A2A protocol specification is finalized.
12
+ */
13
+ export class A2aAdapter {
14
+ protocol = 'a2a';
15
+ /**
16
+ * Check if message is A2A protocol
17
+ *
18
+ * A2A messages are expected to have specific structure:
19
+ * - Different from JSON-RPC 2.0
20
+ * - May have agent-specific headers
21
+ *
22
+ * Currently always returns false (stub)
23
+ */
24
+ canHandle(_raw) {
25
+ // TODO: Implement A2A detection in Phase 3
26
+ // Expected format TBD
27
+ return false;
28
+ }
29
+ /**
30
+ * Parse A2A message
31
+ *
32
+ * Currently returns null (stub)
33
+ */
34
+ parse(_raw) {
35
+ // TODO: Implement A2A parsing in Phase 3
36
+ return null;
37
+ }
38
+ /**
39
+ * Generate summary for A2A message
40
+ *
41
+ * Currently returns empty string (stub)
42
+ */
43
+ summarize(_parsed, _raw) {
44
+ // TODO: Implement A2A summary in Phase 3
45
+ return '';
46
+ }
47
+ }
48
+ //# sourceMappingURL=A2aAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A2aAdapter.js","sourceRoot":"","sources":["../../src/protocols/A2aAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH;;;;;GAKG;AACH,MAAM,OAAO,UAAU;IACZ,QAAQ,GAAiB,KAAK,CAAC;IAExC;;;;;;;;OAQG;IACH,SAAS,CAAC,IAAgB;QACxB,2CAA2C;QAC3C,sBAAsB;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAgB;QACpB,yCAAyC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,OAAsB,EAAE,IAAgB;QAChD,yCAAyC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Protocol Adapter Interface
3
+ *
4
+ * Abstraction layer for different protocols (MCP, A2A, etc.)
5
+ * Phase 2.1: Skeleton implementation, full implementation in Phase 3
6
+ */
7
+ import type { EventLineKind, EventLineDirection, EventLineStatus } from '../eventline/types.js';
8
+ /**
9
+ * Protocol type identifier
10
+ */
11
+ export type ProtocolType = 'mcp' | 'a2a' | 'unknown';
12
+ /**
13
+ * Raw message from transport layer
14
+ */
15
+ export interface RawMessage {
16
+ /** Raw JSON string */
17
+ json: string;
18
+ /** Timestamp when received */
19
+ ts_ms: number;
20
+ /** Direction: inbound (from server) or outbound (to server) */
21
+ direction: 'inbound' | 'outbound';
22
+ /** Size in bytes */
23
+ size_bytes: number;
24
+ }
25
+ /**
26
+ * Parsed message result
27
+ */
28
+ export interface ParsedMessage {
29
+ /** Detected protocol */
30
+ protocol: ProtocolType;
31
+ /** Event kind */
32
+ kind: EventLineKind;
33
+ /** Direction */
34
+ direction: EventLineDirection;
35
+ /** Label (method name or event type) */
36
+ label: string;
37
+ /** Human-readable summary */
38
+ summary?: string;
39
+ /** RPC ID if applicable */
40
+ rpc_id?: string | number;
41
+ /** Status */
42
+ status: EventLineStatus;
43
+ /** Error code if error */
44
+ error_code?: number | string;
45
+ /** Payload hash (SHA-256, first 16 chars) */
46
+ payload_hash?: string;
47
+ /** Parsed JSON object */
48
+ parsed?: Record<string, unknown>;
49
+ }
50
+ /**
51
+ * Protocol Adapter interface
52
+ *
53
+ * Implementations convert protocol-specific messages to EventLine format
54
+ */
55
+ export interface IProtocolAdapter {
56
+ /** Protocol identifier */
57
+ readonly protocol: ProtocolType;
58
+ /**
59
+ * Check if this adapter can handle the given message
60
+ * @param raw - Raw message
61
+ * @returns true if this adapter should handle the message
62
+ */
63
+ canHandle(raw: RawMessage): boolean;
64
+ /**
65
+ * Parse a raw message into normalized format
66
+ * @param raw - Raw message
67
+ * @returns Parsed message or null if parsing fails
68
+ */
69
+ parse(raw: RawMessage): ParsedMessage | null;
70
+ /**
71
+ * Generate a summary string for the message
72
+ * @param parsed - Parsed message
73
+ * @param raw - Original raw message
74
+ * @returns Human-readable summary
75
+ */
76
+ summarize(parsed: ParsedMessage, raw: RawMessage): string;
77
+ }
78
+ /**
79
+ * Protocol Adapter Registry
80
+ *
81
+ * Manages adapters and routes messages to appropriate adapter
82
+ */
83
+ export declare class ProtocolAdapterRegistry {
84
+ private adapters;
85
+ /**
86
+ * Register an adapter
87
+ */
88
+ register(adapter: IProtocolAdapter): void;
89
+ /**
90
+ * Find adapter that can handle the message
91
+ */
92
+ findAdapter(raw: RawMessage): IProtocolAdapter | null;
93
+ /**
94
+ * Parse a raw message using appropriate adapter
95
+ */
96
+ parse(raw: RawMessage): ParsedMessage | null;
97
+ /**
98
+ * Get all registered adapters
99
+ */
100
+ getAdapters(): IProtocolAdapter[];
101
+ }
102
+ /**
103
+ * Compute SHA-256 hash of payload (first 16 chars)
104
+ */
105
+ export declare function computePayloadHash(json: string): string;
106
+ //# sourceMappingURL=IProtocolAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IProtocolAdapter.d.ts","sourceRoot":"","sources":["../../src/protocols/IProtocolAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAa,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE3G;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IAEb,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IAEd,+DAA+D;IAC/D,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;IAElC,oBAAoB;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,wBAAwB;IACxB,QAAQ,EAAE,YAAY,CAAC;IAEvB,iBAAiB;IACjB,IAAI,EAAE,aAAa,CAAC;IAEpB,gBAAgB;IAChB,SAAS,EAAE,kBAAkB,CAAC;IAE9B,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzB,aAAa;IACb,MAAM,EAAE,eAAe,CAAC;IAExB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE7B,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yBAAyB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEhC;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC;IAEpC;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI,CAAC;IAE7C;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC;CAC3D;AAED;;;;GAIG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAA0B;IAE1C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAIzC;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI;IASrD;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI;IAQ5C;;OAEG;IACH,WAAW,IAAI,gBAAgB,EAAE;CAGlC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Protocol Adapter Interface
3
+ *
4
+ * Abstraction layer for different protocols (MCP, A2A, etc.)
5
+ * Phase 2.1: Skeleton implementation, full implementation in Phase 3
6
+ */
7
+ /**
8
+ * Protocol Adapter Registry
9
+ *
10
+ * Manages adapters and routes messages to appropriate adapter
11
+ */
12
+ export class ProtocolAdapterRegistry {
13
+ adapters = [];
14
+ /**
15
+ * Register an adapter
16
+ */
17
+ register(adapter) {
18
+ this.adapters.push(adapter);
19
+ }
20
+ /**
21
+ * Find adapter that can handle the message
22
+ */
23
+ findAdapter(raw) {
24
+ for (const adapter of this.adapters) {
25
+ if (adapter.canHandle(raw)) {
26
+ return adapter;
27
+ }
28
+ }
29
+ return null;
30
+ }
31
+ /**
32
+ * Parse a raw message using appropriate adapter
33
+ */
34
+ parse(raw) {
35
+ const adapter = this.findAdapter(raw);
36
+ if (!adapter) {
37
+ return null;
38
+ }
39
+ return adapter.parse(raw);
40
+ }
41
+ /**
42
+ * Get all registered adapters
43
+ */
44
+ getAdapters() {
45
+ return [...this.adapters];
46
+ }
47
+ }
48
+ /**
49
+ * Compute SHA-256 hash of payload (first 16 chars)
50
+ */
51
+ export function computePayloadHash(json) {
52
+ // Use Node.js crypto
53
+ const crypto = require('crypto');
54
+ const hash = crypto.createHash('sha256').update(json).digest('hex');
55
+ return hash.slice(0, 16);
56
+ }
57
+ //# sourceMappingURL=IProtocolAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IProtocolAdapter.js","sourceRoot":"","sources":["../../src/protocols/IProtocolAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6FH;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAC1B,QAAQ,GAAuB,EAAE,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,OAAyB;QAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,GAAe;QACzB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAe;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,qBAAqB;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * MCP Protocol Adapter
3
+ *
4
+ * Handles MCP (Model Context Protocol) JSON-RPC messages
5
+ */
6
+ import type { IProtocolAdapter, RawMessage, ParsedMessage, ProtocolType } from './IProtocolAdapter.js';
7
+ /**
8
+ * MCP Protocol Adapter implementation
9
+ */
10
+ export declare class McpAdapter implements IProtocolAdapter {
11
+ readonly protocol: ProtocolType;
12
+ canHandle(raw: RawMessage): boolean;
13
+ parse(raw: RawMessage): ParsedMessage | null;
14
+ summarize(parsed: ParsedMessage, raw: RawMessage): string;
15
+ private isRequest;
16
+ private isResponse;
17
+ private isNotification;
18
+ private parseRequest;
19
+ private parseResponse;
20
+ private parseNotification;
21
+ private shortenUri;
22
+ }
23
+ //# sourceMappingURL=McpAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpAdapter.d.ts","sourceRoot":"","sources":["../../src/protocols/McpAdapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAiC/B;;GAEG;AACH,qBAAa,UAAW,YAAW,gBAAgB;IACjD,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAS;IAExC,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAUnC,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI;IAyB5C,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM;IAgEzD,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,UAAU;CAInB"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * MCP Protocol Adapter
3
+ *
4
+ * Handles MCP (Model Context Protocol) JSON-RPC messages
5
+ */
6
+ import { computePayloadHash } from './IProtocolAdapter.js';
7
+ /**
8
+ * MCP Protocol Adapter implementation
9
+ */
10
+ export class McpAdapter {
11
+ protocol = 'mcp';
12
+ canHandle(raw) {
13
+ try {
14
+ const parsed = JSON.parse(raw.json);
15
+ // JSON-RPC 2.0 messages have jsonrpc field
16
+ return parsed.jsonrpc === '2.0';
17
+ }
18
+ catch {
19
+ return false;
20
+ }
21
+ }
22
+ parse(raw) {
23
+ try {
24
+ const parsed = JSON.parse(raw.json);
25
+ if (parsed.jsonrpc !== '2.0') {
26
+ return null;
27
+ }
28
+ const payloadHash = computePayloadHash(raw.json);
29
+ // Determine message type
30
+ if (this.isResponse(parsed)) {
31
+ return this.parseResponse(parsed, raw, payloadHash);
32
+ }
33
+ else if (this.isRequest(parsed)) {
34
+ return this.parseRequest(parsed, raw, payloadHash);
35
+ }
36
+ else if (this.isNotification(parsed)) {
37
+ return this.parseNotification(parsed, raw, payloadHash);
38
+ }
39
+ return null;
40
+ }
41
+ catch {
42
+ return null;
43
+ }
44
+ }
45
+ summarize(parsed, raw) {
46
+ try {
47
+ const obj = JSON.parse(raw.json);
48
+ // Request summary
49
+ if (parsed.kind === 'req') {
50
+ const params = obj.params;
51
+ if (parsed.label === 'tools/call' && params?.name) {
52
+ return `call ${params.name}`;
53
+ }
54
+ if (parsed.label === 'resources/read' && params?.uri) {
55
+ return `read ${this.shortenUri(params.uri)}`;
56
+ }
57
+ if (parsed.label === 'prompts/get' && params?.name) {
58
+ return `get ${params.name}`;
59
+ }
60
+ return parsed.label;
61
+ }
62
+ // Response summary
63
+ if (parsed.kind === 'res') {
64
+ const result = obj.result;
65
+ if (result) {
66
+ // tools/list response
67
+ if (result.tools && Array.isArray(result.tools)) {
68
+ return `${result.tools.length} tools`;
69
+ }
70
+ // resources/list response
71
+ if (result.resources && Array.isArray(result.resources)) {
72
+ return `${result.resources.length} resources`;
73
+ }
74
+ // prompts/list response
75
+ if (result.prompts && Array.isArray(result.prompts)) {
76
+ return `${result.prompts.length} prompts`;
77
+ }
78
+ // initialize response
79
+ if (result.serverInfo?.name) {
80
+ return `${result.serverInfo.name} v${result.serverInfo.version || '?'}`;
81
+ }
82
+ // tools/call response
83
+ if (result.content && Array.isArray(result.content)) {
84
+ return `${result.content.length} content`;
85
+ }
86
+ }
87
+ // Error response
88
+ if (obj.error) {
89
+ return `error: ${obj.error.message || obj.error.code}`;
90
+ }
91
+ return 'OK';
92
+ }
93
+ // Notification summary
94
+ if (parsed.kind === 'notify') {
95
+ return parsed.label.replace('notifications/', '');
96
+ }
97
+ return parsed.label;
98
+ }
99
+ catch {
100
+ return parsed.label;
101
+ }
102
+ }
103
+ isRequest(msg) {
104
+ return 'method' in msg && 'id' in msg && msg.id !== undefined;
105
+ }
106
+ isResponse(msg) {
107
+ return !('method' in msg) && 'id' in msg;
108
+ }
109
+ isNotification(msg) {
110
+ return 'method' in msg && !('id' in msg);
111
+ }
112
+ parseRequest(msg, raw, payloadHash) {
113
+ // Inbound request (from client) = outbound from our perspective (we're capturing)
114
+ // Outbound request (to server) = client→server
115
+ const direction = raw.direction === 'outbound' ? '→' : '←';
116
+ return {
117
+ protocol: 'mcp',
118
+ kind: 'req',
119
+ direction,
120
+ label: msg.method,
121
+ rpc_id: msg.id,
122
+ status: '-',
123
+ payload_hash: payloadHash,
124
+ parsed: msg,
125
+ };
126
+ }
127
+ parseResponse(msg, raw, payloadHash) {
128
+ // Response direction is opposite of request
129
+ const direction = raw.direction === 'inbound' ? '←' : '→';
130
+ const hasError = 'error' in msg && msg.error !== undefined;
131
+ const status = hasError ? 'ERR' : 'OK';
132
+ return {
133
+ protocol: 'mcp',
134
+ kind: 'res',
135
+ direction,
136
+ label: 'response', // Will be correlated with request method later
137
+ rpc_id: msg.id,
138
+ status,
139
+ error_code: hasError ? msg.error.code : undefined,
140
+ payload_hash: payloadHash,
141
+ parsed: msg,
142
+ };
143
+ }
144
+ parseNotification(msg, raw, payloadHash) {
145
+ const direction = raw.direction === 'outbound' ? '→' : '←';
146
+ return {
147
+ protocol: 'mcp',
148
+ kind: 'notify',
149
+ direction,
150
+ label: msg.method,
151
+ status: '-',
152
+ payload_hash: payloadHash,
153
+ parsed: msg,
154
+ };
155
+ }
156
+ shortenUri(uri) {
157
+ if (uri.length <= 30)
158
+ return uri;
159
+ return uri.slice(0, 15) + '...' + uri.slice(-12);
160
+ }
161
+ }
162
+ //# sourceMappingURL=McpAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpAdapter.js","sourceRoot":"","sources":["../../src/protocols/McpAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Protocol Adapters
3
+ *
4
+ * Export all protocol adapters and utilities
5
+ */
6
+ export * from './IProtocolAdapter.js';
7
+ export * from './McpAdapter.js';
8
+ export * from './A2aAdapter.js';
9
+ import { ProtocolAdapterRegistry } from './IProtocolAdapter.js';
10
+ /**
11
+ * Create a default registry with all adapters
12
+ */
13
+ export declare function createDefaultRegistry(): ProtocolAdapterRegistry;
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/protocols/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAEhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIhE;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,uBAAuB,CAW/D"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Protocol Adapters
3
+ *
4
+ * Export all protocol adapters and utilities
5
+ */
6
+ export * from './IProtocolAdapter.js';
7
+ export * from './McpAdapter.js';
8
+ export * from './A2aAdapter.js';
9
+ import { ProtocolAdapterRegistry } from './IProtocolAdapter.js';
10
+ import { McpAdapter } from './McpAdapter.js';
11
+ import { A2aAdapter } from './A2aAdapter.js';
12
+ /**
13
+ * Create a default registry with all adapters
14
+ */
15
+ export function createDefaultRegistry() {
16
+ const registry = new ProtocolAdapterRegistry();
17
+ // Register adapters in priority order
18
+ // MCP is the primary protocol
19
+ registry.register(new McpAdapter());
20
+ // A2A is a stub for future support
21
+ registry.register(new A2aAdapter());
22
+ return registry;
23
+ }
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocols/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAEhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;IAE/C,sCAAsC;IACtC,8BAA8B;IAC9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;IAEpC,mCAAmC;IACnC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;IAEpC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -13,6 +13,7 @@ export interface ScanResult {
13
13
  }
14
14
  export interface ScanOptions {
15
15
  timeout?: number;
16
+ dryRun?: boolean;
16
17
  }
17
18
  export declare class Scanner {
18
19
  private eventsStore;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scanner/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,mBAAmB,CAAC;AAKnE,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM;IAKvB,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;CAiNjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scanner/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,mBAAmB,CAAC;AAKnE,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM;IAKvB,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;CAoPjF"}