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

NativeKeel

โดย AlicanAkyolรุ่น 0.1.134i★ 6iรันบนเครื่อง
ชื่อใน registryio.github.AlicanAkyol/nativekeel

วิธีติดตั้ง

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

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

  • ต่อแบบ ติดตั้งในเครื่อง
  • บัญชีหรือคีย์ ไม่ต้องใส่คีย์
  • หมวด คลินิกและสุขภาพ
คำอธิบายต้นฉบับจากผู้ทำ (อังกฤษ)
React Native and Expo health check: upgrade blockers, store rules, crash risks, security findings

ติดตั้ง

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

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

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

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

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

ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ

  1. ลง Node.js ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Node.js

    เปิดหน้าดาวน์โหลด Node.js ↗

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

    SettingsDeveloperEdit Config

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

    {
      "mcpServers": {
        "nativekeel": {
          "command": "npx",
          "args": [
            "-y",
            "nativekeel",
            "mcp"
          ]
        }
      }
    }
  4. ปิดแอป Claude แล้วเปิดใหม่

  5. ลองเลย

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

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

ค่าตั้งเพิ่มเติม 1 ช่อง (ไม่ต้องกรอกก็ใช้ได้)

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

  • NATIVEKEEL_MCP_ROOTS Extra folders the server may scan (path-delimited). By default only the folder the client starts it in.

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

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

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

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

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

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

  • ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ
  • ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
  • ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
  • ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)

ข · ตัวอื่นในหมวด คลินิกและสุขภาพ ที่ต่อกับ ChatGPT ได้

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

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

ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Node.js ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Node.js

    เปิดหน้าดาวน์โหลด Node.js ↗

  2. เปิด Terminal

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

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

    claude mcp add --scope user nativekeel -- npx -y nativekeel mcp
  4. พิมพ์ /mcp ใน Claude Code

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

  5. ลองเลย

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

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

ค่าตั้งเพิ่มเติม 1 ช่อง (ไม่ต้องกรอกก็ใช้ได้)

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

  • NATIVEKEEL_MCP_ROOTS Extra folders the server may scan (path-delimited). By default only the folder the client starts it in.

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

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

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

ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Node.js ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Node.js

    เปิดหน้าดาวน์โหลด Node.js ↗

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

    เปิดใน Cursor

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

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

  4. ลองเลย

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

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

ค่าตั้งเพิ่มเติม 1 ช่อง (ไม่ต้องกรอกก็ใช้ได้)

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

  • NATIVEKEEL_MCP_ROOTS Extra folders the server may scan (path-delimited). By default only the folder the client starts it in.

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

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

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

ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)

  1. ลง Node.js ในเครื่อง

    ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Node.js

    เปิดหน้าดาวน์โหลด Node.js ↗

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

    เปิดใน VS Code

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

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

  4. ลองเลย

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

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

ค่าตั้งเพิ่มเติม 1 ช่อง (ไม่ต้องกรอกก็ใช้ได้)

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

  • NATIVEKEEL_MCP_ROOTS Extra folders the server may scan (path-delimited). By default only the folder the client starts it in.

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

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

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

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

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

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

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

Claude Code

claude mcp add --scope user nativekeel -- npx -y nativekeel mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "nativekeel": {
      "command": "npx",
      "args": [
        "-y",
        "nativekeel",
        "mcp"
      ]
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "nativekeel": {
      "command": "npx",
      "args": [
        "-y",
        "nativekeel",
        "mcp"
      ]
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "nativekeel": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "nativekeel",
        "mcp"
      ]
    }
  }
}

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

  • NATIVEKEEL_MCP_ROOTS env
    Extra folders the server may scan (path-delimited). By default only the folder the client starts it in.

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

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

สรุป

ดาวน์โหลดต่อสัปดาห์i
608/สัปดาห์
การเชื่อมต่อ
รันบนเครื่อง
รุ่นล่าสุดi
0.1.134
ส่งเข้า registryi
8 พ.ย. 2569
แก้โค้ดล่าสุดi
9 พ.ย. 2569
ผู้ทำ
AlicanAkyol
แพ็กเกจ
npm: nativekeel
เว็บผู้ทำ
nativekeel.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 AlicanAkyol ซึ่งเป็นเจ้าของ repo

  • ✓ ผ่าน

    ยังมีคนดูแล

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

  • ✓ ผ่าน

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

    ใช้ MIT

  • – ไม่เกี่ยว

    endpoint ตอบ

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

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

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

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

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

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

พูดคุย

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

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

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

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

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

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

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

เทียบกับตัวอื่นในหมวด คลินิกและสุขภาพi

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

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

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

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

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

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

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

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

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

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

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

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

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

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

ในหมวดเดียวกันมี Medplum MCP, Mirobody, Apple Health

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

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

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

Medplum MCP

