ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิวได้แล้วต้นแบบ · อัปเดตทุก 30 นาที
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · วิธีติดตั้งภาษาไทยทุกตัว

aiSecurityWarden

โดย SoftDevEngรุ่น 0.7.6i★ 0iรันบนเครื่อง
ชื่อใน registryio.github.SoftDevEng/aisecuritywarden

วิธีติดตั้ง

ใช้ทำอะไรได้

ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ

  • ต่อแบบ ติดตั้งในเครื่อง
  • บัญชีหรือคีย์ ต้องมี SW_TOKEN_NAME, SW_TOKEN_ID · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL)
  • หมวด ความปลอดภัยไซเบอร์
คำอธิบายต้นฉบับจากผู้ทำ (อังกฤษ)
Human approval for AI agents: E2E-encrypted secrets and gated Gmail, GitHub and MCP tools.

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ผลตรวจผ่าน 3/3 · ทำงานบนเครื่องคุณ · ✓ ตรวจคำสั่งแล้ว 14 พ.ย. 2569

ขั้นแรก: คุณใช้ AI ตัวไหน

เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง

ต่อกับ Claude ได้ แต่ต้องเตรียมก่อน

ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ

  1. ลง Python (uv) ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)

    เปิดหน้าดาวน์โหลด Python (uv) ↗

  2. สมัครและสร้างคีย์ของ aiSecurityWarden

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ aiSecurityWarden ↗

  3. กรอกค่าตั้ง 1 ช่อง

    ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย

    • SW_SERVER_URL Your aiSecurityWarden server · ค่าเริ่มต้น https://app.aisecuritywarden.com

    คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

  4. เปิดไฟล์ตั้งค่าของแอป Claude บนคอม

    SettingsDeveloperEdit Config

  5. วางค่าตั้งนี้แล้วบันทึกไฟล์

    {
      "mcpServers": {
        "aisecuritywarden": {
          "command": "uvx",
          "args": [
            "aisecuritywarden",
            "serve"
          ],
          "env": {
            "SW_SERVER_URL": "https://app.aisecuritywarden.com",
            "SW_TOKEN_NAME": "ใส่ค่าของคุณ",
            "SW_TOKEN_ID": "ใส่ค่าของคุณ"
          }
        }
      }
    }

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  6. ปิดแอป Claude แล้วเปิดใหม่

  7. ลองเลย

    ใช้ aiSecurityWarden บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude บอกว่ากำลังใช้ aiSecurityWarden หรือมีชื่อเครื่องมือของ aiSecurityWarden ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ChatGPT ยังต่อ aiSecurityWarden ไม่ได้

aiSecurityWarden ต้องติดตั้งในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะตัวที่ทำงานบนเว็บ

คุณทำแบบนี้แทนได้

ก · ใช้แอปที่ต่อ aiSecurityWarden ได้

  • ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ
  • ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)
  • ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)
  • ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)

ข · ตัวอื่นในหมวด ความปลอดภัยไซเบอร์ ที่ต่อกับ ChatGPT ได้

เลือกจากตัวที่ใช้มากในหมวดเดียวกัน เฉพาะตัวที่ต่อด้วยที่อยู่ได้โดยไม่ต้องใส่คีย์

