ultra-dex 1.2.0 → 1.3.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/README.md +44 -1
- package/bin/ultra-dex.js +95 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -40,12 +40,46 @@ Shows links to fully filled Ultra-Dex examples:
|
|
|
40
40
|
- InvoiceFlow (Invoicing)
|
|
41
41
|
- HabitStack (Habit Tracking)
|
|
42
42
|
|
|
43
|
+
### Audit your project
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
npx ultra-dex audit
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Checks your project for completeness:
|
|
50
|
+
- Required files (QUICK-START.md, CONTEXT.md, etc.)
|
|
51
|
+
- Key sections (idea, problem, MVP, tech stack)
|
|
52
|
+
- Implementation details (database, API, auth)
|
|
53
|
+
|
|
54
|
+
Outputs a score and grade (A-F) with suggestions.
|
|
55
|
+
|
|
56
|
+
### List AI agents
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npx ultra-dex agents
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Shows available AI agent prompts:
|
|
63
|
+
- CTO, Backend, Frontend, Database
|
|
64
|
+
- Auth, DevOps, Reviewer, Debugger, Planner
|
|
65
|
+
|
|
66
|
+
### Get agent prompt
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npx ultra-dex agent backend
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Prints the full agent prompt. Copy and paste into your AI tool (Cursor, Claude, ChatGPT).
|
|
73
|
+
|
|
43
74
|
## Commands
|
|
44
75
|
|
|
45
76
|
| Command | Description |
|
|
46
77
|
|---------|-------------|
|
|
47
78
|
| `ultra-dex init` | Initialize a new project |
|
|
79
|
+
| `ultra-dex audit` | Audit project for completeness |
|
|
48
80
|
| `ultra-dex examples` | List available examples |
|
|
81
|
+
| `ultra-dex agents` | List available AI agents |
|
|
82
|
+
| `ultra-dex agent <name>` | Show specific agent prompt |
|
|
49
83
|
| `ultra-dex --help` | Show help |
|
|
50
84
|
| `ultra-dex --version` | Show version |
|
|
51
85
|
|
|
@@ -58,6 +92,12 @@ Shows links to fully filled Ultra-Dex examples:
|
|
|
58
92
|
| `-n, --name <name>` | Project name (skips prompt) |
|
|
59
93
|
| `-d, --dir <directory>` | Output directory (default: current) |
|
|
60
94
|
|
|
95
|
+
### audit
|
|
96
|
+
|
|
97
|
+
| Option | Description |
|
|
98
|
+
|--------|-------------|
|
|
99
|
+
| `-d, --dir <directory>` | Directory to audit (default: current) |
|
|
100
|
+
|
|
61
101
|
## Example
|
|
62
102
|
|
|
63
103
|
```bash
|
|
@@ -89,7 +129,9 @@ Files created:
|
|
|
89
129
|
my-saas/
|
|
90
130
|
├── QUICK-START.md
|
|
91
131
|
├── CONTEXT.md
|
|
92
|
-
|
|
132
|
+
├── IMPLEMENTATION-PLAN.md
|
|
133
|
+
├── .cursor/rules/ (11 AI rule files)
|
|
134
|
+
└── .agents/ (9 AI agent prompts)
|
|
93
135
|
|
|
94
136
|
Next steps:
|
|
95
137
|
1. cd my-saas
|
|
@@ -102,6 +144,7 @@ Next steps:
|
|
|
102
144
|
- [Full Template](https://github.com/Srujan0798/Ultra-Dex/blob/main/@%20Ultra%20DeX/Saas%20plan/04-Imp-Template.md)
|
|
103
145
|
- [Examples](https://github.com/Srujan0798/Ultra-Dex/tree/main/@%20Ultra%20DeX/Saas%20plan/Examples)
|
|
104
146
|
- [Methodology](https://github.com/Srujan0798/Ultra-Dex/blob/main/@%20Ultra%20DeX/Saas%20plan/03-METHODOLOGY.md)
|
|
147
|
+
- [AI Agents](https://github.com/Srujan0798/Ultra-Dex/tree/main/agents)
|
|
105
148
|
|
|
106
149
|
## License
|
|
107
150
|
|
package/bin/ultra-dex.js
CHANGED
|
@@ -109,7 +109,7 @@ Setting up the implementation plan.
|
|
|
109
109
|
program
|
|
110
110
|
.name('ultra-dex')
|
|
111
111
|
.description('CLI for Ultra-Dex SaaS Implementation Framework')
|
|
112
|
-
.version('1.
|
|
112
|
+
.version('1.3.0');
|
|
113
113
|
|
|
114
114
|
program
|
|
115
115
|
.command('init')
|
|
@@ -213,6 +213,12 @@ program
|
|
|
213
213
|
message: 'Copy VERIFICATION.md & AGENT-INSTRUCTIONS.md to docs/?',
|
|
214
214
|
default: true,
|
|
215
215
|
},
|
|
216
|
+
{
|
|
217
|
+
type: 'confirm',
|
|
218
|
+
name: 'includeAgents',
|
|
219
|
+
message: 'Include AI agent prompts? (.agents/ folder)',
|
|
220
|
+
default: true,
|
|
221
|
+
},
|
|
216
222
|
]);
|
|
217
223
|
|
|
218
224
|
const spinner = ora('Creating project files...').start();
|
|
@@ -325,6 +331,27 @@ ${answers.ideaWhat} for ${answers.ideaFor}.
|
|
|
325
331
|
}
|
|
326
332
|
}
|
|
327
333
|
|
|
334
|
+
// Copy agents if requested
|
|
335
|
+
if (answers.includeAgents) {
|
|
336
|
+
const agentsDir = path.join(outputDir, '.agents');
|
|
337
|
+
await fs.mkdir(agentsDir, { recursive: true });
|
|
338
|
+
|
|
339
|
+
const agentsSourcePath = path.resolve(__dirname, '../../agents');
|
|
340
|
+
try {
|
|
341
|
+
const agentFiles = await fs.readdir(agentsSourcePath);
|
|
342
|
+
for (const file of agentFiles.filter(f => f.endsWith('.md'))) {
|
|
343
|
+
await fs.copyFile(
|
|
344
|
+
path.join(agentsSourcePath, file),
|
|
345
|
+
path.join(agentsDir, file)
|
|
346
|
+
);
|
|
347
|
+
}
|
|
348
|
+
} catch (err) {
|
|
349
|
+
// Agents not available (npm package, not local)
|
|
350
|
+
console.log(chalk.yellow('\n Note: Agent prompts not bundled. Download from GitHub:'));
|
|
351
|
+
console.log(chalk.blue(' https://github.com/Srujan0798/Ultra-Dex/tree/main/agents'));
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
|
|
328
355
|
spinner.succeed(chalk.green('Project created successfully!'));
|
|
329
356
|
|
|
330
357
|
console.log('\n' + chalk.bold('Files created:'));
|
|
@@ -340,7 +367,10 @@ ${answers.ideaWhat} for ${answers.ideaFor}.
|
|
|
340
367
|
console.log(chalk.gray(' ├── docs/AI-PROMPTS.md'));
|
|
341
368
|
}
|
|
342
369
|
if (answers.includeCursorRules) {
|
|
343
|
-
console.log(chalk.gray('
|
|
370
|
+
console.log(chalk.gray(' ├── .cursor/rules/ (11 AI rule files)'));
|
|
371
|
+
}
|
|
372
|
+
if (answers.includeAgents) {
|
|
373
|
+
console.log(chalk.gray(' └── .agents/ (9 AI agent prompts)'));
|
|
344
374
|
}
|
|
345
375
|
|
|
346
376
|
console.log('\n' + chalk.bold('Next steps:'));
|
|
@@ -522,4 +552,67 @@ program
|
|
|
522
552
|
});
|
|
523
553
|
});
|
|
524
554
|
|
|
555
|
+
// Agent definitions
|
|
556
|
+
const AGENTS = [
|
|
557
|
+
{ name: 'cto', description: 'Architecture & tech decisions', file: 'cto.md' },
|
|
558
|
+
{ name: 'backend', description: 'API, database, server logic', file: 'backend.md' },
|
|
559
|
+
{ name: 'frontend', description: 'UI, components, styling', file: 'frontend.md' },
|
|
560
|
+
{ name: 'database', description: 'Schema design, queries, migrations', file: 'database.md' },
|
|
561
|
+
{ name: 'auth', description: 'Authentication & authorization', file: 'auth.md' },
|
|
562
|
+
{ name: 'devops', description: 'Deployment, CI/CD, infrastructure', file: 'devops.md' },
|
|
563
|
+
{ name: 'reviewer', description: 'Code review & quality check', file: 'reviewer.md' },
|
|
564
|
+
{ name: 'debugger', description: 'Bug fixing & troubleshooting', file: 'debugger.md' },
|
|
565
|
+
{ name: 'planner', description: 'Task breakdown & planning', file: 'planner.md' },
|
|
566
|
+
];
|
|
567
|
+
|
|
568
|
+
program
|
|
569
|
+
.command('agents')
|
|
570
|
+
.description('List available AI agent prompts')
|
|
571
|
+
.action(() => {
|
|
572
|
+
console.log(chalk.bold('\n🤖 Available Ultra-Dex Agents\n'));
|
|
573
|
+
console.log(chalk.gray('Copy these prompts into your AI tool (Cursor, Claude, ChatGPT, etc.)\n'));
|
|
574
|
+
|
|
575
|
+
AGENTS.forEach((agent, i) => {
|
|
576
|
+
console.log(chalk.cyan(` ${i + 1}. ${agent.name}`) + chalk.gray(` - ${agent.description}`));
|
|
577
|
+
});
|
|
578
|
+
|
|
579
|
+
console.log('\n' + chalk.bold('Usage:'));
|
|
580
|
+
console.log(chalk.gray(' ultra-dex agent <name> Show agent prompt (copy to clipboard)'));
|
|
581
|
+
console.log(chalk.gray(' ultra-dex agent backend Example: show backend agent prompt'));
|
|
582
|
+
|
|
583
|
+
console.log('\n' + chalk.gray('Full docs: https://github.com/Srujan0798/Ultra-Dex/tree/main/agents\n'));
|
|
584
|
+
});
|
|
585
|
+
|
|
586
|
+
program
|
|
587
|
+
.command('agent <name>')
|
|
588
|
+
.description('Show a specific agent prompt')
|
|
589
|
+
.action(async (name) => {
|
|
590
|
+
const agent = AGENTS.find(a => a.name.toLowerCase() === name.toLowerCase());
|
|
591
|
+
|
|
592
|
+
if (!agent) {
|
|
593
|
+
console.log(chalk.red(`\n❌ Agent "${name}" not found.\n`));
|
|
594
|
+
console.log(chalk.gray('Available agents:'));
|
|
595
|
+
AGENTS.forEach(a => console.log(chalk.cyan(` - ${a.name}`)));
|
|
596
|
+
console.log('\n' + chalk.gray('Run "ultra-dex agents" to see all agents.\n'));
|
|
597
|
+
process.exit(1);
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
// Try to read agent file
|
|
601
|
+
const agentPath = path.resolve(__dirname, '../../agents', agent.file);
|
|
602
|
+
try {
|
|
603
|
+
const content = await fs.readFile(agentPath, 'utf-8');
|
|
604
|
+
console.log(chalk.bold(`\n🤖 ${agent.name.toUpperCase()} Agent\n`));
|
|
605
|
+
console.log(chalk.gray('─'.repeat(60)));
|
|
606
|
+
console.log(content);
|
|
607
|
+
console.log(chalk.gray('─'.repeat(60)));
|
|
608
|
+
console.log(chalk.bold('\n📋 Copy the above prompt and paste into your AI tool.\n'));
|
|
609
|
+
} catch (err) {
|
|
610
|
+
// Agent file not bundled (npm package)
|
|
611
|
+
console.log(chalk.bold(`\n🤖 ${agent.name.toUpperCase()} Agent\n`));
|
|
612
|
+
console.log(chalk.yellow('Agent prompts are not bundled with the npm package.'));
|
|
613
|
+
console.log(chalk.gray('\nDownload from GitHub:'));
|
|
614
|
+
console.log(chalk.blue(` https://github.com/Srujan0798/Ultra-Dex/blob/main/agents/${agent.file}\n`));
|
|
615
|
+
}
|
|
616
|
+
});
|
|
617
|
+
|
|
525
618
|
program.parse();
|