@fifine/aim-studio 0.0.2 → 0.0.4

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.
Files changed (104) hide show
  1. package/README.md +65 -99
  2. package/dist/commands/init.d.ts.map +1 -1
  3. package/dist/commands/init.js +123 -101
  4. package/dist/commands/init.js.map +1 -1
  5. package/dist/configurators/workflow.d.ts.map +1 -1
  6. package/dist/configurators/workflow.js +91 -65
  7. package/dist/configurators/workflow.js.map +1 -1
  8. package/dist/constants/paths.d.ts +5 -5
  9. package/dist/constants/paths.d.ts.map +1 -1
  10. package/dist/constants/paths.js +5 -5
  11. package/dist/constants/paths.js.map +1 -1
  12. package/dist/templates/aim/index.d.ts +1 -0
  13. package/dist/templates/aim/index.d.ts.map +1 -1
  14. package/dist/templates/aim/index.js +2 -0
  15. package/dist/templates/aim/index.js.map +1 -1
  16. package/dist/templates/aim/scripts/common/developer.py +2 -1
  17. package/dist/templates/aim/scripts/common/paths.py +3 -2
  18. package/dist/templates/aim/scripts/export.py +718 -0
  19. package/dist/templates/aim/workflow.md +12 -13
  20. package/dist/templates/claude/commands/aim/export.md +258 -108
  21. package/dist/templates/claude/commands/aim/finish-work.md +23 -0
  22. package/dist/templates/claude/commands/aim/onboard.md +10 -8
  23. package/dist/templates/claude/commands/aim/start.md +104 -37
  24. package/dist/templates/claude/commands/aim/story.md +275 -67
  25. package/dist/templates/claude/hooks/inject-subagent-context.py +6 -10
  26. package/dist/templates/claude/hooks/session-start.py +134 -24
  27. package/dist/templates/markdown/index.d.ts +5 -0
  28. package/dist/templates/markdown/index.d.ts.map +1 -1
  29. package/dist/templates/markdown/index.js +6 -0
  30. package/dist/templates/markdown/index.js.map +1 -1
  31. package/dist/templates/markdown/spec/cli/directory-structure.md.txt +71 -0
  32. package/dist/templates/markdown/spec/cli/error-handling.md.txt +91 -0
  33. package/dist/templates/markdown/spec/cli/index.md.txt +37 -0
  34. package/dist/templates/markdown/spec/cli/options-flags.md.txt +71 -0
  35. package/dist/templates/markdown/spec/cli/output-formatting.md.txt +93 -0
  36. package/dist/utils/project-detector.d.ts +1 -1
  37. package/dist/utils/project-detector.d.ts.map +1 -1
  38. package/dist/utils/project-detector.js +20 -0
  39. package/dist/utils/project-detector.js.map +1 -1
  40. package/package.json +1 -1
  41. package/dist/templates/claude/commands/trellis/before-backend-dev.md +0 -13
  42. package/dist/templates/claude/commands/trellis/before-frontend-dev.md +0 -13
  43. package/dist/templates/claude/commands/trellis/break-loop.md +0 -125
  44. package/dist/templates/claude/commands/trellis/check-backend.md +0 -13
  45. package/dist/templates/claude/commands/trellis/check-cross-layer.md +0 -153
  46. package/dist/templates/claude/commands/trellis/check-frontend.md +0 -13
  47. package/dist/templates/claude/commands/trellis/create-command.md +0 -154
  48. package/dist/templates/claude/commands/trellis/finish-work.md +0 -129
  49. package/dist/templates/claude/commands/trellis/integrate-skill.md +0 -219
  50. package/dist/templates/claude/commands/trellis/onboard.md +0 -358
  51. package/dist/templates/claude/commands/trellis/parallel.md +0 -193
  52. package/dist/templates/claude/commands/trellis/record-session.md +0 -62
  53. package/dist/templates/claude/commands/trellis/start.md +0 -280
  54. package/dist/templates/claude/commands/trellis/update-spec.md +0 -285
  55. package/dist/templates/trellis/gitignore.txt +0 -29
  56. package/dist/templates/trellis/index.d.ts +0 -49
  57. package/dist/templates/trellis/index.d.ts.map +0 -1
  58. package/dist/templates/trellis/index.js +0 -92
  59. package/dist/templates/trellis/index.js.map +0 -1
  60. package/dist/templates/trellis/scripts/__init__.py +0 -5
  61. package/dist/templates/trellis/scripts/add_session.py +0 -392
  62. package/dist/templates/trellis/scripts/common/__init__.py +0 -80
  63. package/dist/templates/trellis/scripts/common/cli_adapter.py +0 -435
  64. package/dist/templates/trellis/scripts/common/developer.py +0 -190
  65. package/dist/templates/trellis/scripts/common/git_context.py +0 -383
  66. package/dist/templates/trellis/scripts/common/paths.py +0 -347
  67. package/dist/templates/trellis/scripts/common/phase.py +0 -253
  68. package/dist/templates/trellis/scripts/common/registry.py +0 -366
  69. package/dist/templates/trellis/scripts/common/task_queue.py +0 -255
  70. package/dist/templates/trellis/scripts/common/task_utils.py +0 -178
  71. package/dist/templates/trellis/scripts/common/worktree.py +0 -219
  72. package/dist/templates/trellis/scripts/create_bootstrap.py +0 -290
  73. package/dist/templates/trellis/scripts/get_context.py +0 -16
  74. package/dist/templates/trellis/scripts/get_developer.py +0 -26
  75. package/dist/templates/trellis/scripts/init_developer.py +0 -51
  76. package/dist/templates/trellis/scripts/multi_agent/__init__.py +0 -5
  77. package/dist/templates/trellis/scripts/multi_agent/cleanup.py +0 -403
  78. package/dist/templates/trellis/scripts/multi_agent/create_pr.py +0 -329
  79. package/dist/templates/trellis/scripts/multi_agent/plan.py +0 -233
  80. package/dist/templates/trellis/scripts/multi_agent/start.py +0 -461
  81. package/dist/templates/trellis/scripts/multi_agent/status.py +0 -817
  82. package/dist/templates/trellis/scripts/task.py +0 -1056
  83. package/dist/templates/trellis/scripts-shell-archive/add-session.sh +0 -384
  84. package/dist/templates/trellis/scripts-shell-archive/common/developer.sh +0 -129
  85. package/dist/templates/trellis/scripts-shell-archive/common/git-context.sh +0 -263
  86. package/dist/templates/trellis/scripts-shell-archive/common/paths.sh +0 -208
  87. package/dist/templates/trellis/scripts-shell-archive/common/phase.sh +0 -150
  88. package/dist/templates/trellis/scripts-shell-archive/common/registry.sh +0 -247
  89. package/dist/templates/trellis/scripts-shell-archive/common/task-queue.sh +0 -142
  90. package/dist/templates/trellis/scripts-shell-archive/common/task-utils.sh +0 -151
  91. package/dist/templates/trellis/scripts-shell-archive/common/worktree.sh +0 -128
  92. package/dist/templates/trellis/scripts-shell-archive/create-bootstrap.sh +0 -299
  93. package/dist/templates/trellis/scripts-shell-archive/get-context.sh +0 -7
  94. package/dist/templates/trellis/scripts-shell-archive/get-developer.sh +0 -15
  95. package/dist/templates/trellis/scripts-shell-archive/init-developer.sh +0 -34
  96. package/dist/templates/trellis/scripts-shell-archive/multi-agent/cleanup.sh +0 -396
  97. package/dist/templates/trellis/scripts-shell-archive/multi-agent/create-pr.sh +0 -241
  98. package/dist/templates/trellis/scripts-shell-archive/multi-agent/plan.sh +0 -207
  99. package/dist/templates/trellis/scripts-shell-archive/multi-agent/start.sh +0 -317
  100. package/dist/templates/trellis/scripts-shell-archive/multi-agent/status.sh +0 -828
  101. package/dist/templates/trellis/scripts-shell-archive/task.sh +0 -1204
  102. package/dist/templates/trellis/tasks/.gitkeep +0 -0
  103. package/dist/templates/trellis/workflow.md +0 -416
  104. package/dist/templates/trellis/worktree.yaml +0 -47
