Skills/ClawHub/ct-advisor

ct-advisor@1.3.42

CAUTION· static only

Publisher claims: "The single entry point for the ct-series across the full clinical-development lifecycle — a cloud-assisted clinical trial advisor. Coverage has been broadened to regulatory-response / trial-operations / deliverable-drafting / study-design / statistics / submission / safety / data-management / real-world-evidence; only clearly non-medical / non-life-science questions receive a constructive referral. On the local side, in addition to the deterministic vague-gate and attachment decoding, it injects multi-turn session context (continuation of prior rounds); answer caching and deduplication are handled entirely in the cloud (serving standalone questions only — no answer cache is kept locally); no knowledge base is retained locally and no local network retrieval occurs. External reference: the teal clinical-data interactive exploration framework. / 面向临床研发全生命周期的 ct 系列「总入口」,云端辅助的临床试验总顾问。覆盖范围已扩大至合规应答 / 项目运营 / 交付物撰写 / 方案设计 / 统计分析 / 注册申报 / 安全性 / 数据管理 / 真实世界研究——仅当明确非医药/生命科学语境时才给建设性转介建议。本地侧在确定性二值闸门(是否 vague)与附件解码之外,新增会话上下文注入(多轮承接);答案缓存与去重一律由云端承担(仅为独立问题服务,本地不缓存答案);不保留知识库,不进行本地网络检索。外部参考:teal 临床数据交互探索框架。" Observed in sandbox: static analysis only — behavior not yet observed.

Registry ClawHubPublisher medstatstar · publishing for 104 daysInstalls 2,156Last detonated 3d ago

Coverage

Static only; nothing was run yet.

The label rests on the code, the instruction files and the publisher. The honeypot run replaces this verdict when it completes.

Is [email protected] safe to install?

KillerSkills analysed it statically (a sandbox run is pending) on 2026-11-11 and scored it 56/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: Hex-encoded string detected; Access to sensitive file paths; Hex-encoded string detected. Summary: static analysis only — behavior not yet observed.

Behavior trace

Queued for honeypot run · static analysis only
t+CategoryObserved action

This version has not been detonated yet. The score above counts behavior as unknown (50/100), so it cannot read Verified until the honeypot run completes and replaces this verdict.

Static findings

HIGH
Hex-encoded string detectedscripts/doc_memory.py:781 · Hex-encoded string detected — may contain obfuscated payloadsfake = b"\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1" + b"\x00" * 512Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Python subprocess execution detectedscripts/ask.py:83 · Python subprocess execution detectedreturn subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
LOW
Instructs the agent to modify its persistent memory or instruction filesCHANGELOG.md:3013 · Instructs the agent to modify its persistent memory or instruction files · informational: not an instruction file…达风格、不复用样本事实。理由:样本可能含过时信息。 - **P1-D 本地用户记忆**:新增 `scripts/memory_manager.py`,支持 `add/list/load/prune/clear`,写入 `~/.workbuddy/ct-advisor-memory.json`(**刻意避开** `MEMORY.md` 以免冲突);默认 **TTL 90 天**(过期由 `prune` 清理);`add` 非交互模式强制 `--confirm`、`clear`…Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
Python subprocess execution detectedscripts/ask.py:88 · Python subprocess execution detectedreturn subprocess.run(cmd).returncodeFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
HIGH
Access to sensitive file pathsscripts/stitch_results.py:49 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesDENY_NAME_PARTS = ("token", "secret", "credential", "password", ".env")Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Hex-encoded string detectedscripts/doc_memory.py:818 · Hex-encoded string detected — may contain obfuscated payloadslegacy = b"\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1" + b"\x00" * 512 # 迷你 OLE2Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Python subprocess execution detectedscripts/entry.py:299 · Python subprocess execution detectedresult = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/handle_need_tool.py:1022 · Python subprocess execution detectedproc = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/refine_answer.py:709 · Python subprocess execution detectedproc = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/entry.py:361 · Python subprocess execution detectedresult = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
File permission modification commandadapters/coze_token_embedded.py:151 · File permission modification command — agent changes file ownership/permissions- 写入后尝试 chmod 0600(失败忽略,不打断技能)。Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
Python subprocess execution detectedscripts/r_libs.py:299 · Python subprocess execution detectedproc = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
HIGH
Hex-encoded string detectedscripts/doc_memory.py:819 · Hex-encoded string detected — may contain obfuscated payloadsbig_legacy = b"\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1" + b"\x00" * (4 * 1024 * 1024)Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Python subprocess execution detectedadapters/local_service_client.py:112 · Python subprocess execution detectedsubprocess.Popen(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
HIGH
Access to sensitive file pathsscripts/stitch_results.py:17 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files* 文件名含 token/secret/credential/password/.env 一律拒绝;Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
Python subprocess execution detectedscripts/hardware_id.py:140 · Python subprocess execution detectedout = subprocess.check_output(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/entry.py:420 · Python subprocess execution detectedresult = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05

Cost to the agent

Instructions loaded
≈14,778 tok
2 files · 97 in bundle

Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.

Known vulnerabilities

Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.

What would make this Verified

24 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim medstatstar: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. Hex-encoded string detected≈ +4 on the totalPut hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
  3. Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
  4. Python subprocess execution detected≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
  5. 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 medstatstarPropose a patch to the maintainer