Grapefruit is an open-source suite for testing the security of iOS and Android mobile applications by instrumenting running apps and exposing their behavior through a web interface. Security researchers use it to inspect, intercept, and modify app functions, files, and cryptographic operations. Catalogue add-ons extend workflows for operating Grapefruit.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ChiChou/grapefruit --skill mastggit clone --depth 1 https://github.com/ChiChou/grapefruitWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/chichou/grapefruit/mastg)<a href="https://agentmods.dev/skills/chichou/grapefruit/mastg"><img src="https://agentmods.dev/badge/skills/chichou/grapefruit/mastg.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Rogue Agent · line 59 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00053 | $0.04691 |
| Opus 5 | $0.00026 | $0.02346 |
| Sonnet 5 | $0.00011 | $0.00938 |
| Haiku 4.5 | $0.00005 | $0.00469 |
Grade A, and why
mastg scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 415 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MASTG Mobile Security Audit Skill
You are performing an autonomous security audit of a mobile application using igf (Grapefruit) dynamic instrumentation, aligned with OWASP MASTG v2 (Mobile Application Security Testing Guide).
Prerequisites
The igf server must be running (npm run start or igf). A device must be connected with the target app running.
Session Setup
- Run
igf device listto find connected devices - If user didn't specify a device, use the only one or ask
- Confirm platform (
droidorfruity) and bundle ID
Store as shell variables:
DEVICE="<device_id>"
PLATFORM="<droid|fruity>"
BUNDLE="<bundle_id>"
SESSION="-d $DEVICE --platform $PLATFORM -b $BUNDLE"
How to Execute
Use igf CLI via bash. The /igf skill documents all commands.
Rules:
- Ask user before starting monitors or hooks (
pin start,hook start) - Ask user before accessing paths outside app data directory
- If a command fails, note the error and move on
- Collect actual output as evidence for each finding
- Reference MASTG test IDs in findings where applicable
Audit Checklist (OWASP MASTG v2 aligned)
Work through sections in order. Non-intrusive first (1-4, 6), hooks later (5, 7, 8).
Platform: [A] = Android, [I] = iOS, [*] = both.
1. MASVS-STORAGE — Data Storage & Privacy
Collect app info and filesystem roots: Run the platform-specific app metadata command plus the shared process/filesystem commands:
igf agent app process-info $SESSION
igf agent app info $SESSION # Android
igf agent app plist $SESSION # iOS
igf agent fs roots $SESSION
1.1 Logging [*] (MASWE-0001)
- [A] MASTG-TEST-0231: Check for references to logging APIs in manifest/code
- [A] MASTG-TEST-0203: Runtime use of logging APIs —
igf log syslog $DEVICE $BUNDLE - [I] MASTG-TEST-0297: Insertion of sensitive data into logs
- [I] MASTG-TEST-0296: Sensitive data exposure through insecure logging —
igf log syslog $DEVICE $BUNDLE - Flag: tokens, passwords, PII in log output (HIGH)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 415 lines · 53 tokens per session scan A d009e01e79b3
mastg is a skill published in the GitHub repository ChiChou/grapefruit (1,381 stars, last pushed 27d ago), licensed MIT. It adds 53 tokens to every session and 4,691 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
analyzing-ios-app-security-with-objection
Runtime iOS app security testing with Objection (Frida): inspect keychain and filesystem data, explore app internals at runtime, and validate/bypass client-side protections during authorized mobile assessments.
Mobile Application Security
Android and iOS application security testing — static and dynamic analysis, APK/IPA inspection, OWASP MASVS/MASTG verification, secure-storage and transport review, and mobile malware triage for authorized assessments.
analyzing-ios-app-security-with-objection
Use when performs runtime mobile security exploration of iOS applications using Objection, a Frida-powered toolkit that enables security testers to interact with app internals without jailbreaking. Use when assessing iOS app security posture, bypassing client-side protections, dumping keychain items, inspecting…
analyzing-ios-app-security-with-objection
Performs runtime mobile security exploration of iOS applications using Objection, a Frida-powered toolkit that enables security testers to interact with app internals without jailbreaking. Use when assessing iOS app security posture, bypassing client-side protections, dumping keychain items, inspecting filesystem…
ios-application-hooking-frida
Execute dynamic instrumentation utilizing Frida to inject custom JavaScript into running iOS applications (IPAs) on jailbroken devices. Hook native functions, bypass SSL Pinning, bypass Jailbreak Detection, and manipulate in-memory data at runtime.
analyzing-ios-app-security-with-objection
A security-testing guide for Objection, a tool that lets testers inspect and interact with an iOS app while it is running. It uses Frida and can work with jailbroken devices or specially prepared app packages.