@@ -1,25 +1,25 @@
1
1
  ---
2
2
  name: start
3
- description: 开始 AIM Studio 创作会话
3
+ description: 开始 AIM Studio 开发会话
4
4
  ---
5
5
 
6
6
  # 开始会话
7
7
 
8
- 初始化 AIM Studio 漫剧创作会话,开始你的创作之旅。
8
+ 初始化 AIM Studio 开发会话,开始你的开发工作。
9
9
 
10
10
  ---
11
11
 
12
12
  ## 适用场景
13
13
 
14
- - 首次开始漫剧创作
15
- - 开始新的创作会话
14
+ - 首次开始项目开发
15
+ - 开始新的开发会话
16
16
  - 想要了解当前项目状态
17
17
 
18
18
  ---
19
19
 
20
20
  ## 使用步骤
21
21
 
22
- ### 步骤 1:理解创作工作流
22
+ ### 步骤 1:理解工作流
23
23
 
24
24
  首先阅读工作流指南:
25
25
 
@@ -30,28 +30,74 @@ cat .aim-studio/workflow.md
30
30
  **遵循 workflow.md 中的指导**,包含:
31
31
  - 核心原则(先读后写、遵循规范等)
32
32
  - 文件系统结构
33
- - 创作流程
33
+ - 开发流程
34
34
  - 最佳实践
