tujian-suanliang@0.9.39
CAUTIONPublisher claims: "Produces concrete volume and rebar estimate bands from structural drawings with evidence, confidence and review flags. Reports by floor or pour zone for material-planning review, not final settlement, shop fabrication or legal sign-off." Observed in sandbox: calls github.com only, touches nothing outside the project, writes no memory.
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario) on 2026-11-02 and scored it 71/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Privileged sudo command. Summary: calls github.com only, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 1 s · 1 scenariost+CategoryObserved action
0.4sfilesystemread ~/.workbuddy/skills/ outside project
0.4snetworkCONNECT https://github.com
0.4sprocessexec /usr/bin/dirname
0.4sprocessexec /usr/bin/find
0.4sprocessexec /app/apps/web/node_modules/.bin/chmod
0.4sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/chmod
0.4sprocessexec /app/node_modules/.bin/chmod
0.4sprocessexec /pnpm/chmod
0.4sprocessexec /usr/local/sbin/chmod
0.4sprocessexec /usr/local/bin/chmod
0.4sprocessexec /usr/sbin/chmod
0.4sprocessexec /usr/bin/chmod
0.4sprocessexec /usr/bin/mktemp
0.4sprocessexec /usr/bin/curl
0.4sprocessexec /usr/bin/rm
0.4sprocessexited 3: [土建算量] 下载底座失败。离线请设 SKILL_NO_BASE=1 降级使用;联网重试建议 export CAD_FILE_READER_VERSION=0.34.1 后重试。
0.4sprocessscript backend runs setup only
0.4sprocessscript backend runs setup only
Static findings
MEDIUM
Python subprocess execution detectedscripts/qty_core.py:162 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
Python subprocess execution detectedscripts/lint_cross_platform.py:105 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
Python subprocess execution detectedscripts/qty_core.py:215 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05HIGH
Privileged sudo commandscripts/lint_cross_platform.py:67 · Privileged sudo command — agent may execute with elevated privilegesFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05MEDIUM
Python subprocess execution detectedscripts/cad_quantity_pipeline.py:135 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
Python subprocess execution detectedscripts/qty_core.py:184 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
File permission modification commandscripts/run_cad.sh:6 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05MEDIUM
Python subprocess execution detectedscripts/self_test.py:65 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
File permission modification commandscripts/runtime_env.sh:18 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05MEDIUM
File permission modification commandscripts/setup.sh:6 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05MEDIUM
Python subprocess execution detectedscripts/qty_core.py:244 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
Python subprocess execution detectedscripts/qty_statesync.py:63 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05MEDIUM
Python subprocess execution detectedscripts/qty_core.py:283 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05What would make this Verified
9 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim lisong2003-lgtm: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Touches files outside the project≈ +7 on the totalKeep reads and writes inside the working directory, or declare the exact paths in `filesystem:` and explain why in the README.
- Privileged sudo command≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- New publisher≈ +3 on the totalTime clears this on its own after 14 and 30 days. Claiming the handle (+50) is the fastest way past it.
- Python subprocess execution detected≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
- File permission modification command≈ +2 on the totalRequest the narrowest permission that works; replace wildcards with the exact paths or hosts.
Publish a new version to ClawHub, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim lisong2003-lgtm