Skills/ClawHub/ct-registry

ct-registry@1.0.1

VERIFIED· install only

Publisher claims: "Cross-source search of global clinical-trial registries (ClinicalTrials.gov, CDE/ChiCTR/ISRCTN/DRKS/WHO ICTRP, PubChem), normalizes and aggregates phase/status/sponsor/timeline/competitor landscape into JSON/Markdown for trial planning, de-duplication, control-design benchmarking, and competitive intelligence. / 跨源检索全球临床试验注册库(ClinicalTrials.gov、CDE/ChiCTR/ISRCTN/DRKS/WHO ICTRP、PubChem),归一化聚合分期/状态/申办方/时间线/竞品格局,产出 JSON / Markdown,用于立项查重、对照设计与竞品格局分析。" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry ClawHubPublisher medstatstar · publishing for 105 daysInstalls 975Last detonated 34 min ago
$clawhub install ct-registry
WatchReport an issue

Coverage

Nothing executable in the bundle ran; the trace covers the install step only.
Tested
every file read, file written and host contacted by what ran
Not tested
use of the skill by an agent

Is [email protected] safe to install?

KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-15 and scored it 83/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 0 s · 1 scenarios · 0 deviations
t+CategoryObserved action
0.0sprocessno install scripts in bundle
0.0sprocessscript backend runs setup only
0.0sprocessscript backend runs setup only
0.0sprocessno install scripts to re-run

Static findings

MEDIUM
Python subprocess execution detectedscripts/ct_registry.py:245 · Python subprocess execution detectedsubprocess.run(cmd, check=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
File type combined with upload actionSKILL.md:149 · File type combined with upload action — agent may exfiltrate local data files…parately). - **Concurrency constraint (P1-7):** the quota counter `config/usage.json` and the output directory are shared files inside the skill directory; `usage_guard.py` serializes read/write via an advisory file lock. Run **one skill p…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
File type combined with upload actionSKILL.md:118 · File type combined with upload action — agent may exfiltrate local data files… (P0-A, local-only):** `--track` writes normalized results to `registry_snapshot.json`; `--diff <snapshotA> <snapshotB>` compares two `normalized.json` by NCT set and outputs `status_delta` (added / removed / status-changed / synonym-spell…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
HIGH
Destructive file system command detectedscripts/export_xlsx.py:71 · Destructive file system command detected# All palette / format / layout / chart / status logic lives inFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Python subprocess execution detectedadapters/search_who_sliced.py:40 · Python subprocess execution detectedsubprocess.run(cmd, capture_output=True, text=True, timeout=timeout + 90)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
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
MEDIUM
Process kill commandscripts/ct_registry.py:1493 · Process kill command — agent can terminate processeskill its sibling threads.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Python subprocess execution detectedscripts/ct_registry.py:920 · Python subprocess execution detectedrc = subprocess.run(ep, capture_output=True, text=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/ct_registry.py:1498 · Python subprocess execution detectedp = subprocess.run(cmd, stdout=None, stderr=subprocess.PIPE)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
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
Process kill commandscripts/report.py:164 · Process kill command — agent can terminate processes# so the fabrication hard-gate would false-kill valid results.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05

Cost to the agent

Instructions loaded
≈9,998 tok
2 files · 92 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.