Local-first, agent-friendly Markdown knowledge base with a cross-platform CLI and web editor
AI Security Review
scanned 2mo ago · by lpm-firewall-ai
The source does not support a malicious verdict: there is no install hook or confirmed exfiltration chain. The automatic repair of AI-agent configuration files is a meaningful lifecycle risk that warrants a warning.
It can modify OpenKnowledge entries in AI-editor configuration files, including Codex configuration, during normal CLI startup.
Mechanism
Automatic repair of existing OpenKnowledge MCP configuration entries.
AI rationale
The source does not support a malicious verdict: there is no install hook or confirmed exfiltration chain. The automatic repair of AI-agent configuration files is a meaningful lifecycle risk that warrants a warning.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{yt as r}from"./sleep-DyLEGHvt.mjs";import{Bs as i,_s as a,ac as o,ot as s,rt as c}from"./src-DhKkOAcb.mjs";import{Ar a...
L2: `),u=!1;for(let e=0;e<l.length;e++){let t=l[e];if(r+=t,u)u=!1;else if(u=t>=`\ud800`&&t<=`\udbff`,u)continue;if(t===`\x1B`||t===``){Bt.lastIndex=e+1;let t=Bt.exec(l)?.groups;if(t?....
High
Child Process
Package source references child process execution.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
High
Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
High
Command Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
1Cross-file remote execution chain: dist/resolve-project-root-urAKqvDX.mjs spawns dist/src-CjFV1e1Z.mjs; helper contains network access plus dynamic code execution.
L1: import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Hs as r,Ks as i,Ls as a,Rs as o,ks as s}from"./src-DhKkOAcb.mjs";import{Bi as c,Ir as l,hi as u,jr as d,yn as f}from"....
L2: `)}displayWidth(e){return r(e).length}styleTitle(e){return e}styleUsage(e){return e.split(` `).map(e=>e===`[options]`?this.styleOptionText(e):e===`[command]`?this.styleSubcommandTe...
...
L9: - too many long flags`):Error(`${n}
L10: - unrecognised flag format`)}if(t===void 0&&n===void 0)throw Error(`option creation failed due to no flags found in '${e}'.`);return{shortFlag:t,longFlag:n}}e.Option=n,e.DualOption...
L11: - specify the name in
High
Cross File Remote Execution Context
Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
High
Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
1Cross-file remote execution chain: dist/resolve-project-root-urAKqvDX.mjs spawns dist/src-CjFV1e1Z.mjs; helper contains network access plus dynamic code execution.
L1: import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Hs as r,Ks as i,Ls as a,Rs as o,ks as s}from"./src-DhKkOAcb.mjs";import{Bi as c,Ir as l,hi as u,jr as d,yn as f}from"....
L2: `)}displayWidth(e){return r(e).length}styleTitle(e){return e}styleUsage(e){return e.split(` `).map(e=>e===`[options]`?this.styleOptionText(e):e===`[command]`?this.styleSubcommandTe...
...
L9: - too many long flags`):Error(`${n}
L10: - unrecognised flag format`)}if(t===void 0&&n===void 0)throw Error(`option creation failed due to no flags found in '${e}'.`);return{shortFlag:t,longFlag:n}}e.Option=n,e.DualOption...
L11: - specify the name in
High
Cross File Remote Execution Context
Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
18`)}\n`;try{Fe(r.path,`${i}${c}${l}`,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}return{kind:`updated`,appended:o,alreadyPresent:s,removed:[]}}function jn(e,t){let n=Ln(e);if(n.kind!==`ok`)return n.result;if(!R(n.path))return{kind:`updated`,appended:[],alreadyPresent:[],removed:[]};let r=t.map(e=>Rn(e)),i=new Set;for(let e of r)for(let t of e)i.add(t);i.add(Dn),i.add(On);let a;try{a=z(n.path,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}let o=a.split(`
19`),s=new Set,c=[];for(let e of o){let t=e.trim();if(i.has(t)){s.add(t);continue}c.push(e)}let l=t.filter(e=>{for(let t of Rn(e))if(s.has(t))return!0;return!1});if(s.size===0)return{kind:`updated`,appended:[],alreadyPresent:[],removed:[]};let u=c.join(`
20`);if(u!==a)try{Fe(n.path,u,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}return{kind:`updated`,appended:[],alreadyPresent:[],removed:l}}function Mn(e){let t=Ln(e);if(t.kind!==`ok`)return t.result.reason===`no-git`||t.result.reason===`malformed-pointer`||t.result.reason===`inaccessible`?`no-git`:`shared`;if(!R(t.path))return`shared`;let n;try{n=z(t.path,`utf-8`)}catch{return`shared`}let r=Bn(n),i=kn(e);for(let e of i)if(zn(r,e))return`local-only`;return r.has(Dn)?`local-only`:`shared`}function Nn(e){let t=Ln(e);if(t.kind!==`ok`||!R(t.path))return[];let n;try{n=z(t.path,`utf-8` ...
1import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{$t as r,A as i,At as a,B as o,Bt as s,Ct as c,D as l,Dt as u,Et as d,Gt as f,H as p,Ht as m,I as h,It as g,J as _,Jt a...
L2: `)){let e=n.trim();if(e.startsWith(`ok-contributors: `))try{let n=JSON.parse(e.slice(17));if(typeof n==`object`&&n&&`id`in n&&typeof n.id==`string`&&`name`in n&&typeof n.name==`str...
L3: `)){let e=t.trim();if(!e.startsWith(Dd))continue;let n;try{n=JSON.parse(e.slice(10))}catch{return null}return typeof n!=`object`||!n?null:kd(n)}return null}function Ad(e){if(!e)ret...
L4: `)){let e=n.trim();if(!e.startsWith(Dd))continue;let r;try{r=JSON.parse(e.slice(10))}catch{continue}if(typeof r!=`object`||!r)continue;let i=kd(r);i&&t.push(i)}return t}function kn...
L5: `,i=e.getWriter();try{await i.write(n.encode
3This is a defense-in-depth measure and indicates a bug in just-bash. Please report this at security@vercel.com`,o=classextendsError{violation;constructor(e,t){super(e+a),this.violation=t,this.name=`SecurityViolationError`}},s=!n&&i?new i:null,c=1e3;functionl(e,t,...n){return s.run(e,()=>t(...n))}var u={enabled:!0,auditMode:!1};functiond(e){return e===void0?{...u,enabled:!1}:typeof e==`boolean`?{...u,enabled:e}:{...u,...e}}var f=classi{staticinstance=null;staticimportHooksRegistered=!1;statictrustedExecutionDepth=new Map;config;refCount=0;patchFailures=[];activeExecutionIds=new Set;con ...
4`);n.register(`data:text/javascript,${encodeURIComponent(e)}`),i.importHooksRegistered=!0}}catch(e){console.debug(`[DefenseInDepthBox] Could not register import() hooks:`,e instanceofError?e.message:e)}}protectModuleLoad(){if(!n)try{let t=null;if(typeof process<`u`){lete=process.mainModule;e&&typeof e==`object`&&(t=e.constructor)}if(!t&&typeof e<`u`&&typeof e.main<`u`&&(t=e.main.constructor),!t||typeof t._load!=`function`)return;letn=t._load,r=Object.getOwnPropertyDescriptor(t,`_load`);this.originalDescriptors.push({target:t,prop:`_load`,descriptor:r});leti=this.createBlockingProxy(n,`Modu ...