antlink 0.0.5 → 0.0.7

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 CHANGED
@@ -17,17 +17,19 @@ $ npm install antlink -g # 全局安装
17
17
 
18
18
 
19
19
  ```shell
20
- cd E:\antwork # 蚁巢位置路径
21
- ant init # 建巢(获得安全码)
22
- ant reset [code] # 重置蚁巢(需安全码)
20
+ $ cd E:\antwork # 蚁巢路径 (必须空目录)
21
+ $ ant nest [name] # 添加蚁巢(获得安全码)
22
+ $ ant reset [code] # 重置蚁巢(需要安全码)
23
+ $ ant unlink [code] # 停止蚁巢(需要安全码)
24
+ $ ant relink [code] # 重启蚁巢(需要安全码)
23
25
  ```
24
26
 
25
27
 
26
28
  ```shell
27
- ant nest start # 启动蚁巢
28
- ant nest stop # 停止蚁巢
29
- ant nest restart # 重启蚁巢
30
- ant nest status # 运行状态
29
+ $ ant link # 启动蚁巢
30
+ $ ant info # 运行状态
31
+ $ ant backup [name] # 备份蚁巢
32
+ $ ant restore [name] # 恢复蚁巢
31
33
  ```
32
34
 
33
35
 
@@ -36,6 +38,7 @@ ant nest status # 运行状态
36
38
 
37
39
 
38
40
 
41
+
39
42
  [npm-v-1]: https://badgen.net/npm/v/antlink
40
43
  [npm-v-2]: https://img.shields.io/npm/v/antlink
41
44
  [npm-url]: https://www.npmjs.com/package/antlink
package/bin/ant CHANGED
@@ -1,2 +1,14 @@
1
- #!/usr/bin/env node
2
- require('../lib/comm');
1
+ #!/usr/bin/env node
2
+ const arg = process.argv;
3
+ const {version} = require('../package.json');
4
+ const versionFunt = ()=>{console.log('v'+version);}
5
+ if (arg.length < 3) versionFunt();
6
+ if (arg.length > 2) {
7
+ const arr = require('../lib/json/cmds.json');
8
+ const name = arg[2].toLowerCase(); // 字母转小写
9
+ if(arr.includes(name)){
10
+ require('../lib/order/'+name)(arg.slice(3));
11
+ }else {
12
+ console.log(`Command '${name}' doesn't exist!`);
13
+ }
14
+ }
@@ -1 +1 @@
1
- ["init","nest","reset","info"]
1
+ ["nest","reset","link","unlink","relink","info","backup","restore"]
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+ const oss = require('oss-sdk');
3
+ const log = require('../utils/logs');
4
+ module.exports = async(arg)=>{
5
+ const name = arg[0]||'antlink';
6
+ try{
7
+ await oss.tgz.min(process.cwd(),name+'.tgz');
8
+ log.g('Backup successful');
9
+ }catch(err){
10
+ log.r('Backup failed:'+err.message)
11
+ }
12
+ }
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+ const oss = require('oss-sdk');
3
+ const log = require('../utils/logs');
4
+ module.exports = async(arg)=>{
5
+ // 判断蚁巢是否初始化
6
+ const name = 'nest.ant';
7
+ const urls = process.cwd();
8
+ const dir = oss.dir(urls);
9
+ const resDir = await dir.list();
10
+ if(resDir?.length>0){
11
+ // 当前文件夹存在文件,需要清空
12
+ const file = oss.file(urls);
13
+ if(await file.ok(name)){
14
+ // 判断是不是蚁巢
15
+ try{
16
+ let fileRes = await file.get(name);
17
+ fileRes = JSON.parse(fileRes);
18
+ log.y('Ant Nest Name: '+fileRes.name);
19
+ const format = require('../utils/format');
20
+ log.y('Creation Time: '+format(fileRes.addTime,'YYYY-MM-DD HH:mm'));
21
+ }catch(err){
22
+ log.r(err)
23
+ }
24
+ }else{
25
+ // 当前文件夹存在文件,需要清空
26
+ log.r('The current folder is not empty')
27
+ log.r('Cannot be used to raise ants!')
28
+ }
29
+ }else{
30
+ // 开始初始化
31
+ const dirAdd = await dir.add('data','evolve','cache','logs');
32
+ if(dirAdd){
33
+ // 新建配置文件
34
+ let obj = {name:arg[0]||'queen'};
35
+ const {version} = require('../../package.json');
36
+ obj.version = version;
37
+ obj.addTime = new Date().getTime();
38
+ const rrid = require('rrid');
39
+ obj.appId = rrid.key(32);
40
+ const scode = rrid.key(32);
41
+ obj.appKey = rrid.ekey(obj.appId+obj.addTime+scode,obj.appId+obj.addTime+scode);
42
+ const file = oss.file(process.cwd());
43
+ const fileAdd = await file.add(name,JSON.stringify(obj));
44
+ if(fileAdd){
45
+ // 初始化成功
46
+ log.g('Initialization successful!');
47
+ log.y('Security Code:'+scode);
48
+ log.y('Keep the security code safe')
49
+ }else{
50
+ log.r('Initialization failed!');
51
+ await dir.clear();
52
+ }
53
+ }else{
54
+ //初始化失败:无法创建目录
55
+ log.r('Initialization failed: unable to create directory')
56
+ }
57
+ }
58
+ }
@@ -1,15 +1,16 @@
1
1
  'use strict';
