@auto-engineer/cli 0.13.3 → 0.14.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.
- package/CHANGELOG.md +5 -872
- package/dist/bin/auto.js +4 -4
- package/dist/bin/auto.js.map +1 -1
- package/dist/src/config-loader.d.ts +12 -0
- package/dist/src/config-loader.d.ts.map +1 -0
- package/dist/src/config-loader.js +24 -0
- package/dist/src/config-loader.js.map +1 -0
- package/dist/src/file-syncer/crypto/jwe-encryptor.d.ts.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/crypto/jwe-encryptor.js +1 -1
- package/dist/src/file-syncer/crypto/jwe-encryptor.js.map +1 -0
- package/dist/src/file-syncer/crypto/provider-resolver.d.ts.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/crypto/provider-resolver.js +2 -2
- package/dist/src/file-syncer/crypto/provider-resolver.js.map +1 -0
- package/dist/src/file-syncer/discovery/bareImports.d.ts +3 -0
- package/dist/src/file-syncer/discovery/bareImports.d.ts.map +1 -0
- package/dist/src/file-syncer/discovery/bareImports.js.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/discovery/dts.d.ts +1 -1
- package/dist/src/file-syncer/discovery/dts.d.ts.map +1 -0
- package/dist/src/file-syncer/discovery/dts.js.map +1 -0
- package/dist/src/file-syncer/index.d.ts.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/index.js +6 -6
- package/dist/src/file-syncer/index.js.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/sync/resolveSyncFileSet.d.ts +1 -1
- package/dist/src/file-syncer/sync/resolveSyncFileSet.d.ts.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/sync/resolveSyncFileSet.js +2 -2
- package/dist/src/file-syncer/sync/resolveSyncFileSet.js.map +1 -0
- package/dist/src/file-syncer/types/wire.d.ts.map +1 -0
- package/dist/src/file-syncer/types/wire.js.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/utils/hash.d.ts +1 -1
- package/dist/src/file-syncer/utils/hash.d.ts.map +1 -0
- package/dist/src/file-syncer/utils/hash.js.map +1 -0
- package/dist/src/file-syncer/utils/path.d.ts.map +1 -0
- package/dist/src/{server/file-syncer → file-syncer}/utils/path.js +2 -2
- package/dist/src/file-syncer/utils/path.js.map +1 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +294 -416
- package/dist/src/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -50
- package/README.md +0 -283
- package/dist/src/dsl/index.d.ts +0 -71
- package/dist/src/dsl/index.d.ts.map +0 -1
- package/dist/src/dsl/index.js +0 -504
- package/dist/src/dsl/index.js.map +0 -1
- package/dist/src/dsl/types.d.ts +0 -39
- package/dist/src/dsl/types.d.ts.map +0 -1
- package/dist/src/dsl/types.js +0 -2
- package/dist/src/dsl/types.js.map +0 -1
- package/dist/src/dsl-exports.d.ts +0 -5
- package/dist/src/dsl-exports.d.ts.map +0 -1
- package/dist/src/dsl-exports.js +0 -4
- package/dist/src/dsl-exports.js.map +0 -1
- package/dist/src/plugin-loader.d.ts +0 -84
- package/dist/src/plugin-loader.d.ts.map +0 -1
- package/dist/src/plugin-loader.js +0 -801
- package/dist/src/plugin-loader.js.map +0 -1
- package/dist/src/server/command-metadata-service.d.ts +0 -27
- package/dist/src/server/command-metadata-service.d.ts.map +0 -1
- package/dist/src/server/command-metadata-service.js +0 -69
- package/dist/src/server/command-metadata-service.js.map +0 -1
- package/dist/src/server/command-registry.d.ts +0 -21
- package/dist/src/server/command-registry.d.ts.map +0 -1
- package/dist/src/server/command-registry.js +0 -58
- package/dist/src/server/command-registry.js.map +0 -1
- package/dist/src/server/config-loader.d.ts +0 -16
- package/dist/src/server/config-loader.d.ts.map +0 -1
- package/dist/src/server/config-loader.js +0 -106
- package/dist/src/server/config-loader.js.map +0 -1
- package/dist/src/server/event-processor.d.ts +0 -45
- package/dist/src/server/event-processor.d.ts.map +0 -1
- package/dist/src/server/event-processor.js +0 -287
- package/dist/src/server/event-processor.js.map +0 -1
- package/dist/src/server/file-syncer/crypto/jwe-encryptor.d.ts.map +0 -1
- package/dist/src/server/file-syncer/crypto/jwe-encryptor.js.map +0 -1
- package/dist/src/server/file-syncer/crypto/provider-resolver.d.ts.map +0 -1
- package/dist/src/server/file-syncer/crypto/provider-resolver.js.map +0 -1
- package/dist/src/server/file-syncer/discovery/bareImports.d.ts +0 -3
- package/dist/src/server/file-syncer/discovery/bareImports.d.ts.map +0 -1
- package/dist/src/server/file-syncer/discovery/bareImports.js.map +0 -1
- package/dist/src/server/file-syncer/discovery/dts.d.ts.map +0 -1
- package/dist/src/server/file-syncer/discovery/dts.js.map +0 -1
- package/dist/src/server/file-syncer/index.d.ts.map +0 -1
- package/dist/src/server/file-syncer/index.js.map +0 -1
- package/dist/src/server/file-syncer/sync/resolveSyncFileSet.d.ts.map +0 -1
- package/dist/src/server/file-syncer/sync/resolveSyncFileSet.js.map +0 -1
- package/dist/src/server/file-syncer/types/wire.d.ts.map +0 -1
- package/dist/src/server/file-syncer/types/wire.js.map +0 -1
- package/dist/src/server/file-syncer/utils/hash.d.ts.map +0 -1
- package/dist/src/server/file-syncer/utils/hash.js.map +0 -1
- package/dist/src/server/file-syncer/utils/path.d.ts.map +0 -1
- package/dist/src/server/file-syncer/utils/path.js.map +0 -1
- package/dist/src/server/http-routes.d.ts +0 -30
- package/dist/src/server/http-routes.d.ts.map +0 -1
- package/dist/src/server/http-routes.js +0 -394
- package/dist/src/server/http-routes.js.map +0 -1
- package/dist/src/server/sandbox-landing-page.html +0 -367
- package/dist/src/server/server.d.ts +0 -106
- package/dist/src/server/server.d.ts.map +0 -1
- package/dist/src/server/server.js +0 -255
- package/dist/src/server/server.js.map +0 -1
- package/dist/src/server/services/child-process-manager.d.ts +0 -27
- package/dist/src/server/services/child-process-manager.d.ts.map +0 -1
- package/dist/src/server/services/child-process-manager.js +0 -126
- package/dist/src/server/services/child-process-manager.js.map +0 -1
- package/dist/src/server/services/index.d.ts +0 -3
- package/dist/src/server/services/index.d.ts.map +0 -1
- package/dist/src/server/services/index.js +0 -2
- package/dist/src/server/services/index.js.map +0 -1
- package/dist/src/server/services/interface.d.ts +0 -6
- package/dist/src/server/services/interface.d.ts.map +0 -1
- package/dist/src/server/services/interface.js +0 -2
- package/dist/src/server/services/interface.js.map +0 -1
- package/dist/src/server/settled-tracker.d.ts +0 -29
- package/dist/src/server/settled-tracker.d.ts.map +0 -1
- package/dist/src/server/settled-tracker.js +0 -203
- package/dist/src/server/settled-tracker.js.map +0 -1
- package/dist/src/server/state-manager.d.ts +0 -24
- package/dist/src/server/state-manager.d.ts.map +0 -1
- package/dist/src/server/state-manager.js +0 -56
- package/dist/src/server/state-manager.js.map +0 -1
- package/dist/src/server/websocket-handler.d.ts +0 -5
- package/dist/src/server/websocket-handler.d.ts.map +0 -1
- package/dist/src/server/websocket-handler.js +0 -40
- package/dist/src/server/websocket-handler.js.map +0 -1
- package/dist/src/utils/analytics.d.ts +0 -21
- package/dist/src/utils/analytics.d.ts.map +0 -1
- package/dist/src/utils/analytics.js +0 -41
- package/dist/src/utils/analytics.js.map +0 -1
- package/dist/src/utils/config.d.ts +0 -11
- package/dist/src/utils/config.d.ts.map +0 -1
- package/dist/src/utils/config.js +0 -50
- package/dist/src/utils/config.js.map +0 -1
- package/dist/src/utils/correlation-id.d.ts +0 -3
- package/dist/src/utils/correlation-id.d.ts.map +0 -1
- package/dist/src/utils/correlation-id.js +0 -7
- package/dist/src/utils/correlation-id.js.map +0 -1
- package/dist/src/utils/errors.d.ts +0 -22
- package/dist/src/utils/errors.d.ts.map +0 -1
- package/dist/src/utils/errors.js +0 -50
- package/dist/src/utils/errors.js.map +0 -1
- package/dist/src/utils/get-package-version.d.ts +0 -7
- package/dist/src/utils/get-package-version.d.ts.map +0 -1
- package/dist/src/utils/get-package-version.js +0 -31
- package/dist/src/utils/get-package-version.js.map +0 -1
- package/dist/src/utils/terminal.d.ts +0 -13
- package/dist/src/utils/terminal.d.ts.map +0 -1
- package/dist/src/utils/terminal.js +0 -85
- package/dist/src/utils/terminal.js.map +0 -1
- /package/dist/src/{server/file-syncer → file-syncer}/crypto/jwe-encryptor.d.ts +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/crypto/provider-resolver.d.ts +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/discovery/bareImports.js +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/discovery/dts.js +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/index.d.ts +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/types/wire.d.ts +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/types/wire.js +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/utils/hash.js +0 -0
- /package/dist/src/{server/file-syncer → file-syncer}/utils/path.d.ts +0 -0
package/package.json
CHANGED
|
@@ -3,22 +3,6 @@
|
|
|
3
3
|
"type": "module",
|
|
4
4
|
"main": "./dist/src/index.js",
|
|
5
5
|
"types": "./dist/src/index.d.ts",
|
|
6
|
-
"exports": {
|
|
7
|
-
".": {
|
|
8
|
-
"types": "./dist/src/dsl-exports.d.ts",
|
|
9
|
-
"import": "./dist/src/dsl-exports.js",
|
|
10
|
-
"require": "./dist/src/dsl-exports.js",
|
|
11
|
-
"default": "./dist/src/dsl-exports.js"
|
|
12
|
-
},
|
|
13
|
-
"./manifest-types": {
|
|
14
|
-
"types": "./dist/src/manifest-types.d.ts",
|
|
15
|
-
"import": "./dist/src/manifest-types.js"
|
|
16
|
-
},
|
|
17
|
-
"./utils/get-package-version": {
|
|
18
|
-
"types": "./dist/src/utils/get-package-version.d.ts",
|
|
19
|
-
"import": "./dist/src/utils/get-package-version.js"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
6
|
"bin": {
|
|
23
7
|
"auto-engineer": "./dist/bin/auto.js",
|
|
24
8
|
"auto": "./dist/bin/auto.js"
|
|
@@ -35,56 +19,30 @@
|
|
|
35
19
|
"access": "public"
|
|
36
20
|
},
|
|
37
21
|
"dependencies": {
|
|
38
|
-
"@scarf/scarf": "^1.4.0",
|
|
39
22
|
"chalk": "^5.3.0",
|
|
40
23
|
"chokidar": "^3.6.0",
|
|
41
24
|
"commander": "^12.0.0",
|
|
42
|
-
"
|
|
43
|
-
"debug": "^4.4.1",
|
|
25
|
+
"debug": "^4.3.4",
|
|
44
26
|
"dotenv": "^16.4.7",
|
|
45
|
-
"execa": "^9.6.0",
|
|
46
|
-
"express": "^4.18.0",
|
|
47
|
-
"figlet": "^1.7.0",
|
|
48
27
|
"get-port": "^7.1.0",
|
|
49
|
-
"
|
|
50
|
-
"inquirer": "^9.2.15",
|
|
51
|
-
"jiti": "^2.5.1",
|
|
28
|
+
"jiti": "^2.4.2",
|
|
52
29
|
"jose": "^5.9.6",
|
|
53
|
-
"kleur": "^4.1.5",
|
|
54
|
-
"marked": "^15.0.12",
|
|
55
|
-
"marked-terminal": "^7.3.0",
|
|
56
|
-
"nanoid": "^5.0.0",
|
|
57
30
|
"node-fetch": "^3.3.2",
|
|
58
31
|
"ora": "^8.0.1",
|
|
59
32
|
"socket.io": "^4.7.5",
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"@auto-engineer/message-bus": "0.13.3",
|
|
64
|
-
"@auto-engineer/file-store": "0.13.3",
|
|
65
|
-
"@auto-engineer/message-store": "0.13.3"
|
|
33
|
+
"@auto-engineer/file-store": "0.14.0",
|
|
34
|
+
"@auto-engineer/pipeline": "0.14.0",
|
|
35
|
+
"@auto-engineer/narrative": "0.14.0"
|
|
66
36
|
},
|
|
67
37
|
"devDependencies": {
|
|
68
|
-
"@types/
|
|
69
|
-
"@types/express": "^4.17.0",
|
|
70
|
-
"@types/figlet": "^1.5.8",
|
|
71
|
-
"@types/inquirer": "^9.0.7",
|
|
72
|
-
"@types/js-yaml": "^4.0.9",
|
|
73
|
-
"@types/marked": "^6.0.0",
|
|
74
|
-
"@types/marked-terminal": "^6.1.1",
|
|
75
|
-
"@types/node": "^22.0.0",
|
|
76
|
-
"tsx": "^4.20.3"
|
|
38
|
+
"@types/node": "^22.0.0"
|
|
77
39
|
},
|
|
78
|
-
"version": "0.
|
|
40
|
+
"version": "0.14.0",
|
|
79
41
|
"scripts": {
|
|
80
|
-
"build": "tsc && tsx ../../scripts/fix-esm-imports.ts && chmod +x dist/bin/auto.js
|
|
42
|
+
"build": "tsc && tsx ../../scripts/fix-esm-imports.ts && chmod +x dist/bin/auto.js",
|
|
81
43
|
"test": "vitest run --reporter=dot",
|
|
82
44
|
"test:watch": "vitest",
|
|
83
|
-
"lint": "eslint 'src/**/*.ts' --ignore-pattern '**/*.specs.ts' --max-warnings 0 --config ../../eslint.config.ts",
|
|
84
45
|
"type-check": "tsc --noEmit",
|
|
85
|
-
"format": "prettier --write \"**/*.{js,ts,json,md,yml,yaml}\" --ignore-path ../../.prettierignore --log-level warn",
|
|
86
|
-
"lint:fix": "eslint 'src/**/*.ts' --fix --config ../../eslint.config.ts",
|
|
87
|
-
"format:fix": "prettier --write \"**/*.{js,ts,json,md,yml,yaml}\" --ignore-path ../../.prettierignore --log-level warn",
|
|
88
46
|
"link:dev": "pnpm build && pnpm link --global",
|
|
89
47
|
"unlink:dev": "pnpm unlink --global"
|
|
90
48
|
}
|
package/README.md
DELETED
|
@@ -1,283 +0,0 @@
|
|
|
1
|
-
# @auto-engineer/cli
|
|
2
|
-
|
|
3
|
-
CLI interface for Auto Engineer - a plugin-based command-line tool for building applications with AI assistance.
|
|
4
|
-
|
|
5
|
-
## Features
|
|
6
|
-
|
|
7
|
-
- Plugin-based architecture - Install only the functionality you need
|
|
8
|
-
- POSIX-compliant command line arguments
|
|
9
|
-
- Interactive prompts and error messages
|
|
10
|
-
- Colored output with graceful degradation
|
|
11
|
-
- Progress spinners and prompts
|
|
12
|
-
- Structured output in JSON format
|
|
13
|
-
- Cross-platform compatibility
|
|
14
|
-
- Configuration precedence (CLI args > env vars > config files)
|
|
15
|
-
- Analytics with opt-in
|
|
16
|
-
- Error handling with error codes
|
|
17
|
-
- Debug mode for troubleshooting
|
|
18
|
-
|
|
19
|
-
## Installation
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
# Install globally
|
|
23
|
-
npm install -g @auto-engineer/cli
|
|
24
|
-
|
|
25
|
-
# Or use with npx
|
|
26
|
-
npx @auto-engineer/cli
|
|
27
|
-
|
|
28
|
-
# Or with pnpm
|
|
29
|
-
pnpm install -g @auto-engineer/cli
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## Plugin System
|
|
33
|
-
|
|
34
|
-
The CLI uses a plugin-based architecture. Install only the functionality you need:
|
|
35
|
-
|
|
36
|
-
### Quick Start
|
|
37
|
-
|
|
38
|
-
1. Install the CLI:
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
npm install -g @auto-engineer/cli
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
2. Install plugins for your use case:
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
# For server development
|
|
48
|
-
npm install @auto-engineer/flow @auto-engineer/server-generator-apollo-emmett @auto-engineer/server-implementer
|
|
49
|
-
|
|
50
|
-
# For frontend development
|
|
51
|
-
npm install @auto-engineer/frontend-generator-react-graphql @auto-engineer/frontend-implementer
|
|
52
|
-
|
|
53
|
-
# For validation and testing
|
|
54
|
-
npm install @auto-engineer/server-checks @auto-engineer/frontend-checks
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
3. Create configuration (`auto.config.ts`):
|
|
58
|
-
|
|
59
|
-
```typescript
|
|
60
|
-
export default {
|
|
61
|
-
plugins: [
|
|
62
|
-
'@auto-engineer/flow',
|
|
63
|
-
'@auto-engineer/server-generator-apollo-emmett',
|
|
64
|
-
'@auto-engineer/server-implementer',
|
|
65
|
-
],
|
|
66
|
-
|
|
67
|
-
// Optional: Handle command conflicts
|
|
68
|
-
aliases: {
|
|
69
|
-
// 'command:alias': '@auto-engineer/package-name'
|
|
70
|
-
},
|
|
71
|
-
};
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
4. Run commands:
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
auto create:example shopping-assistant
|
|
78
|
-
auto export:schema ./.context ./flows
|
|
79
|
-
auto generate:server .context/schema.json .
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
## Available Plugins
|
|
83
|
-
|
|
84
|
-
| Plugin | Commands | Description |
|
|
85
|
-
| ------------------------------------------------- | ------------------------------------------ | ----------------------------------- |
|
|
86
|
-
| `@auto-engineer/flow` | `create:example`, `export:schema` | Flow modeling and schema export |
|
|
87
|
-
| `@auto-engineer/server-generator-apollo-emmett` | `generate:server` | Server code generation |
|
|
88
|
-
| `@auto-engineer/server-implementer` | `implement:server`, `implement:slice` | AI server implementation |
|
|
89
|
-
| `@auto-engineer/frontend-generator-react-graphql` | `generate:client`, `copy:example` | React client scaffolding |
|
|
90
|
-
| `@auto-engineer/frontend-implementer` | `implement:client` | AI client implementation |
|
|
91
|
-
| `@auto-engineer/information-architect` | `generate:ia` | Information architecture generation |
|
|
92
|
-
| `@auto-engineer/design-system-importer` | `import:design-system` | Figma design system import |
|
|
93
|
-
| `@auto-engineer/server-checks` | `check:types`, `check:lint`, `check:tests` | Server validation |
|
|
94
|
-
| `@auto-engineer/frontend-checks` | `check:client` | Frontend validation |
|
|
95
|
-
|
|
96
|
-
## Configuration
|
|
97
|
-
|
|
98
|
-
### Plugin Configuration
|
|
99
|
-
|
|
100
|
-
The CLI looks for an `auto.config.ts` file in your project root:
|
|
101
|
-
|
|
102
|
-
```typescript
|
|
103
|
-
// auto.config.ts
|
|
104
|
-
export default {
|
|
105
|
-
// List of npm packages to load as plugins
|
|
106
|
-
plugins: [
|
|
107
|
-
'@auto-engineer/flow',
|
|
108
|
-
'@auto-engineer/server-generator-apollo-emmett',
|
|
109
|
-
// ... more plugins
|
|
110
|
-
],
|
|
111
|
-
|
|
112
|
-
// Optional: Override command aliases when conflicts occur
|
|
113
|
-
aliases: {
|
|
114
|
-
'create:example': '@auto-engineer/flow',
|
|
115
|
-
// ... more overrides
|
|
116
|
-
},
|
|
117
|
-
};
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### Handling Conflicts
|
|
121
|
-
|
|
122
|
-
When multiple plugins register the same command alias, you'll receive an error with instructions:
|
|
123
|
-
|
|
124
|
-
```
|
|
125
|
-
Command alias conflicts detected!
|
|
126
|
-
|
|
127
|
-
Multiple packages are trying to register the same command aliases.
|
|
128
|
-
Please add alias overrides to your auto.config.ts file:
|
|
129
|
-
|
|
130
|
-
export default {
|
|
131
|
-
plugins: [
|
|
132
|
-
'@auto-engineer/package-a',
|
|
133
|
-
'@auto-engineer/package-b',
|
|
134
|
-
],
|
|
135
|
-
aliases: {
|
|
136
|
-
// Map the conflicting command to the package that should handle it
|
|
137
|
-
'conflicting:command': '@auto-engineer/package-a',
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
The alias resolution works per command, not per package. Each package can expose multiple commands, and you resolve conflicts for specific command aliases. For example, if both `server-checks` and `another-package` provide a `check:types` command, you specify which package handles that specific command.
|
|
143
|
-
|
|
144
|
-
## Commands
|
|
145
|
-
|
|
146
|
-
Commands are provided by installed plugins. Run `auto --help` to see available commands based on your configuration.
|
|
147
|
-
|
|
148
|
-
### Common Plugin Commands
|
|
149
|
-
|
|
150
|
-
Flow Development (requires `@auto-engineer/flow`)
|
|
151
|
-
|
|
152
|
-
- `create:example <name>` - Create an example project
|
|
153
|
-
- `export:schema <context> <flows>` - Export flow schemas
|
|
154
|
-
|
|
155
|
-
Server Generation (requires respective plugins)
|
|
156
|
-
|
|
157
|
-
- `generate:server <schema> <dest>` - Generate server from schema
|
|
158
|
-
- `implement:server <server-dir>` - AI implements server
|
|
159
|
-
|
|
160
|
-
Frontend Generation (requires respective plugins)
|
|
161
|
-
|
|
162
|
-
- `generate:ia <context> <flows...>` - Generate Information Architecture
|
|
163
|
-
- `generate:client <starter> <client> <ia> <gql> [vars]` - Generate React client
|
|
164
|
-
- `implement:client <client> <context> <principles> <design>` - AI implements client
|
|
165
|
-
|
|
166
|
-
Validation & Testing (requires check plugins)
|
|
167
|
-
|
|
168
|
-
- `check:types <directory>` - TypeScript type checking
|
|
169
|
-
- `check:tests <directory>` - Run test suites
|
|
170
|
-
- `check:lint <directory> [--fix]` - Linting with optional auto-fix
|
|
171
|
-
- `check:client <client-dir>` - Full frontend validation
|
|
172
|
-
|
|
173
|
-
## Global Options
|
|
174
|
-
|
|
175
|
-
- `-v, --version` - Show version number
|
|
176
|
-
- `-d, --debug` - Enable debug mode
|
|
177
|
-
- `--no-color` - Disable colored output
|
|
178
|
-
- `--json` - Output in JSON format
|
|
179
|
-
- `--api-token <token>` - API token for external services
|
|
180
|
-
- `--project-path <path>` - Project path to work with
|
|
181
|
-
|
|
182
|
-
## Environment Variables
|
|
183
|
-
|
|
184
|
-
Set these in your `.env` file or environment:
|
|
185
|
-
|
|
186
|
-
```bash
|
|
187
|
-
# AI Provider Keys (need at least one)
|
|
188
|
-
ANTHROPIC_API_KEY=sk-ant-...
|
|
189
|
-
OPENAI_API_KEY=sk-...
|
|
190
|
-
GEMINI_API_KEY=...
|
|
191
|
-
XAI_API_KEY=...
|
|
192
|
-
|
|
193
|
-
# Debugging
|
|
194
|
-
DEBUG=cli:* # Debug CLI operations
|
|
195
|
-
DEBUG=cli:plugin-loader # Debug plugin loading
|
|
196
|
-
|
|
197
|
-
# Configuration
|
|
198
|
-
NO_COLOR=1 # Disable colored output
|
|
199
|
-
AUTO_ENGINEER_ANALYTICS=false # Disable usage analytics
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
## Creating a Plugin
|
|
203
|
-
|
|
204
|
-
Plugins are npm packages that export a `CLI_MANIFEST`:
|
|
205
|
-
|
|
206
|
-
```typescript
|
|
207
|
-
// your-plugin/src/cli-manifest.ts
|
|
208
|
-
export const CLI_MANIFEST = {
|
|
209
|
-
commands: {
|
|
210
|
-
'your:command': {
|
|
211
|
-
handler: () => import('./commands/your-command'),
|
|
212
|
-
description: 'Description of your command',
|
|
213
|
-
},
|
|
214
|
-
},
|
|
215
|
-
};
|
|
216
|
-
|
|
217
|
-
// your-plugin/src/index.ts
|
|
218
|
-
export { CLI_MANIFEST } from './cli-manifest';
|
|
219
|
-
export * from './commands/your-command';
|
|
220
|
-
```
|
|
221
|
-
|
|
222
|
-
The command handler should export a function that handles the command:
|
|
223
|
-
|
|
224
|
-
```typescript
|
|
225
|
-
// your-plugin/src/commands/your-command.ts
|
|
226
|
-
export async function handleYourCommand(command: { type: string; data: any; timestamp: Date; requestId: string }) {
|
|
227
|
-
// Implementation
|
|
228
|
-
}
|
|
229
|
-
```
|
|
230
|
-
|
|
231
|
-
## Built-in Commands
|
|
232
|
-
|
|
233
|
-
When no `auto.config.ts` is present, the CLI falls back to built-in commands that work with locally available packages.
|
|
234
|
-
|
|
235
|
-
## Error Codes
|
|
236
|
-
|
|
237
|
-
Auto-engineer uses standardized error codes for easy troubleshooting:
|
|
238
|
-
|
|
239
|
-
- `E4001` - Validation error
|
|
240
|
-
- `E4002` - Configuration error
|
|
241
|
-
- `E4003` - Invalid API token
|
|
242
|
-
- `E4004` - Invalid project path
|
|
243
|
-
- `E5001` - Runtime error
|
|
244
|
-
- `E9999` - Unknown error
|
|
245
|
-
|
|
246
|
-
## Analytics
|
|
247
|
-
|
|
248
|
-
Auto-engineer collects anonymous usage analytics to improve the tool:
|
|
249
|
-
|
|
250
|
-
- Anonymous - No personal information is collected
|
|
251
|
-
- Transparent - You can see what data is collected in debug mode
|
|
252
|
-
- Controllable - You can disable anytime
|
|
253
|
-
|
|
254
|
-
To disable analytics:
|
|
255
|
-
|
|
256
|
-
```bash
|
|
257
|
-
export AUTO_ENGINEER_ANALYTICS=false
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
## Debugging
|
|
261
|
-
|
|
262
|
-
Enable debug output to troubleshoot issues:
|
|
263
|
-
|
|
264
|
-
```bash
|
|
265
|
-
# Debug everything
|
|
266
|
-
DEBUG=* auto create:example test
|
|
267
|
-
|
|
268
|
-
# Debug plugin loading
|
|
269
|
-
DEBUG=cli:plugin-loader auto --help
|
|
270
|
-
|
|
271
|
-
# Debug specific plugins
|
|
272
|
-
DEBUG=flow:* auto export:schema ./context ./flows
|
|
273
|
-
```
|
|
274
|
-
|
|
275
|
-
## License
|
|
276
|
-
|
|
277
|
-
Part of the Auto Engineer monorepo. Licensed under [Elastic License 2.0](../../LICENSE.md).
|
|
278
|
-
|
|
279
|
-
## Support
|
|
280
|
-
|
|
281
|
-
- Discord: [Join our community](https://discord.gg/B8BKcKMRm8)
|
|
282
|
-
- Documentation: [GitHub Wiki](https://github.com/SamHatoum/auto-engineer/wiki)
|
|
283
|
-
- Issues: [GitHub Issues](https://github.com/SamHatoum/auto-engineer/issues)
|
package/dist/src/dsl/index.d.ts
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import type { Command, Event } from '@auto-engineer/message-bus';
|
|
2
|
-
import type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, SettledRegistration, SettledHandlerConfig } from './types';
|
|
3
|
-
import type { CommandMetadataService } from '../server/command-metadata-service';
|
|
4
|
-
import type { ILocalMessageStore } from '@auto-engineer/message-store';
|
|
5
|
-
export type NodeStatus = 'None' | 'idle' | 'running' | 'pass' | 'fail';
|
|
6
|
-
export interface PipelineGraphConfig {
|
|
7
|
-
metadataService?: CommandMetadataService;
|
|
8
|
-
eventHandlers?: Map<string, Array<(event: Event) => void>>;
|
|
9
|
-
messageStore?: ILocalMessageStore;
|
|
10
|
-
dslRegistrations?: DslRegistration[];
|
|
11
|
-
}
|
|
12
|
-
export declare function on<T extends Event>(eventType: string | ((event: T) => void), handler?: (event: T) => Command | Command[] | DispatchAction | void): EventRegistration | void;
|
|
13
|
-
export declare namespace on {
|
|
14
|
-
var settled: <T extends Command, U extends Command = never, V extends Command = never, W extends Command = never, X extends Command = never>(commandTypes: [T, U, V, W, X] extends [Command, never, never, never, never] ? [T["type"]] : [T, U, V, W, X] extends [Command, Command, never, never, never] ? [T["type"], U["type"]] : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? [T["type"], U["type"], V["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? [T["type"], U["type"], V["type"], W["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? [T["type"], U["type"], V["type"], W["type"], X["type"]] : never, callbackOrConfig: ((events: [T, U, V, W, X] extends [Command, never, never, never, never] ? { [K in T["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, never, never, never] ? { [K in T["type"] | U["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? { [K in T["type"] | U["type"] | V["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? { [K in T["type"] | U["type"] | V["type"] | W["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? { [K in T["type"] | U["type"] | V["type"] | W["type"] | X["type"]]: Event[]; } : never) => void) | SettledHandlerConfig) => SettledRegistration;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Dispatch a command to the message bus
|
|
18
|
-
*/
|
|
19
|
-
export declare function dispatch<T extends Command>(command: T): DispatchAction;
|
|
20
|
-
export declare function dispatch<T extends Command>(commandType: T['type'], data: T['data']): Command;
|
|
21
|
-
export declare function dispatch<TDispatchCommands extends Command>(commandTypes: readonly TDispatchCommands['type'][], handler: (events: Record<string, Event[]>, send: <TCommand extends TDispatchCommands>(command: TCommand) => void) => void): SettledHandlerConfig<TDispatchCommands>;
|
|
22
|
-
export declare namespace dispatch {
|
|
23
|
-
var parallel: <T extends Command>(commands: T[]) => DispatchAction;
|
|
24
|
-
var sequence: <T extends Command>(commands: T[]) => DispatchAction;
|
|
25
|
-
var custom: <T extends Command>(commandFactory: () => T | T[]) => DispatchAction;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Register a fold function to update state when an event occurs
|
|
29
|
-
*/
|
|
30
|
-
export declare function fold<S, E extends Event>(eventType: string | ((state: S, event: E) => S), reducer?: (state: S, event: E) => S): FoldRegistration<S, E> | void;
|
|
31
|
-
/**
|
|
32
|
-
* Get all registrations and clear the list
|
|
33
|
-
*/
|
|
34
|
-
export declare function getRegistrations(): DslRegistration[];
|
|
35
|
-
/**
|
|
36
|
-
* Peek at registrations without clearing them
|
|
37
|
-
*/
|
|
38
|
-
export declare function peekRegistrations(): DslRegistration[];
|
|
39
|
-
/**
|
|
40
|
-
* Get all pending dispatches and clear the list
|
|
41
|
-
*/
|
|
42
|
-
export declare function getPendingDispatches(): DispatchAction[];
|
|
43
|
-
/**
|
|
44
|
-
* Create an Auto configuration with plugins and pipeline
|
|
45
|
-
*/
|
|
46
|
-
export declare function autoConfig(config: ConfigDefinition): ConfigDefinition;
|
|
47
|
-
export declare function buildEventToCommandMapping(metadataService?: CommandMetadataService): Record<string, string>;
|
|
48
|
-
/**
|
|
49
|
-
* Generate pipeline graph from current registrations
|
|
50
|
-
*/
|
|
51
|
-
export declare function getPipelineGraph(config?: PipelineGraphConfig): Promise<{
|
|
52
|
-
commandToEvents: Record<string, string[]>;
|
|
53
|
-
eventToCommand: Record<string, string>;
|
|
54
|
-
nodes: Array<{
|
|
55
|
-
id: string;
|
|
56
|
-
name: string;
|
|
57
|
-
title: string;
|
|
58
|
-
alias?: string;
|
|
59
|
-
description?: string;
|
|
60
|
-
package?: string;
|
|
61
|
-
version?: string;
|
|
62
|
-
category?: string;
|
|
63
|
-
icon?: string;
|
|
64
|
-
status: NodeStatus;
|
|
65
|
-
}>;
|
|
66
|
-
edges: Array<{
|
|
67
|
-
from: string;
|
|
68
|
-
to: string;
|
|
69
|
-
}>;
|
|
70
|
-
}>;
|
|
71
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAQvE,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AA4BvE,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,wBAAgB,EAAE,CAAC,CAAC,SAAS,KAAK,EAChC,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,EACxC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,EAAE,GAAG,cAAc,GAAG,IAAI,GAClE,iBAAiB,GAAG,IAAI,CAoB1B;yBAvBe,EAAE;kBA0BhB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,UACjB,CAAC,SAAS,OAAO,UACjB,CAAC,SAAS,OAAO,UACjB,CAAC,SAAS,OAAO,wBAEH,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GACvE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GACX,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAC7D,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GACtB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,GAC/D,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GACjC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,GACjE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAC5C,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,GACnE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GACvD,KAAK,oBAEb,CAAC,CACC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GACjE,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,GAAE,GAC7B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAC7D,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,GAAE,GACzC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,GAC/D,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,GAAE,GACrD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,GACjE,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,GAAE,GACjE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,GACnE,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,GAAE,GAC7E,KAAK,KACd,IAAI,CAAC,GACV,oBAAoB,KACvB,mBAAmB;;AA2CtB;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC;AACxE,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;AAC9F,wBAAgB,QAAQ,CAAC,iBAAiB,SAAS,OAAO,EACxD,YAAY,EAAE,SAAS,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAClD,OAAO,EAAE,CACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAC/B,IAAI,EAAE,CAAC,QAAQ,SAAS,iBAAiB,EAAE,OAAO,EAAE,QAAQ,KAAK,IAAI,KAClE,IAAI,GACR,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;yBAN3B,QAAQ;mBA0DH,CAAC,SAAS,OAAO,YAAY,CAAC,EAAE,KAAG,cAAc;mBAYjD,CAAC,SAAS,OAAO,YAAY,CAAC,EAAE,KAAG,cAAc;iBAYnD,CAAC,SAAS,OAAO,kBAAkB,MAAM,CAAC,GAAG,CAAC,EAAE,KAAG,cAAc;;AASpF;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,EACrC,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAClC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAqB/B;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,eAAe,EAAE,CAIpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,eAAe,EAAE,CAErD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAIvD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAErE;AAeD,wBAAgB,0BAA0B,CAAC,eAAe,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB3G;AAiQD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,GAAE,mBAAwB,GAAG,OAAO,CAAC;IAChF,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,UAAU,CAAC;KACpB,CAAC,CAAC;IACH,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5C,CAAC,CAiED"}
|