@ibm/ibmi-mcp-server 0.4.5 → 0.5.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 (159) hide show
  1. package/README.md +2 -0
  2. package/dist/config/index.d.ts +20 -0
  3. package/dist/config/index.d.ts.map +1 -1
  4. package/dist/config/index.js +95 -0
  5. package/dist/config/index.js.map +1 -1
  6. package/dist/ibmi-mcp-server/schemas/config.d.ts +58 -0
  7. package/dist/ibmi-mcp-server/schemas/config.d.ts.map +1 -1
  8. package/dist/ibmi-mcp-server/schemas/config.js +35 -0
  9. package/dist/ibmi-mcp-server/schemas/config.js.map +1 -1
  10. package/dist/ibmi-mcp-server/services/authenticatedPoolManager.d.ts +19 -1
  11. package/dist/ibmi-mcp-server/services/authenticatedPoolManager.d.ts.map +1 -1
  12. package/dist/ibmi-mcp-server/services/authenticatedPoolManager.js +30 -2
  13. package/dist/ibmi-mcp-server/services/authenticatedPoolManager.js.map +1 -1
  14. package/dist/ibmi-mcp-server/services/baseConnectionPool.d.ts +6 -2
  15. package/dist/ibmi-mcp-server/services/baseConnectionPool.d.ts.map +1 -1
  16. package/dist/ibmi-mcp-server/services/baseConnectionPool.js +68 -8
  17. package/dist/ibmi-mcp-server/services/baseConnectionPool.js.map +1 -1
  18. package/dist/ibmi-mcp-server/services/connectionPool.d.ts +4 -2
  19. package/dist/ibmi-mcp-server/services/connectionPool.d.ts.map +1 -1
  20. package/dist/ibmi-mcp-server/services/connectionPool.js +6 -3
  21. package/dist/ibmi-mcp-server/services/connectionPool.js.map +1 -1
  22. package/dist/ibmi-mcp-server/services/sourceManager.d.ts +19 -1
  23. package/dist/ibmi-mcp-server/services/sourceManager.d.ts.map +1 -1
  24. package/dist/ibmi-mcp-server/services/sourceManager.js +31 -2
  25. package/dist/ibmi-mcp-server/services/sourceManager.js.map +1 -1
  26. package/dist/ibmi-mcp-server/tools/executeSql.tool.d.ts +1 -0
  27. package/dist/ibmi-mcp-server/tools/executeSql.tool.d.ts.map +1 -1
  28. package/dist/ibmi-mcp-server/tools/executeSql.tool.js +17 -3
  29. package/dist/ibmi-mcp-server/tools/executeSql.tool.js.map +1 -1
  30. package/dist/ibmi-mcp-server/tools/index.d.ts +1 -0
  31. package/dist/ibmi-mcp-server/tools/index.d.ts.map +1 -1
  32. package/dist/ibmi-mcp-server/utils/config/toolConfigBuilder.d.ts.map +1 -1
  33. package/dist/ibmi-mcp-server/utils/config/toolConfigBuilder.js +1 -1
  34. package/dist/ibmi-mcp-server/utils/config/toolConfigBuilder.js.map +1 -1
  35. package/dist/ibmi-mcp-server/utils/config/toolFactory.d.ts +1 -1
  36. package/dist/ibmi-mcp-server/utils/config/toolFactory.d.ts.map +1 -1
  37. package/dist/ibmi-mcp-server/utils/config/toolFactory.js +42 -4
  38. package/dist/ibmi-mcp-server/utils/config/toolFactory.js.map +1 -1
  39. package/dist/public/context.d.ts +5 -0
  40. package/dist/public/context.d.ts.map +1 -0
  41. package/dist/public/context.js +5 -0
  42. package/dist/public/context.js.map +1 -0
  43. package/dist/public/formatting.d.ts +5 -0
  44. package/dist/public/formatting.d.ts.map +1 -0
  45. package/dist/public/formatting.js +5 -0
  46. package/dist/public/formatting.js.map +1 -0
  47. package/dist/public/services.d.ts +8 -0
  48. package/dist/public/services.d.ts.map +1 -0
  49. package/dist/public/services.js +8 -0
  50. package/dist/public/services.js.map +1 -0
  51. package/dist/public/tools.d.ts +16 -0
  52. package/dist/public/tools.d.ts.map +1 -0
  53. package/dist/public/tools.js +15 -0
  54. package/dist/public/tools.js.map +1 -0
  55. package/package.json +20 -17
  56. package/dist/cli/commands/columns.d.ts +0 -7
  57. package/dist/cli/commands/columns.d.ts.map +0 -1
  58. package/dist/cli/commands/columns.js +0 -29
  59. package/dist/cli/commands/columns.js.map +0 -1
  60. package/dist/cli/commands/completion.d.ts +0 -10
  61. package/dist/cli/commands/completion.d.ts.map +0 -1
  62. package/dist/cli/commands/completion.js +0 -247
  63. package/dist/cli/commands/completion.js.map +0 -1
  64. package/dist/cli/commands/config.d.ts +0 -11
  65. package/dist/cli/commands/config.d.ts.map +0 -1
  66. package/dist/cli/commands/config.js +0 -124
  67. package/dist/cli/commands/config.js.map +0 -1
  68. package/dist/cli/commands/describe.d.ts +0 -9
  69. package/dist/cli/commands/describe.d.ts.map +0 -1
  70. package/dist/cli/commands/describe.js +0 -82
  71. package/dist/cli/commands/describe.js.map +0 -1
  72. package/dist/cli/commands/related.d.ts +0 -7
  73. package/dist/cli/commands/related.d.ts.map +0 -1
  74. package/dist/cli/commands/related.js +0 -32
  75. package/dist/cli/commands/related.js.map +0 -1
  76. package/dist/cli/commands/schemas.d.ts +0 -7
  77. package/dist/cli/commands/schemas.d.ts.map +0 -1
  78. package/dist/cli/commands/schemas.js +0 -49
  79. package/dist/cli/commands/schemas.js.map +0 -1
  80. package/dist/cli/commands/sql.d.ts +0 -8
  81. package/dist/cli/commands/sql.d.ts.map +0 -1
  82. package/dist/cli/commands/sql.js +0 -187
  83. package/dist/cli/commands/sql.js.map +0 -1
  84. package/dist/cli/commands/system.d.ts +0 -11
  85. package/dist/cli/commands/system.d.ts.map +0 -1
  86. package/dist/cli/commands/system.js +0 -263
  87. package/dist/cli/commands/system.js.map +0 -1
  88. package/dist/cli/commands/tables.d.ts +0 -7
  89. package/dist/cli/commands/tables.d.ts.map +0 -1
  90. package/dist/cli/commands/tables.js +0 -48
  91. package/dist/cli/commands/tables.js.map +0 -1
  92. package/dist/cli/commands/tool.d.ts +0 -18
  93. package/dist/cli/commands/tool.d.ts.map +0 -1
  94. package/dist/cli/commands/tool.js +0 -194
  95. package/dist/cli/commands/tool.js.map +0 -1
  96. package/dist/cli/commands/tools-list.d.ts +0 -20
  97. package/dist/cli/commands/tools-list.d.ts.map +0 -1
  98. package/dist/cli/commands/tools-list.js +0 -209
  99. package/dist/cli/commands/tools-list.js.map +0 -1
  100. package/dist/cli/commands/validate.d.ts +0 -7
  101. package/dist/cli/commands/validate.d.ts.map +0 -1
  102. package/dist/cli/commands/validate.js +0 -77
  103. package/dist/cli/commands/validate.js.map +0 -1
  104. package/dist/cli/config/credentials.d.ts +0 -21
  105. package/dist/cli/config/credentials.d.ts.map +0 -1
  106. package/dist/cli/config/credentials.js +0 -96
  107. package/dist/cli/config/credentials.js.map +0 -1
  108. package/dist/cli/config/index.d.ts +0 -11
  109. package/dist/cli/config/index.d.ts.map +0 -1
  110. package/dist/cli/config/index.js +0 -9
  111. package/dist/cli/config/index.js.map +0 -1
  112. package/dist/cli/config/loader.d.ts +0 -52
  113. package/dist/cli/config/loader.d.ts.map +0 -1
  114. package/dist/cli/config/loader.js +0 -237
  115. package/dist/cli/config/loader.js.map +0 -1
  116. package/dist/cli/config/resolver.d.ts +0 -31
  117. package/dist/cli/config/resolver.d.ts.map +0 -1
  118. package/dist/cli/config/resolver.js +0 -115
  119. package/dist/cli/config/resolver.js.map +0 -1
  120. package/dist/cli/config/schema.d.ts +0 -128
  121. package/dist/cli/config/schema.d.ts.map +0 -1
  122. package/dist/cli/config/schema.js +0 -37
  123. package/dist/cli/config/schema.js.map +0 -1
  124. package/dist/cli/config/types.d.ts +0 -59
  125. package/dist/cli/config/types.d.ts.map +0 -1
  126. package/dist/cli/config/types.js +0 -6
  127. package/dist/cli/config/types.js.map +0 -1
  128. package/dist/cli/formatters/output.d.ts +0 -70
  129. package/dist/cli/formatters/output.d.ts.map +0 -1
  130. package/dist/cli/formatters/output.js +0 -279
  131. package/dist/cli/formatters/output.js.map +0 -1
  132. package/dist/cli/index.d.ts +0 -13
  133. package/dist/cli/index.d.ts.map +0 -1
  134. package/dist/cli/index.js +0 -102
  135. package/dist/cli/index.js.map +0 -1
  136. package/dist/cli/utils/command-helpers.d.ts +0 -47
  137. package/dist/cli/utils/command-helpers.d.ts.map +0 -1
  138. package/dist/cli/utils/command-helpers.js +0 -211
  139. package/dist/cli/utils/command-helpers.js.map +0 -1
  140. package/dist/cli/utils/connection.d.ts +0 -20
  141. package/dist/cli/utils/connection.d.ts.map +0 -1
  142. package/dist/cli/utils/connection.js +0 -37
  143. package/dist/cli/utils/connection.js.map +0 -1
  144. package/dist/cli/utils/exit-codes.d.ts +0 -48
  145. package/dist/cli/utils/exit-codes.d.ts.map +0 -1
  146. package/dist/cli/utils/exit-codes.js +0 -111
  147. package/dist/cli/utils/exit-codes.js.map +0 -1
  148. package/dist/cli/utils/multi-connection.d.ts +0 -26
  149. package/dist/cli/utils/multi-connection.d.ts.map +0 -1
  150. package/dist/cli/utils/multi-connection.js +0 -72
  151. package/dist/cli/utils/multi-connection.js.map +0 -1
  152. package/dist/cli/utils/yaml-loader.d.ts +0 -69
  153. package/dist/cli/utils/yaml-loader.d.ts.map +0 -1
  154. package/dist/cli/utils/yaml-loader.js +0 -135
  155. package/dist/cli/utils/yaml-loader.js.map +0 -1
  156. package/dist/cli/utils/yaml-to-commander.d.ts +0 -26
  157. package/dist/cli/utils/yaml-to-commander.d.ts.map +0 -1
  158. package/dist/cli/utils/yaml-to-commander.js +0 -156
  159. package/dist/cli/utils/yaml-to-commander.js.map +0 -1
