@alcyone-labs/arg-parser 1.2.0 → 2.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 (59) hide show
  1. package/README.md +456 -1301
  2. package/dist/assets/.dxtignore.template +38 -0
  3. package/dist/assets/logo_1_small.jpg +0 -0
  4. package/dist/assets/tsdown.dxt.config.ts +37 -0
  5. package/dist/index.cjs +5871 -3847
  6. package/dist/index.cjs.map +1 -1
  7. package/dist/index.min.mjs +9877 -7956
  8. package/dist/index.min.mjs.map +1 -1
  9. package/dist/index.mjs +5854 -3838
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/src/config/ConfigurationManager.d.ts +74 -0
  12. package/dist/src/config/ConfigurationManager.d.ts.map +1 -0
  13. package/dist/src/config/plugins/ConfigPlugin.d.ts +60 -0
  14. package/dist/src/config/plugins/ConfigPlugin.d.ts.map +1 -0
  15. package/dist/src/config/plugins/ConfigPluginRegistry.d.ts +72 -0
  16. package/dist/src/config/plugins/ConfigPluginRegistry.d.ts.map +1 -0
  17. package/dist/src/config/plugins/TomlConfigPlugin.d.ts +30 -0
  18. package/dist/src/config/plugins/TomlConfigPlugin.d.ts.map +1 -0
  19. package/dist/src/config/plugins/YamlConfigPlugin.d.ts +29 -0
  20. package/dist/src/config/plugins/YamlConfigPlugin.d.ts.map +1 -0
  21. package/dist/src/config/plugins/index.d.ts +5 -0
  22. package/dist/src/config/plugins/index.d.ts.map +1 -0
  23. package/dist/src/core/ArgParser.d.ts +332 -0
  24. package/dist/src/core/ArgParser.d.ts.map +1 -0
  25. package/dist/src/{ArgParserBase.d.ts → core/ArgParserBase.d.ts} +84 -3
  26. package/dist/src/core/ArgParserBase.d.ts.map +1 -0
  27. package/dist/src/core/FlagManager.d.ts.map +1 -0
  28. package/dist/src/{types.d.ts → core/types.d.ts} +29 -0
  29. package/dist/src/core/types.d.ts.map +1 -0
  30. package/dist/src/dxt/DxtGenerator.d.ts +115 -0
  31. package/dist/src/dxt/DxtGenerator.d.ts.map +1 -0
  32. package/dist/src/index.d.ts +10 -6
  33. package/dist/src/index.d.ts.map +1 -1
  34. package/dist/src/mcp/ArgParserMcp.d.ts +21 -0
  35. package/dist/src/mcp/ArgParserMcp.d.ts.map +1 -0
  36. package/dist/src/mcp/mcp-integration.d.ts +83 -0
  37. package/dist/src/mcp/mcp-integration.d.ts.map +1 -0
  38. package/dist/src/mcp/mcp-notifications.d.ts +138 -0
  39. package/dist/src/mcp/mcp-notifications.d.ts.map +1 -0
  40. package/dist/src/mcp/mcp-prompts.d.ts +132 -0
  41. package/dist/src/mcp/mcp-prompts.d.ts.map +1 -0
  42. package/dist/src/mcp/mcp-resources.d.ts +133 -0
  43. package/dist/src/mcp/mcp-resources.d.ts.map +1 -0
  44. package/dist/src/testing/fuzzy-test-cli.d.ts +5 -0
  45. package/dist/src/testing/fuzzy-test-cli.d.ts.map +1 -0
  46. package/dist/src/{fuzzy-tester.d.ts → testing/fuzzy-tester.d.ts} +1 -1
  47. package/dist/src/testing/fuzzy-tester.d.ts.map +1 -0
  48. package/package.json +31 -17
  49. package/dist/src/ArgParser.d.ts +0 -148
  50. package/dist/src/ArgParser.d.ts.map +0 -1
  51. package/dist/src/ArgParserBase.d.ts.map +0 -1
  52. package/dist/src/FlagManager.d.ts.map +0 -1
  53. package/dist/src/fuzzy-test-cli.d.ts +0 -5
  54. package/dist/src/fuzzy-test-cli.d.ts.map +0 -1
  55. package/dist/src/fuzzy-tester.d.ts.map +0 -1
  56. package/dist/src/mcp-integration.d.ts +0 -31
  57. package/dist/src/mcp-integration.d.ts.map +0 -1
  58. package/dist/src/types.d.ts.map +0 -1
  59. /package/dist/src/{FlagManager.d.ts → core/FlagManager.d.ts} +0 -0