Securely access and manage FHIR healthcare data stored in Medplum.

โดย medplumใช้กันมาก★ 2.8Kอัปเดต 4 เดือนที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · medplum.com

Mirobody

Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.

โดย thetahealthกำลังโต↓ 290/สัปดาห์★ 1.5Kอัปเดต 4 วันที่ผ่านมา

รันบนเครื่อง✓ thetahealth.ai

Apple Health

Local-first Apple Health MCP server for questions about your sleep, workouts and heart data.

โดย neiltronกำลังโต↓ 106/สัปดาห์★ 575อัปเดต 2 เดือนที่ผ่านมา

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

README จากผู้ทำ

เปิดอ่าน README

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

NativeKeel

Health check for React Native and Expo apps. Will your app survive the next upgrade, pass the store and stay safe? One command, no install, no account:

npx nativekeel upgrade   # go/no-go for the newest React Native / Expo, with file and line

npx nativekeel # full health check: upgrade, store rules, crashes, security, accessibility

No terminal handy? Paste your package.json at nativekeel.com/check: the same dependency checks and upgrade plan, run in your browser.

Works with GitHub Actions (a quality gate comment on every pull request), [SonarQube](https://nativekeel.com/sonarqube) (findings in your existing projects and quality gate) and AI coding agents (MCP server for Claude Code, Codex and Cursor). Several apps? npx nativekeel fleet puts them on one page.

What's new in 0.1.132: turning off expo-camera's barcode scanner (expo.camera.barcode-scanner-enabled=false) to drop Google's portrait-locked scanner activity also turns off CameraView scanning on Android, so onBarcodeScanned silently never fires. NativeKeel now reports that when the app scans barcodes, and the Android 16 note leads with the fix that is safe either way (tools:remove). Recent releases added the expo-camera orientation lock to the Android 16 note, the target SDK check for managed Expo apps, a check for UIScene setups that lose the deep link that launches the app, a list of 30 libraries that still call APIs React Native removed, npx nativekeel upgrade (a go/no-go for the newest React Native / Expo), known malware anywhere in the lockfile's dependency tree, and detection of the actively exploited Metro dev-server flaw CVE-2025-11953. Every check is tuned on 1,100+ open-source React Native and Expo projects, with recently updated ones added every week, to keep false alarms out (measured accuracy). All releases →

Summary  4 critical · 4 high · 6 medium · 6 low

Security (OWASP MASVS) crypto 1 · network 1 · code 1 · 7 finding categories; not a compliance verdict

Start here

  1. Revoke the AWS access key ID in src/App.js:6 at the provider today.
  2. Set targetSdkVersion = 36 and compileSdkVersion = 36 in android/build.gradle.
  3. Replace @react-native-community/push-notification-ios: no New Architecture support, unmaintained.

Could someone steal data or abuse the app?

npx nativekeel security . --html security.html --fail-on high

Review secrets, credential leaks, backend access rules, unsafe code execution, transport and dependency risks in one report. New flow/configuration findings show where the input enters, where it is used, what an attacker would need, and how to verify the fix. --offline keeps the scan offline and skips online advisory checks. No source code is uploaded.

Keys added at build time. An EXPO_PUBLIC_ value set in EAS or a CI secret never appears in the repository, so no source scan can see it, yet it ships in the app. NativeKeel also opens the built app and scans the JavaScript bundle inside it, plain JavaScript or Hermes bytecode: APKs and AABs under android/app/build/outputs, eas build --local results, committed bundles, and any APK, AAB or IPA you pass with --artifact app.apk (the GitHub Action's artifact input, after your build step).

This is source analysis, not a live attack or a security certificate. Security checks and scope · Mobile flow details · Native Android details.

What it checks

Upgrade

  • Is your React Native / Expo version still supported? React Native supports the latest three minors; in Expo projects React Native moves with the SDK.
  • Can you upgrade at all? The legacy architecture was removed in 0.82. If the New Architecture is off (it is off by default before 0.76), you are stuck at 0.81.
  • Which packages block the upgrade? Native modules without New Architecture support (cross-checked with the package's own codegen spec), unmaintained or with no release in years, with verified alternatives and renamed packages. Library versions for each step come from the libraries' own compatibility tables.
  • Which packages might be unused? Installed packages with no import, native reference, requirement or patch found. Listed for review, not automatic removal: dynamic and generated usage can hide from a static scan.

Store

  • Will Google Play and the App Store accept your next build? targetSdk, permissions Google Play restricts (photo/video, all files, background location, app installs, SMS), 16 KB memory pages (it also opens your built APK/AAB and checks every native library), the iOS privacy manifest and SDKs too old to have one, missing Info.plist usage descriptions, sign-up without account deletion, social login without Sign in with Apple, and release builds signed with the debug key.

Crashes

  • Will it crash at runtime? packages off the versions your Expo SDK expects, release builds that still point at a development server, native libraries that need a newer React Native, Reanimated without its Babel plugin or react-native-worklets, mixed @react-native-firebase/* or @react-navigation/* majors, a second copy of React or React Native inside a dependency, Kotlin modules that cannot load through the New Architecture interop layer, AppDelegate setups that crash in Release, camera/photos/location access without the Info.plist text iOS requires, imports of APIs removed from React Native core (AsyncStorage, Picker, ViewPropTypes, …) or deprecated for removal (ImageBackground, SafeAreaView), and traps learned from real upgrades.

Security, grouped by OWASP MASVS

  • Secrets in the app or the repo: AWS, Stripe, OpenAI, Anthropic, GitHub, Slack, SendGrid, Twilio, Shopify, Google OAuth and Supabase service_role keys, private keys, .env values compiled into the bundle, Expo extra/EXPO_PUBLIC_/eas.json secrets, signing keys and passwords.
  • Data on the device: iOS file sharing (UIFileSharingEnabled) that exposes an unencrypted MMKV, expo-sqlite or Realm database (they live in Documents by default on iOS), passwords that flow into crash reports, analytics, databases or plain AsyncStorage (followed through variables), auth tokens in unencrypted storage, Android backups that copy them.
  • Network: TLS certificate checks turned off in native code, cleartext HTTP, NSAllowsArbitraryLoads, plain-HTTP API calls, user-installed CAs in release.
  • Backend rules: Firebase Realtime Database, Firestore and Storage rules open to anyone or in test mode; Supabase tables created without row level security; sign-in-only Firebase write rules and unconditional Supabase UPDATE/DELETE policies without row ownership checks. Policy findings include file/line evidence and explain deployment/grant assumptions.
  • Authentication: biometric prompts (Face ID, Touch ID, fingerprint) whose success is only a yes/no in JavaScript, with no secret bound to biometrics in the keychain/keystore, in JS or native code: the prompt guards the screen, not the data.
  • Cryptography: hardcoded encryption keys, MD5/SHA-1 on passwords, ECB mode, Math.random for nonces and salts.
  • Platform: WebViews that read local files or load HTTP into HTTPS, Android components any app can start, unverified deep links and the template myapp:// URL scheme.
  • Dependencies and reverse engineering: known vulnerabilities in the exact versions you ship (GitHub Advisory Database), source maps in the app, Hermes or R8 off.

These are static checks: they catch the common, detectable mistakes, not everything a penetration test of the running app and backend would.

Performance

  • What is your release bundle actually made of? npx nativekeel bundle reads the source map a release build already wrote (Android: android/app/build/generated/sourcemaps/react/release/, Expo: npx expo export --dump-sourcemap) and measures how much of the shipped code is your app and each package, and which packages are bundled twice. --base old.map compares two builds: what was added, removed or grew. Nothing is built or run; the normal scan picks the map up too.
  • Where should you investigate performance? Nested list patterns, JavaScript animation settings, source logging calls, root lodash/moment imports, referenced images over 500 KB, JSON over 300 KB imported into the JavaScript bundle (every language's translations, Lottie animations), and selector allocation patterns. Confirm the actual components, release output and runtime behavior before changing them; these checks do not measure frame rate, startup time or savings.

Accessibility

  • Can everyone use it? Icon-only buttons with no accessibility label (VoiceOver and TalkBack say just "button"), buttons smaller than 44×44 with no hitSlop, text and placeholders whose color and background (both set in the code) fall below WCAG contrast, text fields with no label or placeholder, and text scaling turned off for the whole app. Text.defaultProps is flagged too: React 19 (React Native 0.78+) ignores it in JSX, so app-wide fonts and font-scaling limits silently stop applying. Only React Native's own touchables and inputs are checked; custom components, focus order and color contrast still need a test with a screen reader.

App improvement review

npx nativekeel improve /path/to/app --offline

npx nativekeel improve /path/to/app --offline --out IMPROVE.md

Existing security, stability, performance, store and dependency findings become an ordered plan with reasons, applicability conditions, actions, verification and recovery. Exposed credentials get containment instructions. Apparently unused dependencies are review candidates: direct, transitive, dynamic, native and generated consumers must be considered before removal. Performance signals are not measurements.

Use --json for structured output or MCP improve_app. Malware findings block execution-dependent actions. Unknown runtime, backend, accessibility and reliability coverage stays explicit. This adds a decision layer over existing checks, not new vulnerability detectors. See scope and next modules.

Usage

npx nativekeel [path]              # report

npx nativekeel plan --out UPGRADE.md # step-by-step upgrade plan npx nativekeel --html report.html # shareable HTML report npx nativekeel --markdown pr.md # summary for a pull request comment npx nativekeel --sarif nk.sarif #

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