35
35
 
36
36
  ### 步骤 2:获取当前上下文
37
37
 
38
38
  ```bash
39
- aim status
39
+ python3 .aim-studio/scripts/get_context.py
40
+ ```
41
+
42
+ 或者查看项目状态:
43
+
44
+ ```bash
45
+ python3 .aim-studio/scripts/task.py status
40
46
  ```
41
47
 
42
48
  显示:项目状态、当前任务(如有)、活跃任务列表。
43
49
 
44
- ### 步骤 3:阅读创作规范
50
+ ### 步骤 3:阅读开发规范
51
+
52
+ 根据项目类型,阅读相应的规范:
45
53
 
54
+ **如果是 CLI 项目**:
46
55
  ```bash
47
- cat .aim-studio/spec/story/script.md # 剧本与分镜规范
48
- cat .aim-studio/spec/story/character.md # 角色设定规范
49
- cat .aim-studio/spec/story/world.md # 世界观设定规范
56
+ cat .aim-studio/spec/cli/index.md # CLI 开发规范
57
+ cat .aim-studio/spec/cli/directory-structure.md
50
58
  ```
51
59
 
52
- ### 步骤 4:开始创作
60
+ **如果是前端项目**:
61
+ ```bash
62
+ cat .aim-studio/spec/frontend/index.md # 前端开发规范
63
+ cat .aim-studio/spec/frontend/component-guidelines.md
64
+ ```
53
65
 
54
- 报告你了解到的内容,询问用户:"您想要创作什么内容?"
66
+ **如果是后端项目**:
67
+ ```bash
68
+ cat .aim-studio/spec/backend/index.md # 后端开发规范
69
+ cat .aim-studio/spec/backend/directory-structure.md
70
+ ```
71
+
72
+ **如果是全栈项目**:
73
+ ```bash
74
+ cat .aim-studio/spec/frontend/index.md
75
+ cat .aim-studio/spec/backend/index.md
76
+ ```
77
+
78
+ **如果是漫剧创作项目**:
79
+ ```bash
80
+ cat .aim-studio/spec/story/script.md # 剧本与分镜规范
81
+ cat .aim-studio/spec/story/character.md # 角色设定规范
82
+ cat .aim-studio/spec/story/world.md # 世界观设定规范
83
+ ```
84
+
85
+ ### 步骤 4:检查当前任务
86
+
87
+ 查看是否有待完成的任务:
88
+
89
+ ```bash
90
+ python3 .aim-studio/scripts/task.py list
91
+ ```
92
+
93
+ 如果有任务,查看任务详情:
94
+ ```bash
95
+ python3 .aim-studio/scripts/task.py show <任务名>
96
+ ```
97
+
98
+ ### 步骤 5:开始工作
99
+
100
+ 报告你了解到的内容,询问用户:"您好!请问今天需要做什么?"
55
101
 
56
102
  ---
57
103
 
@@ -61,31 +107,46 @@ cat .aim-studio/spec/story/world.md # 世界观设定规范
61
107
 
62
108
  | 类型 | 标准 | 处理方式 |
63
109
  |------|------|----------|
64
- | 问题 | 用户询问关于创作、角色、世界观的问题 | 直接回答 |
65
- | 简单修改 | 修改角色设定、世界观设定等 | 直接编辑 |
66
- | 创作任务 | 创作新剧集、场次、角色等 | 使用 `/aim:story` 创作工作流 |
110
+ | 问题 | 用户询问关于项目的问题 | 直接回答 |
111
+ | 简单修改 | 小改动 | 直接处理 |
112
+ | 开发任务 | 需要多步骤完成的任务 | 创建任务并执行 |
113
+ | 漫剧创作 | 创作新故事、角色等(仅限 story 项目) | 使用 `/aim:story` |
114
+
115
+ ---
116
+
117
+ ## 项目类型检测
118
+
119
+ 根据项目结构自动识别项目类型:
120
+
121
+ | 项目类型 | 特征 | 规范目录 |
122
+ |----------|------|----------|
123
+ | CLI 工具 | 有 `bin/` 目录 | `spec/cli/` |
124
+ | 前端 | 有 `package.json`、前端框架 | `spec/frontend/` |
125
+ | 后端 | 有 `requirements.txt`、`go.mod` 等 | `spec/backend/` |
126
+ | 全栈 | 既有前端又有后端 | `spec/frontend/` + `spec/backend/` |
127
+ | 漫剧创作 | 有 `spec/story/` | `spec/story/` |
67
128
 
