@axonflow/sdk 1.0.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.
Files changed (108) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +386 -0
  3. package/dist/cjs/client.d.ts +60 -0
  4. package/dist/cjs/client.d.ts.map +1 -0
  5. package/dist/cjs/client.js +364 -0
  6. package/dist/cjs/client.js.map +1 -0
  7. package/dist/cjs/index.d.ts +22 -0
  8. package/dist/cjs/index.d.ts.map +1 -0
  9. package/dist/cjs/index.js +29 -0
  10. package/dist/cjs/index.js.map +1 -0
  11. package/dist/cjs/interceptors/anthropic.d.ts +16 -0
  12. package/dist/cjs/interceptors/anthropic.d.ts.map +1 -0
  13. package/dist/cjs/interceptors/anthropic.js +74 -0
  14. package/dist/cjs/interceptors/anthropic.js.map +1 -0
  15. package/dist/cjs/interceptors/base.d.ts +23 -0
  16. package/dist/cjs/interceptors/base.d.ts.map +1 -0
  17. package/dist/cjs/interceptors/base.js +10 -0
  18. package/dist/cjs/interceptors/base.js.map +1 -0
  19. package/dist/cjs/interceptors/openai.d.ts +16 -0
  20. package/dist/cjs/interceptors/openai.d.ts.map +1 -0
  21. package/dist/cjs/interceptors/openai.js +73 -0
  22. package/dist/cjs/interceptors/openai.js.map +1 -0
  23. package/dist/cjs/types/config.d.ts +62 -0
  24. package/dist/cjs/types/config.d.ts.map +1 -0
  25. package/dist/cjs/types/config.js +3 -0
  26. package/dist/cjs/types/config.js.map +1 -0
  27. package/dist/cjs/types/connector.d.ts +31 -0
  28. package/dist/cjs/types/connector.d.ts.map +1 -0
  29. package/dist/cjs/types/connector.js +6 -0
  30. package/dist/cjs/types/connector.js.map +1 -0
  31. package/dist/cjs/types/index.d.ts +7 -0
  32. package/dist/cjs/types/index.d.ts.map +1 -0
  33. package/dist/cjs/types/index.js +23 -0
  34. package/dist/cjs/types/index.js.map +1 -0
  35. package/dist/cjs/types/planning.d.ts +29 -0
  36. package/dist/cjs/types/planning.d.ts.map +1 -0
  37. package/dist/cjs/types/planning.js +6 -0
  38. package/dist/cjs/types/planning.js.map +1 -0
  39. package/dist/cjs/types/policy.d.ts +48 -0
  40. package/dist/cjs/types/policy.d.ts.map +1 -0
  41. package/dist/cjs/types/policy.js +3 -0
  42. package/dist/cjs/types/policy.js.map +1 -0
  43. package/dist/cjs/types/request.d.ts +56 -0
  44. package/dist/cjs/types/request.d.ts.map +1 -0
  45. package/dist/cjs/types/request.js +3 -0
  46. package/dist/cjs/types/request.js.map +1 -0
  47. package/dist/cjs/types/response.d.ts +82 -0
  48. package/dist/cjs/types/response.d.ts.map +1 -0
  49. package/dist/cjs/types/response.js +3 -0
  50. package/dist/cjs/types/response.js.map +1 -0
  51. package/dist/cjs/utils/helpers.d.ts +25 -0
  52. package/dist/cjs/utils/helpers.d.ts.map +1 -0
  53. package/dist/cjs/utils/helpers.js +54 -0
  54. package/dist/cjs/utils/helpers.js.map +1 -0
  55. package/dist/esm/client.d.ts +60 -0
  56. package/dist/esm/client.d.ts.map +1 -0
  57. package/dist/esm/client.js +360 -0
  58. package/dist/esm/client.js.map +1 -0
  59. package/dist/esm/index.d.ts +22 -0
  60. package/dist/esm/index.d.ts.map +1 -0
  61. package/dist/esm/index.js +23 -0
  62. package/dist/esm/index.js.map +1 -0
  63. package/dist/esm/interceptors/anthropic.d.ts +16 -0
  64. package/dist/esm/interceptors/anthropic.d.ts.map +1 -0
  65. package/dist/esm/interceptors/anthropic.js +69 -0
  66. package/dist/esm/interceptors/anthropic.js.map +1 -0
  67. package/dist/esm/interceptors/base.d.ts +23 -0
  68. package/dist/esm/interceptors/base.d.ts.map +1 -0
  69. package/dist/esm/interceptors/base.js +6 -0
  70. package/dist/esm/interceptors/base.js.map +1 -0
  71. package/dist/esm/interceptors/openai.d.ts +16 -0
  72. package/dist/esm/interceptors/openai.d.ts.map +1 -0
  73. package/dist/esm/interceptors/openai.js +68 -0
  74. package/dist/esm/interceptors/openai.js.map +1 -0
  75. package/dist/esm/package.json +3 -0
  76. package/dist/esm/types/config.d.ts +62 -0
  77. package/dist/esm/types/config.d.ts.map +1 -0
  78. package/dist/esm/types/config.js +2 -0
  79. package/dist/esm/types/config.js.map +1 -0
  80. package/dist/esm/types/connector.d.ts +31 -0
  81. package/dist/esm/types/connector.d.ts.map +1 -0
  82. package/dist/esm/types/connector.js +5 -0
  83. package/dist/esm/types/connector.js.map +1 -0
  84. package/dist/esm/types/index.d.ts +7 -0
  85. package/dist/esm/types/index.d.ts.map +1 -0
  86. package/dist/esm/types/index.js +7 -0
  87. package/dist/esm/types/index.js.map +1 -0
  88. package/dist/esm/types/planning.d.ts +29 -0
  89. package/dist/esm/types/planning.d.ts.map +1 -0
  90. package/dist/esm/types/planning.js +5 -0
  91. package/dist/esm/types/planning.js.map +1 -0
  92. package/dist/esm/types/policy.d.ts +48 -0
  93. package/dist/esm/types/policy.d.ts.map +1 -0
  94. package/dist/esm/types/policy.js +2 -0
  95. package/dist/esm/types/policy.js.map +1 -0
  96. package/dist/esm/types/request.d.ts +56 -0
  97. package/dist/esm/types/request.d.ts.map +1 -0
  98. package/dist/esm/types/request.js +2 -0
  99. package/dist/esm/types/request.js.map +1 -0
  100. package/dist/esm/types/response.d.ts +82 -0
  101. package/dist/esm/types/response.d.ts.map +1 -0
  102. package/dist/esm/types/response.js +2 -0
  103. package/dist/esm/types/response.js.map +1 -0
  104. package/dist/esm/utils/helpers.d.ts +25 -0
  105. package/dist/esm/utils/helpers.d.ts.map +1 -0
  106. package/dist/esm/utils/helpers.js +46 -0
  107. package/dist/esm/utils/helpers.js.map +1 -0
  108. package/package.json +63 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/interceptors/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAGzC;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,eAAe;IACpD,SAAS,CAAC,MAAW;QACnB,0CAA0C;QAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrC,OAAO,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC7B,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACvC,UAAU,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YAC3C,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,cAAc,CAAC,MAAW;QACxB,yCAAyC;QACzC,0EAA0E;QAC1E,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAErC,sBAAsB;QACtB,IAAI,KAAK,GAAG,SAAS,CAAC;QACtB,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,KAAK,GAAG,OAAO,CAAC;QAClB,CAAC;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,KAAK,GAAG,eAAe,CAAC;QAC1B,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,KAAK;YACL,MAAM,EAAE,UAAU;YAClB,UAAU,EAAE;YACV,4DAA4D;aAC7D;SACF,CAAC;IACJ,CAAC;IAED,wBAAwB,CAAC,MAAW,EAAE,aAAkB;QACtD,0DAA0D;QAC1D,uDAAuD;QACvD,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAiB,EAAE,QAAa;IAC/D,8CAA8C;IAC9C,OAAO,IAAI,KAAK,CAAC,YAAY,EAAE;QAC7B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAErD,0CAA0C;YAC1C,IAAI,OAAO,QAAQ,KAAK,UAAU;gBAC9B,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAEzF,OAAO,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAC9B,iCAAiC;oBACjC,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC9D,CAAC,CAAC;YACJ,CAAC;YAED,oDAAoD;YACpD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtD,OAAO,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC9C,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Configuration options for the AxonFlow SDK