@@ -0,0 +1,132 @@
1
+ /**
2
+ * MCP Prompts Management
3
+ *
4
+ * This module provides functionality for managing MCP prompts - server-side prompt templates
5
+ * that clients can discover and execute with custom parameters for dynamic text generation.
6
+ */
7
+ import { ZodTypeAny } from "zod";
8
+ /**
9
+ * Prompt message content types
10
+ */
11
+ export interface McpPromptTextContent {
12
+ type: "text";
13
+ text: string;
14
+ }
15
+ export interface McpPromptImageContent {
16
+ type: "image";
17
+ data: string;
18
+ mimeType: string;
19
+ }
20
+ export type McpPromptContent = McpPromptTextContent | McpPromptImageContent;
21
+ /**
22
+ * Prompt message structure
23
+ */
24
+ export interface McpPromptMessage {
25
+ role: "user" | "assistant" | "system";
26
+ content: McpPromptContent;
27
+ }
28
+ /**
29
+ * Prompt response structure
30
+ */
31
+ export interface McpPromptResponse {
32
+ description?: string;
33
+ messages: McpPromptMessage[];
34
+ }
35
+ /**
36
+ * Prompt handler function type
37
+ */
38
+ export type McpPromptHandler = (args: any) => McpPromptResponse | Promise<McpPromptResponse>;
39
+ /**
40
+ * Prompt configuration for registration
41
+ */
42
+ export interface McpPromptConfig {
43
+ name: string;
44
+ title?: string;
45
+ description?: string;
46
+ argsSchema: ZodTypeAny;
47
+ handler: McpPromptHandler;
48
+ }
49
+ /**
50
+ * Internal prompt storage structure
51
+ */
52
+ export interface McpPromptEntry {
53
+ config: McpPromptConfig;
54
+ registeredAt: Date;
55
+ }
56
+ /**
57
+ * MCP Prompts Manager
58
+ *
59
+ * Manages registration, storage, and execution of MCP prompts
60
+ */
61
+ export declare class McpPromptsManager {
62
+ private prompts;
63
+ private changeListeners;
64
+ /**
65
+ * Register a new prompt
66
+ */
67
+ addPrompt(config: McpPromptConfig): void;
68
+ /**
69
+ * Remove a prompt by name
70
+ */
71
+ removePrompt(name: string): boolean;
72
+ /**
73
+ * Get all registered prompts
74
+ */
75
+ getPrompts(): McpPromptConfig[];
76
+ /**
77
+ * Get a specific prompt by name
78
+ */
79
+ getPrompt(name: string): McpPromptConfig | undefined;
80
+ /**
81
+ * Check if a prompt exists
82
+ */
83
+ hasPrompt(name: string): boolean;
84
+ /**
85
+ * Execute a prompt with given arguments
86
+ */
87
+ executePrompt(name: string, args: any): Promise<McpPromptResponse>;
88
+ /**
89
+ * Add change listener
90
+ */
91
+ onPromptsChange(listener: () => void): void;
92
+ /**
93
+ * Remove change listener
94
+ */
95
+ offPromptsChange(listener: () => void): void;
96
+ /**
97
+ * Clear all prompts
98
+ */
99
+ clear(): void;
100
+ /**
101
+ * Get prompt count
102
+ */
103
+ count(): number;
104
+ /**
105
+ * Validate prompt configuration
106
+ */
107
+ private validatePromptConfig;
108
+ /**
109
+ * Notify all listeners of changes
110
+ */
111
+ private notifyChange;
112
+ }
113
+ /**
114
+ * Helper function to create common prompt configurations
115
+ */
116
+ /**
117
+ * Create a code review prompt
118
+ */
119
+ export declare const createCodeReviewPrompt: () => McpPromptConfig;
120
+ /**
121
+ * Create a text summarization prompt
122
+ */
123
+ export declare const createSummarizationPrompt: () => McpPromptConfig;
124
+ /**
125
+ * Create a translation prompt
126
+ */
127
+ export declare const createTranslationPrompt: () => McpPromptConfig;
128
+ /**
129
+ * Create a documentation prompt
130
+ */
131
+ export declare const createDocumentationPrompt: () => McpPromptConfig;
132
+ //# sourceMappingURL=mcp-prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-prompts.d.ts","sourceRoot":"","sources":["../../../src/mcp/mcp-prompts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAK,UAAU,EAAE,MAAM,KAAK,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,qBAAqB,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,EAAE,IAAI,CAAC;CACpB;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAcxC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQnC;;OAEG;IACH,UAAU,IAAI,eAAe,EAAE;IAI/B;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIpD;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkBxE;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI3C;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI5C;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;OAEG;IACH,OAAO,CAAC,YAAY;CASrB;AAED;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAAO,eAmBxC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,eA6B3C,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB,QAAO,eAyBzC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,eAyB3C,CAAC"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * MCP Resources Management
3
+ *
4
+ * This module provides functionality for managing MCP resources - server-side data sources
5
+ * that clients can access using URI templates. Resources are similar to GET endpoints
6
+ * in a REST API and should provide data without significant computation or side effects.
7
+ */
8
+ /**
9
+ * Resource response content item
10
+ */
11
+ export interface McpResourceContent {
12
+ uri: string;
13
+ text?: string;
14
+ blob?: Uint8Array;
15
+ mimeType?: string;
16
+ }
17
+ /**
18
+ * Resource response structure
19
+ */
20
+ export interface McpResourceResponse {
21
+ contents: McpResourceContent[];
22
+ }
23
+ /**
24
+ * Resource handler function type
25
+ */
26
+ export type McpResourceHandler = (uri: URL, params: Record<string, string>) => Promise<McpResourceResponse>;
27
+ /**
28
+ * Resource configuration for registration
29
+ */
30
+ export interface McpResourceConfig {
31
+ name: string;
32
+ uriTemplate: string;
33
+ title?: string;
34
+ description?: string;
35
+ mimeType?: string;
36
+ handler: McpResourceHandler;
37
+ }
38
+ /**
39
+ * Internal resource storage structure
40
+ */
41
+ export interface McpResourceEntry {
42
+ config: McpResourceConfig;
43
+ registeredAt: Date;
44
+ }
45
+ /**
46
+ * Resource template parser for URI patterns like "users://{userId}/profile"
47
+ */
48
+ export declare class ResourceTemplateParser {
49
+ private pattern;
50
+ private paramNames;
51
+ constructor(template: string);
52
+ /**
53
+ * Parse a URI against this template and extract parameters
54
+ */
55
+ parse(uri: string): Record<string, string> | null;
56
+ /**
57
+ * Check if a URI matches this template
58
+ */
59
+ matches(uri: string): boolean;
60
+ /**
61
+ * Get the parameter names for this template
62
+ */
63
+ getParameterNames(): string[];
64
+ }
65
+ /**
66
+ * MCP Resources Manager
67
+ *
68
+ * Manages registration, storage, and retrieval of MCP resources
69
+ */
70
+ export declare class McpResourcesManager {
71
+ private resources;
72
+ private changeListeners;
73
+ /**
74
+ * Register a new resource
75
+ */
76
+ addResource(config: McpResourceConfig): void;
77
+ /**
78
+ * Remove a resource by name
79
+ */
80
+ removeResource(name: string): boolean;
81
+ /**
82
+ * Get all registered resources
83
+ */
84
+ getResources(): McpResourceConfig[];
85
+ /**
86
+ * Get a specific resource by name
87
+ */
88
+ getResource(name: string): McpResourceConfig | undefined;
89
+ /**
90
+ * Check if a resource exists
91
+ */
92
+ hasResource(name: string): boolean;
93
+ /**
94
+ * Find resource that matches a URI
95
+ */
96
+ findResourceForUri(uri: string): {
97
+ config: McpResourceConfig;
98
+ params: Record<string, string>;
99
+ } | null;
100
+ /**
101
+ * Add change listener
102
+ */
103
+ onResourcesChange(listener: () => void): void;
104
+ /**
105
+ * Remove change listener
106
+ */
107
+ offResourcesChange(listener: () => void): void;
108
+ /**
109
+ * Clear all resources
110
+ */
111
+ clear(): void;
112
+ /**
113
+ * Get resource count
114
+ */
115
+ count(): number;
116
+ /**
117
+ * Validate resource configuration
118
+ */
119
+ private validateResourceConfig;
120
+ /**
121
+ * Notify all listeners of changes
122
+ */
123
+ private notifyChange;
124
+ }
125
+ /**
126
+ * Helper function to create common resource configurations
127
+ */
128
+ export declare const createFileResource: (basePath?: string) => McpResourceConfig;
129
+ /**
130
+ * Helper function to create JSON data resource
131
+ */
132
+ export declare const createJsonResource: (name: string, data: any) => McpResourceConfig;
133
+ //# sourceMappingURL=mcp-resources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-resources.d.ts","sourceRoot":"","sources":["../../../src/mcp/mcp-resources.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC3B,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAW;gBAEjB,QAAQ,EAAE,MAAM;IAU5B;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAWjD;;OAEG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI7B;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;CAG9B;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,SAAS,CAAuC;IACxD,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAc5C;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQrC;;OAEG;IACH,YAAY,IAAI,iBAAiB,EAAE;IAInC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIxD;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,IAAI;IAWrG;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI7C;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI9C;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B;;OAEG;IACH,OAAO,CAAC,YAAY;CASrB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,WAAU,MAAW,KAAG,iBAuBzD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,MAAM,GAAG,KAAG,iBAa3D,CAAC"}
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { ArgParser } from "../core/ArgParser";
3
+ declare const fuzzyTestCli: ArgParser<void>;
4
+ export { fuzzyTestCli };
5
+ //# sourceMappingURL=fuzzy-test-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzy-test-cli.d.ts","sourceRoot":"","sources":["../../../src/testing/fuzzy-test-cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAgB9C,QAAA,MAAM,YAAY,iBAmEhB,CAAC;AAkPH,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ArgParserBase } from "./ArgParserBase";
1
+ import type { ArgParserBase } from "../core/ArgParserBase";
2
2
  export interface FuzzyTestOptions {
3
3
  /** Maximum depth for command path exploration */
4
4
  maxDepth?: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzy-tester.d.ts","sourceRoot":"","sources":["../../../src/testing/fuzzy-tester.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,yDAAyD;IACzD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC;IACzB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACpC,CAAC;CACH;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAA6B;gBAEhC,MAAM,EAAE,aAAa,EAAE,OAAO,GAAE,gBAAqB;IAWjE;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,eAAe,CAAC;IAiB9C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmB/B;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;OAEG;YACW,eAAe;IAsC7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAqDrC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAerC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsC/B;;OAEG;YACW,WAAW;IA0CzB;;OAEG;IACH,OAAO,CAAC,cAAc;CAuCvB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@alcyone-labs/arg-parser",
3
- "version": "1.2.0",
4
- "description": "A robust, type-safe command line argument parser with automatic type inference, validation, help generation and complex sub-command support, now with built-in MCP, DXT and fuzzy testing support.",
3
+ "version": "2.0.0",
4
+ "description": "A robust, type-safe command line argument parser with plugin architecture, dependency injection, Claude Desktop compliant MCP integration, autonomous DXT builds, and zero-dependency core functionality.",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
7
7
  "module": "dist/index.mjs",
@@ -26,6 +26,7 @@
26
26
  "dist/index.min.mjs.map",
27
27
  "dist/src/**/*.d.ts",
28
28
  "dist/src/**/*.d.ts.map",
29
+ "dist/assets/**/*",
29
30
  "README.md",
30
31
  "LICENSE"
31
32
  ],