ต่อกับ Claude Code ได้ แต่ต้องเตรียมก่อน

ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Python (uv) ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)

    เปิดหน้าดาวน์โหลด Python (uv) ↗

  2. สมัครและสร้างคีย์ของ aiSecurityWarden

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ aiSecurityWarden ↗

  3. กรอกค่าตั้ง 1 ช่อง

    ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย

    • SW_SERVER_URL Your aiSecurityWarden server · ค่าเริ่มต้น https://app.aisecuritywarden.com

    คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

  4. เปิด Terminal

    Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell

  5. วางคำสั่งนี้แล้วกด Enter

    claude mcp add --scope user aisecuritywarden --env SW_SERVER_URL=https://app.aisecuritywarden.com --env SW_TOKEN_NAME='ใส่ค่าของคุณ' --env SW_TOKEN_ID='ใส่ค่าของคุณ' -- uvx aisecuritywarden serve

    แก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  6. พิมพ์ /mcp ใน Claude Code

    ต้องเห็น aiSecurityWarden ในรายการและขึ้นว่าเชื่อมต่อแล้ว

  7. ลองเลย

    ใช้ aiSecurityWarden บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude Code บอกว่ากำลังใช้ aiSecurityWarden หรือมีชื่อเครื่องมือของ aiSecurityWarden ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ Cursor ได้ แต่ต้องเตรียมก่อน

ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Python (uv) ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)

    เปิดหน้าดาวน์โหลด Python (uv) ↗

  2. สมัครและสร้างคีย์ของ aiSecurityWarden

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ aiSecurityWarden ↗

  3. กรอกค่าตั้ง 1 ช่อง

    ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย

    • SW_SERVER_URL Your aiSecurityWarden server · ค่าเริ่มต้น https://app.aisecuritywarden.com

    คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

  4. กดปุ่มนี้เพื่อเปิด Cursor

    เปิดใน Cursor

    Cursor จะถามยืนยันการติดตั้ง ให้กด Install

  5. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ aiSecurityWarden ช่อง SW_TOKEN_NAME, SW_TOKEN_ID, SW_SERVER_URL ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  6. เปิดแชตของ AI ใน Cursor โหมด Agent

  7. ลองเลย

    ใช้ aiSecurityWarden บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Cursor บอกว่ากำลังใช้ aiSecurityWarden หรือมีชื่อเครื่องมือของ aiSecurityWarden ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ VS Code ได้ แต่ต้องเตรียมก่อน

ต้องมีคีย์ของ aiSecurityWarden (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (SW_SERVER_URL) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Python (uv) ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)

    เปิดหน้าดาวน์โหลด Python (uv) ↗

  2. สมัครและสร้างคีย์ของ aiSecurityWarden

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ aiSecurityWarden ↗

  3. กรอกค่าตั้ง 1 ช่อง

    ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย

    • SW_SERVER_URL Your aiSecurityWarden server · ค่าเริ่มต้น https://app.aisecuritywarden.com

    คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

  4. กดปุ่มนี้เพื่อเปิด VS Code

    เปิดใน VS Code

    VS Code จะถามยืนยันการติดตั้ง ให้กด Install

  5. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ aiSecurityWarden ช่อง SW_TOKEN_NAME, SW_TOKEN_ID, SW_SERVER_URL ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  6. เปิดแชตของ AI ใน VS Code โหมด Agent

  7. ลองเลย

    ใช้ aiSecurityWarden บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า VS Code บอกว่ากำลังใช้ aiSecurityWarden หรือมีชื่อเครื่องมือของ aiSecurityWarden ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม

ดูโปรแกรมที่ใช้ MCP ทั้งหมด →

ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง

ติดตรงไหน? ถามคนที่ใช้ aiSecurityWarden อยู่💬 พูดคุย →
สำหรับคนเขียนโค้ด: คำสั่ง Terminal และค่าตั้ง JSON

ติดตั้งในเครื่อง

Claude Code

