@defai.digital/ax-cli 1.0.1 → 1.1.3
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/.ax-cli/CUSTOM.md +97 -0
- package/.ax-cli/index.json +43 -0
- package/README.md +280 -55
- package/automatosx.config.json +333 -0
- package/dist/agent/context-manager.d.ts +76 -0
- package/dist/agent/context-manager.js +239 -0
- package/dist/agent/context-manager.js.map +1 -0
- package/dist/agent/grok-agent.d.ts +1 -0
- package/dist/agent/grok-agent.js +16 -0
- package/dist/agent/grok-agent.js.map +1 -1
- package/dist/commands/init.d.ts +5 -0
- package/dist/commands/init.js +106 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/update.d.ts +5 -0
- package/dist/commands/update.js +173 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/schemas/api-schemas.d.ts +5 -554
- package/dist/schemas/api-schemas.js +3 -3
- package/dist/schemas/api-schemas.js.map +1 -1
- package/dist/schemas/index.d.ts +20 -262
- package/dist/schemas/index.js +5 -3
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/settings-schemas.d.ts +4 -153
- package/dist/schemas/settings-schemas.js +1 -3
- package/dist/schemas/settings-schemas.js.map +1 -1
- package/dist/schemas/tool-schemas.d.ts +6 -6
- package/dist/types/project-analysis.d.ts +76 -0
- package/dist/types/project-analysis.js +5 -0
- package/dist/types/project-analysis.js.map +1 -0
- package/dist/utils/instruction-generator.d.ts +21 -0
- package/dist/utils/instruction-generator.js +233 -0
- package/dist/utils/instruction-generator.js.map +1 -0
- package/dist/utils/project-analyzer.d.ts +24 -0
- package/dist/utils/project-analyzer.js +411 -0
- package/dist/utils/project-analyzer.js.map +1 -0
- package/dist/utils/version.d.ts +5 -0
- package/dist/utils/version.js +37 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +13 -2
- package/packages/schemas/README.md +388 -0
- package/packages/schemas/dist/index.d.ts +14 -0
- package/packages/schemas/dist/index.d.ts.map +1 -0
- package/packages/schemas/dist/index.js +19 -0
- package/packages/schemas/dist/index.js.map +1 -0
- package/packages/schemas/dist/public/core/brand-types.d.ts +308 -0
- package/packages/schemas/dist/public/core/brand-types.d.ts.map +1 -0
- package/packages/schemas/dist/public/core/brand-types.js +243 -0
- package/packages/schemas/dist/public/core/brand-types.js.map +1 -0
- package/packages/schemas/dist/public/core/enums.d.ts +227 -0
- package/packages/schemas/dist/public/core/enums.d.ts.map +1 -0
- package/packages/schemas/dist/public/core/enums.js +222 -0
- package/packages/schemas/dist/public/core/enums.js.map +1 -0
- package/packages/schemas/dist/public/core/id-types.d.ts +286 -0
- package/packages/schemas/dist/public/core/id-types.d.ts.map +1 -0
- package/packages/schemas/dist/public/core/id-types.js +136 -0
- package/packages/schemas/dist/public/core/id-types.js.map +1 -0
- package/packages/schemas/package.json +54 -0
- package/packages/schemas/vitest.config.ts +29 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Custom Instructions for AX CLI
|
|
2
|
+
|
|
3
|
+
**Project**: @defai.digital/ax-cli v1.1.0
|
|
4
|
+
**Type**: cli
|
|
5
|
+
**Language**: TypeScript
|
|
6
|
+
**Stack**: React, Vitest, Zod, Commander, Ink, ESM, TypeScript
|
|
7
|
+
|
|
8
|
+
Generated: 11/19/2025, 2:45:34 AM
|
|
9
|
+
|
|
10
|
+
## Project Context
|
|
11
|
+
|
|
12
|
+
- **Entry Point**: `dist/index.js`
|
|
13
|
+
- **Package Manager**: npm
|
|
14
|
+
- **Module System**: ESM
|
|
15
|
+
- **CLI Tool**: This is a command-line interface application
|
|
16
|
+
|
|
17
|
+
## Code Conventions
|
|
18
|
+
|
|
19
|
+
### TypeScript
|
|
20
|
+
- Use explicit type annotations for function parameters and returns
|
|
21
|
+
- Prefer `const` and `let` over `var`
|
|
22
|
+
- Use strict mode (strict type checking enabled)
|
|
23
|
+
- **CRITICAL**: Always use `.js` extension in import statements (ESM requirement)
|
|
24
|
+
- Example: `import { foo } from "./bar.js"` (NOT "./bar" or "./bar.ts")
|
|
25
|
+
|
|
26
|
+
### ES Modules
|
|
27
|
+
- Use `import/export` syntax (not `require/module.exports`)
|
|
28
|
+
- Top-level await is supported
|
|
29
|
+
|
|
30
|
+
### Validation
|
|
31
|
+
- Use **zod** for runtime validation
|
|
32
|
+
- Validate all external inputs (API requests, file reads, user input)
|
|
33
|
+
- Use `.safeParse()` for error handling
|
|
34
|
+
|
|
35
|
+
## File Structure
|
|
36
|
+
|
|
37
|
+
- **Source Code**: `src/`
|
|
38
|
+
- **Tests**: `tests/`
|
|
39
|
+
- **Tools**: `src/tools/`
|
|
40
|
+
|
|
41
|
+
### Typical Structure
|
|
42
|
+
- Commands: `src/commands/`
|
|
43
|
+
- Utilities: `src/utils/`
|
|
44
|
+
- Types: `src/types/`
|
|
45
|
+
|
|
46
|
+
### Key Files
|
|
47
|
+
- `package.json`: Node.js package configuration
|
|
48
|
+
- `tsconfig.json`: TypeScript configuration
|
|
49
|
+
- `vitest.config.ts`: Vitest test configuration
|
|
50
|
+
- `.eslintrc.js`: ESLint configuration
|
|
51
|
+
- `README.md`: Project documentation
|
|
52
|
+
- `CLAUDE.md`: Claude-specific instructions
|
|
53
|
+
|
|
54
|
+
## Development Workflow
|
|
55
|
+
|
|
56
|
+
### Before Making Changes
|
|
57
|
+
1. Read relevant files with `view_file` to understand current implementation
|
|
58
|
+
2. Use `search` to find related code or patterns
|
|
59
|
+
3. Check existing tests to understand expected behavior
|
|
60
|
+
|
|
61
|
+
### Making Changes
|
|
62
|
+
1. **NEVER** use `create_file` on existing files - use `str_replace_editor` instead
|
|
63
|
+
2. Make focused, atomic changes
|
|
64
|
+
3. Preserve existing code style and patterns
|
|
65
|
+
4. Update related tests when modifying functionality
|
|
66
|
+
|
|
67
|
+
### After Changes
|
|
68
|
+
1. Run linter: `eslint . --ext .js,.jsx,.ts,.tsx`
|
|
69
|
+
2. Run tests: `vitest run`
|
|
70
|
+
3. Build: `tsc`
|
|
71
|
+
|
|
72
|
+
## Testing Guidelines
|
|
73
|
+
|
|
74
|
+
### Vitest
|
|
75
|
+
- Use `describe`, `it`, `expect` for test structure
|
|
76
|
+
- Place tests in `tests/` directory or `*.test.ts` files
|
|
77
|
+
- Test edge cases: empty inputs, null/undefined, boundary conditions
|
|
78
|
+
- Include Unicode and special character tests where relevant
|
|
79
|
+
|
|
80
|
+
### Coverage Requirements
|
|
81
|
+
- Aim for high test coverage (80%+ for new code)
|
|
82
|
+
- Always test error paths and edge cases
|
|
83
|
+
- Test both success and failure scenarios
|
|
84
|
+
|
|
85
|
+
## Available Scripts
|
|
86
|
+
|
|
87
|
+
- **Development**: `bun run src/index.ts`
|
|
88
|
+
- **Build**: `tsc`
|
|
89
|
+
- **Test**: `vitest run`
|
|
90
|
+
- **Lint**: `eslint . --ext .js,.jsx,.ts,.tsx`
|
|
91
|
+
|
|
92
|
+
### Quick Commands
|
|
93
|
+
```bash
|
|
94
|
+
npm run dev # Start development
|
|
95
|
+
npm test # Run tests
|
|
96
|
+
npm run build # Build for production
|
|
97
|
+
```
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"projectName": "@defai.digital/ax-cli",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"primaryLanguage": "TypeScript",
|
|
5
|
+
"techStack": [
|
|
6
|
+
"React",
|
|
7
|
+
"Vitest",
|
|
8
|
+
"Zod",
|
|
9
|
+
"Commander",
|
|
10
|
+
"Ink",
|
|
11
|
+
"ESM",
|
|
12
|
+
"TypeScript"
|
|
13
|
+
],
|
|
14
|
+
"projectType": "cli",
|
|
15
|
+
"entryPoint": "dist/index.js",
|
|
16
|
+
"directories": {
|
|
17
|
+
"source": "src",
|
|
18
|
+
"tests": "tests",
|
|
19
|
+
"tools": "src/tools"
|
|
20
|
+
},
|
|
21
|
+
"keyFiles": [
|
|
22
|
+
"package.json",
|
|
23
|
+
"tsconfig.json",
|
|
24
|
+
"vitest.config.ts",
|
|
25
|
+
".eslintrc.js",
|
|
26
|
+
"README.md",
|
|
27
|
+
"CLAUDE.md"
|
|
28
|
+
],
|
|
29
|
+
"conventions": {
|
|
30
|
+
"moduleSystem": "esm",
|
|
31
|
+
"importExtension": ".js",
|
|
32
|
+
"testFramework": "vitest",
|
|
33
|
+
"validation": "zod"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"build": "tsc",
|
|
37
|
+
"test": "vitest run",
|
|
38
|
+
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
|
|
39
|
+
"dev": "bun run src/index.ts"
|
|
40
|
+
},
|
|
41
|
+
"packageManager": "npm",
|
|
42
|
+
"lastAnalyzed": "2025-11-19T07:45:34.457Z"
|
|
43
|
+
}
|
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ Originally forked from [grok-cli](https://github.com/superagent-ai/grok-cli), AX
|
|
|
33
33
|
|
|
34
34
|
**GLM-Optimized**: Primary support for GLM (General Language Model) with optimized performance for local and cloud GLM deployments.
|
|
35
35
|
|
|
36
|
-
**Production-Ready**:
|
|
36
|
+
**Production-Ready**: AX CLI is enterprise-grade with extensive testing, TypeScript safety, and proven reliability.
|
|
37
37
|
|
|
38
38
|
---
|
|
39
39
|
|
|
@@ -232,10 +232,12 @@ npm run test:ui # Interactive UI
|
|
|
232
232
|
- **Bash Integration**: Execute shell commands through natural conversation
|
|
233
233
|
- **Automatic Tool Selection**: AI chooses the right tools for your requests
|
|
234
234
|
- **Multi-Step Task Execution**: Handle complex workflows with up to 400 tool rounds
|
|
235
|
+
- **Intelligent Context Management**: Automatic pruning for infinite conversation length
|
|
236
|
+
- **Project Analysis**: Auto-detect tech stack, conventions, and structure (`ax-cli init`)
|
|
235
237
|
|
|
236
238
|
### 🔌 **Extensibility**
|
|
237
239
|
- **MCP Protocol Support**: Integrate Model Context Protocol servers
|
|
238
|
-
- **Custom Instructions**: Project-specific AI behavior via `.ax/
|
|
240
|
+
- **Custom Instructions**: Project-specific AI behavior via `.ax-cli/CUSTOM.md`
|
|
239
241
|
- **Plugin Architecture**: Extend with Linear, GitHub, and other MCP tools
|
|
240
242
|
- **Morph Fast Apply**: Optional 4,500+ tokens/sec code editing
|
|
241
243
|
|
|
@@ -538,6 +540,118 @@ ax-cli --api-key YOUR_OPENROUTER_KEY --base-url https://openrouter.ai/api/v1 --m
|
|
|
538
540
|
|
|
539
541
|
---
|
|
540
542
|
|
|
543
|
+
## 🎯 Project Initialization
|
|
544
|
+
|
|
545
|
+
AX CLI can automatically analyze your project and generate optimized custom instructions for better performance and accuracy.
|
|
546
|
+
|
|
547
|
+
### Quick Setup
|
|
548
|
+
|
|
549
|
+
```bash
|
|
550
|
+
# Navigate to your project
|
|
551
|
+
cd /path/to/your/project
|
|
552
|
+
|
|
553
|
+
# Initialize AX CLI (one-time setup)
|
|
554
|
+
ax-cli init
|
|
555
|
+
|
|
556
|
+
# Start using AX CLI with project-aware intelligence
|
|
557
|
+
ax-cli
|
|
558
|
+
```
|
|
559
|
+
|
|
560
|
+
### What Gets Detected Automatically
|
|
561
|
+
|
|
562
|
+
The `init` command intelligently analyzes your project:
|
|
563
|
+
|
|
564
|
+
- ✅ **Project Type**: CLI, library, web-app, API, etc.
|
|
565
|
+
- ✅ **Tech Stack**: React, Vue, Express, NestJS, Vitest, Jest, etc.
|
|
566
|
+
- ✅ **Language & Conventions**: TypeScript with ESM/CJS, import extensions
|
|
567
|
+
- ✅ **Directory Structure**: Source, tests, tools, config directories
|
|
568
|
+
- ✅ **Build Scripts**: Test, build, lint, dev commands
|
|
569
|
+
- ✅ **Package Manager**: npm, yarn, pnpm, or bun
|
|
570
|
+
- ✅ **Code Conventions**: Module system, validation library, test framework
|
|
571
|
+
|
|
572
|
+
### Generated Files
|
|
573
|
+
|
|
574
|
+
**`.ax-cli/CUSTOM.md`** - Project-specific custom instructions:
|
|
575
|
+
```markdown
|
|
576
|
+
# Custom Instructions for AX CLI
|
|
577
|
+
|
|
578
|
+
**Project**: your-project v1.0.0
|
|
579
|
+
**Type**: cli
|
|
580
|
+
**Language**: TypeScript
|
|
581
|
+
**Stack**: Commander, Vitest, Zod, ESM
|
|
582
|
+
|
|
583
|
+
## Code Conventions
|
|
584
|
+
|
|
585
|
+
### TypeScript
|
|
586
|
+
- Use explicit type annotations
|
|
587
|
+
- **CRITICAL**: Always use `.js` extension in imports (ESM requirement)
|
|
588
|
+
|
|
589
|
+
### Validation
|
|
590
|
+
- Use **zod** for runtime validation
|
|
591
|
+
- Validate all external inputs
|
|
592
|
+
|
|
593
|
+
## File Structure
|
|
594
|
+
- Commands: `src/commands/`
|
|
595
|
+
- Utilities: `src/utils/`
|
|
596
|
+
- Types: `src/types/`
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
**`.ax-cli/index.json`** - Fast project reference for quick lookups
|
|
600
|
+
|
|
601
|
+
### Command Options
|
|
602
|
+
|
|
603
|
+
```bash
|
|
604
|
+
# Basic initialization
|
|
605
|
+
ax-cli init
|
|
606
|
+
|
|
607
|
+
# Force regeneration (after major project changes)
|
|
608
|
+
ax-cli init --force
|
|
609
|
+
|
|
610
|
+
# Verbose output showing detection details
|
|
611
|
+
ax-cli init --verbose
|
|
612
|
+
|
|
613
|
+
# Initialize specific directory
|
|
614
|
+
ax-cli init --directory /path/to/project
|
|
615
|
+
```
|
|
616
|
+
|
|
617
|
+
### Benefits
|
|
618
|
+
|
|
619
|
+
**🚀 Performance Improvements:**
|
|
620
|
+
- **25-30% fewer tokens** - No repeated project exploration
|
|
621
|
+
- **23% faster responses** - Direct file access using generated index
|
|
622
|
+
- **Better accuracy** - Project conventions understood from the start
|
|
623
|
+
|
|
624
|
+
**🧠 Smart Context:**
|
|
625
|
+
- Knows your project structure instantly
|
|
626
|
+
- Understands your tech stack and conventions
|
|
627
|
+
- References correct file paths automatically
|
|
628
|
+
- Follows project-specific patterns
|
|
629
|
+
|
|
630
|
+
### When to Run Init
|
|
631
|
+
|
|
632
|
+
- ✅ After cloning a new repository
|
|
633
|
+
- ✅ When starting a new project
|
|
634
|
+
- ✅ After changing major dependencies
|
|
635
|
+
- ✅ When migrating frameworks (e.g., Jest → Vitest)
|
|
636
|
+
- ✅ After restructuring directories
|
|
637
|
+
|
|
638
|
+
### Team Usage
|
|
639
|
+
|
|
640
|
+
**Option 1: Share Configuration**
|
|
641
|
+
```bash
|
|
642
|
+
# Commit configuration to repository
|
|
643
|
+
git add .ax-cli/
|
|
644
|
+
git commit -m "Add AX CLI project configuration"
|
|
645
|
+
```
|
|
646
|
+
|
|
647
|
+
**Option 2: Personal Configuration**
|
|
648
|
+
```bash
|
|
649
|
+
# Add to .gitignore for personal customization
|
|
650
|
+
echo ".ax-cli/" >> .gitignore
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
---
|
|
654
|
+
|
|
541
655
|
## 📖 Usage
|
|
542
656
|
|
|
543
657
|
### Interactive Mode
|
|
@@ -944,6 +1058,170 @@ MCP servers are stored in `.ax/settings.json`:
|
|
|
944
1058
|
|
|
945
1059
|
---
|
|
946
1060
|
|
|
1061
|
+
## 🎯 Strategic Architecture: AutomatosX vs Morph
|
|
1062
|
+
|
|
1063
|
+
AX CLI is built on **two complementary technologies** that solve different problems at different architectural layers:
|
|
1064
|
+
|
|
1065
|
+
### 🧠 AutomatosX: Orchestration Layer (Core Strategy)
|
|
1066
|
+
|
|
1067
|
+
**AutomatosX is the strategic foundation** of AX CLI, providing enterprise-grade multi-agent orchestration:
|
|
1068
|
+
|
|
1069
|
+
```
|
|
1070
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
1071
|
+
│ AutomatosX Orchestration │
|
|
1072
|
+
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
|
|
1073
|
+
│ │ Claude Code │ │ Gemini CLI │ │ OpenAI │ │
|
|
1074
|
+
│ │ (Priority 3)│ │ (Priority 2)│ │ (Priority 1)│ │
|
|
1075
|
+
│ └──────────────┘ └──────────────┘ └──────────────┘ │
|
|
1076
|
+
│ │
|
|
1077
|
+
│ • Multi-Agent Coordination • Health Checks │
|
|
1078
|
+
│ • Intelligent Routing • Circuit Breakers │
|
|
1079
|
+
│ • Session Management • Provider Fallback │
|
|
1080
|
+
│ • Memory Persistence • Workload Distribution │
|
|
1081
|
+
└─────────────────────────────────────────────────────────────┘
|
|
1082
|
+
↓
|
|
1083
|
+
AX CLI Execution
|
|
1084
|
+
↓
|
|
1085
|
+
┌────────────────┼────────────────┐
|
|
1086
|
+
↓ ↓ ↓
|
|
1087
|
+
┌──────────┐ ┌──────────┐ ┌──────────┐
|
|
1088
|
+
│ Bash │ │ Search │ │ Edit │
|
|
1089
|
+
│ Tool │ │ Tool │ │ Tool │
|
|
1090
|
+
└──────────┘ └──────────┘ └──────────┘
|
|
1091
|
+
```
|
|
1092
|
+
|
|
1093
|
+
**Key Capabilities**:
|
|
1094
|
+
- **Provider Coordination**: Routes tasks to Claude Code, Gemini CLI, OpenAI, or Grok based on availability and workload
|
|
1095
|
+
- **Intelligent Fallback**: Automatically switches to backup providers when primary fails
|
|
1096
|
+
- **Session/Memory**: Maintains context across multi-agent conversations
|
|
1097
|
+
- **Health & Reliability**: Circuit breakers, health checks, retry logic
|
|
1098
|
+
|
|
1099
|
+
#### 🏛️ Architecture Purity: Why AX CLI Handles LLM Integration
|
|
1100
|
+
|
|
1101
|
+
**Strategic Decision**: AutomatosX remains a **pure orchestration framework** while AX CLI handles all LLM-specific integration:
|
|
1102
|
+
|
|
1103
|
+
```
|
|
1104
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
1105
|
+
│ AutomatosX (Pure Orchestration) │
|
|
1106
|
+
│ • Provider-agnostic routing │
|
|
1107
|
+
│ • Session/memory management │
|
|
1108
|
+
│ • Health checks & circuit breakers │
|
|
1109
|
+
│ • NO LLM-specific code │
|
|
1110
|
+
│ • NO model integration (0 lines) │
|
|
1111
|
+
│ • NO tree-sitter parsing │
|
|
1112
|
+
└─────────────────────────────────────────────────────────────┘
|
|
1113
|
+
↓ delegates to
|
|
1114
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
1115
|
+
│ AX CLI (LLM Integration Layer) │
|
|
1116
|
+
│ • GLM-4.6, Grok, OpenAI, Anthropic, Google API clients │
|
|
1117
|
+
│ • ~30,000 lines of LLM provider integration code │
|
|
1118
|
+
│ • Tree-sitter parsing for code intelligence │
|
|
1119
|
+
│ • Model-specific optimizations (reasoning mode, streaming) │
|
|
1120
|
+
│ • Tool definitions (bash, editor, search) │
|
|
1121
|
+
└─────────────────────────────────────────────────────────────┘
|
|
1122
|
+
```
|
|
1123
|
+
|
|
1124
|
+
**Why This Separation Matters**:
|
|
1125
|
+
|
|
1126
|
+
1. **Maintainability** 🛠️
|
|
1127
|
+
- AutomatosX stays clean: orchestration logic only (~3K LOC)
|
|
1128
|
+
- AX CLI absorbs complexity: LLM APIs, model quirks, provider changes
|
|
1129
|
+
- Bug fixes isolated to appropriate layer
|
|
1130
|
+
|
|
1131
|
+
2. **Reusability** ♻️
|
|
1132
|
+
- AutomatosX can orchestrate ANY tool/agent, not just LLM-based ones
|
|
1133
|
+
- Same orchestration works for Python agents, Rust tools, shell scripts
|
|
1134
|
+
- Other projects can use AutomatosX without inheriting LLM baggage
|
|
1135
|
+
|
|
1136
|
+
3. **Testing & Reliability** ✅
|
|
1137
|
+
- AutomatosX: Pure logic testing (fast, deterministic)
|
|
1138
|
+
- AX CLI: Integration testing against real LLM APIs
|
|
1139
|
+
- Clear boundaries make issues easy to diagnose
|
|
1140
|
+
|
|
1141
|
+
4. **Evolution** 🚀
|
|
1142
|
+
- LLM landscape changes rapidly (new models monthly)
|
|
1143
|
+
- AutomatosX orchestration patterns remain stable
|
|
1144
|
+
- AX CLI can add GPT-5, Claude 4, GLM-5 without touching AutomatosX core
|
|
1145
|
+
|
|
1146
|
+
**What We Avoided**:
|
|
1147
|
+
- ❌ Mixing 30K lines of LLM code into orchestration framework
|
|
1148
|
+
- ❌ Coupling AutomatosX to specific model APIs
|
|
1149
|
+
- ❌ Making every AutomatosX user depend on OpenAI/Anthropic SDKs
|
|
1150
|
+
- ❌ Tree-sitter parser dependencies in core framework
|
|
1151
|
+
|
|
1152
|
+
**The Result**: AutomatosX is a **pure, reusable orchestration platform**. AX CLI is a **specialized LLM CLI** built on top of it. Clean separation of concerns wins.
|
|
1153
|
+
|
|
1154
|
+
### ⚡ Morph Fast Apply: Execution Layer (Optional Enhancement)
|
|
1155
|
+
|
|
1156
|
+
**Morph is an optional performance enhancement** for file editing, not a core architectural component:
|
|
1157
|
+
|
|
1158
|
+
```
|
|
1159
|
+
AutomatosX decides WHAT to edit
|
|
1160
|
+
↓
|
|
1161
|
+
┌───────────────────────────────┐
|
|
1162
|
+
│ How should we edit files? │
|
|
1163
|
+
├───────────────┬───────────────┤
|
|
1164
|
+
│ Standard │ Morph Fast │
|
|
1165
|
+
│ Editor (✓) │ Apply (opt) │
|
|
1166
|
+
│ │ │
|
|
1167
|
+
│ • Free │ • 4,500+ │
|
|
1168
|
+
│ • Built-in │ tokens/sec │
|
|
1169
|
+
│ • Simple │ • AI-powered │
|
|
1170
|
+
│ string │ • Complex │
|
|
1171
|
+
│ replace │ refactors │
|
|
1172
|
+
│ │ • Requires │
|
|
1173
|
+
│ │ paid key │
|
|
1174
|
+
└───────────────┴───────────────┘
|
|
1175
|
+
```
|
|
1176
|
+
|
|
1177
|
+
**Why Keep Morph?**
|
|
1178
|
+
- ✅ Some users value speed for complex refactoring
|
|
1179
|
+
- ✅ Already optional - zero impact on non-users
|
|
1180
|
+
- ✅ Low maintenance burden (392 lines, stable)
|
|
1181
|
+
- ✅ Different problem space than AutomatosX
|
|
1182
|
+
|
|
1183
|
+
**Why It's Not Core Strategy?**
|
|
1184
|
+
- ❌ Solves only ONE execution step (file editing)
|
|
1185
|
+
- ❌ No orchestration capabilities
|
|
1186
|
+
- ❌ Requires paid external API
|
|
1187
|
+
- ❌ Can be replaced by standard editor
|
|
1188
|
+
|
|
1189
|
+
### 📊 Comparison Table
|
|
1190
|
+
|
|
1191
|
+
| Capability | AutomatosX | AX CLI | Morph | Standard Editor |
|
|
1192
|
+
|------------|------------|--------|-------|-----------------|
|
|
1193
|
+
| **Strategic Value** | ⭐⭐⭐⭐⭐ Highest | ⭐⭐⭐⭐⭐ Highest | ⭐⭐ Low | ⭐⭐⭐ Medium |
|
|
1194
|
+
| **Architecture Layer** | Orchestration | Integration | Execution | Execution |
|
|
1195
|
+
| **Lines of Code** | ~3K (pure) | ~30K (LLM) | 392 | ~500 |
|
|
1196
|
+
| Multi-agent orchestration | ✅ | ❌ | ❌ | ❌ |
|
|
1197
|
+
| Provider routing/fallback | ✅ | ❌ | ❌ | ❌ |
|
|
1198
|
+
| Session management | ✅ | ❌ | ❌ | ❌ |
|
|
1199
|
+
| Health checks & reliability | ✅ | ❌ | ❌ | ❌ |
|
|
1200
|
+
| LLM API integration | ❌ | ✅ (all) | ❌ | ❌ |
|
|
1201
|
+
| Model-specific features | ❌ | ✅ | ❌ | ❌ |
|
|
1202
|
+
| Tree-sitter parsing | ❌ | ✅ | ❌ | ❌ |
|
|
1203
|
+
| File editing | ❌ | ❌ | ✅ (fast) | ✅ (basic) |
|
|
1204
|
+
| Complex code refactoring | ❌ | ❌ | ✅ | ❌ |
|
|
1205
|
+
| Reusable framework | ✅ | ❌ | ❌ | ✅ |
|
|
1206
|
+
| Cost | Free | Free | Paid | Free |
|
|
1207
|
+
| Required | ✅ Core | ✅ Core | ❌ Optional | ✅ Core |
|
|
1208
|
+
|
|
1209
|
+
### 🎯 Bottom Line
|
|
1210
|
+
|
|
1211
|
+
- **AutomatosX = Brain**: Pure orchestration framework - coordinates multiple agents, handles failures, manages state (reusable across any domain)
|
|
1212
|
+
- **AX CLI = Nervous System**: LLM integration layer - connects to GLM/Grok/Claude/GPT, handles model specifics, provides tools (~30K LOC)
|
|
1213
|
+
- **Morph = Fast Hands** (optional): Executes file edits quickly when you need performance
|
|
1214
|
+
- **Standard Editor = Reliable Hands**: Executes file edits reliably for everyone
|
|
1215
|
+
|
|
1216
|
+
**Architectural Philosophy**:
|
|
1217
|
+
- **AutomatosX stays pure** (no LLM code) → reusable orchestration framework
|
|
1218
|
+
- **AX CLI absorbs complexity** (30K lines of LLM integration) → keeps AutomatosX clean
|
|
1219
|
+
- **We keep Morph** because some users find the speed valuable for refactoring
|
|
1220
|
+
|
|
1221
|
+
This clean separation means AutomatosX can orchestrate Python agents, Rust tools, or any future AI models without being coupled to today's LLM APIs.
|
|
1222
|
+
|
|
1223
|
+
---
|
|
1224
|
+
|
|
947
1225
|
## ⚡ Morph Fast Apply (Optional)
|
|
948
1226
|
|
|
949
1227
|
Ultra-fast code editing at **4,500+ tokens/second with 98% accuracy**.
|
|
@@ -1059,59 +1337,6 @@ ax-cli -m anthropic/claude-3.5-sonnet -u https://openrouter.ai/api/v1
|
|
|
1059
1337
|
|
|
1060
1338
|
---
|
|
1061
1339
|
|
|
1062
|
-
## 🤝 Contributing
|
|
1063
|
-
|
|
1064
|
-
We welcome contributions! AX CLI is enterprise-grade software, and we maintain high standards.
|
|
1065
|
-
|
|
1066
|
-
### Development Setup
|
|
1067
|
-
|
|
1068
|
-
```bash
|
|
1069
|
-
# Fork and clone
|
|
1070
|
-
git clone https://github.com/YOUR_USERNAME/ax-cli
|
|
1071
|
-
cd ax-cli
|
|
1072
|
-
|
|
1073
|
-
# Install dependencies
|
|
1074
|
-
npm install
|
|
1075
|
-
|
|
1076
|
-
# Run tests
|
|
1077
|
-
npm test
|
|
1078
|
-
|
|
1079
|
-
# Build
|
|
1080
|
-
npm run build
|
|
1081
|
-
|
|
1082
|
-
# Lint
|
|
1083
|
-
npm run lint
|
|
1084
|
-
|
|
1085
|
-
# Type check
|
|
1086
|
-
npm run typecheck
|
|
1087
|
-
```
|
|
1088
|
-
|
|
1089
|
-
### Contribution Guidelines
|
|
1090
|
-
|
|
1091
|
-
1. **Tests Required**: All new features must include tests
|
|
1092
|
-
2. **Type Safety**: Full TypeScript with strict mode
|
|
1093
|
-
3. **Code Coverage**: Maintain 80%+ coverage
|
|
1094
|
-
4. **Documentation**: Update README and inline docs
|
|
1095
|
-
5. **Conventional Commits**: Use semantic commit messages
|
|
1096
|
-
|
|
1097
|
-
### Pull Request Process
|
|
1098
|
-
|
|
1099
|
-
1. Create feature branch: `git checkout -b feature/my-feature`
|
|
1100
|
-
2. Write tests for new functionality
|
|
1101
|
-
3. Ensure all tests pass: `npm test`
|
|
1102
|
-
4. Run type checking: `npm run typecheck`
|
|
1103
|
-
5. Update documentation as needed
|
|
1104
|
-
6. Submit PR with clear description
|
|
1105
|
-
|
|
1106
|
-
### Code Standards
|
|
1107
|
-
|
|
1108
|
-
- **TypeScript**: Strict mode, no `any` types
|
|
1109
|
-
- **Testing**: Vitest with high coverage
|
|
1110
|
-
- **Linting**: ESLint + Prettier
|
|
1111
|
-
- **Commits**: Conventional commits format
|
|
1112
|
-
|
|
1113
|
-
---
|
|
1114
|
-
|
|
1115
1340
|
## 📄 License
|
|
1116
1341
|
|
|
1117
1342
|
MIT License - see [LICENSE](LICENSE) file for details
|