Skills/ClawHub/agent-os-asset

agent-os-asset@0.2.0

VERIFIED· install only

Publisher claims: "Turn forgotten files into AI-ready assets / 将吃灰文件变成 AI 资产" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry ClawHubPublisher lee-agi · publishing for 76 daysInstalls 611Last detonated 7d ago
$clawhub install agent-os-asset
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-07 and scored it 82/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/asset_pipeline.py:626 · Python subprocess execution detectedindex_result = 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/asset_pipeline.py:532 · 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/auto_sync.py:154 · Python subprocess execution detectedsubprocess.run(["osascript", "-e", script], check=False, 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/auto_sync.py:247 · Python subprocess execution detectedsubprocess.run(["launchctl", "bootout", f"gui/{uid}", str(path)], check=False, 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/asset_pipeline.py:577 · Python subprocess execution detectedaudit_result = subprocess.run(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:182 · File type combined with upload action — agent may exfiltrate local data filesThe durable decision ledger must be machine-readable, such as `.cleanup-extracted/asset-decisions.json`. Dry-run and apply reports are audit outputs, not the source of truth. / Durable decision ledgerFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Python subprocess execution detectedscripts/asset_pipeline.py:508 · Python subprocess execution detectedaudit_result = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
HIGH
Destructive file system command detectedskills/agent-readable-doc/scripts/materialize_agent_assets.py:142 · Destructive file system command detectedf"- Source format / 来源格式: `{fmt}`\n"Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Python subprocess execution detectedscripts/asset_pipeline.py:554 · Python subprocess execution detectedsemantic_result = 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/mixed_folder_adapter.py:704 · 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/mixed_folder_adapter.py:2232 · Python subprocess execution detectedresult = subprocess.run(["osascript", "-e", f'tell application "Finder" to delete POSIX file "{escaped}"'], check=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE, 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/auto_sync.py:313 · Python subprocess execution detectedresult = subprocess.run(command, cwd=root, check=False, text=True, capture_output=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/auto_sync.py:248 · 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/auto_sync.py:259 · Python subprocess execution detectedresult = subprocess.run(["launchctl", "bootout", f"gui/{uid}", str(path)], check=False, capture_output=True, text=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 actionscripts/mixed_folder_adapter.py:578 · File type combined with upload action — agent may exfiltrate local data filesreturn checked_path(root, boundary / f"{bundle_id}.json", allowed_roots=(boundary,), output=True)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 actionskills/agent-readable-doc/SKILL.md:51 · File type combined with upload action — agent may exfiltrate local data filesEN: 11. After validation, preview archival with `python <skill-root>/scripts/archive_sources.py --vault-root <vault-root> --map-output <extracted/archive-map.json> <sources...>`. Dry-run is the defaulFix: 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 actionskills/agent-readable-doc/SKILL.md:27 · File type combined with upload action — agent may exfiltrate local data filesEN: 3. Review `manifest.json` and create a batch plan. Merge tiny, related, same-directory sources when that improves retrieval; otherwise keep one source per output document.Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Python subprocess execution detectedscripts/review_workbench_server.py:310 · Python subprocess execution detectedresult = subprocess.run(["open", str(target)], check=False, timeout=10)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
File type combined with upload actionscripts/review_workbench.py:245 · File type combined with upload action — agent may exfiltrate local data filesdocument.getElementById('saveJson').onclick=()=>{if(isStatic()){downloadDecisions();document.getElementById('openStatus').textContent='Downloaded decisions.json / 已下载 decisions.json';return;}postJson(Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Python subprocess execution detectedscripts/review_workbench_server.py:327 · 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/review_workbench_server.py:533 · Python subprocess execution detectedsubprocess.run(["open", url], check=False)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/review_workbench.py:79 · Python subprocess execution detectedresult = subprocess.run([executable, "list"], text=True, capture_output=True, check=False, timeout=3)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 filesscripts/code_repo_adapter.py:507 · Instructs the agent to modify its persistent memory or instruction files · informational: not an instruction file · informational: not an instruction file · informational: not an instruction fileinsights.append(source_claim(rel(repo / "AGENTS.md"), "The project includes AGENTS.md; check applicable rules only when the user authorizes work on this project / 项目包含 AGENTS.md;仅在用户授权操作该项目时核对其适用规则。")Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
Python subprocess execution detectedtest/second_brain/test_public_release_contract.py:121 · 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 detectedtest/test_public_package.py:117 · 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 detectedtest/test_bilingual_release.py:18 · 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 detectedtest/agent_os_asset/test_review_workbench_security.py:459 · 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 detectedtest/agent_readable_doc/test_archive_sources.py:69 · 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 detectedtest/agent_os_asset/test_review_workbench_security.py:511 · Python subprocess execution detectedliteral = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Auto-update or dynamic fetch configurationtest/second_brain/test_public_release_contract.py:183 · Auto-update or dynamic fetch configuration — agent may load new code at runtimedef test_summary_remote_configuration_is_explicit_and_https_only(monkeypatch) -> None:Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
Python subprocess execution detectedtest/kb_review/test_kb_review.py:761 · Python subprocess execution detectedmissing_root = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedtest/kb_review/test_kb_review.py:767 · Python subprocess execution detectedpreview = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedskills/agent-readable-doc/scripts/extract_sources.py:165 · Python subprocess execution detectedreturn subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedtest/agent_os_asset/test_review_workbench_security.py:506 · Python subprocess execution detectedresult = subprocess.run([shutil.which("node"), "-e", harness],Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedtest/agent_readable_doc/test_archive_sources.py:98 · 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 detectedtest/kb_review/test_kb_review.py:455 · Python subprocess execution detectedhelp_result = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedtest/kb_review/test_kb_review.py:461 · Python subprocess execution detectedunknown_result = subprocess.run(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedtest/agent_readable_doc/test_bilingual_publication.py:59 · 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 detectedtest/kb_review/test_kb_review.py:790 · Python subprocess execution detectedexecute = 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
≈18,731 tok
5 files · 70 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.