aladdin-ai 1.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.
- package/LICENSE +17 -0
- package/README.md +25 -0
- package/index.js +143 -0
- package/package.json +43 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
Copyright 2026 Aladdin Aliyev
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
package/README.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# šŖ AladdinAI CLI Installer
|
|
2
|
+
|
|
3
|
+
The official bootstrap tool for the **AladdinAI Platform**.
|
|
4
|
+
|
|
5
|
+
This tool allows you to deploy the full AladdinAI ecosystem, including the AI Orchestrator, CRM integration, and the Desktop Application, with a single command.
|
|
6
|
+
|
|
7
|
+
## š Installation
|
|
8
|
+
|
|
9
|
+
You don't need to install this package globally. Just run:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx aladdin-ai
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## ⨠What's included?
|
|
16
|
+
- **AI Orchestrator**: Support for MiniCPM3 and other LLMs.
|
|
17
|
+
- **RCF Protocol**: Built-in security and correlation framework.
|
|
18
|
+
- **Desktop App**: Native installers for Mac, Windows, and Linux.
|
|
19
|
+
- **Full CRM**: Complete deals and contacts management system.
|
|
20
|
+
|
|
21
|
+
## š”ļø Security
|
|
22
|
+
Protected by the **Restricted Correlation Framework (RCF v2.0.3)**.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
Developed by [Aladdin Aliyev](https://github.com/aliyevaladddin)
|
package/index.js
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// NOTICE: This file is protected under RCF-PL v1.2.8
|
|
4
|
+
// [RCF:PROTECTED]
|
|
5
|
+
|
|
6
|
+
import { Command } from 'commander';
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import inquirer from 'inquirer';
|
|
9
|
+
import ora from 'ora';
|
|
10
|
+
import { execa } from 'execa';
|
|
11
|
+
import fs from 'fs-extra';
|
|
12
|
+
import path from 'path';
|
|
13
|
+
|
|
14
|
+
const program = new Command();
|
|
15
|
+
|
|
16
|
+
const REPO_URL = 'https://github.com/aliyevaladddin/AladdinAI.git';
|
|
17
|
+
|
|
18
|
+
console.log(chalk.cyan(`
|
|
19
|
+
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
|
|
20
|
+
ā ā
|
|
21
|
+
ā ⨠WELCOME TO ALADDIN AI PLATFORM INITIALIZER ⨠ā
|
|
22
|
+
ā Powered by RCF Protocol v2.0.3 ā
|
|
23
|
+
ā ā
|
|
24
|
+
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
|
|
25
|
+
`));
|
|
26
|
+
|
|
27
|
+
program
|
|
28
|
+
.name('aladdin-ai')
|
|
29
|
+
.description('Bootstrap your own AladdinAI instance')
|
|
30
|
+
.version('2.0.3')
|
|
31
|
+
.action(async () => {
|
|
32
|
+
const { mode } = await inquirer.prompt([
|
|
33
|
+
{
|
|
34
|
+
type: 'list',
|
|
35
|
+
name: 'mode',
|
|
36
|
+
message: 'What would you like to do?',
|
|
37
|
+
choices: [
|
|
38
|
+
{ name: 'š Install Desktop App (Recommended)', value: 'desktop' },
|
|
39
|
+
{ name: 'š» Clone Source Code (For Developers)', value: 'source' }
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
]);
|
|
43
|
+
|
|
44
|
+
if (mode === 'desktop') {
|
|
45
|
+
const spinner = ora('Preparing Desktop App download...').start();
|
|
46
|
+
try {
|
|
47
|
+
const platform = process.platform;
|
|
48
|
+
let downloadUrl = '';
|
|
49
|
+
let fileName = '';
|
|
50
|
+
|
|
51
|
+
if (platform === 'darwin') {
|
|
52
|
+
downloadUrl = 'https://github.com/aliyevaladddin/AladdinAI/releases/latest/download/AladdinAI.dmg';
|
|
53
|
+
fileName = 'AladdinAI.dmg';
|
|
54
|
+
} else if (platform === 'win32') {
|
|
55
|
+
downloadUrl = 'https://github.com/aliyevaladddin/AladdinAI/releases/latest/download/AladdinAI.exe';
|
|
56
|
+
fileName = 'AladdinAI.exe';
|
|
57
|
+
} else if (platform === 'linux') {
|
|
58
|
+
downloadUrl = 'https://github.com/aliyevaladddin/AladdinAI/releases/latest/download/AladdinAI.AppImage';
|
|
59
|
+
fileName = 'AladdinAI.AppImage';
|
|
60
|
+
} else {
|
|
61
|
+
spinner.fail(chalk.red('Platform not supported for desktop direct install.'));
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
spinner.text = `Downloading ${fileName} for ${platform}...`;
|
|
66
|
+
const downloadPath = path.join(process.cwd(), fileName);
|
|
67
|
+
|
|
68
|
+
await execa('curl', ['-L', '-o', downloadPath, downloadUrl]);
|
|
69
|
+
spinner.succeed(chalk.green(`\nā
Download complete: ${fileName}`));
|
|
70
|
+
|
|
71
|
+
console.log(chalk.cyan(`\nš Opening ${fileName} for installation...`));
|
|
72
|
+
|
|
73
|
+
// Cross-platform open command
|
|
74
|
+
const openCmd = platform === 'darwin' ? 'open' : platform === 'win32' ? 'start' : 'xdg-open';
|
|
75
|
+
await execa(openCmd, [downloadPath]);
|
|
76
|
+
|
|
77
|
+
} catch (err) {
|
|
78
|
+
spinner.fail(chalk.red('Failed to download Desktop App. Check your internet or GitHub release.'));
|
|
79
|
+
}
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
const answers = await inquirer.prompt([
|
|
84
|
+
{
|
|
85
|
+
type: 'input',
|
|
86
|
+
name: 'projectName',
|
|
87
|
+
message: 'What is your project name?',
|
|
88
|
+
default: 'my-aladdin-ai'
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
type: 'confirm',
|
|
92
|
+
name: 'installDeps',
|
|
93
|
+
message: 'Would you like to install dependencies automatically?',
|
|
94
|
+
default: true
|
|
95
|
+
}
|
|
96
|
+
]);
|
|
97
|
+
|
|
98
|
+
const targetDir = path.join(process.cwd(), answers.projectName);
|
|
99
|
+
|
|
100
|
+
if (fs.existsSync(targetDir)) {
|
|
101
|
+
console.log(chalk.red(`\nā Error: Directory ${answers.projectName} already exists.`));
|
|
102
|
+
process.exit(1);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
const spinner = ora('Cloning AladdinAI repository...').start();
|
|
106
|
+
|
|
107
|
+
try {
|
|
108
|
+
// Clone the repo
|
|
109
|
+
await execa('git', ['clone', REPO_URL, targetDir]);
|
|
110
|
+
spinner.succeed(chalk.green('Repository cloned successfully!'));
|
|
111
|
+
|
|
112
|
+
// Remove .git from the new project to start fresh
|
|
113
|
+
await fs.remove(path.join(targetDir, '.git'));
|
|
114
|
+
|
|
115
|
+
if (answers.installDeps) {
|
|
116
|
+
// Install Frontend
|
|
117
|
+
const feSpinner = ora('Installing Frontend dependencies...').start();
|
|
118
|
+
await execa('npm', ['install'], { cwd: path.join(targetDir, 'frontend') });
|
|
119
|
+
feSpinner.succeed(chalk.green('Frontend dependencies installed!'));
|
|
120
|
+
|
|
121
|
+
// Backend setup suggestion
|
|
122
|
+
console.log(chalk.yellow('\nš” Note: To set up the Backend, make sure you have Python 3.10+ and run:'));
|
|
123
|
+
console.log(chalk.cyan(` cd ${answers.projectName}/backend && pip install -r requirements.txt`));
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// RCF Initialization notice
|
|
127
|
+
console.log(chalk.blue('\nš”ļø RCF Protocol: Your project is pre-marked for RCF compliance.'));
|
|
128
|
+
console.log(chalk.blue(' Run `npx rcf-cli audit .` to verify your installation.'));
|
|
129
|
+
|
|
130
|
+
console.log(chalk.green(`\nš Success! Your AladdinAI platform is ready in ${answers.projectName}`));
|
|
131
|
+
console.log(chalk.white('\nNext steps:'));
|
|
132
|
+
console.log(chalk.cyan(` 1. cd ${answers.projectName}`));
|
|
133
|
+
console.log(chalk.cyan(` 2. Configure your .env files in /backend and /frontend`));
|
|
134
|
+
console.log(chalk.cyan(` 3. Run 'npm run dev' in /frontend`));
|
|
135
|
+
console.log(chalk.cyan(` 4. Start the backend with 'uvicorn app.main:app --reload'`));
|
|
136
|
+
|
|
137
|
+
} catch (error) {
|
|
138
|
+
spinner.fail(chalk.red('Failed to bootstrap project.'));
|
|
139
|
+
console.error(error);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
program.parse(process.argv);
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "aladdin-ai",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "The official CLI for AladdinAI Platform. Powered by RCF Protocol.",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"aladdin-ai": "index.js"
|
|
8
|
+
},
|
|
9
|
+
"publishConfig": {
|
|
10
|
+
"access": "public",
|
|
11
|
+
"registry": "https://registry.npmjs.org/"
|
|
12
|
+
},
|
|
13
|
+
"type": "module",
|
|
14
|
+
"scripts": {
|
|
15
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
16
|
+
},
|
|
17
|
+
"keywords": [
|
|
18
|
+
"ai",
|
|
19
|
+
"orchestrator",
|
|
20
|
+
"rcf-protocol",
|
|
21
|
+
"crm",
|
|
22
|
+
"aladdin-ai",
|
|
23
|
+
"automation"
|
|
24
|
+
],
|
|
25
|
+
"repository": {
|
|
26
|
+
"type": "git",
|
|
27
|
+
"url": "git+https://github.com/aliyevaladddin/AladdinAI.git"
|
|
28
|
+
},
|
|
29
|
+
"bugs": {
|
|
30
|
+
"url": "https://github.com/aliyevaladddin/AladdinAI/issues"
|
|
31
|
+
},
|
|
32
|
+
"homepage": "https://github.com/aliyevaladddin/AladdinAI#readme",
|
|
33
|
+
"author": "Aladdin Aliyev <aladdin@aliyev.site>",
|
|
34
|
+
"license": "Apache-2.0",
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"chalk": "^5.3.0",
|
|
37
|
+
"commander": "^12.0.3",
|
|
38
|
+
"execa": "^9.1.0",
|
|
39
|
+
"fs-extra": "^11.2.0",
|
|
40
|
+
"inquirer": "^9.2.22",
|
|
41
|
+
"ora": "^8.0.1"
|
|
42
|
+
}
|
|
43
|
+
}
|