68
129
  ---
69
130
 
70
131
  ## 组合使用方案
71
132
 
72
- ### 方案一:全新项目启动
133
+ ### 方案一:日常开发
73
134
 
74
135
  ```
75
136
  1. /aim:start → 阅读工作流和项目状态
76
- 2. /aim:story → 开始创作新项目
77
- 3. /aim:portrait <角色名> 生成角色肖像
78
- 4. /aim:visualize → 生成图片提示词
79
- 5. /aim:finish-work → 完成工作
137
+ 2. 讨论需求...
138
+ 3. /aim:finish-work 完成工作并记录
80
139
  ```
81
140
 
82
- ### 方案二:继续现有创作
141
+ ### 方案二:漫剧创作(仅限 story 项目)
83
142
 
84
143
  ```
85
- 1. /aim:start → 查看当前进度
86
- 2. /aim:check-story 检查剧情一致性
87
- 3. 继续创作...
88
- 4. /aim:finish-work 完成工作
144
+ 1. /aim:start → 了解项目状态
145
+ 2. /aim:story 开始创作
146
+ 3. /aim:portrait <角色名> → 创建角色肖像
147
+ 4. /aim:visualize 生成图片提示词
148
+ 5. /aim:check-story → 检查剧情一致性
149
+ 6. /aim:finish-work → 完成工作并记录
89
150
  ```
90
151
 
91
152
  ---
@@ -94,19 +155,25 @@ cat .aim-studio/spec/story/world.md # 世界观设定规范
94
155
 
95
156
  > **规范是注入的,不是记忆的。**
96
157
  >
97
- > 创作工作流确保 AI 接收相关规范。这比希望 AI "记住"规范更可靠。
158
+ > 开发工作流确保 AI 接收相关规范。这比希望 AI "记住"规范更可靠。
98
159
 
99
- > **Seedance 2.0 六要素必须完整。**
100
- >
101
- > 每个场次文件必须包含:
102
- > 【主体描述】+【动作/表演】+【环境/氛围】+【镜头语言】+【音频设计】+【风格影调】
160
+ ---
161
+
162
+ ## 相关命令(根据项目类型使用)
163
+
164
+ | 命令 | 用途 | 适用项目 |
165
+ |------|------|----------|
166
+ | `/aim:start` | 开始会话 | 所有 |
167
+ | `/aim:story` | 漫剧创作模式 | story |
168
+ | `/aim:portrait` | 生成角色肖像 | story |
169
+ | `/aim:visualize` | 生成图片提示词 | story |
170
+ | `/aim:check-story` | 检查剧情一致性 | story |
171
+ | `/aim:finish-work` | 完成工作并生成日志 | 所有 |
103
172
 
104
173
  ---
105
174
 
106
- ## 相关命令
175
+ ## 注意事项
107
176
 
108
- | 命令 | 用途 |
109
- |------|------|
110
- | `/aim:story` | 漫剧创作模式 |
111
- | `/aim:check-story` | 剧情逻辑检查 |
112
- | `/aim:finish-work` | 完成工作并生成日志 |
177
+ 1. **漫剧命令仅限 story 项目**:如果项目不是漫剧创作类型,`/aim:story` 等命令不可用
178
+ 2. **遵循项目规范**:开发前务必阅读 `spec/` 目录下的规范文件
179
+ 3. **记录工作进度**:完成工作后使用 `/aim:finish-work` 记录
@@ -17,115 +17,321 @@ description: 启动漫剧创作模式
17
17
 
18
18
  ---
19
19
 
20
- ## 使用步骤
20
+ ## 完整工作流程
21
21
 
