guanyuan-majia@3.5.2
VERIFIED· install onlyPublisher claims: "观远 BI(Guandata)实战增益层。标准查数、指标批量查询、本地分析、建卡发布、ETL、数据集和表单结构管理、工作流、指标写入路由官方六组件。专攻 ETL 整库治理、SmartETL 全链路重写、引擎报错、自定义图表与 HTML 看板排障、看板口径档案与只读逐格验收、v7 发布兼容、移动端 phoneLayout、门店手机成绩单、SuperApp 的 LLM 中转及历史兼容、AI-native ADS 架构判断。餐饮会员公式见 majia-huiyuan。触发:execute-sql 5001、SQL 直查不可用、ETL 预览汇总、分块取数、历史数据抽取、预览截断、数字出处、看板口径档案、看板答案对账、观远、Guandata、会员、订单、复购率、RFM、ETL 治理、payload_json、自定义图表、HTML 看板、门店手机成绩单、换店滤空、phoneLayout、60004、SuperApp、ILLEGAL_JSON_RES、数据架构。" Observed in sandbox: no network, touches nothing outside the project, writes no memory.
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-11 and scored it 80/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 deviationsStatic findings
result = subprocess.run(command, capture_output=True, text=True, timeout=120)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.* npx @supermajia/majia-guanyuan install --tool all # 4 工具都装Fix: Pin versions and sources; vendor anything fetched at install time.result = subprocess.run([sys.executable, str(script), '--plan', str(self.plan_path),Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.check = subprocess.run(['git', '-C', str(root), 'check-ignore', '--quiet', str(relative)],Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.proc = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.> **安装**:`git clone https://github.com/maojiebc/majia-guanyuan.git`,或 `npx github:maojiebc/majia-guanyuan install`Fix: Pin versions and sources; vendor anything fetched at install time.* npx @supermajia/majia-guanyuan install # 自动检测可用工具,全装Fix: Pin versions and sources; vendor anything fetched at install time.* npx @supermajia/majia-guanyuan uninstall --tool claude-codeFix: Pin versions and sources; vendor anything fetched at install time.…e-superapp-pipeline.md) | SuperApp 开放应用开发流水线 / `guancli app create/publish` 不读 `.env` 必须显式传 `--app-id` / 脚手架 bi-services 速查 / 数据集异步预览 3 步链路 / **`/survey-engine/api/…Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.self.sql = self.root / 'q.sql'; self.sql.write_text('SELECT COUNT(*) AS source_count FROM input1')Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.* npx @supermajia/majia-guanyuan install --tool claude-codeFix: Pin versions and sources; vendor anything fetched at install time.* npx @supermajia/majia-guanyuan install --dry-run # 只显示要做什么,不动文件Fix: Pin versions and sources; vendor anything fetched at install time.for name in ('_guanetl_state.json', '_base_etl.json', '_input.json'):Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.for name in ('_guanetl_state.json', '_base_etl.json', '_input.json'):Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.…> > **变体 B|同 prefix 下「子包 vs 伞包」并存**(2026-07-15 实测):即使只有一个 prefix,若**单独**装过某个子包(`npm i -g @guandata/guancli`),它会和伞包 `guanskill` 自带的内嵌版**抢同一个 `guancli` bin**——`which -a` 只有一条、看不出异常,`npm ls -g --depth=0` 才看得见两个顶层条目。**排查**:`npm ls -g --depth=1…Fix: Pin the exact version (`[email protected]`, `==1.2.3`) so every install gets the bytes that were reviewed.again = subprocess.run([sys.executable, str(script), '--plan', str(self.plan_path),Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.npm i -g @guandata/guanskill@latestFix: Pin the exact version (`[email protected]`, `==1.2.3`) so every install gets the bytes that were reviewed.Cost to the agent
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.