@@ -44,29 +45,32 @@
44
45
  ],
45
46
  "author": "Nicolas Embleton <nicolas.embleton@gmail.com>",
46
47
  "license": "MIT",
48
+ "engines": {
49
+ "node": ">=18.0.0"
50
+ },
47
51
  "dependencies": {
48
- "@iarna/toml": "^2.2.5",
49
- "adm-zip": "^0.5.16",
50
- "chalk": "^5.4.1",
51
- "dotenv": "^16.5.0",
52
- "js-yaml": "^4.1.0",
52
+ "@alcyone-labs/simple-chalk": "^1.0.1",
53
+ "@alcyone-labs/simple-mcp-logger": "^1.0.1",
53
54
  "magic-regexp": "^0.10.0",
54
- "node-fetch": "^3.3.2",
55
- "zod": "^3.25.67"
55
+ "zod": "^3.25.76"
56
56
  },
57
57
  "optionalDependencies": {
58
- "@modelcontextprotocol/sdk": "^1.13.1",
59
- "express": "^5.1.0"
58
+ "@modelcontextprotocol/sdk": "^1.15.1",
59
+ "express": "^5.1.0",
60
+ "smol-toml": "^1.4.1",
61
+ "dotenv": "^16.6.1",
62
+ "js-yaml": "^4.1.0",
63
+ "tsdown": "^0.12.9"
60
64
  },