22
- ### 步骤 1:创建任务
22
+ ### 流程概览
23
+
24
+ ```
25
+ ┌─────────────────────────────────────────────────────────────────────────┐
26
+ │ 漫剧创作完整流程 │
27
+ ├─────────────────────────────────────────────────────────────────────────┤
28
+ │ │
29
+ │ 1. 初始化 ──────────────────────────────────────────────────────→ │
30
+ │ aim init -u <你的名字> │
31
+ │ │
32
+ │ 2. 开始工作 ────────────────────────────────────────────────────→ │
33
+ │ /aim:start │
34
+ │ │
35
+ │ 3. 创作阶段 ────────────────────────────────────────────────────→ │
36
+ │ │ │
37
+ │ ├─→ /aim:story 启动漫剧创作 │
38
+ │ │ │
39
+ │ ├─→ /aim:portrait <角色> 创建角色肖像(可选,可多次) │
40
+ │ │ │
41
+ │ ├─→ /aim:visualize 生成场景图片(可选,可多次) │
42
+ │ │ │
43
+ │ └─→ /aim:check-story 检查剧情一致性(可选,可多次) │
44
+ │ │
45
+ │ 4. 导出阶段 ────────────────────────────────────────────────────→ │
46
+ │ │ │
47
+ │ └─→ /aim:export 导出 Seedance 视频提示词 │
48
+ │ │
49
+ │ 5. 完成工作 ────────────────────────────────────────────────────→ │
50
+ │ /aim:finish-work │
51
+ │ │
52
+ └─────────────────────────────────────────────────────────────────────────┘
53
+ ```
54
+
55
+ ---
56
+
57
+ ## 详细步骤
58
+
59
+ ### 步骤 1:初始化项目
23
60
 
24
61
  ```bash
25
- # 用法: /aim:story "故事标题"
26
- python3 .aim-studio/scripts/task.py create "<故事标题>" --priority P1
62
+ # 在你的项目目录中
63
+ aim init -u 你的名字
27
64
  ```
28
65
 
29
- ### 步骤 2:开始创作
66
+ 这会创建以下结构:
30
67
 
31
- 直接开始与用户讨论创作方向:
32
- - 询问用户想要创作什么类型的故事
33
- - 了解用户的创意需求
34
- - 根据用户的需求开始创作
68
+ ```
69
+ 项目目录/
70
+ ├── .aim-studio/ # 系统配置
71
+ │ ├── spec/story/ # 创作规范
72
+ │ │ ├── script.md # 剧本规范
73
+ │ │ ├── character.md # 角色设定
74
+ │ │ └── world.md # 世界观设定
75
+ │ └── tasks/ # 任务存储
76
+ ├── aim-workspace/ # 工作日志(你的创作记录)
77
+ └── ...
78
+ ```
35
79
 
36
- ---
80
+ ### 步骤 2:开始工作
81
+
82
+ ```bash
83
+ /aim:start
84
+ ```
85
+
86
+ AI 会:
87
+ 1. 读取项目状态
88
+ 2. 查看最近的工作日志
89
+ 3. 询问你今天要做什么
90
+
91
+ ### 步骤 3:开始创作
92
+
93
+ #### 3.1 启动创作模式
94
+
95
+ ```bash
96
+ /aim:story
97
+ ```
98
+
99
+ AI 会询问你想要创作什么。
100
+
101
+ #### 3.2 创建角色(可选但推荐)
102
+
103
+ 当你创作了新角色后,使用:
104
+
105
+ ```bash
106
+ /aim:portrait 角色名
107
+ ```
108
+
109
+ **示例**:
110
+ ```
111
+ /aim:portrait 慕容天
112
+ /aim:portrait 沈安在
113
+ /aim:portrait 女主角
114
+ ```
115
+
116
+ 这会生成角色的 AI 绘画提示词,你可以保存下来用于后续生成角色图片。
117
+
118
+ #### 3.3 生成场景图片(可选)
119
+
120
+ 当你写完一个场景后,想要生成对应的图片:
121
+
122
+ ```bash
123
+ /aim:visualize
124
+ ```
125
+
126
+ 这会将当前剧本段落转换为 Qwen-Image 优化的绘画提示词。
127
+
128
+ #### 3.4 检查剧情一致性(推荐)
129
+
130
+ 完成一段创作后,检查是否有前后不一致:
131
+
132
+ ```bash
133
+ /aim:check-story
134
+ ```
135
+
136
+ 这会检查:
137
+ - 角色行为是否符合人设
138
+ - 剧情逻辑是否连贯
139
+ - 场景描述是否一致
140
+
141
+ ### 步骤 4:导出视频提示词
142
+
143
+ 当你完成一集或几集的创作后,准备生成视频:
144
+
145
+ ```bash
146
+ /aim:export
147
+ ```
148
+
149
+ 实际上是在终端执行:
150
+
151
+ ```bash
152
+ python3 .aim-studio/scripts/export.py --ep 1
153
+ ```
154
+
155
+ #### 4.1 选择导出集数
156
+
157
+ ```bash
158
+ # 导出第1集
159
+ python3 .aim-studio/scripts/export.py --ep 1
160
+
161
+ # 导出1-3集
162
+ python3 .aim-studio/scripts/export.py --ep 1-3
163
+
164
+ # 导出全部
165
+ python3 .aim-studio/scripts/export.py --all
166
+ ```
167
+
168
+ #### 4.2 选择视频时长
169
+
170
+ 根据场景复杂度选择:
171
+
172
+ ```bash
173
+ # 5秒(简单对话)
174
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 5
175
+
176
+ # 10秒(默认,通用)
177
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 10
178
+
179
+ # 15秒(中等复杂度)
180
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 15
181
+
182
+ # 30秒(复杂场景)
183
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 30
184
+
185
+ # 45秒或60秒(长场景)
186
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 45
187
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 60
188
+ ```
189
+
190
+ #### 4.3 违规检测
37
191
 
