Skills/npm/chat-to-article-admin-ui

chat-to-article-admin-ui@0.5.0

CAUTION· install only

Publisher claims: "聊出文章来(chat-to-article)的本地只读管理台:查看声音目录、词表与当前目录下的文章,并导出 Markdown。" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry npm (MCP server)Publisher liem-opc · publishing for 19 daysInstalls 821Last detonated 1 h ago

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-14 and scored it 77/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: Hidden zero-width characters detected; Hidden zero-width characters detected; Bidirectional text override characters detected. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 1 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
Unicode escape sequence detecteddist/cli.js:465 · Unicode escape sequence detected — may contain obfuscated payloadsif (!has(source)) errors.push(`\u56FE ${fig.id} \u7684\u6587\u4EF6\u4E0D\u5728\u3002`);Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Unicode escape sequence detecteddist/cli.js:468 · Unicode escape sequence detected — may contain obfuscated payloadsif (!(fig.license ?? "").trim()) errors.push(`\u56FE ${fig.id} \u7F3A\u5C11\u51FA\u5904\u6216\u8BB8\u53EF\u3002`);Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Unicode escape sequence detecteddist/cli.js:463 · Unicode escape sequence detected — may contain obfuscated payloadsif (!fig.confirmed) errors.push(`\u56FE ${fig.id} \u6CA1\u6709\u4F5C\u8005\u7684\u751F\u56FE\u786E\u8BA4\u3002`);Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Unicode escape sequence detecteddist/cli.js:464 · Unicode escape sequence detected — may contain obfuscated payloadsif (!fig.prompt) errors.push(`\u56FE ${fig.id} \u7F3A\u5C11\u63D0\u793A\u8BCD\u3002`);Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
File type combined with upload actiondist/web/assets/architectureDiagram-5GKGNRK7-NXhlSTS4.js:1 · File type combined with upload action — agent may exfiltrate local data files…coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPerio…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
HIGH
Hidden zero-width characters detecteddist/web/assets/cytoscape.esm-BDkkwuE4.js:4 · Hidden zero-width characters detected — may conceal content…");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var l="​",v=n.split(` `),f=r.pstyle("text-max-width").pfValue,c=r.pstyle("text-overflow-…Fix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.
AST07
HIGH
Hidden zero-width characters detecteddist/web/assets/katex-HP8lGamR.js:251 · Hidden zero-width characters detected — may conceal content…P=k([],[]),G=k(["vlist"],[P]);G.style.height=A(-b);var Y=k(["vlist-s"],[new d0("​")]);O=[k(["vlist-r"],[L,Y]),k(["vlist-r"],[G])]}else O=[k(["vlist-r"],[L])];var…Fix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.
AST07
MEDIUM
File type combined with upload actiondist/web/assets/c4Diagram-7LVT6UL2-BCx0DqJz.js:6 · File type combined with upload action — agent may exfiltrate local data files…,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,ne(e.db.getConfig())}setData(e,s,a,u){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=s,this.nextData.starty=this.data.starty=a,this.ne…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Unicode escape sequence detecteddist/web/assets/chunk-TICWLB2K-BT8xdNXV.js:6 · Unicode escape sequence detected — may contain obfuscated payloads…\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\…Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
HIGH
Bidirectional text override characters detecteddist/web/assets/katex-HP8lGamR.js:255 · Bidirectional text override characters detected — may hide content direction… \r ]*`,qt="[̀-ͯ]",q4=new RegExp(qt+"+$"),E4="("+q1+"+)|"+(D4+"|")+"([!-\\[\\]-‧‪-퟿豈-￿]"+(qt+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(qt+"*")+"|\\\\verb\\*([^]).*…Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.
AST07
MEDIUM
Unicode escape sequence detecteddist/cli.js:469 · Unicode escape sequence detected — may contain obfuscated payloadsif (!has(source)) errors.push(`\u56FE ${fig.id} \u7684\u672C\u5730\u526F\u672C\u4E0D\u5728\u3002`);Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
File type combined with upload actiondist/web/assets/cose-bilkent-JH36ORCC-C9nzmeCE.js:1 · File type combined with upload action — agent may exfiltrate local data files…coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPerio…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
npx invocation of non-well-known packagedist/cli.js:923 · npx invocation of non-well-known package — may execute untrusted codenpx @liem-opc/chat-to-article-admin-ui [\u9009\u9879]Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
File type combined with upload actiondist/web/assets/diagram-VX7I27RA-DIBpuZT0.js:1 · File type combined with upload action — agent may exfiltrate local data files…or parsing treemap:",a),a}},"parse")},it=10,E=10,X=25,ot=w((t,a,l,n)=>{const r=n.db,i=r.getConfig(),h=i.padding??it,d=r.getDiagramTitle(),g=r.getRoot(),{themeVariables:c}=ae();if(!g)return;const p=d?30:0,b=Se(a),s=i.nodeWidth?i.nodeWidth*E…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 actiondist/web/assets/timeline-definition-24CTP7MA-fdOoSHqH.js:6 · File type combined with upload action — agent may exfiltrate local data files…dientStart:g,gradientStop:m}=a,y=r.timeline?.leftMargin??50;E.debug("timeline",i.db);const k=r.securityLevel;let s;k==="sandbox"&&(s=K("#i"+t));const l=(k==="sandbox"?K(s.nodes()[0].contentDocument.body):K("body")).select("#"+t);l.append("…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 actiondist/web/assets/wardleyDiagram-VM6X3IG4-Cch8PO-c.js:2 · File type combined with upload action — agent may exfiltrate local data files…>{Q.debug(`Rendering Wardley map `+o);const a=jt(),d=Ht(),w=a.nodeRadius*1.6,C=h.db,g=C.getWardleyData(),R=C.getDiagramTitle(),S=g.size?.width??a.width,b=g.size?.height??a.height,Y=It(r);Y.selectAll("*").remove(),Bt(Y,b,S,a.useMaxWidth),Y.…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 actiondist/web/assets/cytoscape.esm-BDkkwuE4.js:4 · File type combined with upload action — agent may exfiltrate local data files…=void 0)qo=!!e;else return qo},Ne=function(e){hv()&&(Kc?console.warn(e):(console.log(e),Xc&&console.trace()))},Yc=function(e){return me({},e)},_r=function(e){return e==null?e:Fe(e)?e.slice():Me(e)?Yc(e):e},Zc=function(e){return e.slice()},…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 actiondist/web/assets/vennDiagram-4TSXK5OY-DuU-Fl63.js:1 · File type combined with upload action — agent may exfiltrate local data files…,q(l,f))}else i=st(e.sets.map(l=>t[l]));const o=e.weight!=null?e.weight:1,r=Math.log((i+1)/(e.size+1));s+=o*r*r}return s}function me(t,n,s){if(s==null?t.sort((i,o)=>o.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,o=t[0].y;for(const…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 actiondist/web/assets/cytoscape.esm-BDkkwuE4.js:321 · File type combined with upload action — agent may exfiltrate local data files…getLabelRotationOffset,isVisible:i("target-label")});var l=Fa(function(){console.log("garbage collect flag set"),t.data.gc=!0},1e4);t.onUpdateEleCalcs(function(v,f){var c=!1;f&&f.length>0&&(c|=t.drawing.invalidate(f)),c&&l()}),mm(t)};funct…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 actiondist/web/assets/flowDiagram-HODETNUW-Dz_8n3c-.js:9 · File type combined with upload action — agent may exfiltrate local data files…ultConfig(){return p1.flowchart}},k(Pe,"FlowDB"),Pe),m1=k(function(s,i){return i.db.getClasses()},"getClasses"),C1=k(async function(s,i,r,a){$.info("REF0:"),$.info("Drawing state diagram (v2)",i);const{securityLevel:n,flowchart:c,layout:g}…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 actiondist/web/assets/sequenceDiagram-WJ2MYXX4-BPUfL_JD.js:162 · File type combined with upload action — agent may exfiltrate local data files…drawActorTypeActor"),Dr=x(async function(e,t,a,r,i,n,s){const c=s??new Map([...n.db.getActors().values()].map((E,h)=>[E.name,h]));switch(t.type){case"actor":return await kr(e,t,a,r,c);case"participant":return await br(e,t,a,r,c);case"bound…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 actiondist/web/assets/katex-HP8lGamR.js:256 · File type combined with upload action — agent may exfiltrate local data files…d",r=>Xt(r,!0,!0,!0));m("\\message",r=>{var e=r.consumeArgs(1)[0];return console.log(e.reverse().map(t=>t.text).join("")),""});m("\\errmessage",r=>{var e=r.consumeArgs(1)[0];return console.error(e.reverse().map(t=>t.text).join("")),""});m(…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Unicode escape sequence detecteddist/web/assets/flowDiagram-HODETNUW-Dz_8n3c-.js:14 · Unicode escape sequence detected — may contain obfuscated payloads…\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\…Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07

Cost to the agent

Instructions loaded
≈50 tok
1 file · 64 in bundle

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

Known vulnerabilities

No advisories in OSV for @liem-opc/chat-to-article-admin-ui@0.5.0 as of 47 min ago. This is the package itself, not its dependencies.

What would make this Verified

3 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim liem-opc: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. Hidden zero-width characters detected≈ +4 on the totalKeep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.
  3. Bidirectional text override characters detected≈ +4 on the totalReplace encoded or assembled strings with plain literals and remove undeclared network calls.
  4. Unicode escape sequence detected≈ +2 on the totalPut hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
  5. File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
  6. npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
Publish a new version to npm, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim liem-opcPropose a patch to the maintainer
chat-to-article-admin-ui@0.5.0 safety verdict: Caution (install only) — KillerSkills