@aswless_854771076/ai_short_studio_cli 0.1.49 → 0.1.51
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 +18 -3
- package/dist/base-command.d.ts +1 -0
- package/dist/base-command.js +1 -0
- package/dist/client/api-client.d.ts +2 -0
- package/dist/client/api-client.js +4 -0
- package/dist/commands/auth/login.d.ts +1 -0
- package/dist/commands/auth/logout.d.ts +1 -0
- package/dist/commands/auth/signup.d.ts +1 -0
- package/dist/commands/auth/status.d.ts +1 -0
- package/dist/commands/canvas/apply.d.ts +1 -0
- package/dist/commands/canvas/asset/download.d.ts +1 -0
- package/dist/commands/canvas/asset/get.d.ts +1 -0
- package/dist/commands/canvas/asset/list.d.ts +1 -0
- package/dist/commands/canvas/asset/select.d.ts +1 -0
- package/dist/commands/canvas/asset/upload.d.ts +1 -0
- package/dist/commands/canvas/continuity/analyze.d.ts +1 -0
- package/dist/commands/canvas/edge/connect.d.ts +1 -0
- package/dist/commands/canvas/edge/disconnect.d.ts +1 -0
- package/dist/commands/canvas/edge/list.d.ts +1 -0
- package/dist/commands/canvas/episode/create.d.ts +14 -0
- package/dist/commands/canvas/episode/create.js +16 -0
- package/dist/commands/canvas/episode/list.d.ts +12 -0
- package/dist/commands/canvas/episode/list.js +10 -0
- package/dist/commands/canvas/folder/copy-cross-project.d.ts +25 -0
- package/dist/commands/canvas/folder/copy-cross-project.js +51 -0
- package/dist/commands/canvas/folder/create.d.ts +20 -0
- package/dist/commands/canvas/folder/create.js +28 -0
- package/dist/commands/canvas/folder/delete.d.ts +19 -0
- package/dist/commands/canvas/folder/delete.js +25 -0
- package/dist/commands/canvas/folder/list.d.ts +19 -0
- package/dist/commands/canvas/folder/list.js +26 -0
- package/dist/commands/canvas/folder/move.d.ts +21 -0
- package/dist/commands/canvas/folder/move.js +32 -0
- package/dist/commands/canvas/folder/rename.d.ts +21 -0
- package/dist/commands/canvas/folder/rename.js +27 -0
- package/dist/commands/canvas/folder/restore.d.ts +19 -0
- package/dist/commands/canvas/folder/restore.js +25 -0
- package/dist/commands/canvas/get.d.ts +1 -0
- package/dist/commands/canvas/inspect.d.ts +1 -0
- package/dist/commands/canvas/node/add.d.ts +1 -0
- package/dist/commands/canvas/node/delete.d.ts +1 -0
- package/dist/commands/canvas/node/edit-resource.d.ts +1 -0
- package/dist/commands/canvas/node/edit-shot.d.ts +1 -0
- package/dist/commands/canvas/node/get.d.ts +1 -0
- package/dist/commands/canvas/node/list.d.ts +1 -0
- package/dist/commands/canvas/node/run.d.ts +1 -0
- package/dist/commands/canvas/node/types.d.ts +1 -0
- package/dist/commands/canvas/node/update-many.d.ts +1 -0
- package/dist/commands/canvas/node/update.d.ts +1 -0
- package/dist/commands/canvas/settings/get.d.ts +1 -0
- package/dist/commands/canvas/settings/set.d.ts +1 -0
- package/dist/commands/config/get.d.ts +1 -0
- package/dist/commands/config/set.d.ts +1 -0
- package/dist/commands/preflight.d.ts +1 -0
- package/dist/commands/project/create.d.ts +1 -0
- package/dist/commands/project/delete.d.ts +1 -0
- package/dist/commands/project/get.d.ts +1 -0
- package/dist/commands/project/list.d.ts +1 -0
- package/dist/commands/project/provider/get.d.ts +1 -0
- package/dist/commands/project/provider/set.d.ts +1 -0
- package/dist/commands/project/provider/test.d.ts +1 -0
- package/dist/commands/project/update.d.ts +1 -0
- package/dist/commands/skill/install.d.ts +1 -0
- package/dist/commands/skill/path.d.ts +1 -0
- package/dist/commands/skill/status.d.ts +1 -0
- package/dist/commands/task/cancel.d.ts +1 -0
- package/dist/commands/task/get.d.ts +1 -0
- package/dist/commands/task/wait.d.ts +1 -0
- package/dist/domain/vvicat-api.d.ts +21 -0
- package/dist/domain/vvicat-api.js +42 -0
- package/dist/preflight.js +0 -4
- package/dist/runtime.d.ts +1 -0
- package/dist/runtime.js +1 -1
- package/package.json +1 -1
- package/skills/using-vvicat-ai-short-studio-cli/SKILL.md +51 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/commands.md +5 -3
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { BaseCommand } from '../../../base-command.js';
|
|
3
|
+
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
4
|
+
/**
|
|
5
|
+
* 重命名画布目录(仅用户自建目录,preset 不可改)
|
|
6
|
+
* - --folder-id 目标目录 ID(camelCase 别名 --folder 也可)
|
|
7
|
+
* - --name 新名称
|
|
8
|
+
* - 失败码:FOLDER_PRESET_IMMUTABLE / FOLDER_NOT_FOUND
|
|
9
|
+
*/
|
|
10
|
+
export default class CanvasFolderRename extends BaseCommand {
|
|
11
|
+
static description = '重命名画布目录(Rename canvas asset folder)';
|
|
12
|
+
static flags = {
|
|
13
|
+
...BaseCommand.baseFlags,
|
|
14
|
+
project: projectFlag,
|
|
15
|
+
'folder-id': Flags.string({
|
|
16
|
+
description: '目录 ID;可用 --folder 替代(Folder id)',
|
|
17
|
+
required: true,
|
|
18
|
+
aliases: ['folder'],
|
|
19
|
+
}),
|
|
20
|
+
name: Flags.string({ description: '新目录名称(New folder name)', required: true }),
|
|
21
|
+
};
|
|
22
|
+
async run() {
|
|
23
|
+
const { flags } = await this.parse(CanvasFolderRename);
|
|
24
|
+
const { api } = await commandApi(flags);
|
|
25
|
+
this.print(await api.updateFolder(flags.project, flags['folder-id'], { name: flags.name }));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* 恢复 30 天内软删的画布目录
|
|
4
|
+
* - --folder-id 目标目录 ID(camelCase 别名 --folder 也可)
|
|
5
|
+
* - 失败码:FOLDER_NOT_FOUND / GONE(超过 30 天回收窗口)
|
|
6
|
+
*/
|
|
7
|
+
export default class CanvasFolderRestore extends BaseCommand {
|
|
8
|
+
static description: string;
|
|
9
|
+
static flags: {
|
|
10
|
+
project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
'folder-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { BaseCommand } from '../../../base-command.js';
|
|
3
|
+
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
4
|
+
/**
|
|
5
|
+
* 恢复 30 天内软删的画布目录
|
|
6
|
+
* - --folder-id 目标目录 ID(camelCase 别名 --folder 也可)
|
|
7
|
+
* - 失败码:FOLDER_NOT_FOUND / GONE(超过 30 天回收窗口)
|
|
8
|
+
*/
|
|
9
|
+
export default class CanvasFolderRestore extends BaseCommand {
|
|
10
|
+
static description = '恢复软删的画布目录(Restore soft-deleted canvas asset folder)';
|
|
11
|
+
static flags = {
|
|
12
|
+
...BaseCommand.baseFlags,
|
|
13
|
+
project: projectFlag,
|
|
14
|
+
'folder-id': Flags.string({
|
|
15
|
+
description: '目录 ID;可用 --folder 替代(Folder id)',
|
|
16
|
+
required: true,
|
|
17
|
+
aliases: ['folder'],
|
|
18
|
+
}),
|
|
19
|
+
};
|
|
20
|
+
async run() {
|
|
21
|
+
const { flags } = await this.parse(CanvasFolderRestore);
|
|
22
|
+
const { api } = await commandApi(flags);
|
|
23
|
+
this.print(await api.restoreFolder(flags.project, flags['folder-id']));
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -6,6 +6,7 @@ export default class CanvasGet extends BaseCommand {
|
|
|
6
6
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
10
|
};
|
|
10
11
|
run(): Promise<void>;
|
|
11
12
|
}
|
|
@@ -14,6 +14,7 @@ export default class CanvasInspect extends BaseCommand {
|
|
|
14
14
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
15
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
18
|
};
|
|
18
19
|
run(): Promise<void>;
|
|
19
20
|
}
|
|
@@ -13,6 +13,7 @@ export default class CanvasNodeAdd extends BaseCommand {
|
|
|
13
13
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
17
|
};
|
|
17
18
|
run(): Promise<void>;
|
|
18
19
|
}
|
|
@@ -10,6 +10,7 @@ export default class CanvasNodeDelete extends BaseCommand {
|
|
|
10
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
};
|
|
14
15
|
run(): Promise<void>;
|
|
15
16
|
}
|
|
@@ -10,6 +10,7 @@ export default class CanvasNodeEditResource extends BaseCommand {
|
|
|
10
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
};
|
|
14
15
|
run(): Promise<void>;
|
|
15
16
|
}
|
|
@@ -10,6 +10,7 @@ export default class CanvasNodeEditShot extends BaseCommand {
|
|
|
10
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
};
|
|
14
15
|
run(): Promise<void>;
|
|
15
16
|
}
|
|
@@ -9,6 +9,7 @@ export default class CanvasNodeGet extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -6,6 +6,7 @@ export default class CanvasNodeList extends BaseCommand {
|
|
|
6
6
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
10
|
};
|
|
10
11
|
run(): Promise<void>;
|
|
11
12
|
}
|
|
@@ -13,6 +13,7 @@ export default class CanvasNodeRun extends BaseCommand {
|
|
|
13
13
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
17
|
};
|
|
17
18
|
run(): Promise<void>;
|
|
18
19
|
}
|
|
@@ -9,6 +9,7 @@ export default class CanvasNodeTypes extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -8,6 +8,7 @@ export default class CanvasNodeUpdateMany extends BaseCommand {
|
|
|
8
8
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
};
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
}
|
|
@@ -15,6 +15,7 @@ export default class CanvasNodeUpdate extends BaseCommand {
|
|
|
15
15
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
16
16
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
19
|
};
|
|
19
20
|
run(): Promise<void>;
|
|
20
21
|
}
|
|
@@ -6,6 +6,7 @@ export default class CanvasSettingsGet extends BaseCommand {
|
|
|
6
6
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
10
|
};
|
|
10
11
|
run(): Promise<void>;
|
|
11
12
|
}
|
|
@@ -17,6 +17,7 @@ export default class CanvasSettingsSet extends BaseCommand {
|
|
|
17
17
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
18
18
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
19
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
21
|
};
|
|
21
22
|
run(): Promise<void>;
|
|
22
23
|
}
|
|
@@ -5,6 +5,7 @@ export default class ConfigGet extends BaseCommand {
|
|
|
5
5
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
6
6
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
7
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
9
|
};
|
|
9
10
|
run(): Promise<void>;
|
|
10
11
|
}
|
|
@@ -6,6 +6,7 @@ export default class ConfigSet extends BaseCommand {
|
|
|
6
6
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
10
|
};
|
|
10
11
|
run(): Promise<void>;
|
|
11
12
|
}
|
|
@@ -7,6 +7,7 @@ export default class Preflight extends BaseCommand {
|
|
|
7
7
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
8
8
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
11
|
};
|
|
11
12
|
run(): Promise<void>;
|
|
12
13
|
}
|
|
@@ -7,6 +7,7 @@ export default class ProjectCreate extends BaseCommand {
|
|
|
7
7
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
8
8
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
11
|
};
|
|
11
12
|
run(): Promise<void>;
|
|
12
13
|
}
|
|
@@ -9,6 +9,7 @@ export default class ProjectDelete extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -8,6 +8,7 @@ export default class ProjectGet extends BaseCommand {
|
|
|
8
8
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
};
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
}
|
|
@@ -9,6 +9,7 @@ export default class ProjectList extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -8,6 +8,7 @@ export default class ProjectProviderGet extends BaseCommand {
|
|
|
8
8
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
};
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
}
|
|
@@ -9,6 +9,7 @@ export default class ProjectProviderSet extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -8,6 +8,7 @@ export default class ProjectProviderTest extends BaseCommand {
|
|
|
8
8
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
};
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
}
|
|
@@ -10,6 +10,7 @@ export default class ProjectUpdate extends BaseCommand {
|
|
|
10
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
};
|
|
14
15
|
run(): Promise<void>;
|
|
15
16
|
}
|
|
@@ -10,6 +10,7 @@ export default class SkillInstall extends BaseCommand {
|
|
|
10
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
};
|
|
14
15
|
run(): Promise<void>;
|
|
15
16
|
}
|
|
@@ -9,6 +9,7 @@ export default class SkillPath extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -9,6 +9,7 @@ export default class SkillStatus extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -9,6 +9,7 @@ export default class TaskCancel extends BaseCommand {
|
|
|
9
9
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<void>;
|
|
14
15
|
}
|
|
@@ -8,6 +8,7 @@ export default class TaskGet extends BaseCommand {
|
|
|
8
8
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
};
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
}
|
|
@@ -11,6 +11,7 @@ export default class TaskWait extends BaseCommand {
|
|
|
11
11
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
12
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
15
|
};
|
|
15
16
|
run(): Promise<void>;
|
|
16
17
|
}
|
|
@@ -67,8 +67,29 @@ export declare class VvicatApi {
|
|
|
67
67
|
testProjectMaterialProvider(projectId: string): Promise<JsonObject>;
|
|
68
68
|
deleteProject(projectId: string): Promise<JsonObject>;
|
|
69
69
|
canvas(projectId: string): Promise<CanvasDto>;
|
|
70
|
+
listCanvasEpisodes(projectId: string): Promise<JsonObject[]>;
|
|
71
|
+
createCanvasEpisode(projectId: string, episodeNumber: number, name?: string): Promise<JsonObject>;
|
|
70
72
|
canvasSettings(projectId: string): Promise<JsonObject>;
|
|
71
73
|
updateCanvasSettings(projectId: string, input: JsonObject): Promise<JsonObject>;
|
|
74
|
+
listFolders(projectId: string, query?: string): Promise<JsonObject>;
|
|
75
|
+
createFolder(projectId: string, input: {
|
|
76
|
+
name: string;
|
|
77
|
+
parentId?: string | null;
|
|
78
|
+
}): Promise<JsonObject>;
|
|
79
|
+
updateFolder(projectId: string, folderId: string, input: {
|
|
80
|
+
name?: string;
|
|
81
|
+
}): Promise<JsonObject>;
|
|
82
|
+
deleteFolder(projectId: string, folderId: string): Promise<JsonObject>;
|
|
83
|
+
restoreFolder(projectId: string, folderId: string): Promise<JsonObject>;
|
|
84
|
+
moveFolder(projectId: string, folderId: string, input: {
|
|
85
|
+
newParentId: string | null;
|
|
86
|
+
}): Promise<JsonObject>;
|
|
87
|
+
copyAssetCrossProject(projectId: string, input: {
|
|
88
|
+
assetId: string;
|
|
89
|
+
targetProjectId: string;
|
|
90
|
+
targetFolderId: string | null;
|
|
91
|
+
targetCanvasEpisodeId?: string | null;
|
|
92
|
+
}): Promise<JsonObject>;
|
|
72
93
|
listNodes(projectId: string): Promise<CanvasNode[]>;
|
|
73
94
|
node(projectId: string, nodeId: string): Promise<CanvasNode>;
|
|
74
95
|
listEdges(projectId: string): Promise<JsonObject[]>;
|
|
@@ -102,12 +102,51 @@ export class VvicatApi {
|
|
|
102
102
|
const payload = await this.client.request(`/api/projects/${projectId}/canvas`);
|
|
103
103
|
return payload.data.canvas;
|
|
104
104
|
}
|
|
105
|
+
async listCanvasEpisodes(projectId) {
|
|
106
|
+
const payload = await this.client.request(`/api/projects/${projectId}/canvas-episodes`);
|
|
107
|
+
return payload.episodes;
|
|
108
|
+
}
|
|
109
|
+
async createCanvasEpisode(projectId, episodeNumber, name) {
|
|
110
|
+
return this.client.request(`/api/projects/${projectId}/canvas-episodes`, {
|
|
111
|
+
method: 'POST', body: { episodeNumber, ...(name ? { name } : {}) },
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
// CLI 只开放分集查询与创建;删除涉及“至少保留一集”约束,继续由网页交互确认。
|
|
105
115
|
canvasSettings(projectId) {
|
|
106
116
|
return this.client.request(`/api/projects/${projectId}/canvas/settings`);
|
|
107
117
|
}
|
|
108
118
|
updateCanvasSettings(projectId, input) {
|
|
109
119
|
return this.client.request(`/api/projects/${projectId}/canvas/settings`, { method: 'PATCH', body: input });
|
|
110
120
|
}
|
|
121
|
+
listFolders(projectId, query = '') {
|
|
122
|
+
// 树形目录列表;预设 5 项 + 用户子目录(含 deletedAt / purgeInDays / referencedBy)
|
|
123
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders${query ? `?${query}` : ''}`);
|
|
124
|
+
}
|
|
125
|
+
createFolder(projectId, input) {
|
|
126
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders`, { method: 'POST', body: input });
|
|
127
|
+
}
|
|
128
|
+
updateFolder(projectId, folderId, input) {
|
|
129
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders/${folderId}`, { method: 'PATCH', body: input });
|
|
130
|
+
}
|
|
131
|
+
deleteFolder(projectId, folderId) {
|
|
132
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders/${folderId}`, {
|
|
133
|
+
method: 'DELETE',
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
restoreFolder(projectId, folderId) {
|
|
137
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders/${folderId}/restore`, { method: 'POST' });
|
|
138
|
+
}
|
|
139
|
+
moveFolder(projectId, folderId, input) {
|
|
140
|
+
// 服务端契约使用 newParentId;调用方传入 null 表示提升到根
|
|
141
|
+
return this.client.request(`/api/projects/${projectId}/canvas-folders/${folderId}/move`, {
|
|
142
|
+
method: 'PATCH', body: { newParentId: input.newParentId },
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
copyAssetCrossProject(projectId, input) {
|
|
146
|
+
return this.client.request(`/api/projects/${projectId}/canvas-assets/copy-cross-project`, {
|
|
147
|
+
method: 'POST', body: input,
|
|
148
|
+
});
|
|
149
|
+
}
|
|
111
150
|
async listNodes(projectId) {
|
|
112
151
|
return (await this.canvas(projectId)).nodes;
|
|
113
152
|
}
|
|
@@ -284,6 +323,7 @@ export class VvicatApi {
|
|
|
284
323
|
task(taskId) {
|
|
285
324
|
return this.client.request(`/api/tasks/${taskId}`);
|
|
286
325
|
}
|
|
326
|
+
// CLI 只读取、等待或取消任务;人工复核结果仍由网页端提交,避免自动化误选生产资产。
|
|
287
327
|
cancelTask(taskId) {
|
|
288
328
|
return this.client.request(`/api/tasks/${taskId}`, { method: 'DELETE' });
|
|
289
329
|
}
|
|
@@ -299,6 +339,8 @@ export class VvicatApi {
|
|
|
299
339
|
return this.client.request('/api/user/api-config?redactSecrets=1');
|
|
300
340
|
}
|
|
301
341
|
updateConfig(input) {
|
|
342
|
+
if (Object.hasOwn(input, 'providers') || Object.hasOwn(input, 'models'))
|
|
343
|
+
throw new Error('供应商和模型目录只能由管理员维护');
|
|
302
344
|
return this.client.request('/api/user/api-config', { method: 'PUT', body: input });
|
|
303
345
|
}
|
|
304
346
|
raw(path, options) {
|
package/dist/preflight.js
CHANGED
|
@@ -87,7 +87,6 @@ export function updateCliPackage(input) {
|
|
|
87
87
|
}
|
|
88
88
|
export function inspectCreationConfig(config) {
|
|
89
89
|
const value = isRecord(config) ? config : {};
|
|
90
|
-
const providers = Array.isArray(value.providers) ? value.providers.filter(isRecord) : [];
|
|
91
90
|
const models = Array.isArray(value.models) ? value.models.filter(isRecord) : [];
|
|
92
91
|
const defaults = isRecord(value.defaultModels) ? value.defaultModels : {};
|
|
93
92
|
const capabilityDefaults = isRecord(value.capabilityDefaults) ? value.capabilityDefaults : {};
|
|
@@ -105,9 +104,6 @@ export function inspectCreationConfig(config) {
|
|
|
105
104
|
addMissing(`models.${modelKey}`);
|
|
106
105
|
continue;
|
|
107
106
|
}
|
|
108
|
-
const provider = providers.find((item) => item.id === model.provider);
|
|
109
|
-
if (!provider || provider.hasApiKey !== true)
|
|
110
|
-
addMissing(`providers.${String(model.provider)}.apiKey`);
|
|
111
107
|
inspectModelCapabilities(model, modelKey, expectedType, capabilityDefaults, addMissing);
|
|
112
108
|
}
|
|
113
109
|
if (!isRecord(value.capabilityDefaults))
|
package/dist/runtime.d.ts
CHANGED
package/dist/runtime.js
CHANGED
|
@@ -36,7 +36,7 @@ export async function createRuntime(flags) {
|
|
|
36
36
|
return {
|
|
37
37
|
profile,
|
|
38
38
|
session,
|
|
39
|
-
client: new ApiClient({ baseUrl, session, locale: flags.locale }),
|
|
39
|
+
client: new ApiClient({ baseUrl, session, locale: flags.locale, episode: flags.episode }),
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
42
|
function resolveAuthConfig(profile, flags) {
|