Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

semantic-search

v1.0.0

企业级语义检索技能,支持表格/字段/文件搜索和 Text-to-SQL 数据生成

1· 375·2 current·2 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The skill name/description (enterprise semantic search, Text-to-SQL) aligns with the artifacts: it requires FlightSQL connection info and includes vector DB, retriever, and text2sql code. Minor mismatch: SKILL metadata declares only FLIGHT_DB_* as required env vars while documentation and code reference LLM/embedding/rerank configuration (LLM_API_KEY, EMBEDDING_API_KEY, base_url, etc.). This is plausible (DB credentials are mandatory; LLM/embedding may be optional or use local services), but the omission reduces clarity.
!
Instruction Scope
The runtime code and SKILL.md instruct the agent to read env vars and config files (config.yaml/.env) which is expected. However, main.py and other modules dynamically add parent project paths to sys.path and attempt to import utils.config.CONFIG from a project-level location — this can cause the skill to load configuration from outside the skill bundle (project configs, Nacos configs, or other local files), potentially exposing or using host-level secrets and endpoints. SKILL.md also references a test module (python -m src.test_search) that is not present in the bundle, indicating documentation/code drift.
Install Mechanism
There is no install spec (instruction-only for OpenClaw) and dependencies are listed in requirements.txt. That is lower installer risk than arbitrary downloads, but the dependency list includes non-trivial packages (dashscope, FlagEmbedding, bge-reranker, lancedb, adbc-driver-flightsql) which will pull code from PyPI and may require native builds or network access. No packaged install from unknown URLs was observed.
Credentials
Declared required env vars (FLIGHT_DB_HOST, FLIGHT_DB_PORT, FLIGHT_DB_USER, FLIGHT_DB_PASSWORD) are appropriate for a skill that queries a FlightSQL-backed vector DB. The repository and docs, however, reference additional credentials and internal endpoints (LLM API keys, embedding API keys, several internal IPs/URLs in PROJECT_CONFIG.md). Those additional credentials are not flagged as required in the top-level metadata, which is a documentation inconsistency — in practice Text-to-SQL and query enhancement will need LLM/embedding credentials or reachable local models.
Persistence & Privilege
The skill does not request always: true and has no special platform privileges. It does not appear to modify other skills or system-wide agent settings. Normal autonomous invocation is allowed (platform default).
What to consider before installing
This package appears to implement the advertised semantic-search functionality, but review carefully before installing: - Expect to provide FlightSQL credentials; the skill will connect to your DB and run queries (Text-to-SQL may execute SELECTs). Provide a least-privilege DB account and limit network access. - The code attempts to import project-level configs (utils.config) by adding parent paths to sys.path. That means the skill can pick up and use configuration files or credentials present in the surrounding environment — run it in an isolated container / sandbox to avoid accidental use of host secrets. - The docs reference many optional external services (LLM endpoints, embedding/rerank services, internal IPs). If you supply LLM/embedding API keys or allow network egress, the skill will make outbound requests; audit those endpoints and restrict egress where appropriate. - Dependencies are extensive and pull third-party libraries. Pin and audit dependency versions, and install in an isolated virtualenv or container. - There are small inconsistencies (missing test module referenced in docs). Consider doing a quick code review of the text2sql and retriever modules and a dry-run in a non-production environment to confirm which external endpoints are actually called. If you need this skill in production: run it with network egress controls, a restricted DB user, and with LLM/embedding credentials limited to test models/services until reviewed.

Like a lobster shell, security has layers — review code before you run it.

latestvk977j9j5wppwmk6xgqd2x42crd829wfs

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

🔍 Clawdis
Binspython3
EnvFLIGHT_DB_HOST, FLIGHT_DB_PORT, FLIGHT_DB_USER, FLIGHT_DB_PASSWORD

Comments