38
- ## 创作流程
192
+ 导出时会自动检查违规内容:
39
193
 
40
- ### 1. 理解用户需求
194
+ | 违规类型 | 检测内容 | 风险等级 |
195
+ |----------|----------|----------|
196
+ | 真人素材 | 明星、网红、真实照片 | ⚠️ 高风险 |
197
+ | 版权内容 | 金庸小说、漫威、哈利波特 | ⚠️ 中风险 |
198
+ | 敏感内容 | 暴力、血腥、政治 | ⚠️ 中风险 |
41
199
 
42
- 在开始之前,理解用户想要什么:
43
- - 创作什么类型的内容?(新剧集、修改现有内容等)
44
- - 有什么特定要求或约束?
45
- - 需要参考哪些原文?
200
+ 如果检测到违规,系统会提示你选择处理方式:
46
201
 
47
- 如果不清楚,询问澄清问题。
202
+ ```
203
+ 请选择处理方式(输入数字):
204
+ 1. 修改角色设定 - 使用虚构角色替代真人
205
+ 2. 替换版权内容 - 使用原创元素
206
+ 3. 简化敏感描述 - 移除敏感描述
207
+ 4. 强制导出 - 仍要导出(风险自负)
208
+ 5. 退出 - 不导出
209
+ ```
48
210
 
49
- ### 2. 阅读原文(如果需要改编小说)
211
+ #### 4.4 完整导出示例
50
212
 
51
213
  ```bash
52
- cat .aim-studio/materials/原著.txt
214
+ # 最常用:导出第1集,10秒,自动打开文件夹
215
+ python3 .aim-studio/scripts/export.py --ep 1 --open
216
+
217
+ # 完整参数:导出第1集,30秒,seedance格式
218
+ python3 .aim-studio/scripts/export.py --ep 1 --duration 30 --format seedance
219
+
220
+ # 批量导出:1-3集,15秒
221
+ python3 .aim-studio/scripts/export.py --ep 1-3 --duration 15
53
222
  ```
54
223
 
55
- 提取关键信息:
56
- - 角色特征
57
- - 场景描述
58
- - 剧情要点
224
+ #### 4.5 仅检查违规
59
225
 
60
- ### 3. 角色与世界观设定
226
+ 如果你只想检查内容是否合规,不导出:
61
227
 
62
- 如果用户需要创建角色和世界观:
228
+ ```bash
229
+ python3 .aim-studio/scripts/export.py --check
230
+ ```
63
231
 
64
- 1. **创建角色设定** - 使用 `/aim:portrait <角色名>` 生成角色肖像提示词
65
- 2. **设定世界观** - 编辑 `.aim-studio/spec/story/world.md`
232
+ ### 步骤 5:完成工作
66
233
 
67
- ### 4. 开始创作
234
+ ```bash
235
+ /aim:finish-work
236
+ ```
237
+
238
+ 这会:
239
+ 1. 检查内容完整性
240
+ 2. 检查格式是否符合规范
241
+ 3. 可选:运行剧情一致性检查
242
+ 4. 记录工作内容
68
243
 
69
- 根据任务类型开始创作:
244
+ #### 5.1 记录会话(可选单独使用)
70
245
 
