@moon791017/neo-skills 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/_utils.js CHANGED
@@ -23,22 +23,22 @@ const sourceDir = join(packageRoot, 'skills');
23
23
  export const AGENTS = {
24
24
  claude: {
25
25
  name: 'Claude',
26
- targetSubDir: '.claude/skills',
26
+ targetSubDir: '.claude/skills/neo-skills',
27
27
  hint: '請確保您的 Claude Desktop 或相關插件已指向此目錄。',
28
28
  },
29
29
  copilot: {
30
30
  name: 'Copilot',
31
- targetSubDir: '.copilot/skills',
31
+ targetSubDir: '.copilot/skills/neo-skills',
32
32
  hint: '請確保您的 GitHub Copilot CLI 已指向此目錄。',
33
33
  },
34
34
  codex: {
35
35
  name: 'Codex',
36
- targetSubDir: '.codex/skills',
36
+ targetSubDir: '.codex/skills/neo-skills',
37
37
  hint: '請確保您的 Codex CLI 已指向此目錄。',
38
38
  },
39
39
  // gemini: {
40
40
  // name: 'Gemini',
41
- // targetSubDir: '.gemini/skills',
41
+ // targetSubDir: '.gemini/skills/neo-skills',
42
42
  // hint: '請確保您的 Gemini CLI 已指向此目錄。',
43
43
  // },
44
44
  };
@@ -1,2 +1,5 @@
1
1
  #!/usr/bin/env node
2
- var b=(g)=>new RegExp(g,"i"),Q=[b("\\.env"),b("\\.pem\\b"),b("\\.key\\b"),b("\\.git[/\\\\]"),b("\\bid_rsa"),b("credentials\\.json"),b("launchSettings\\.json"),b("\\bsecrets?[/\\\\]")];async function U(){try{let z=(await new Promise((q,K)=>{let D=[];process.stdin.on("data",(M)=>D.push(M)),process.stdin.on("end",()=>q(Buffer.concat(D))),process.stdin.on("error",K)})).toString("utf-8").trim();if(!z)throw Error("No input received from Gemini CLI.");for(let q of Q)if(q.test(z))process.stdout.write(JSON.stringify({decision:"deny",reason:"Security Alert: Access to sensitive file matching pattern is blocked by Neo Skills Secret Guard.",systemMessage:"\uD83D\uDD12 Security Alert: Sensitive data access blocked."})),process.exit(0);process.stdout.write(JSON.stringify({decision:"allow"})),process.exit(0)}catch(g){console.error(`[Fail-safe] Secret Guard Internal Error: ${g?.message||g}`),process.exit(2)}}U();
2
+ import{readFileSync as v}from"node:fs";var h=(b)=>new RegExp(b,"i"),z=[h("\\.env\\b"),h("\\.pem\\b"),h("\\.key\\b"),h("\\.git[/\\\\]"),h("\\bid_rsa"),h("credentials\\.json"),h("launchSettings\\.json"),h("\\bsecrets?[/\\\\]")];async function B(){try{let b="";try{b=v(0,"utf-8").trim()}catch(j){throw Error("Failed to read input from stdin.")}if(!b)throw Error("No input received from Gemini CLI.");let q="unknown";try{q=JSON.parse(b).tool_name||"unknown"}catch(j){}process.stderr.write(`[Secret Guard] Scanning activity for tool: ${q}
3
+ `);for(let j of z)if(j.test(b))process.stderr.write(`[Security Alert] Sensitive pattern blocked: ${j.source}
4
+ `),process.stdout.write(JSON.stringify({decision:"deny",reason:`Security Alert: Operation blocked by Secret Guard. Input matches sensitive pattern: ${j.source}`,systemMessage:"\uD83D\uDD12 Security Alert: Sensitive data access blocked."})),process.exit(0);process.stdout.write(JSON.stringify({decision:"allow"})),process.exit(0)}catch(b){process.stderr.write(`[Fail-safe Error] Secret Guard Internal Failure: ${b?.message||b}
5
+ `),process.exit(2)}}B();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "neo-skills",
3
3
  "description": "A universal capability extension for Gemini CLI",
4
- "version": "0.46.1",
4
+ "version": "0.46.3",
5
5
  "mcpServers": {
6
6
  "neo-skills": {
7
7
  "command": "node",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moon791017/neo-skills",
3
- "version": "1.0.14",
3
+ "version": "1.0.16",
4
4
  "type": "module",
5
5
  "description": "Neo Skills: A Universal Expert Agent Extension",
6
6
  "homepage": "https://neo-blog-iota.vercel.app/",