@ninkch/dsh-artcraft 0.3.2 → 0.3.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 (26) hide show
  1. package/NOTICE.md +4 -69
  2. package/apps/catalog.json +14 -14
  3. package/index.js +1 -1
  4. package/package.json +1 -1
  5. package/skills/README.md +2 -1
  6. package/skills/artcraft-director-lens/SKILL.md +79 -0
  7. package/skills/artcraft-director-lens/references/director-styles/01_spielberg.md +81 -0
  8. package/skills/artcraft-director-lens/references/director-styles/02_hitchcock.md +81 -0
  9. package/skills/artcraft-director-lens/references/director-styles/03_kubrick.md +81 -0
  10. package/skills/artcraft-director-lens/references/director-styles/04_kurosawa.md +81 -0
  11. package/skills/artcraft-director-lens/references/director-styles/05_scorsese.md +81 -0
  12. package/skills/artcraft-director-lens/references/director-styles/06_fellini.md +81 -0
  13. package/skills/artcraft-director-lens/references/director-styles/07_bergman.md +81 -0
  14. package/skills/artcraft-director-lens/references/director-styles/08_tarkovsky.md +81 -0
  15. package/skills/artcraft-director-lens/references/director-styles/09_wong_kar_wai.md +81 -0
  16. package/skills/artcraft-director-lens/references/director-styles/10_nolan.md +81 -0
  17. package/skills/artcraft-director-lens/references/director-styles/11_villeneuve.md +81 -0
  18. package/skills/artcraft-director-lens/references/director-styles/12_fincher.md +81 -0
  19. package/skills/artcraft-director-lens/references/director-styles/13_refn.md +81 -0
  20. package/skills/artcraft-director-lens/references/director-styles/14_bi_gan.md +81 -0
  21. package/skills/artcraft-director-lens/references/director-styles/15_zhang_yimou.md +81 -0
  22. package/skills/artcraft-director-lens/references/director-styles/16_hou_hsiao_hsien.md +81 -0
  23. package/skills/artcraft-director-lens/references/director-styles/17_park_chan_wook.md +81 -0
  24. package/skills/artcraft-director-lens/references/director-styles/18_malick.md +81 -0
  25. package/skills/artcraft-director-lens/references/director-styles/19_michael_mann.md +81 -0
  26. package/skills/artcraft-director-lens/references/director-styles/20_coen_brothers.md +81 -0
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: artcraft-lens-michael_mann
3
+ description: >-
4
+ 导演透镜(ArtCraft 适配版):迈克尔·曼导演风格 Skill。把该导演的工作方式翻译成 ArtCraft 可执行参数——FilmCraft 时间线与转场、LightCraft 影调分区、SoundCraft 声音规则、EffectCraft 机位。当用户点名该导演、要求该风格,或项目美学圣经引用该透镜时加载。
5
+ ---
6
+
7
+ # 迈克尔·曼导演风格 Skill(ArtCraft 适配版)
8
+
9
+ ## 风格参数 / Style parameters
10
+
11
+ ```yaml
12
+ style_id: michael_mann
13
+ lens_kit_mm: [18, 25, 35, 50] # 18-25 让室内也有天际线;35 做双人;50 只给流程插入(手、工具、接口)
14
+ camera:
15
+ prefer: ["locked wide with the horizon at eye level", "loose handheld from a moving vehicle", "constant-speed lateral track along a glass wall", "static hold on a figure 30-60m away", "fast pan only inside a gunfight"]
16
+ avoid: ["crane reveal", "orbit", "dutch angle", "slow motion", "drone hero shot"]
17
+ motion_budget: medium
18
+ height: "eye level 1.6m, lens axis level; dash or hood height inside vehicles"
19
+ shot_size_bias: ["wide with the standing figure 8-15% of frame height", "medium two-shot at 2-4m separation", "procedural insert on hands and equipment", "static long-lens hold at distance", "figure against glass with city reflected on the face"]
20
+ composition: ["horizon or skyline at eye level even in interiors", "figure small against a bright lit field", "glass reflection layering city over face", "large negative space on one side", "equipment dead centre in inserts"]
21
+ lighting:
22
+ key_quality: mixed
23
+ key_ratio: "6:1 to 10:1 at night"
24
+ motivation: practical
25
+ signature: "没有一盏电影灯:每个光源都有城里的名字;同一帧至少两种色温对抗;脸低于主光 1.5-2 档"
26
+ palette:
27
+ dominant: "sodium amber, mercury blue-green, LED cyan-white, black"
28
+ accent: "taillight red, hazard orange"
29
+ saturation: mid
30
+ contrast: high
31
+ editing:
32
+ avg_shot_length_s: "3-8"
33
+ transition_bias: ["hard cut"]
34
+ coverage_style: "流程段每步一颗按物理顺序;对白段正反打快切;段尾给一颗 6-12 秒城市空镜"
35
+ sound:
36
+ music: "持续电子 / 环境铺底,一首铺满整段,不做情绪点提示"
37
+ ambience: "不间断的低频城市底噪:高速车流、空调机组、远处飞机、变压器嗡鸣"
38
+ dialogue: "短促、技术性、只说名词和名字;一段不超过 6 句"
39
+ silence_use: "决定发生时切掉音乐,让高速路声接管 3-5 秒"
40
+ performance:
41
+ register: "不表演;动作准确、节省、不重复;情绪全片只出现一次且短"
42
+ blocking: "人与人保持 2-4 米不主动接触;视线常越过对方看向远处"
43
+ aspect_bias: "2.39:1 / 1.85:1" # 9:16 交付时画高百分比与横向距离都要改写,见「镜头语言」末条
44
+ ai_video:
45
+ clip_duration_s: "3-6"
46
+ prompt_bias: "点名每一个市政光源及其颜色和方位,给室内也写上窗外的天际线,让主体小而背景亮。"
47
+ risk: "模型会'美化'夜景:抬阴影、统一白平衡、自动加雨和体积光束。缓解:显式写 mixed color temperature、左右两侧各自的光源颜色、deep black shadows with visible noise、dry pavement、no fog、no light beams。"
48
+ negative_prompt_adds: ["fog", "volumetric light beams", "rain-slick streets", "unified colour grade", "lens flare", "warm cozy lighting", "crowded background people", "slow motion"]
49
+ ```
50
+
51
+ ## ArtCraft 落点(本插件适配)
52
+
53
+ ### 剪辑(FilmCraft)
54
+ - 单镜均长目标 **"3-8"s**(conventional(5–12s 档))→ `timeline.place` 铺轨后按分配修长:`timeline.trim {mode:"ripple"}`、`timeline.rateStretch` 微调
55
+ - 转场偏好:**["hard cut"]** → `sequence.applyVideoTransition {effect}` / `sequence.setTransition {duration, align}`
56
+ - 覆盖方式:"流程段每步一颗按物理顺序;对白段正反打快切;段尾给一颗 6-12 秒城市空镜"
57
+ - 音画切点:对白/音乐切点参考 SoundCraft `event.beat_detective` 的节拍位置
58
+
59
+ ### 影调(LightCraft / FilmCraft Lumetri)
60
+ - 光比目标 **"6:1 to 10:1 at night"** → LightCraft `light.contrast` + `grading.shadows/highlights` 分离
61
+ - 主色:"sodium amber, mercury blue-green, LED cyan-white, black" → `mixer.{green,red,orange,aqua,blue}.*` 定点 + `grading.*` 方向
62
+ - 点缀:"taillight red, hazard orange"
63
+ - 饱和/对比:mid / high
64
+ - 光线签名:"没有一盏电影灯:每个光源都有城里的名字;同一帧至少两种色温对抗;脸低于主光 1.5-2 档"
65
+ - 落点命令:`develop.set control=<id> value=<v>` 逐项;定稿 `preset.create` 固化,整批 `preset.apply`;FilmCraft 侧 `lumetri.setLook` + `presets.save`
66
+
67
+ ### 声音(SoundCraft / FilmCraft)
68
+ - 音乐:"持续电子 / 环境铺底,一首铺满整段,不做情绪点提示"
69
+ - 环境:"不间断的低频城市底噪:高速车流、空调机组、远处飞机、变压器嗡鸣"
70
+ - 对白:"短促、技术性、只说名词和名字;一段不超过 6 句"
71
+ - 静默:"决定发生时切掉音乐,让高速路声接管 3-5 秒"
72
+ - 落点命令:`essentialSound.setType` + `essentialSound.generateDucking`(避让对白)+ `essentialSound.autoMatch {target:-14}`;SoundCraft `mix.insert` 挂处理链
73
+
74
+ ### 机位与运动(EffectCraft)
75
+ - 优先:["locked wide with the horizon at eye level", "loose handheld from a moving vehicle", "constant-speed lateral track along a glass wall", "static hold on a figure 30-60m away", "fast pan only inside a gunfight"]
76
+ - 避免:["crane reveal", "orbit", "dutch angle", "slow motion", "drone hero shot"]
77
+ - 运动预算:medium
78
+ - 落点命令:`camera.orbit/pan/dolly` + `view.3d.*` 机位;2D 素材用 `layer.*` + `keys.easyEase*` 缓动
79
+
80
+ ### 质检挂钩(artcraft_qc / 人工复核)
81
+ - 逐镜抽帧复核 + `scopes.read` 示波器核对影调是否落在本透镜的光比与色相档位
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: artcraft-lens-coen_brothers
3
+ description: >-
4
+ 导演透镜(ArtCraft 适配版):科恩兄弟导演风格 Skill。把该导演的工作方式翻译成 ArtCraft 可执行参数——FilmCraft 时间线与转场、LightCraft 影调分区、SoundCraft 声音规则、EffectCraft 机位。当用户点名该导演、要求该风格,或项目美学圣经引用该透镜时加载。
5
+ ---
6
+
7
+ # 科恩兄弟导演风格 Skill(ArtCraft 适配版)
8
+
9
+ ## 风格参数 / Style parameters
10
+
11
+ ```yaml
12
+ style_id: coen_brothers
13
+ lens_kit_mm: [14, 21, 27, 40] # 14-21 低机位运动与怪诞近景;27 冷面正面对称;40 全片唯一一次不开玩笑的单人
14
+ camera:
15
+ prefer: ["low-mounted wide dolly running ahead of or behind a walking subject", "dead-frontal locked symmetrical hold", "fast push-in on an object", "90-degree overhead of a mess being cleaned up", "snap pan between two square-on people"]
16
+ avoid: ["drifting handheld", "orbit", "shallow-focus beauty shot", "slow motion", "crane release"]
17
+ motion_budget: medium # 二元:要么完全锁定,要么一次恒速直线机械运动;没有微调构图
18
+ height: "0.4-0.6m tilted up 10-15 degrees for the running moves; dead-frontal eye level 1.6m, axis level, for the deadpan holds"
19
+ shot_size_bias: ["dead-frontal medium", "wide with subject centred in a flat landscape or wall", "low-angle wide with ceiling and floor both in frame", "extreme close-up as punctuation", "90-degree overhead insert"]
20
+ composition: ["subject dead centre with a door, window or sign behind the head like a halo", "wide-angle with both ceiling and floor visible", "the object of value at exact frame centre", "flat institutional wall as backdrop", "two people square-on at social distance, neither adjusting"]
21
+ lighting:
22
+ key_quality: hard
23
+ key_ratio: "3:1 室内;8:1 夜外景"
24
+ motivation: practical
25
+ signature: "难看的顶光——荧光管、裸灯泡、雪地反光——在每个人眼窝里留下阴影,让称职的人显得愚蠢"
26
+ palette:
27
+ dominant: "institutional beige, motel brown, snow white, fluorescent green-white"
28
+ accent: "blood red, mustard yellow, police blue"
29
+ saturation: mid
30
+ contrast: mid
31
+ editing:
32
+ avg_shot_length_s: "4-9,每颗对话镜头的出点后拖 0.5-1.5 秒"
33
+ transition_bias: ["hard cut", "hard cut across a violent size jump (wide to extreme close-up)"]
34
+ coverage_style: "正面单人 + 一颗主镜;反应镜头被刻意克扣,只在最不该给时给一次"
35
+ sound:
36
+ music: "稀少;只允许地域性源音乐,或一段完全不匹配的庄严曲子端正演奏。禁止喜剧音效与 stinger"
37
+ ambience: "地域具体:平地上的风、某台特定机器、某种鸟、踩雪声、荧光镇流器嗡鸣"
38
+ dialogue: "慢、过分客气、口音明确;把对方的话原样复述一遍再回答"
39
+ silence_use: "问题之后 2-3 秒死寂,环境声不减,谁都不动——主要喜剧乐器"
40
+ performance:
41
+ register: "绝对认真;人物不知道自己在喜剧里。表情中性,唯一破绽是眨眼变快"
42
+ blocking: "两人正对面方形站位,社交距离,谁都不调整姿势,尴尬完整保留"
43
+ aspect_bias: "1.85:1 / 2.39:1"
44
+ ai_video:
45
+ clip_duration_s: "3-6"
46
+ prompt_bias: "先建一个正面对称的死中构图,给主体一个过度认真的小动作,然后让摄影机要么完全不动,要么走一条直线。"
47
+ risk: "模型会自作主张'把喜剧演出来':夸张表情、耸肩、假笑,结果全是挤眉弄眼。缓解:显式写 expression completely neutral, no smile, no eyebrow movement,把笑点交给几何、物件和时长。"
48
+ negative_prompt_adds: ["smiling", "exaggerated expression", "comic reaction face", "handheld shake", "shallow depth of field", "warm romantic light", "slow motion", "dynamic action pose"]
49
+ ```
50
+
51
+ ## ArtCraft 落点(本插件适配)
52
+
53
+ ### 剪辑(FilmCraft)
54
+ - 单镜均长目标 **"4-9,每颗对话镜头的出点后拖 0.5-1.5 秒"s**(conventional(5–12s 档))→ `timeline.place` 铺轨后按分配修长:`timeline.trim {mode:"ripple"}`、`timeline.rateStretch` 微调
55
+ - 转场偏好:**["hard cut", "hard cut across a violent size jump (wide to extreme close-up)"]** → `sequence.applyVideoTransition {effect}` / `sequence.setTransition {duration, align}`
56
+ - 覆盖方式:"正面单人 + 一颗主镜;反应镜头被刻意克扣,只在最不该给时给一次"
57
+ - 音画切点:对白/音乐切点参考 SoundCraft `event.beat_detective` 的节拍位置
58
+
59
+ ### 影调(LightCraft / FilmCraft Lumetri)
60
+ - 光比目标 **"3:1 室内;8:1 夜外景"** → LightCraft `light.contrast` + `grading.shadows/highlights` 分离
61
+ - 主色:"institutional beige, motel brown, snow white, fluorescent green-white" → `mixer.{green,red,blue,yellow}.*` 定点 + `grading.*` 方向
62
+ - 点缀:"blood red, mustard yellow, police blue"
63
+ - 饱和/对比:mid / mid
64
+ - 光线签名:"难看的顶光——荧光管、裸灯泡、雪地反光——在每个人眼窝里留下阴影,让称职的人显得愚蠢"
65
+ - 落点命令:`develop.set control=<id> value=<v>` 逐项;定稿 `preset.create` 固化,整批 `preset.apply`;FilmCraft 侧 `lumetri.setLook` + `presets.save`
66
+
67
+ ### 声音(SoundCraft / FilmCraft)
68
+ - 音乐:"稀少;只允许地域性源音乐,或一段完全不匹配的庄严曲子端正演奏。禁止喜剧音效与 stinger"
69
+ - 环境:"地域具体:平地上的风、某台特定机器、某种鸟、踩雪声、荧光镇流器嗡鸣"
70
+ - 对白:"慢、过分客气、口音明确;把对方的话原样复述一遍再回答"
71
+ - 静默:"问题之后 2-3 秒死寂,环境声不减,谁都不动——主要喜剧乐器"
72
+ - 落点命令:`essentialSound.setType` + `essentialSound.generateDucking`(避让对白)+ `essentialSound.autoMatch {target:-14}`;SoundCraft `mix.insert` 挂处理链
73
+
74
+ ### 机位与运动(EffectCraft)
75
+ - 优先:["low-mounted wide dolly running ahead of or behind a walking subject", "dead-frontal locked symmetrical hold", "fast push-in on an object", "90-degree overhead of a mess being cleaned up", "snap pan between two square-on people"]
76
+ - 避免:["drifting handheld", "orbit", "shallow-focus beauty shot", "slow motion", "crane release"]
77
+ - 运动预算:medium
78
+ - 落点命令:`camera.orbit/pan/dolly` + `view.3d.*` 机位;2D 素材用 `layer.*` + `keys.easyEase*` 缓动
79
+
80
+ ### 质检挂钩(artcraft_qc / 人工复核)
81
+ - 逐镜抽帧复核 + `scopes.read` 示波器核对影调是否落在本透镜的光比与色相档位