61
65
  "devDependencies": {
62
- "@ianvs/prettier-plugin-sort-imports": "^4.4.2",
66
+ "@ianvs/prettier-plugin-sort-imports": "^4.5.1",
63
67
  "@types/adm-zip": "^0.5.7",
64
68
  "@types/express": "^5.0.3",
65
69
  "@types/js-yaml": "^4.0.9",
66
- "@types/node": "^22.15.33",
70
+ "@types/node": "^22.16.3",
67
71
  "cross-env": "^7.0.3",
68
72
  "madge": "^8.0.0",
69
- "prettier": "^3.6.1",
73
+ "prettier": "^3.6.2",
70
74
  "ts-node": "^10.9.2",
71
75
  "typescript": "^5.8.3",
72
76
  "vite": "^6.3.5",
@@ -79,7 +83,8 @@
79
83
  "build:cjs": "cross-env VITE_BUILD_FORMAT=cjs vite build",
80
84
  "build:esm": "cross-env VITE_BUILD_FORMAT=es VITE_MINIFY_BUILD=false vite build",
81
85
  "build:min": "cross-env VITE_BUILD_FORMAT=es VITE_MINIFY_BUILD=true vite build",
82
- "build": "pnpm clean && pnpm run build:types && pnpm run build:cjs && pnpm run build:esm && pnpm run build:min",
86
+ "build": "pnpm clean && pnpm run build:types && pnpm run build:cjs && pnpm run build:esm && pnpm run build:min && pnpm run build:assets",
87
+ "build:assets": "mkdir -p dist/assets && cp docs/MCP/icons/logo_1_small.jpg dist/assets/ && cp tsdown.dxt.config.ts dist/assets/ && cp .dxtignore.template dist/assets/",
83
88
  "build:watch": "tsc --watch",
84
89
  "build:examples": "tsc --project tsconfig.examples.json",
85
90
  "test:watch": "vitest",
@@ -88,13 +93,22 @@
88
93
  "test:mcp": "bun tests/mcp/integration/run-integration-tests.ts",
89
94
  "test:mcp:verbose": "bun tests/mcp/integration/run-integration-tests.ts --verbose",
90
95
  "test:mcp:e2e": "bun tests/mcp/integration/run-integration-tests.ts --suite end-to-end",
91
- "test:mcp:compliance": "bun tests/mcp/integration/run-integration-tests.ts --suite protocol-compliance",
96
+ "test:mcp:protocol": "bun tests/mcp/integration/run-integration-tests.ts --suite protocol-compliance",
92
97
  "test:mcp:performance": "bun tests/mcp/integration/run-integration-tests.ts --suite performance",
93
98
  "test:mcp:canny": "bun tests/mcp/integration/run-integration-tests.ts --suite canny-cli",
99
+ "test:mcp:compliance": "vitest run tests/mcp/compliance/",
100
+ "test:mcp:dxt": "vitest run tests/mcp/compliance/dxt-compliance.test.ts",
94
101
  "format": "prettier . --write",
95
102
  "check:cir-dep": "madge ./ -c --ts-config tsconfig.dev.json",
96
103
  "check:types": "tsc --project ./tsconfig.dev.json --noEmit",
97
104
  "build:checks": "pnpm check:cir-dep && pnpm check:types",
98
- "test:built": "node test-built-library.mjs"
105
+ "test:built": "node test-built-library.mjs",
106
+ "tsdown:dxt": "tsdown -c tsdown.dxt.config.ts",
107
+ "dxt:validate": "npx @anthropic-ai/dxt validate",
108
+ "dxt:info": "npx @anthropic-ai/dxt info",
109
+ "dxt:sign": "npx @anthropic-ai/dxt sign --self-signed",
110
+ "dxt:pack": "npx @anthropic-ai/dxt pack",
111
+ "dxt:unpack": "npx @anthropic-ai/dxt unpack",
112
+ "dxt:verify": "npx @anthropic-ai/dxt verify"
99
113
  }