claude mcp add --scope user aisecuritywarden --env SW_SERVER_URL=https://app.aisecuritywarden.com --env SW_TOKEN_NAME='ใส่ค่าของคุณ' --env SW_TOKEN_ID='ใส่ค่าของคุณ' -- uvx aisecuritywarden serve

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "aisecuritywarden": {
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "ใส่ค่าของคุณ",
        "SW_TOKEN_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "aisecuritywarden": {
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "ใส่ค่าของคุณ",
        "SW_TOKEN_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "aisecuritywarden": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "ใส่ค่าของคุณ",
        "SW_TOKEN_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

ค่าที่ต้องใส่เอง

  • SW_SERVER_URL จำเป็น env
    Your aiSecurityWarden server
  • SW_TOKEN_NAME ความลับ จำเป็น env
    The machine token's name on the website (its setup step shows it)
  • SW_TOKEN_ID ความลับ จำเป็น env
    The machine token's id (its setup step shows it)

คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

สรุป

ดาวน์โหลดต่อสัปดาห์i
ไม่มียอดใน npm/PyPI
licensei
Apache-2.0
การเชื่อมต่อ
รันบนเครื่อง
รุ่นล่าสุดi
0.7.6
ส่งเข้า registryi
14 พ.ย. 2569
แก้โค้ดล่าสุดi
14 พ.ย. 2569
ผู้ทำ
SoftDevEng
แพ็กเกจ
pypi: aisecuritywarden
เว็บผู้ทำ
aisecuritywarden.com
สถานะใน registry
ใช้งานอยู่

ใช้กับโปรแกรมไหนได้

ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569

ติดตั้งบนเครื่องได้ใน

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

ดูโปรแกรมทั้งหมดพร้อมข้อดีข้อเสีย →

คู่มือที่เกี่ยวข้อง

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 14 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub SoftDevEng ซึ่งเป็นเจ้าของ repo

  • ✓ ผ่าน

    ยังมีคนดูแล

    มีการแก้โค้ดล่าสุด วันนี้

  • ✓ ผ่าน

    มีสัญญาอนุญาต (license)

    ใช้ Apache-2.0

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

พูดคุย

ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์

ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย

ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx

เข้าสู่ระบบด้วย Google เพื่อโพสต์

รีวิวจากผู้ใช้

ยังไม่มีรีวิว

เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิว

เทียบกับตัวอื่นในหมวด ความปลอดภัยไซเบอร์i

  • ดาวมากกว่า 0% ของอีก 1059 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 98% ของอีก 1059 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1059 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

aiSecurityWarden ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: SW_TOKEN_NAME, SW_TOKEN_ID

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด วันนี้ และส่งรุ่นล่าสุด (0.7.6) เข้า registry วันนี้

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Robin: AI-Powered Dark Web OSINT, HOL Guard, SonarQube MCP Server

ตัวอื่นในหมวดเดียวกัน

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Robin: AI-Powered Dark Web OSINT

Dark web OSINT over Tor: search onion engines, scrape pages, report with your own model.

โดย apurvsinghgautamกำลังโต★ 8Kอัปเดต 42 วันที่ผ่านมา

รันบนเครื่อง

HOL Guard

Local-first AI agent security evidence and approval workflows through HOL Guard's stdio MCP server.

โดย hashgraph-onlineใช้กันมาก↓ 7.1K/สัปดาห์★ 1.1Kอัปเดต 9 วันที่ผ่านมา

รันบนเครื่อง

SonarQube MCP Server

Analyze code quality and security with SonarQube Server or Cloud directly in AI assistants.

โดย SonarSourceกำลังโต★ 686อัปเดต 3 วันที่ผ่านมา

รันบนเครื่อง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

aiSecurityWarden client

The open-source client for [aiSecurityWarden](https://aisecuritywarden.com), a secrets service with scoped, revocable machine tokens, end-to-end encryption and human approval for AI agents. Built so AI agents (like Hermes Agent) and other unattended services can fetch API keys at startup without ever storing those keys on disk.

All encryption and decryption happens here, in the client. The server only ever receives ciphertext, proofs it keeps only as Argon2id hashes, and wrapped keys, so you can check what leaves your machine by reading this code.

Get an account and see how it works at [aisecuritywarden.com](https://aisecuritywarden.com).

This repository contains:

  • the Python client library (securitywarden.client.SecurityWardenClient);
  • swctl, the command-line tool (machines: swctl export / swctl run; admins: swctl admin ...);
  • swadmin, a small desktop admin window;
  • the cryptography (src/securitywarden/crypto.py), the approval-policy and address-list parsers, and the shared test vectors other implementations are checked against;
  • the protocol and design document: docs/DESIGN.md.

The aiSecurityWarden server is a separate product.

Status: alpha. The design is deliberately small and reviewable, but it has not had an independent

security audit. Read the threat model.

How it works

 Admin workstation                 aiSecurityWarden server                Agent box (e.g. jarvis)

───────────────── ───────────────────── ─────────────────────── swctl admin ... stores only: sw1.m. . : • creates project key ───────▶ • ciphertext (chmod 600 file) • encrypts secrets • Argon2 hashes │ • wraps project key • wrapped keys ◀── id+secret ─────┤ 1. auth → 5-min JWT per machine token • audit log ─── ciphertext ──▶ │ 2. fetch │ 3. decrypt locally with ▼ KEY=VALUE → agent env → tools

A machine token has three parts:

PartSent to server?Purpose
idyesidentifies the token
secretyes (over TLS)proves possession; server keeps only an Argon2id hash
keyneverunwraps the project key, which decrypts the secrets

So the server can authenticate a token and hand out ciphertext, but it cannot read any secret. A full copy of the server's database is useless without a token key.

Threat model

Protects against

  • Secrets at rest on agent machines: only a token sits on disk, not your API keys. Backups, copied dotfiles and logs leak a token you can revoke in one command.
  • Server compromise: the database holds only AES-256-GCM ciphertext, Argon2 hashes and wrapped keys. Ciphertext is bound to its project, token and name (AAD), so a malicious server can't swap blobs around either.
  • Over-broad access: each token is read-only and scoped to one project.
  • Stale credentials: tokens can expire; revocation takes effect on the next request (access JWTs are re-checked against the database every time).
  • Brute force: Argon2id hashing, per-IP and per-token failure rate limiting, and the same timing for unknown token ids.

Does not protect against

  • An attacker who already controls the agent machine while it's running. They can read the token file, or read the decrypted secrets from the process memory or environment. No secrets manager can prevent that.
  • Losing the admin credential. Project keys are wrapped under it; without it the secrets can't be recovered (by design). Keep it in your password manager.
  • A server operator who swaps in malicious *client* code. Install swctl from a source you trust.

Install

pipx install aisecuritywarden     # or: pip install aisecuritywarden (in a virtual environment)

It installs the commands swctl, sw-mcp and swadmin. In Python code (connectors) the package is imported as securitywarden, e.g. from securitywarden.mcp import Connector.

Coming from 0.6 (installed as `securitywarden`)? Reinstall once under the new name; your tokens and settings stay where they are:

pip uninstall securitywarden && pip install aisecuritywarden     # same environment as before

Needs Python 3.10+, on Linux, Windows or macOS (all three are tested in CI). swadmin also needs Tkinter: it ships with the python.org installers for Windows and macOS; on Debian/Ubuntu, sudo apt install python3-tk.

macOS
  1. Install Python from python.org (3.10 or newer). Its installer includes a current Tk, so swadmin works. Avoid Apple's built-in /usr/bin/python3: its Tk is old and draws windows badly. With Homebrew's Python, also run brew install python-tk.
  2. Install the client in its own virtual environment:
   python3 -m venv ~/.venvs/securitywarden

~/.venvs/securitywarden/bin/pip install aisecuritywarden ~/.venvs/securitywarden/bin/swadmin # the admin window; swctl and sw-mcp are next to it

  1. Files live where they do on Linux: ~/.config/securitywarden/ (tokens, the admin credential file if you use one, swctl's cached 2FA session), each readable by you only.

The website works in Safari too (CI runs it in WebKit, Safari's engine).

Updating
sw-mcp update --check     # or: swctl update --check

sw-mcp update # installs the newest signed release; never an older one

Or ask your agent: "check for aiSecurityWarden updates" / "update aiSecurityWarden". The agent's securitywarden_update tool asks you to approve the exact version first. Restart the agent app afterwards. When a newer client is out, the agent is told once (and every time if the server requires it). Updates are signed with an offline release key and checked against the key built into the client; see DESIGN.md "Client updates".

From source:

git clone https://github.com/SoftDevEng/aiSecurityWarden-client && cd aiSecurityWarden-client

pip install -e ".[dev]" && pytest

Quick start

You need the address of an aiSecurityWarden server and, to administer it, its admin credential.

1. Admin (from your workstation)
mkdir -p ~/.config/securitywarden

echo 'sw1.a....' > ~/.config/securitywarden/admin.cred && chmod 600 ~/.config/securitywarden/admin.cred export SW_SERVER_URL=https://vault.example.com

swctl admin project create hermes-webull swctl admin secret set hermes-webull WEBULL_APP_KEY # prompts; value never in argv/history swctl admin secret set hermes-webull WEBULL_APP_SECRET swctl admin token create hermes-webull --name jarvis --expires-days 180

2. Machine
export SW_SERVER_URL=https://vault.example.com SW_TOKEN_ID=<token id> SW_TOKEN_NAME=jarvis

swctl setup # paste the one-time setup code the website (or --setup-code) shows

swctl export # KEY=VALUE lines swctl export --format json swctl run -- python my_bot.py # run a command with secrets in its environment

Hermes Agent integration

Hermes supports custom vaults through a command helper that prints KEY=VALUE lines at launch. That's exactly what swctl export does. See examples/hermes/ for a wrapper script and config.

AI agent tools with approval (sw-mcp)

sw-mcp gives an agent tools for an application, such as Gmail, as an MCP server. Every action goes through the token's rules in aiSecurityWarden: reading may be allowed outright, while sending an email waits until you approve exactly that email (on the website, in swadmin, Telegram or ntfy). The agent is told it's waiting and checks back. See docs/mcp-gmail.md for the Gmail set-up with Hermes, and DESIGN.md for writing a connector for another application.

sw-mcp tools --connector gmail          # the tools, their actions, risks and suggested rules

sw-mcp serve --connector gmail # what Hermes runs (stdio) sw-mcp call gmail_search query=is:unread limit=5 # try one tool by hand; waits for approval if needed sw-mcp setup --token-file ~/.config/securitywarden/gmail-token # store the token from a one-time setup code

Other applications get a connector: one Python class whose tools each declare an action and a risk. An AI can write one: sw-mcp new-connector NAME creates the project (with instructions for the AI in AGENTS.md), sw-mcp guide prints the rules, and sw-mcp check plus the generated tests confirm it's right. Installed connector packages are found by name (--connector NAME). See docs/connectors.md.

Connectors can also come from aiSecurityWarden itself: turn a built-in one (Gmail) on for a project on the website, or upload your own (sw-mcp pack NAME, then Connectors > Upload; encrypted in the browser, account-wide, versioned with a backup of the version replaced). sw-mcp serve then loads whatever the token's project uses, with no --connector needed, and picks up new versions as you choose: at once, or on the next restart.

Teaching the agent the rules

Every agent connected to sw-mcp is told the essentials when it connects: how to wait for an approval, to treat email and web content as untrusted, to use only setup codes you typed, and to update through securitywarden_update (never pip or pipx, never killing sw-mcp). Agents that support skills can get the full guide too:

sw-mcp skill install hermes     # Hermes Agent: ~/.hermes/skills/aisecuritywarden/SKILL.md

sw-mcp skill install claude # Claude Code: ~/.claude/skills/aisecuritywarden/SKILL.md sw-mcp skill zip claude # Claude app: upload the .zip in its Skills settings

Then start a new session in the agent. sw-mcp serve keeps skills it installed up to date after each client update; a SKILL.md you wrote yourself is never replaced.

Admin commands

Command
`swctl admin project createlistdelete NAME`manage projects
`swctl admin secret setgetdelete PROJECT NAME`values read from a prompt or stdin
swctl admin secret list PROJECTnames only
swctl admin token create PROJECT --name N [--expires-days D] [--allow-ip ADDR]...prints the token once; --allow-ip (address or CIDR, repeatable) pins where it may connect from
`swctl admin token set-ips ID --allow-ip ADDR... \--any`replace or remove a token's allowed addresses
swctl admin token list [PROJECT]status, expiry, last used, last IP, allowed addresses, approval
`swctl admin token create ... --approval session\every_fetch [--session-ttl 8h] [--channel C]...`require a person to approve the token's use (see below)
`swctl admin token set-approval ID --approval none\session\every_fetch [...]`change or remove it; ends pending requests and approved sessions
swctl admin token reset-approval-limits IDlet a token that hit its hourly limit ask again now (also in swadmin: Reset approval limit…)

| swctl admin approvals list / approve ID [--match NN] / deny ID | decide pendi

ตัดมาแค่ช่วงต้น อ่านต่อใน repo