71
- **新剧集创作**:
72
- 1. 阅读全局上下文(角色设定、世界观)
73
- 2. 阅读上一集的上下文摘要
74
- 3. 按照场次拆分创作
75
- 4. 每个场次遵循 Seedance 2.0 Prompt 六要素
246
+ ```bash
247
+ # 记录本次工作
248
+ python3 ./.aim-studio/scripts/add_session.py \
249
+ --title "第1集创作" \
250
+ --summary "完成第1集前5场的创作"
251
+ ```
76
252
 
77
253
  ---
78
254
 
79
- ## 组合使用方案
255
+ ## 常见场景
80
256
 
81
- ### 完整创作流程
257
+ ### 场景 1:全新项目,从零开始
82
258
 
83
259
  ```
84
- 1. /aim:start → 了解项目状态
85
- 2. /aim:story → 开始创作
86
- 3. /aim:portrait 慕容天 → 创建第一个角色
87
- 4. /aim:portrait 沈安在 → 创建第二个角色
88
- 5. 编辑 world.md → 设定世界观
89
- 6. 创作第1集... → 开始剧本创作
90
- 7. /aim:visualize → 生成图片提示词
91
- 8. /aim:check-story → 检查剧情一致性
92
- 9. /aim:finish-work → 完成并记录
260
+ 1. aim init -u 我的名字
261
+ 2. /aim:start
262
+ 3. /aim:story
263
+ 告诉 AI 要创作什么类型的故事
264
+ 4. 创作角色和剧情...
265
+ 5. /aim:portrait 角色1
266
+ 6. /aim:portrait 角色2
267
+ 7. 继续创作...
268
+ 8. /aim:check-story
269
+ 9. /aim:export --ep 1 --open
270
+ 10. /aim:finish-work
93
271
  ```
94
272
 
95
- ### 快速创作流程
273
+ ### 场景 2:继续之前的创作
96
274
 
97
275
  ```
98
- 1. /aim:story → 直接开始
99
- 2. 创作...
100
- 3. /aim:finish-work → 完成
276
+ 1. /aim:start
277
+ AI 会读取之前的进度
278
+ 2. 继续创作...
279
+ 3. /aim:check-story
280
+ 4. /aim:export --ep 2 --duration 15
281
+ 5. /aim:finish-work
282
+ ```
283
+
284
+ ### 场景 3:修改角色设定
285
+
286
+ ```
287
+ 1. /aim:portrait 角色名
288
+ → 生成新的肖像提示词
289
+ 2. 手动更新 character.md
290
+ 3. /aim:check-story
291
+ → 检查修改后是否一致
292
+ ```
293
+
294
+ ### 场景 4:生成宣传图片
295
+
296
+ ```
297
+ 1. /aim:visualize
298
+ → 将剧本场景转换为图片提示词
299
+ 2. 复制提示词到 AI 绘画工具
300
+ 3. 生成图片
101
301
  ```
102
302
 
103
303
  ---
104
304
 
105
- ## Seedance 2.0 六要素
305
+ ## 参数速查表
306
+
307
+ ### export.py 完整参数
106
308
 
107
- 每个场次文件必须包含:
309
+ | 参数 | 必填 | 可选值 | 默认值 | 说明 |
310
+ |------|------|--------|--------|------|
311
+ | `--ep` | 是 | `1`, `1-3`, `all` | 无 | 导出集数 |
312
+ | `--format` | 否 | `seedance`, `simple` | `seedance` | 格式 |
313
+ | `--duration` | 否 | `5/10/15/30/45/60` | `10` | 时长(秒) |
314
+ | `--output` | 否 | 目录名 | `export` | 输出目录 |
315
+ | `--open` | 否 | 开关 | 关闭 | 导出后打开 |
316
+ | `--check` | 否 | 开关 | 关闭 | 仅检查违规 |
317
+ | `--force` | 否 | 开关 | 关闭 | 强制导出 |
108
318
 
109
- | 要素 | 说明 | 示例 |
319
+ ### add_session.py 参数
320
+
321
+ | 参数 | 必填 | 说明 |
110
322
  |------|------|------|
111
- | 主体描述 | 角色外观、服装、体型 | 白衣少年,十七八岁,背负长剑 |
112
- | 动作/表演 | 具体动作,情绪强度 | 缓步走进大殿,眉头微皱 |
113
- | 环境/氛围 | 场景、时间、天气 | 青云峰主殿,清晨,阳光明媚 |
114
- | 镜头语言 | 运镜、景别、特效 | 近景切入,缓慢推进 |
115
- | 音频设计 | 人声、环境音、音乐 | 古琴声由远及近,配笛音 |
116
- | 风格影调 | 视觉风格、色调 | 水墨风,暖色调,参考《大鱼海棠》 |
323
+ | `--title` | | 会话标题 |
324
+ | `--summary` | | 工作摘要 |
325
+ | `--commit` | | Git 提交哈希 |
117
326
 
