skyline-scroll-api
github.com/wechat-miniprogram/skyline-skillsVerdict: Proceed with caution
0 critical0 high7 medium
C
SCORE 55 / 100
$skillox install skyline-scroll-apiSoon
Sign in to followFollowing emails you when a re-scan drops the grade. Opt-out is per-creator on /account/billing.
Why grade C?
score · 55 / 100The current grade reflects 7 medium findings (6+ MEDs → C).
0 CRIT0 HIGH7 MED0 LOW
To reach a higher grade
- BReach Btarget score 75
Resolve 2 of 7 MED (cap is 5).
- AReach Atarget score 95
Resolve 5 of 7 MED (cap is 2).
Thresholds are documented at /docs/grading. Source-of-truth is the grade() function in @skillox/scanner.
Latest scan findings
Scan crawl-ofd81q7100rtfu2b3flsup6a · Thu, 28 May 2026 17:54:18 GMT · 2ms
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
29// ScrollViewContext(需开启 enhanced)
30wx.createSelectorQuery().select('#scrollview').node()
31 .exec(res => { const ctx = res[0].node })← spawns a subprocess outside declared capabilities
32
33// DraggableSheetContext
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
33// DraggableSheetContext
34wx.createSelectorQuery().select('.sheet').node()
35 .exec(res => { const ctx = res[0].node })← spawns a subprocess outside declared capabilities
36
37// worklet.scrollViewContext(通过 ref)
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
38this.scrollRef = wx.worklet.shared()
39this.createSelectorQuery().select('.scrollable')
40 .ref(res => { this.scrollRef.value = res.ref }).exec()← spawns a subprocess outside declared capabilities
41```
42
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
82 // ❌ 错误:使用 node() 而非 ref()
83 this.createSelectorQuery().select('.scroll').node()
84 .exec(res => { /* 这是 ScrollViewContext,不是 worklet 引用 */ })← spawns a subprocess outside declared capabilities
85
86 // ✅ 正确:使用 ref() + shared()
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
87 this.scrollRef = wx.worklet.shared()
88 this.createSelectorQuery().select('.scroll')
89 .ref(res => { this.scrollRef.value = res.ref }).exec()← spawns a subprocess outside declared capabilities
90 ```
91
medArbitrary subprocess execution detectedThe skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.▾
Arbitrary subprocess execution detected
The skill spawns subprocesses. Without a capability manifest declaring this, the skill could execute arbitrary commands.
150```js
151// 获取 ScrollViewContext
152wx.createSelectorQuery().select('#sv').node().exec(res => {← spawns a subprocess outside declared capabilities
153 const ctx = res[0].node
154 ctx.triggerRefresh({ duration: 300 })
medNo capability manifest declaredThe skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.rule: no-manifest▾
No capability manifest declared
The skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.
rule:
no-manifestskillox.io/c/skyline-scroll-api