3
+ */
4
+ export interface AxonFlowConfig {
5
+ /**
6
+ * Your AxonFlow API key
7
+ */
8
+ apiKey: string;
9
+ /**
10
+ * AxonFlow API endpoint (optional)
11
+ * Default: https://api.axonflow.com
12
+ */
13
+ endpoint?: string;
14
+ /**
15
+ * Deployment mode
16
+ * - sandbox: For testing with non-production data
17
+ * - production: For production use
18
+ * Default: production
19
+ */
20
+ mode?: 'sandbox' | 'production';
21
+ /**
22
+ * Tenant identifier for multi-tenant deployments
23
+ */
24
+ tenant?: string;
25
+ /**
26
+ * Enable debug logging
27
+ * Default: false
28
+ */
29
+ debug?: boolean;
30
+ /**
31
+ * Request timeout in milliseconds
32
+ * Default: 30000 (30 seconds)
33
+ */
34
+ timeout?: number;
35
+ /**
36
+ * Retry configuration
37
+ */
38
+ retry?: {
39
+ enabled: boolean;
40
+ maxAttempts?: number;
41
+ delay?: number;
42
+ };
43
+ /**
44
+ * Cache configuration for policy decisions
45
+ */
46
+ cache?: {
47
+ enabled: boolean;
48
+ ttl?: number;
49
+ };
50
+ }
51
+ export interface RetryConfig {
52
+ enabled: boolean;
53
+ maxAttempts: number;
54
+ delay: number;
55
+ backoff: boolean;
56
+ }
57
+ export interface CacheConfig {
58
+ enabled: boolean;
59
+ ttl: number;
60
+ maxSize: number;
61
+ }
62
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/types/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;IAEhC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE;QACN,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,KAAK,CAAC,EAAE;QACN,OAAO,EAAE,OAAO,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/types/config.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * MCP Connector types for AxonFlow SDK
3
+ */
4
+ export interface ConnectorMetadata {
5
+ id: string;
6
+ name: string;
7
+ type: string;
8
+ version: string;
9
+ description: string;
10
+ category: string;
11
+ icon: string;
12
+ tags: string[];
13
+ capabilities: string[];
14
+ configSchema: Record<string, any>;
15
+ installed: boolean;
16
+ healthy?: boolean;
17
+ }
18
+ export interface ConnectorInstallRequest {
19
+ connector_id: string;
20
+ name: string;
21
+ tenant_id: string;
22
+ options: Record<string, any>;
23
+ credentials: Record<string, string>;
24
+ }
25
+ export interface ConnectorResponse {
26
+ success: boolean;
27
+ data: any;
28
+ error?: string;
29
+ meta?: Record<string, any>;
30
+ }
31
+ //# sourceMappingURL=connector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../../src/types/connector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * MCP Connector types for AxonFlow SDK
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=connector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.js","sourceRoot":"","sources":["../../../src/types/connector.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,7 @@
1
+ export * from './config';
2
+ export * from './request';
3
+ export * from './response';
4
+ export * from './policy';
5
+ export * from './connector';
6
+ export * from './planning';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './config.js';
2
+ export * from './request.js';
3
+ export * from './response.js';
4
+ export * from './policy.js';
5
+ export * from './connector.js';
6
+ export * from './planning.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Multi-Agent Planning (MAP) types for AxonFlow SDK
3
+ */
4
+ export interface PlanStep {
5
+ id: string;
6
+ name: string;
7
+ type: string;
8
+ description: string;
9
+ dependsOn: string[];
10
+ agent: string;
11
+ parameters: Record<string, any>;
12
+ }
13
+ export interface PlanResponse {
14
+ planId: string;
15
+ steps: PlanStep[];
16
+ domain: string;
17
+ complexity: number;
18
+ parallel: boolean;
19
+ metadata: Record<string, any>;
20
+ }
21
+ export interface PlanExecutionResponse {
22
+ planId: string;
23
+ status: 'running' | 'completed' | 'failed';
24
+ result?: string;
25
+ stepResults?: Record<string, any>;
26
+ error?: string;
27
+ duration?: string;
28
+ }
29
+ //# sourceMappingURL=planning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../src/types/planning.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Multi-Agent Planning (MAP) types for AxonFlow SDK
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=planning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../../src/types/planning.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Policy-related types
3
+ */
4
+ export interface Policy {
5
+ /**
6
+ * Policy ID
7
+ */
8
+ id: string;
9
+ /**
10
+ * Policy name
11
+ */
12
+ name: string;
13
+ /**
14
+ * Policy type
15
+ */
16
+ type: 'static' | 'dynamic';
17
+ /**
18
+ * Is the policy enabled?
19
+ */
20
+ enabled: boolean;
21
+ /**
22
+ * Policy rules
23
+ */
24
+ rules: PolicyRule[];
25
+ /**
26
+ * Priority (lower numbers = higher priority)
27
+ */
28
+ priority: number;
29
+ }
30
+ export interface PolicyRule {
31
+ /**
32
+ * Rule condition
33
+ */
34
+ condition: {
35
+ field: string;
36
+ operator: 'equals' | 'contains' | 'regex' | 'greater' | 'less';
37
+ value: any;
38
+ };
39
+ /**
40
+ * Action to take if condition matches
41
+ */
42
+ action: 'allow' | 'deny' | 'redact' | 'modify' | 'log';
43
+ /**
44
+ * Optional message
45
+ */
46
+ message?: string;
47
+ }
48
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/types/policy.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,UAAU,EAAE,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;QAC/D,KAAK,EAAE,GAAG,CAAC;KACZ,CAAC;IAEF;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IAEvD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../src/types/policy.ts"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Request types for AI calls
3
+ */
4
+ export interface AIRequest {
5
+ /**
6
+ * The AI provider (openai, anthropic, etc.)
7
+ */
8
+ provider: string;
9
+ /**
10
+ * The model being used
11
+ */
12
+ model: string;
13
+ /**
14
+ * The prompt or messages
15
+ */
16
+ prompt: string | any[];
17
+ /**
18
+ * Request parameters (temperature, max_tokens, etc.)
19
+ */
20
+ parameters?: Record<string, any>;
21
+ /**
22
+ * User context for policy evaluation
23
+ */
24
+ context?: {
25
+ userId?: string;
26
+ sessionId?: string;
27
+ metadata?: Record<string, any>;
28
+ };
29
+ /**
30
+ * Original request for passthrough
31
+ */
32
+ originalRequest?: any;
33
+ }
34
+ export interface GovernanceRequest {
35
+ /**
36
+ * Unique request ID
37
+ */
38
+ requestId: string;
39
+ /**
40
+ * Timestamp
41
+ */
42
+ timestamp: number;
43
+ /**
44
+ * The AI request to govern
45
+ */
46
+ aiRequest: AIRequest;
47
+ /**
48
+ * Governance mode
49
+ */
50
+ mode: 'sandbox' | 'production';
51
+ /**
52
+ * Tenant identifier
53
+ */
54
+ tenant?: string;
55
+ }
56
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/types/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC,CAAC;IAEF;;OAEG;IACH,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,SAAS,GAAG,YAAY,CAAC;IAE/B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/types/request.ts"],"names":[],"mappings":""}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Response types from AxonFlow governance
3
+ */
4
+ export interface GovernanceResponse {
5
+ /**
6
+ * Request ID for tracking
7
+ */
8
+ requestId: string;
9
+ /**
10
+ * Whether the request is allowed
11
+ */
12
+ allowed: boolean;
13
+ /**
14
+ * Modified request (if any modifications were made)
15
+ */
16
+ modifiedRequest?: any;
17
+ /**
18
+ * Applied policies
19
+ */
20
+ policies: PolicyDecision[];
21
+ /**
22
+ * Audit information
23
+ */
24
+ audit: {
25
+ timestamp: number;
26
+ duration: number;
27
+ tenant?: string;
28
+ };
29
+ /**
30
+ * Any violations detected
31
+ */
32
+ violations?: Violation[];
33
+ /**
34
+ * The AI response (after governance)
35
+ */
36
+ aiResponse?: any;
37
+ }
38
+ export interface PolicyDecision {
39
+ /**
40
+ * Policy ID
41
+ */
42
+ id: string;
43
+ /**
44
+ * Policy name
45
+ */
46
+ name: string;
47
+ /**
48
+ * Decision (allow, deny, modify)
49
+ */
50
+ decision: 'allow' | 'deny' | 'modify';
51
+ /**
52
+ * Reason for the decision
53
+ */
54
+ reason?: string;
55
+ /**
56
+ * Modifications applied
57
+ */
58
+ modifications?: any[];
59
+ }
60
+ export interface Violation {
61
+ /**
62
+ * Type of violation
63
+ */
64
+ type: 'pii' | 'security' | 'cost' | 'rate_limit' | 'content' | 'other';
65
+ /**
66
+ * Severity
67
+ */
68
+ severity: 'low' | 'medium' | 'high' | 'critical';
69
+ /**
70
+ * Description
71
+ */
72
+ description: string;
73
+ /**
74
+ * Policy that was violated
75
+ */
76
+ policy: string;
77
+ /**
78
+ * Action taken
79
+ */
80
+ action: 'blocked' | 'redacted' | 'logged' | 'allowed';
81
+ }
82
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/types/response.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,GAAG,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,cAAc,EAAE,CAAC;IAE3B;;OAEG;IACH,KAAK,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IAEzB;;OAEG;IACH,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAEtC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;IAEvE;;OAEG;IACH,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAEjD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;CACvD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/types/response.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generate a unique request ID
3
+ */
4
+ export declare function generateRequestId(): string;
5
+ /**
6
+ * Debug logging helper
7
+ */
8
+ export declare function debugLog(message: string, data?: any): void;
9
+ /**
10
+ * Sleep helper for retry logic
11
+ */
12
+ export declare function sleep(ms: number): Promise<void>;
13
+ /**
14
+ * Check if running in browser vs Node.js
15
+ */
16
+ export declare function isBrowser(): boolean;
17
+ /**
18
+ * Check if running in Node.js
19
+ */
20
+ export declare function isNode(): boolean;
21
+ /**
22
+ * Safe JSON stringify that handles circular references
23
+ */
24
+ export declare function safeStringify(obj: any): string;
25
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAE1D;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,OAAO,CAEhC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAW9C"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Generate a unique request ID
3
+ */
4
+ export function generateRequestId() {
5
+ return `req_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
6
+ }
7
+ /**
8
+ * Debug logging helper
9
+ */
10
+ export function debugLog(message, data) {
11
+ console.log(`[AxonFlow] ${message}`, data ? JSON.stringify(data, null, 2) : '');
12
+ }
13
+ /**
14
+ * Sleep helper for retry logic
15
+ */
16
+ export function sleep(ms) {
17
+ return new Promise(resolve => setTimeout(resolve, ms));
18
+ }
19
+ /**
20
+ * Check if running in browser vs Node.js
21
+ */
22
+ export function isBrowser() {
23
+ return typeof window !== 'undefined' && typeof window.document !== 'undefined';
24
+ }
25
+ /**
26
+ * Check if running in Node.js
27
+ */
28
+ export function isNode() {
29
+ return typeof process !== 'undefined' && process.versions !== undefined && process.versions.node !== undefined;
30
+ }
31
+ /**
32
+ * Safe JSON stringify that handles circular references
33
+ */
34
+ export function safeStringify(obj) {
35
+ const seen = new WeakSet();
36
+ return JSON.stringify(obj, (key, value) => {
37
+ if (typeof value === 'object' && value !== null) {
38
+ if (seen.has(value)) {
39
+ return '[Circular]';
40
+ }
41
+ seen.add(value);
42
+ }
43
+ return value;
44
+ });
45
+ }
46
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,IAAU;IAClD,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AACjH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,GAAQ;IACpC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
package/package.json ADDED
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "@axonflow/sdk",
3
+ "version": "1.0.0",
4
+ "description": "AxonFlow SDK - Add invisible AI governance to your applications in 3 lines of code",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/cjs/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/esm/index.js",
11
+ "require": "./dist/cjs/index.js",
12
+ "types": "./dist/cjs/index.d.ts"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "README.md",
18
+ "LICENSE"
19
+ ],
20
+ "scripts": {
21
+ "build": "npm run clean && npm run compile",
22
+ "clean": "rm -rf dist",
23
+ "compile": "tsc && tsc --project tsconfig.esm.json && node scripts/fix-esm-imports.js",
24
+ "dev": "tsc --watch",
25
+ "test": "jest",
26
+ "prepublishOnly": "npm run build"
27
+ },
28
+ "keywords": [
29
+ "axonflow",
30
+ "ai",
31
+ "governance",
32
+ "openai",
33
+ "anthropic",
34
+ "llm",
35
+ "security",
36
+ "compliance",
37
+ "policy",
38
+ "mcp",
39
+ "connectors",
40
+ "multi-agent"
41
+ ],
42
+ "author": "AxonFlow <dev@getaxonflow.com>",
43
+ "license": "MIT",
44
+ "homepage": "https://getaxonflow.com",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "https://github.com/getaxonflow/axonflow-sdk-typescript"
48
+ },
49
+ "bugs": {
50
+ "url": "https://github.com/getaxonflow/axonflow-sdk-typescript/issues"
51
+ },
52
+ "engines": {
53
+ "node": ">=14.0.0"
54
+ },
55
+ "devDependencies": {
56
+ "@types/node": "^18.0.0",
57
+ "typescript": "^5.0.0",
58
+ "jest": "^29.0.0",
59
+ "@types/jest": "^29.0.0",
60
+ "ts-jest": "^29.0.0"
61
+ },
62
+ "dependencies": {}
63
+ }