@@ -1,128 +0,0 @@
1
- /**
2
- * @fileoverview Zod schemas for validating CLI configuration files.
3
- * @module cli/config/schema
4
- */
5
- import { z } from "zod";
6
- /** Schema for a single system configuration entry. */
7
- export declare const SystemConfigSchema: z.ZodObject<{
8
- description: z.ZodOptional<z.ZodString>;
9
- host: z.ZodString;
10
- port: z.ZodDefault<z.ZodNumber>;
11
- user: z.ZodString;
12
- password: z.ZodOptional<z.ZodString>;
13
- defaultSchema: z.ZodOptional<z.ZodString>;
14
- readOnly: z.ZodDefault<z.ZodBoolean>;
15
- confirm: z.ZodDefault<z.ZodBoolean>;
16
- timeout: z.ZodDefault<z.ZodNumber>;
17
- maxRows: z.ZodDefault<z.ZodNumber>;
18
- ignoreUnauthorized: z.ZodDefault<z.ZodBoolean>;
19
- tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
20
- }, "strip", z.ZodTypeAny, {
21
- host: string;
22
- user: string;
23
- port: number;
24
- readOnly: boolean;
25
- ignoreUnauthorized: boolean;
26
- timeout: number;
27
- confirm: boolean;
28
- maxRows: number;
29
- password?: string | undefined;
30
- description?: string | undefined;
31
- tools?: string[] | undefined;
32
- defaultSchema?: string | undefined;
33
- }, {
34
- host: string;
35
- user: string;
36
- password?: string | undefined;
37
- description?: string | undefined;
38
- port?: number | undefined;
39
- readOnly?: boolean | undefined;
40
- tools?: string[] | undefined;
41
- ignoreUnauthorized?: boolean | undefined;
42
- timeout?: number | undefined;
43
- defaultSchema?: string | undefined;
44
- confirm?: boolean | undefined;
45
- maxRows?: number | undefined;
46
- }>;
47
- /** Schema for the full CLI config file. */
48
- export declare const CliConfigSchema: z.ZodObject<{
49
- default: z.ZodOptional<z.ZodString>;
50
- format: z.ZodOptional<z.ZodEnum<["table", "json", "csv", "markdown"]>>;
51
- systems: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
52
- description: z.ZodOptional<z.ZodString>;
53
- host: z.ZodString;
54
- port: z.ZodDefault<z.ZodNumber>;
55
- user: z.ZodString;
56
- password: z.ZodOptional<z.ZodString>;
57
- defaultSchema: z.ZodOptional<z.ZodString>;
58
- readOnly: z.ZodDefault<z.ZodBoolean>;
59
- confirm: z.ZodDefault<z.ZodBoolean>;
60
- timeout: z.ZodDefault<z.ZodNumber>;
61
- maxRows: z.ZodDefault<z.ZodNumber>;
62
- ignoreUnauthorized: z.ZodDefault<z.ZodBoolean>;
63
- tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
64
- }, "strip", z.ZodTypeAny, {
65
- host: string;
66
- user: string;
67
- port: number;
68
- readOnly: boolean;
69
- ignoreUnauthorized: boolean;
70
- timeout: number;
71
- confirm: boolean;
72
- maxRows: number;
73
- password?: string | undefined;
74
- description?: string | undefined;
75
- tools?: string[] | undefined;
76
- defaultSchema?: string | undefined;
77
- }, {
78
- host: string;
79
- user: string;
80
- password?: string | undefined;
81
- description?: string | undefined;
82
- port?: number | undefined;
83
- readOnly?: boolean | undefined;
84
- tools?: string[] | undefined;
85
- ignoreUnauthorized?: boolean | undefined;
86
- timeout?: number | undefined;
87
- defaultSchema?: string | undefined;
88
- confirm?: boolean | undefined;
89
- maxRows?: number | undefined;
90
- }>>>;
91
- }, "strip", z.ZodTypeAny, {
92
- systems: Record<string, {
93
- host: string;
94
- user: string;
95
- port: number;
96
- readOnly: boolean;
97
- ignoreUnauthorized: boolean;
98
- timeout: number;
99
- confirm: boolean;
100
- maxRows: number;
101
- password?: string | undefined;
102
- description?: string | undefined;
103
- tools?: string[] | undefined;
104
- defaultSchema?: string | undefined;
105
- }>;
106
- default?: string | undefined;
107
- format?: "table" | "json" | "markdown" | "csv" | undefined;
108
- }, {
109
- default?: string | undefined;
110
- format?: "table" | "json" | "markdown" | "csv" | undefined;
111
- systems?: Record<string, {
112
- host: string;
113
- user: string;
114
- password?: string | undefined;
115
- description?: string | undefined;
116
- port?: number | undefined;
117
- readOnly?: boolean | undefined;
118
- tools?: string[] | undefined;
119
- ignoreUnauthorized?: boolean | undefined;
120
- timeout?: number | undefined;
121
- defaultSchema?: string | undefined;
122
- confirm?: boolean | undefined;
123
- maxRows?: number | undefined;
124
- }> | undefined;
125
- }>;
126
- /** Validate that the default system references an existing system. */
127
- export declare function validateConfig(config: z.infer<typeof CliConfigSchema>): string[];
128
- //# sourceMappingURL=schema.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/cli/config/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,sDAAsD;AACtD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa7B,CAAC;AAKH,2CAA2C;AAC3C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI1B,CAAC;AAEH,sEAAsE;AACtE,wBAAgB,cAAc,CAC5B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GACtC,MAAM,EAAE,CAUV"}
@@ -1,37 +0,0 @@
1
- /**
2
- * @fileoverview Zod schemas for validating CLI configuration files.
3
- * @module cli/config/schema
4
- */
5
- import { z } from "zod";
6
- /** Schema for a single system configuration entry. */
7
- export const SystemConfigSchema = z.object({
8
- description: z.string().optional(),
9
- host: z.string().min(1, "host is required"),
10
- port: z.coerce.number().int().positive().default(8076),
11
- user: z.string().min(1, "user is required"),
12
- password: z.string().optional(),
13
- defaultSchema: z.string().optional(),
14
- readOnly: z.boolean().default(false),
15
- confirm: z.boolean().default(false),
16
- timeout: z.coerce.number().int().positive().default(60),
17
- maxRows: z.coerce.number().int().positive().default(5000),
18
- ignoreUnauthorized: z.boolean().default(true),
19
- tools: z.array(z.string()).optional(),
20
- });
21
- /** Valid output format values. */
22
- const OutputFormatEnum = z.enum(["table", "json", "csv", "markdown"]);
23
- /** Schema for the full CLI config file. */
24
- export const CliConfigSchema = z.object({
25
- default: z.string().optional(),
26
- format: OutputFormatEnum.optional(),
27
- systems: z.record(z.string(), SystemConfigSchema).default({}),
28
- });
29
- /** Validate that the default system references an existing system. */
30
- export function validateConfig(config) {
31
- const errors = [];
32
- if (config.default && !config.systems[config.default]) {
33
- errors.push(`Default system "${config.default}" is not defined in systems. Available: ${Object.keys(config.systems).join(", ") || "(none)"}`);
34
- }
35
- return errors;
36
- }
37
- //# sourceMappingURL=schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/cli/config/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,sDAAsD;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACtD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;IAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACzD,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,kCAAkC;AAClC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;AAEtE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC9D,CAAC,CAAC;AAEH,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAC5B,MAAuC;IAEvC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,MAAM,CAAC,IAAI,CACT,mBAAmB,MAAM,CAAC,OAAO,2CAA2C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CACjI,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,59 +0,0 @@
1
- /**
2
- * @fileoverview TypeScript types for the IBM i CLI configuration system.
3
- * @module cli/config/types
4
- */
5
- /** Connection configuration for a single IBM i system. */
6
- export interface SystemConfig {
7
- /** Human-readable description of this system. */
8
- description?: string;
9
- /** Hostname or IP address of the IBM i system. */
10
- host: string;
11
- /** Mapepire WebSocket port. Default: 8076. */
12
- port: number;
13
- /** User profile for authentication. */
14
- user: string;
15
- /** Password (supports ${ENV_VAR} expansion). */
16
- password?: string;
17
- /** Default schema/library for queries. */
18
- defaultSchema?: string;
19
- /** Block mutation queries (INSERT, UPDATE, DELETE, DROP). */
20
- readOnly: boolean;
21
- /** Require interactive confirmation before executing queries. */
22
- confirm: boolean;
23
- /** Query execution timeout in seconds. */
24
- timeout: number;
25
- /** Maximum rows returned per query. */
26
- maxRows: number;
27
- /** Ignore unauthorized SSL certificates. */
28
- ignoreUnauthorized: boolean;
29
- /** Additional YAML tool files for this system. */
30
- tools?: string[];
31
- }
32
- /** Full CLI configuration file structure. */
33
- export interface CliConfig {
34
- /** Name of the default system to use. */
35
- default?: string;
36
- /** Default output format (table, json, csv, markdown). Overrides TTY auto-detection. */
37
- format?: OutputFormat;
38
- /** Named system configurations. */
39
- systems: Record<string, SystemConfig>;
40
- }
41
- /** Resolved system context for a CLI command execution. */
42
- export interface ResolvedSystem {
43
- /** The system name (from config, "env" for legacy env vars). */
44
- name: string;
45
- /** The resolved system configuration. */
46
- config: SystemConfig;
47
- /** How this system was resolved. */
48
- source: "flag" | "env" | "config-default" | "legacy-env";
49
- }
50
- /** Output format options. */
51
- export type OutputFormat = "table" | "json" | "csv" | "markdown";
52
- /** Global CLI options passed to every command. */
53
- export interface GlobalOptions {
54
- system?: string;
55
- format?: OutputFormat;
56
- raw?: boolean;
57
- noColor?: boolean;
58
- }
59
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,QAAQ,EAAE,OAAO,CAAC;IAClB,iEAAiE;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACvC;AAED,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,MAAM,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,gBAAgB,GAAG,YAAY,CAAC;CAC1D;AAED,6BAA6B;AAC7B,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC;AAEjE,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @fileoverview TypeScript types for the IBM i CLI configuration system.
3
- * @module cli/config/types
4
- */
5
- export {};
6
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cli/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,70 +0,0 @@
1
- /**
2
- * @fileoverview Central output controller for the IBM i CLI.
3
- * Handles TTY detection, format routing, and consistent output rendering.
4
- *
5
- * Supports two JSON output modes:
6
- * - **Envelope** (default): `{ok, system, host, command, data, meta}` — full result in one object
7
- * - **NDJSON** (--stream): One JSON object per row, newline-delimited — for piped workflows
8
- *
9
- * @module cli/formatters/output
10
- */
11
- import type { OutputFormat, ResolvedSystem } from "../config/types.js";
12
- import { type ErrorCodeValue } from "../utils/exit-codes.js";
13
- import type { MultiSystemResult } from "../utils/multi-connection.js";
14
- /**
15
- * Set the output file path. When set, all output is buffered and written
16
- * to the file on `finalizeOutput()`.
17
- */
18
- export declare function setOutputFile(filePath: string | undefined): void;
19
- /**
20
- * Finalize file output — write buffered content to file and print confirmation to stderr.
21
- */
22
- export declare function finalizeOutput(): void;
23
- /** Result metadata for output rendering. */
24
- export interface OutputMeta {
25
- /** Number of rows returned. */
26
- rowCount: number;
27
- /** Whether more rows exist beyond the current result. */
28
- hasMore?: boolean;
29
- /** Time taken for the query in milliseconds. */
30
- elapsedMs?: number;
31
- /** The resolved system used for this command. */
32
- system?: ResolvedSystem;
33
- /** The command name (e.g., "schemas", "sql", "tool:system_status"). */
34
- command?: string;
35
- }
36
- /**
37
- * Detect the appropriate output format.
38
- *
39
- * Priority: --raw → --format → config format → TTY auto-detect (table/json).
40
- */
41
- export declare function detectFormat(explicitFormat?: OutputFormat, raw?: boolean, configFormat?: OutputFormat): OutputFormat;
42
- /**
43
- * Render query results to stdout in the specified format.
44
- */
45
- export declare function renderOutput(data: Record<string, unknown>[], format: OutputFormat, meta?: OutputMeta): void;
46
- /**
47
- * Render results as NDJSON (newline-delimited JSON) for streaming.
48
- * Each row is a separate JSON object on its own line.
49
- * Agents and tools like `jq` can process rows incrementally.
50
- */
51
- export declare function renderNdjson(data: Record<string, unknown>[]): void;
52
- /**
53
- * Render an error to stderr. In JSON mode, outputs structured error JSON to stdout
54
- * with an error code for programmatic consumption.
55
- */
56
- export declare function renderError(error: Error, format: OutputFormat, system?: ResolvedSystem, errorCode?: ErrorCodeValue): void;
57
- /**
58
- * Render results from multiple systems.
59
- * Prepends a SYSTEM column to every row so results are distinguishable.
60
- */
61
- export declare function renderMultiSystemOutput(results: MultiSystemResult[], format: OutputFormat): void;
62
- /**
63
- * Render multi-system NDJSON. Each row gets a _system field.
64
- */
65
- export declare function renderMultiSystemNdjson(results: MultiSystemResult[]): void;
66
- /**
67
- * Render a simple message to stdout (e.g., success confirmation).
68
- */
69
- export declare function renderMessage(message: string, format: OutputFormat): void;
70
- //# sourceMappingURL=output.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/cli/formatters/output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAMtE;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAGhE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC;AAWD,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,cAAc,CAAC,EAAE,YAAY,EAC7B,GAAG,CAAC,EAAE,OAAO,EACb,YAAY,CAAC,EAAE,YAAY,GAC1B,YAAY,CAKd;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC/B,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,UAAU,GAChB,IAAI,CAgBN;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAC9B,IAAI,CAIN;AAuFD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,cAAc,EACvB,SAAS,CAAC,EAAE,cAAc,GACzB,IAAI,CAeN;AAMD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,EAAE,EAC5B,MAAM,EAAE,YAAY,GACnB,IAAI,CA+BN;AAyCD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,EAAE,GAC3B,IAAI,CAUN;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,YAAY,GACnB,IAAI,CAMN"}
@@ -1,279 +0,0 @@
1
- /**
2
- * @fileoverview Central output controller for the IBM i CLI.
3
- * Handles TTY detection, format routing, and consistent output rendering.
4
- *
5
- * Supports two JSON output modes:
6
- * - **Envelope** (default): `{ok, system, host, command, data, meta}` — full result in one object
7
- * - **NDJSON** (--stream): One JSON object per row, newline-delimited — for piped workflows
8
- *
9
- * @module cli/formatters/output
10
- */
11
- import { writeFileSync } from "fs";
12
- import { tableFormatter } from "../../utils/formatting/tableFormatter.js";
13
- import { classifyError, } from "../utils/exit-codes.js";
14
- /** Module-level output file path set by --output global option. */
15
- let outputFilePath;
16
- let outputBuffer;
17
- /**
18
- * Set the output file path. When set, all output is buffered and written
19
- * to the file on `finalizeOutput()`.
20
- */
21
- export function setOutputFile(filePath) {
22
- outputFilePath = filePath;
23
- outputBuffer = filePath ? [] : undefined;
24
- }
25
- /**
26
- * Finalize file output — write buffered content to file and print confirmation to stderr.
27
- */
28
- export function finalizeOutput() {
29
- if (outputBuffer && outputFilePath) {
30
- writeFileSync(outputFilePath, outputBuffer.join(""), "utf-8");
31
- process.stderr.write(`Output written to ${outputFilePath}\n`);
32
- outputBuffer = undefined;
33
- outputFilePath = undefined;
34
- }
35
- }
36
- /** Write to the current output destination (file buffer or stdout). */
37
- function writeOutput(data) {
38
- if (outputBuffer) {
39
- outputBuffer.push(data);
40
- }
41
- else {
42
- process.stdout.write(data);
43
- }
44
- }
45
- /**
46
- * Detect the appropriate output format.
47
- *
48
- * Priority: --raw → --format → config format → TTY auto-detect (table/json).
49
- */
50
- export function detectFormat(explicitFormat, raw, configFormat) {
51
- if (raw)
52
- return "json";
53
- if (explicitFormat)
54
- return explicitFormat;
55
- if (configFormat)
56
- return configFormat;
57
- return process.stdout.isTTY ? "table" : "json";
58
- }
59
- /**
60
- * Render query results to stdout in the specified format.
61
- */
62
- export function renderOutput(data, format, meta) {
63
- switch (format) {
64
- case "json":
65
- renderJson(data, meta);
66
- break;
67
- case "csv":
68
- renderCsv(data);
69
- break;
70
- case "markdown":
71
- renderTable(data, "markdown", meta);
72
- break;
73
- case "table":
74
- default:
75
- renderTable(data, "grid", meta);
76
- break;
77
- }
78
- }
79
- /**
80
- * Render results as NDJSON (newline-delimited JSON) for streaming.
81
- * Each row is a separate JSON object on its own line.
82
- * Agents and tools like `jq` can process rows incrementally.
83
- */
84
- export function renderNdjson(data) {
85
- for (const row of data) {
86
- writeOutput(JSON.stringify(row) + "\n");
87
- }
88
- }
89
- /**
90
- * Render as JSON envelope to stdout.
91
- */
92
- function renderJson(data, meta) {
93
- const output = {
94
- ok: true,
95
- ...(meta?.system ? { system: meta.system.name, host: meta.system.config.host } : {}),
96
- ...(meta?.command ? { command: meta.command } : {}),
97
- data,
98
- meta: {
99
- rows: meta?.rowCount ?? data.length,
100
- hasMore: meta?.hasMore ?? false,
101
- ...(meta?.elapsedMs !== undefined ? { elapsed_ms: meta.elapsedMs } : {}),
102
- },
103
- };
104
- writeOutput(JSON.stringify(output, null, 2) + "\n");
105
- }
106
- /**
107
- * Render as CSV to stdout.
108
- */
109
- function renderCsv(data) {
110
- if (data.length === 0)
111
- return;
112
- const headers = Object.keys(data[0]);
113
- // Header row
114
- writeOutput(headers.map(escapeCsvField).join(",") + "\n");
115
- // Data rows
116
- for (const row of data) {
117
- const values = headers.map((h) => {
118
- const val = row[h];
119
- return val === null || val === undefined ? "" : String(val);
120
- });
121
- writeOutput(values.map(escapeCsvField).join(",") + "\n");
122
- }
123
- }
124
- function escapeCsvField(field) {
125
- if (field.includes(",") || field.includes('"') || field.includes("\n")) {
126
- return `"${field.replace(/"/g, '""')}"`;
127
- }
128
- return field;
129
- }
130
- /**
131
- * Render as a formatted table to stdout.
132
- */
133
- function renderTable(data, style, meta) {
134
- if (data.length === 0) {
135
- writeOutput("No results.\n");
136
- return;
137
- }
138
- const table = tableFormatter.format(data, { style, headerStyle: "uppercase" });
139
- writeOutput(table + "\n");
140
- // Footer with metadata
141
- const parts = [];
142
- if (meta?.system) {
143
- parts.push(`[${meta.system.name}] ${meta.system.config.host}`);
144
- }
145
- if (meta?.rowCount !== undefined) {
146
- parts.push(`${meta.rowCount} row${meta.rowCount !== 1 ? "s" : ""}`);
147
- }
148
- if (meta?.hasMore) {
149
- parts.push("(more available — use --limit/--offset)");
150
- }
151
- if (meta?.elapsedMs !== undefined) {
152
- parts.push(`${(meta.elapsedMs / 1000).toFixed(2)}s`);
153
- }
154
- if (parts.length > 0) {
155
- writeOutput(parts.join(" · ") + "\n");
156
- }
157
- }
158
- /**
159
- * Render an error to stderr. In JSON mode, outputs structured error JSON to stdout
160
- * with an error code for programmatic consumption.
161
- */
162
- export function renderError(error, format, system, errorCode) {
163
- if (format === "json") {
164
- const classified = classifyError(error);
165
- const output = {
166
- ok: false,
167
- ...(system ? { system: system.name } : {}),
168
- error: {
169
- code: errorCode ?? classified.errorCode,
170
- message: error.message,
171
- },
172
- };
173
- writeOutput(JSON.stringify(output, null, 2) + "\n");
174
- }
175
- else {
176
- process.stderr.write(`Error: ${error.message}\n`);
177
- }
178
- }
179
- // =============================================================================
180
- // Multi-system output
181
- // =============================================================================
182
- /**
183
- * Render results from multiple systems.
184
- * Prepends a SYSTEM column to every row so results are distinguishable.
185
- */
186
- export function renderMultiSystemOutput(results, format) {
187
- // Merge all rows with SYSTEM column prepended
188
- const merged = [];
189
- for (const r of results) {
190
- if (r.error) {
191
- merged.push({ SYSTEM: r.system, ERROR: r.error });
192
- }
193
- else {
194
- for (const row of r.data) {
195
- merged.push({ SYSTEM: r.system, ...row });
196
- }
197
- }
198
- }
199
- switch (format) {
200
- case "json":
201
- renderMultiSystemJson(results, merged);
202
- break;
203
- case "csv":
204
- renderCsv(merged);
205
- break;
206
- case "markdown":
207
- renderTable(merged, "markdown");
208
- break;
209
- case "table":
210
- default:
211
- renderTable(merged, "grid", {
212
- rowCount: merged.length,
213
- });
214
- renderMultiSystemFooter(results);
215
- break;
216
- }
217
- }
218
- /** JSON envelope for multi-system results. */
219
- function renderMultiSystemJson(results, merged) {
220
- const totalRows = results.reduce((sum, r) => sum + r.rowCount, 0);
221
- const output = {
222
- ok: results.every((r) => !r.error),
223
- data: merged,
224
- systems: results.map((r) => ({
225
- system: r.system,
226
- host: r.host,
227
- rows: r.rowCount,
228
- elapsed_ms: r.elapsedMs,
229
- ...(r.error ? { error: r.error } : {}),
230
- })),
231
- meta: {
232
- total_rows: totalRows,
233
- systems_queried: results.length,
234
- systems_ok: results.filter((r) => !r.error).length,
235
- systems_failed: results.filter((r) => r.error).length,
236
- },
237
- };
238
- writeOutput(JSON.stringify(output, null, 2) + "\n");
239
- }
240
- /** Footer for multi-system table output showing per-system stats. */
241
- function renderMultiSystemFooter(results) {
242
- const parts = [];
243
- for (const r of results) {
244
- if (r.error) {
245
- parts.push(`[${r.system}] ERROR`);
246
- }
247
- else {
248
- parts.push(`[${r.system}] ${r.rowCount} row${r.rowCount !== 1 ? "s" : ""} · ${(r.elapsedMs / 1000).toFixed(2)}s`);
249
- }
250
- }
251
- writeOutput(parts.join(" ") + "\n");
252
- }
253
- /**
254
- * Render multi-system NDJSON. Each row gets a _system field.
255
- */
256
- export function renderMultiSystemNdjson(results) {
257
- for (const r of results) {
258
- if (r.error) {
259
- writeOutput(JSON.stringify({ _system: r.system, _error: r.error }) + "\n");
260
- }
261
- else {
262
- for (const row of r.data) {
263
- writeOutput(JSON.stringify({ _system: r.system, ...row }) + "\n");
264
- }
265
- }
266
- }
267
- }
268
- /**
269
- * Render a simple message to stdout (e.g., success confirmation).
270
- */
271
- export function renderMessage(message, format) {
272
- if (format === "json") {
273
- writeOutput(JSON.stringify({ ok: true, message }) + "\n");
274
- }
275
- else {
276
- writeOutput(message + "\n");
277
- }
278
- }
279
- //# sourceMappingURL=output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/cli/formatters/output.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * @fileoverview Entry point for the IBM i CLI (`ibmi`).
4
- * Provides a human-friendly and agent-friendly command-line interface to IBM i systems,
5
- * reusing the same tool infrastructure as the MCP server.
6
- * @module cli/index
7
- */
8
- import { Command } from "commander";
9
- /**
10
- * Create and configure the CLI program.
11
- */
12
- export declare function createProgram(): Command;
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4CpC;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAqCvC"}