100
114
  }
@@ -1,148 +0,0 @@
1
- import { ArgParserBase } from "./ArgParserBase";
2
- import type { GenerateMcpToolsOptions, IMcpToolStructure } from "./mcp-integration";
3
- /**
4
- * Configuration for a single MCP transport
5
- */
6
- export type McpTransportConfig = {
7
- type: "stdio" | "sse" | "streamable-http";
8
- port?: number;
9
- host?: string;
10
- path?: string;
11
- sessionIdGenerator?: () => string;
12
- };
13
- /**
14
- * Configuration options for MCP sub-command
15
- */
16
- export type McpSubCommandOptions = {
17
- /** Preset transport configurations to use when no CLI flags are provided */
18
- defaultTransports?: McpTransportConfig[];
19
- /** Single preset transport configuration (alternative to defaultTransports) */
20
- defaultTransport?: McpTransportConfig;
21
- };
22
- /**
23
- * ArgParser with Model Context Protocol (MCP) integration capabilities.
24
- *
25
- * This class adds MCP server functionality on top of the standard ArgParser,
26
- * allowing CLI tools to be easily exposed as MCP tools with minimal boilerplate.
27
- *
28
- * @example
29
- * ```typescript
30
- * const parser = new ArgParser({
31
- * appName: "My CLI",
32
- * appCommandName: "my-cli",
33
- * handler: async (ctx) => ({ result: "success" })
34
- * })
35
- * .addFlags([...])
36
- * .addMcpSubCommand("serve", {
37
- * name: "my-cli-mcp-server",
38
- * version: "1.0.0"
39
- * });
40
- * ```
41
- */
42
- export declare class ArgParser<THandlerReturn = any> extends ArgParserBase<THandlerReturn> {
43
- #private;
44
- /**
45
- * Generate MCP tools from this ArgParser instance
46
- * @param options Optional configuration for MCP tool generation
47
- * @returns Array of MCP tool structures ready for server registration
48
- */
49
- toMcpTools(options?: GenerateMcpToolsOptions): IMcpToolStructure[];
50
- /**
51
- * Create an MCP server with tools generated from this ArgParser
52
- * @param serverInfo Server configuration
53
- * @param toolOptions Optional MCP tool generation options
54
- * @returns Configured MCP server instance
55
- */
56
- createMcpServer(serverInfo: {
57
- name: string;
58
- version: string;
59
- description?: string;
60
- }, toolOptions?: GenerateMcpToolsOptions): Promise<any>;
61
- /**
62
- * Start an MCP server using stdio transport
63
- * @param serverInfo Server configuration
64
- * @param toolOptions Optional MCP tool generation options
65
- * @returns Promise that resolves when server is connected
66
- */
67
- startMcpServer(serverInfo: {
68
- name: string;
69
- version: string;
70
- description?: string;
71
- }, toolOptions?: GenerateMcpToolsOptions): Promise<void>;
72
- /**
73
- * Start an MCP server with multiple transport types simultaneously
74
- * @param serverInfo Server configuration
75
- * @param transports Array of transport configurations
76
- * @param toolOptions Optional MCP tool generation options
77
- * @returns Promise that resolves when all servers are started
78
- */
79
- startMcpServerWithMultipleTransports(serverInfo: {
80
- name: string;
81
- version: string;
82
- description?: string;
83
- }, transports: Array<{
84
- type: "stdio" | "sse" | "streamable-http";
85
- port?: number;
86
- host?: string;
87
- path?: string;
88
- sessionIdGenerator?: () => string;
89
- }>, toolOptions?: GenerateMcpToolsOptions): Promise<void>;
90
- /**
91
- * Start an MCP server with a specific transport type
92
- * @param serverInfo Server configuration
93
- * @param transportType Type of transport to use
94
- * @param transportOptions Transport-specific options
95
- * @param toolOptions Optional MCP tool generation options
96
- * @returns Promise that resolves when server is connected
97
- */
98
- startMcpServerWithTransport(serverInfo: {
99
- name: string;
100
- version: string;
101
- description?: string;
102
- }, transportType: "stdio" | "sse" | "streamable-http", transportOptions?: {
103
- port?: number;
104
- host?: string;
105
- path?: string;
106
- sessionIdGenerator?: () => string;
107
- }, toolOptions?: GenerateMcpToolsOptions): Promise<void>;
108
- parse(processArgs: string[], options?: any): any;
109
- /**
110
- * Async version of parse for when async handlers are detected
111
- */
112
- parseAsync(processArgs: string[], options?: any): Promise<any>;
113
- /**
114
- * Add an MCP sub-command that starts an MCP server exposing this parser's functionality
115
- * @param subCommandName Name of the sub-command (default: "mcp-server")
116
- * @param serverInfo Server configuration
117
- * @param options Optional configuration including preset transports and tool options
118
- * @returns This ArgParserWithMcp instance for chaining
119
- */
120
- addMcpSubCommand(subCommandName: string | undefined, serverInfo: {
121
- name: string;
122
- version: string;
123
- description?: string;
124
- }, options?: McpSubCommandOptions & {
125
- toolOptions?: GenerateMcpToolsOptions;
126
- }): this;
127
- /**
128
- * Add an MCP sub-command that starts an MCP server exposing this parser's functionality
129
- * @param subCommandName Name of the sub-command (default: "mcp-server")
130
- * @param serverInfo Server configuration
131
- * @param toolOptions Optional MCP tool generation options (backward compatibility)
132
- * @returns This ArgParserWithMcp instance for chaining
133
- * @deprecated Use the options parameter instead for better configurability
134
- */
135
- addMcpSubCommand(subCommandName: string | undefined, serverInfo: {
136
- name: string;
137
- version: string;
138
- description?: string;
139
- }, toolOptions?: GenerateMcpToolsOptions): this;
140
- /**
141
- * Factory method to create an ArgParser instance with MCP capabilities
142
- * This provides a clean API for users who want MCP functionality from the start
143
- * Automatically sets handleErrors: false for MCP compatibility
144
- */
145
- static withMcp<T = any>(options?: ConstructorParameters<typeof ArgParserBase>[0], initialFlags?: ConstructorParameters<typeof ArgParserBase>[1]): ArgParser<T>;
146
- static fromArgParser<T = any>(parser: ArgParserBase<T>): ArgParser<T>;
147
- }
148
- //# sourceMappingURL=ArgParser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArgParser.d.ts","sourceRoot":"","sources":["../../src/ArgParser.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArgParserBase.d.ts","sourceRoot":"","sources":["../../src/ArgParserBase.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlagManager.d.ts","sourceRoot":"","sources":["../../src/FlagManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEpD,qBAAa,WAAW;;gBAKpB,OAAO,GAAE;QAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;KAAO,EAClD,YAAY,GAAE,SAAS,KAAK,EAAO;IAMrC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,GAAG,aAAa;IAwC5C,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAoB1B,+BAA+B,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAQnE,QAAQ,CAAC,KAAK,EAAE,SAAS,KAAK,EAAE,GAAG,IAAI;IAOvC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIhD,IAAI,KAAK,IAAI,aAAa,EAAE,CAE3B;IAED,IAAI,SAAS,IAAI,MAAM,EAAE,CAExB;CACF"}
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env node
2
- import { ArgParser } from "./ArgParser";
3
- declare const fuzzyTestCli: ArgParser<void>;
4
- export { fuzzyTestCli };
5
- //# sourceMappingURL=fuzzy-test-cli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fuzzy-test-cli.d.ts","sourceRoot":"","sources":["../../src/fuzzy-test-cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAgBxC,QAAA,MAAM,YAAY,iBAmEhB,CAAC;AAkPH,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fuzzy-tester.d.ts","sourceRoot":"","sources":["../../src/fuzzy-tester.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,yDAAyD;IACzD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC;IACzB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACpC,CAAC;CACH;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAA6B;gBAEhC,MAAM,EAAE,aAAa,EAAE,OAAO,GAAE,gBAAqB;IAWjE;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,eAAe,CAAC;IAiB9C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmB/B;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;OAEG;YACW,eAAe;IAsC7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAqDrC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAerC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsC/B;;OAEG;YACW,WAAW;IA0CzB;;OAEG;IACH,OAAO,CAAC,cAAc;CAuCvB"}
@@ -1,31 +0,0 @@
1
- import type { ZodTypeAny } from "zod";
2
- import { ArgParserBase } from "./ArgParserBase";
3
- import type { ProcessedFlag, TParsedArgs } from "./";
4
- export interface IMcpToolStructure {
5
- name: string;
6
- description?: string;
7
- inputSchema: ZodTypeAny;
8
- outputSchema?: ZodTypeAny;
9
- execute: (args: any) => Promise<any>;
10
- }
11
- export interface GenerateMcpToolsOptions {
12
- outputSchemaMap?: Record<string, ZodTypeAny>;
13
- defaultOutputSchema?: ZodTypeAny;
14
- generateToolName?: (commandPath: string[], appName?: string) => string;
15
- includeSubCommands?: boolean;
16
- toolNamePrefix?: string;
17
- toolNameSuffix?: string;
18
- }
19
- interface ISpecialParseResultProps {
20
- $commandChain?: string[];
21
- $error?: {
22
- type: string;
23
- message: string;
24
- details?: any;
25
- };
26
- handlerResponse?: any;
27
- }
28
- export type IParseExecutionResult = TParsedArgs<ProcessedFlag[]> & ISpecialParseResultProps;
29
- export declare function generateMcpToolsFromArgParser(rootParser: ArgParserBase, options?: GenerateMcpToolsOptions): IMcpToolStructure[];
30
- export {};
31
- //# sourceMappingURL=mcp-integration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-integration.d.ts","sourceRoot":"","sources":["../../src/mcp-integration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,UAAU,EAAE,MAAM,KAAK,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAA0B,aAAa,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAK7E,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACtC;AAqID,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7C,mBAAmB,CAAC,EAAE,UAAU,CAAC;IACjC,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACvE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,wBAAwB;IAChC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC1D,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB;AACD,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC,GAC9D,wBAAwB,CAAC;AAE3B,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,aAAa,EACzB,OAAO,CAAC,EAAE,uBAAuB,GAChC,iBAAiB,EAAE,CAmerB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}