@marktoflow/cli 2.0.0-alpha.7 → 2.0.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.
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Input parsing utilities for CLI commands
3
+ */
4
+ import type { Workflow } from '@marktoflow/core';
5
+ export interface ParseInputsOptions {
6
+ /** Raw input pairs from CLI (e.g., ['key=value', 'key2=value2']) */
7
+ inputPairs?: string[];
8
+ /** Whether to show debug output */
9
+ debug?: boolean;
10
+ }
11
+ /**
12
+ * Parse CLI input pairs into a key-value object
13
+ */
14
+ export declare function parseInputPairs(inputPairs: string[] | undefined): Record<string, unknown>;
15
+ /**
16
+ * Debug log parsed inputs
17
+ */
18
+ export declare function debugLogInputs(inputs: Record<string, unknown>): void;
19
+ export interface ValidateInputsResult {
20
+ /** Whether validation passed */
21
+ valid: boolean;
22
+ /** Final inputs with defaults applied */
23
+ inputs: Record<string, unknown>;
24
+ /** Missing required input names */
25
+ missingInputs: string[];
26
+ }
27
+ /**
28
+ * Validate required inputs and apply defaults
29
+ */
30
+ export declare function validateAndApplyDefaults(workflow: Workflow, inputs: Record<string, unknown>, options?: {
31
+ debug?: boolean;
32
+ }): ValidateInputsResult;
33
+ /**
34
+ * Print missing inputs error and usage info
35
+ */
36
+ export declare function printMissingInputsError(workflow: Workflow, missingInputs: string[], command: string, workflowPath: string): void;
37
+ //# sourceMappingURL=input-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-parser.d.ts","sourceRoot":"","sources":["../../src/utils/input-parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,mCAAmC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CASpE;AAED,MAAM,WAAW,oBAAoB;IACnC,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,mCAAmC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,oBAAoB,CAkCtB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GACnB,IAAI,CAaN"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Input parsing utilities for CLI commands
3
+ */
4
+ import chalk from 'chalk';
5
+ /**
6
+ * Parse CLI input pairs into a key-value object
7
+ */
8
+ export function parseInputPairs(inputPairs) {
9
+ const inputs = {};
10
+ if (inputPairs) {
11
+ for (const pair of inputPairs) {
12
+ const [key, value] = pair.split('=');
13
+ inputs[key] = value;
14
+ }
15
+ }
16
+ return inputs;
17
+ }
18
+ /**
19
+ * Debug log parsed inputs
20
+ */
21
+ export function debugLogInputs(inputs) {
22
+ console.log(chalk.gray('\nšŸ› Debug: Parsed Inputs'));
23
+ if (Object.keys(inputs).length > 0) {
24
+ for (const [key, value] of Object.entries(inputs)) {
25
+ console.log(chalk.gray(` ${key}: ${JSON.stringify(value)}`));
26
+ }
27
+ }
28
+ else {
29
+ console.log(chalk.gray(' No inputs provided'));
30
+ }
31
+ }
32
+ /**
33
+ * Validate required inputs and apply defaults
34
+ */
35
+ export function validateAndApplyDefaults(workflow, inputs, options) {
36
+ const result = {
37
+ valid: true,
38
+ inputs: { ...inputs },
39
+ missingInputs: [],
40
+ };
41
+ if (!workflow.inputs) {
42
+ return result;
43
+ }
44
+ // Check for missing required inputs
45
+ for (const [inputName, inputDef] of Object.entries(workflow.inputs)) {
46
+ if (inputDef.required && inputs[inputName] === undefined && inputDef.default === undefined) {
47
+ result.missingInputs.push(inputName);
48
+ }
49
+ }
50
+ if (result.missingInputs.length > 0) {
51
+ result.valid = false;
52
+ return result;
53
+ }
54
+ // Apply defaults for inputs that weren't provided
55
+ for (const [inputName, inputDef] of Object.entries(workflow.inputs)) {
56
+ if (result.inputs[inputName] === undefined && inputDef.default !== undefined) {
57
+ result.inputs[inputName] = inputDef.default;
58
+ if (options?.debug) {
59
+ console.log(chalk.gray(` Using default for ${inputName}: ${JSON.stringify(inputDef.default)}`));
60
+ }
61
+ }
62
+ }
63
+ return result;
64
+ }
65
+ /**
66
+ * Print missing inputs error and usage info
67
+ */
68
+ export function printMissingInputsError(workflow, missingInputs, command, workflowPath) {
69
+ console.log(chalk.red('\nāŒ Error: Missing required input(s)\n'));
70
+ for (const inputName of missingInputs) {
71
+ const inputDef = workflow.inputs[inputName];
72
+ const description = inputDef.description ? ` - ${inputDef.description}` : '';
73
+ console.log(chalk.red(` • ${inputName} (${inputDef.type})${description}`));
74
+ }
75
+ console.log(chalk.yellow('\nUsage:'));
76
+ console.log(` marktoflow ${command} ${workflowPath} --input key=value\n`);
77
+ console.log(chalk.yellow('Example:'));
78
+ console.log(` marktoflow ${command} ${workflowPath} ${missingInputs.map((i) => `--input ${i}=value`).join(' ')}\n`);
79
+ }
80
+ //# sourceMappingURL=input-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-parser.js","sourceRoot":"","sources":["../../src/utils/input-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@marktoflow/cli",
3
- "version": "2.0.0-alpha.7",
4
- "description": "Universal automation framework with native MCP support",
3
+ "version": "2.0.1",
4
+ "description": "Agent automation framework with native MCP support",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "marktoflow": "dist/index.js"
@@ -10,12 +10,12 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "repository": {
12
12
  "type": "git",
13
- "url": "git+https://github.com/scottgl9/marktoflow.git",
13
+ "url": "git+https://github.com/marktoflow/marktoflow.git",
14
14
  "directory": "packages/cli"
15
15
  },
16
- "homepage": "https://github.com/scottgl9/marktoflow#readme",
16
+ "homepage": "https://github.com/marktoflow/marktoflow#readme",
17
17
  "bugs": {
18
- "url": "https://github.com/scottgl9/marktoflow/issues"
18
+ "url": "https://github.com/marktoflow/marktoflow/issues"
19
19
  },
20
20
  "scripts": {
21
21
  "build": "tsc",
@@ -27,8 +27,9 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@inquirer/prompts": "^8.2.0",
30
- "@marktoflow/core": "2.0.0-alpha.7",
31
- "@marktoflow/integrations": "2.0.0-alpha.7",
30
+ "@marktoflow/core": "2.0.1",
31
+ "@marktoflow/gui": "2.0.1",
32
+ "@marktoflow/integrations": "2.0.1",
32
33
  "chalk": "^5.3.0",
33
34
  "commander": "^12.1.0",
34
35
  "open": "^10.1.0",
@@ -54,5 +55,8 @@
54
55
  "ai-agents"
55
56
  ],
56
57
  "author": "Scott Glover",
57
- "license": "Apache-2.0"
58
+ "license": "Apache-2.0",
59
+ "publishConfig": {
60
+ "registry": "https://registry.npmjs.org/"
61
+ }
58
62
  }