2
- const oss = require('oss-sdk');
2
+ const oss = require('oss-sdk');
3
+ const log = require('../utils/logs');
3
4
  const scode = require('../utils/scode');
4
- const log = require('../utils/logs');
5
5
  module.exports = async(arg)=>{
6
- const res = await scode(arg[0]);
7
- if(res){
6
+ const obj = await scode(arg[0]);
7
+ if(obj){
8
8
  // 安全码验证通过
9
9
  const dir = oss.dir(process.cwd());
10
10
  const clear = await dir.clear();
11
11
  if(clear){
12
- log.g('Reset successful!');
12
+ const nest = require('./nest');
13
+ await nest(obj.name);
13
14
  }else{
14
15
  log.r('Reset failure!');
15
16
  }
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+ const oss = require('oss-sdk');
3
+ const log = require('../utils/logs');
4
+ module.exports = async(arg)=>{
5
+ const name = arg[0]||'antlink';
6
+ const paths = oss.path(process.cwd(),name+'.tgz');
7
+ try{
8
+ await oss.tgz.max(paths,process.cwd());
9
+ log.g('Restore successful!');
10
+ }catch(err){
11
+ log.r('Restore failed:'+err.message);
12
+ }
13
+ }
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+ module.exports = async(arg)=>{
3
+ console.log(arg);
4
+ }
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+ module.exports = (timestamp,formatStr = 'YYYY-MM-DD HH:mm:ss') => {
3
+ const date = new Date(timestamp);
4
+ const padZero = (num)=> {
5
+ return num.toString().padStart(2, '0');
6
+ }
7
+ const map = {
8
+ YYYY: date.getFullYear(),
9
+ MM: padZero(date.getMonth() + 1),
10
+ DD: padZero(date.getDate()),
11
+ HH: padZero(date.getHours()),
12
+ mm: padZero(date.getMinutes()),
13
+ ss: padZero(date.getSeconds())
14
+ };
15
+ return formatStr.replace(/YYYY|MM|DD|HH|mm|ss/g, matched => map[matched]);
16
+ }
@@ -11,12 +11,12 @@ module.exports = async(scode)=>{
11
11
  if(scode) {
12
12
  // 验证安全码
13
13
  const file = oss.file(process.cwd());
14
- let conf = await file.get('config.ant');
14
+ let conf = await file.get('nest.ant');
15
15
  if(conf){
16
16
  try {
17
17
  conf = JSON.parse(conf);
18
18
  const rrid = require('rrid');
19
- const key = rrid.ekey(conf.appId+conf.initTime+scode,conf.appId+conf.initTime+scode);
19
+ const key = rrid.ekey(conf.appId+conf.addTime+scode,conf.appId+conf.addTime+scode);
20
20
  if(key===conf.appKey){
21
21
  // 验证码通过
22
22
  ok = conf;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antlink",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "Ant Nest AI Framework.",
5
5
  "main": "index.js",
6
6
  "author": "weduu",
@@ -21,7 +21,7 @@
21
21
  "README.md"
22
22
  ],
23
23
  "dependencies": {
24
- "oss-sdk": "^1.0.5",
24
+ "oss-sdk": "^1.0.8",
25
25
  "rrid": "^1.0.7"
26
26
  }
27
27
  }
package/bin/plain.md DELETED
@@ -1,29 +0,0 @@
1
- AntLink
2
- ├── bin
3
- │ └── ant
4
- ├── lib
5
- │ ├── ants
6
- │ │ ├── models
7
- │ │ ├── plugins
8
- │ │ ├── skills
9
- │ │ └── tools
10
- │ ├── json
11
- │ │ └── cmds.json
12
- │ ├── order
13
- │ │ ├── nest
14
- │ │ │ └── index.js
15
- │ │ ├── init.js
16
- │ │ └── reset.js
17
- │ ├── utils
18
- │ │ ├── input.js
19
- │ │ ├── logs.js
20
- │ │ ├── plain.js
21
- │ │ └── scode.js
22
- │ ├── web
23
- │ │ ├── api
24
- │ │ └── h5
25
- │ └── comm.js
26
- ├── index.js
27
- ├── package.json
28
- ├── plain.md
29
- └── README.md
package/lib/comm.js DELETED
@@ -1,19 +0,0 @@
1
- 'use strict';
2
- fkgConmm();
3
- async function fkgConmm() {
4
- const arg = process.argv;
5
- const {version} = require('../package.json');
6
- const versionFunt = ()=>{console.log('v'+version);}
7
- if (arg.length < 3) versionFunt();
8
- if (arg.length > 2) {
9
- const arr = require('./json/cmds.json');
10
- const name = arg[2].toLowerCase(); // 字母转小写
11
- if (name=='-v') {
12
- versionFunt();
13
- } else if(arr.includes(name)){
14
- await require('./order/'+name)(arg.slice(3));
15
- }else {
16
- console.log(`Command '${name}' doesn't exist!`);
17
- }
18
- }
19
- }
package/lib/order/init.js DELETED
@@ -1,45 +0,0 @@
1
- 'use strict';
2
- const oss = require('oss-sdk');
3
- const log = require('../utils/logs');
4
- module.exports = async()=>{
5
- // 判断是否初始化
6
- const dir = oss.dir(process.cwd());
7
- const res = await dir.list();
8
- if(res){
9
- if(res.length>0){
10
- // 当前文件夹存在文件,需要清空
11
- log.r('The current folder is not empty')
12
- log.r('This folder must be cleared!')
13
- }else{
14
- // 开始初始化
15
- const dirAdd = await dir.add('nest','data','skills','scripts');
16
- if(dirAdd){
17
- // 新建配置文件
18
- let obj = {};
19
- const {version} = require('../../package.json');
20
- obj.version = version;
21
- obj.initTime = new Date().getTime();
22
- const rrid = require('rrid');
23
- obj.appId = rrid.key(32);
24
- const scode = rrid.key(16);
25
- obj.appKey = rrid.ekey(obj.appId+obj.initTime+scode,obj.appId+obj.initTime+scode);
26
- const file = oss.file(process.cwd());
27
- const fileAdd = await file.add('config.ant',JSON.stringify(obj));
28
- if(fileAdd){
29
- // 初始化成功
30
- log.g('Initialization successful!');
31
- log.y('Security Code:'+scode);
32
- log.y('Keep the security code safe')
33
- }else{
34
- log.r('Initialization failed!');
35
- await dir.clear();
36
- }
37
- }else{
38
- //初始化失败:无法创建目录
39
- log.r('Initialization failed: unable to create directory')
40
- }
41
- }
42
- }else{
43
- log.r('Unknown error!')
44
- }
45
- }
@@ -1,15 +0,0 @@
1
- 'use strict';
2
- const log = require('../../utils/logs');
3
- module.exports = async(arg)=>{
4
- if(arg.length===0){
5
- log.r('Missing parameter')
6
- }else{
7
- const cmd = arg[0];
8
- const arr = ['start','stop','restart','status'];
9
- if(arr.includes(cmd)) {
10
- await require('./'+cmd)(arg.slice(1));
11
- }else{
12
- log.y('Command not found:ant nest '+cmd)
13
- }
14
- }
15
- }
@@ -1,4 +0,0 @@
1
- 'use strict';
2
- module.exports = async()=>{
3
- console.log(arg);
4
- }
File without changes
File without changes
File without changes