118
327
  ---
119
328
 
120
- ## 核心原则
121
-
122
- > **规范是注入的,不是记忆的。**
123
- >
124
- > 创作工作流确保 AI 接收相关规范。这比希望 AI "记住"规范更可靠。
329
+ ## 注意事项
125
330
 
126
- > **角色一致性最重要**
127
- >
128
- > 每次创作前回顾 character.md,确保行为符合人设。
331
+ 1. **先检查后导出**:建议先运行 `--check` 确认无违规
332
+ 2. **选择合适时长**:复杂场景用 15-30 秒,简单对话用 5-10 秒
333
+ 3. **保持角色一致**:每次创作前回顾 character.md
334
+ 4. **记录工作进度**:完成后使用 finish-work 记录,便于后续继续
129
335
 
130
336
  ---
131
337
 
@@ -134,7 +340,9 @@ cat .aim-studio/materials/原著.txt
134
340
  | 命令 | 用途 |
135
341
  |------|------|
136
342
  | `/aim:start` | 开始会话 |
343
+ | `/aim:story` | 开始创作 |
137
344
  | `/aim:portrait` | 生成角色肖像 |
138
- | `/aim:visualize` | 生成图片提示词 |
345
+ | `/aim:visualize` | 生成场景图片 |
139
346
  | `/aim:check-story` | 检查剧情一致性 |
347
+ | `/aim:export` | 导出视频提示词 |
140
348
  | `/aim:finish-work` | 完成工作 |
@@ -45,7 +45,7 @@ if sys.platform == "win32":
45
45
  # =============================================================================
46
46
 
47
47
  DIR_WORKFLOW = ".aim-studio"
48
- DIR_WORKSPACE = "workspace"
48
+ DIR_WORKSPACE = "aim-workspace"
49
49
  DIR_TASKS = "tasks"
50
50
  DIR_SPEC = "spec"
51
51
  FILE_CURRENT_TASK = ".current-task"
@@ -337,10 +337,8 @@ def get_check_context(repo_root: str, task_dir: str) -> str:
337
337
  else:
338
338
  # Fallback: use hardcoded check files + spec.jsonl
339
339
  check_files = [
340
- (".claude/commands/trellis/finish-work.md", "Finish work checklist"),
341
- (".claude/commands/trellis/check-cross-layer.md", "Cross-layer check spec"),
342
- (".claude/commands/trellis/check-backend.md", "Backend check spec"),
343
- (".claude/commands/trellis/check-frontend.md", "Frontend check spec"),
340
+ (".claude/commands/aim/finish-work.md", "Finish work checklist"),
341
+ (".claude/commands/aim/check-story.md", "Story check spec"),
344
342
  ]
345
343
  for file_path, description in check_files:
346
344
  content = read_file_content(repo_root, file_path)
@@ -382,11 +380,11 @@ def get_finish_context(repo_root: str, task_dir: str) -> str:
382
380
  else:
383
381
  # Fallback: only finish-work.md (lightweight)
384
382
  finish_work = read_file_content(
385
- repo_root, ".claude/commands/trellis/finish-work.md"
383
+ repo_root, ".claude/commands/aim/finish-work.md"
386
384
  )
387
385
  if finish_work:
388
386
  context_parts.append(
389
- f"=== .claude/commands/trellis/finish-work.md (Finish checklist) ===\n{finish_work}"
387
+ f"=== .claude/commands/aim/finish-work.md (Finish checklist) ===\n{finish_work}"
390
388
  )
391
389
 
392
390
  # 2. Requirements document (for verifying requirements are met)
@@ -422,9 +420,7 @@ def get_debug_context(repo_root: str, task_dir: str) -> str:
422
420
  context_parts.append(f"=== {file_path} (Dev spec) ===\n{content}")
423
421
 
424
422
  check_files = [
425
- (".claude/commands/trellis/check-backend.md", "Backend check spec"),
426
- (".claude/commands/trellis/check-frontend.md", "Frontend check spec"),
427
- (".claude/commands/trellis/check-cross-layer.md", "Cross-layer check spec"),
423
+ (".claude/commands/aim/check-story.md", "Story check spec"),
428
424
  ]
429
425
  for file_path, description in check_files:
430
426
  content = read_file_content(repo_root, file_path)