#214 by GitHub stars

AloneMonkey/MonkeyDev

使用 MonkeyDev 在 Apple Silicon Mac 上创建 Xcode MonkeyApp、MonkeyPod 插件库、越狱 Logos/CaptainHook Tweak 和 iOS 命令行工具,完成插件开发、签名打包、USB/SSH 安装,以及 LLDB 调试、OC 头文件导出、符号还原、Reveal/Lookin 视图检查和方法追踪。

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6dfacd62dc2a → 6dfacd62dc2a

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 6dfacd62dc2a6e43f0d59f5d2f3a543623fbb96d

6.8kGitHub stars
4stars in 7 days
1skill in this repository
9commits in 30 days

Heat

3.3
  • Star growth, last 7 daysAhead of 36% of tracked repositories
  • Star growth, last 24 hoursAhead of 5% of tracked repositories
  • Rank movement, last 7 daysAhead of 47% of tracked repositories
  • Commits, last 30 daysAhead of 76% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 5, 20266,814

Individual skills in this repository

How it works

monkeydev

When your agent uses it

使用 MonkeyDev 在 Apple Silicon Mac 上创建 Xcode MonkeyApp、MonkeyPod 插件库、越狱 Logos/CaptainHook Tweak 和 iOS 命令行工具,完成插件开发、签名打包、USB/SSH 安装,以及 LLDB 调试、OC 头文件导出、符号还原、Reveal/Lookin 视图检查和方法追踪。

What it loads into context

Frontmatter

94 tokens

Always available to the agent

SKILL.md

7,669 tokens

When the skill is activated

Reference documents

4,752 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 1. 检查前提
  2. 2. 安装与更新
  3. 3. 创建与运行工程
  4. 4. 编写插件
  5. 5. LLDB、符号和头文件
  6. 6. Reveal / Lookin
  7. 7. 方法追踪 Trace
  8. 8. 故障处理与验收
  9. 9. 越狱 Tweak 与命令行工具
  10. 10. MonkeyPod 本地插件库

Scripts executed separately

  • Librarys/Lookin/LookinServer.framework/LookinServer
  • MFrameworks/libsubstitute.dylib
  • Resource/TargetApp.app/TargetApp
  • Tools/cocoapods-compat.rb
  • Tools/info-plist.js
  • Tools/lookin.sh
  • Tools/mpack.sh
  • Tools/pack.sh
  • Tools/reveal.sh
  • Tools/tweak-deploy.sh
  • bin/class-dump
  • bin/createIPA.command
  • bin/md
  • bin/md-doctor
  • bin/md-install
  • bin/md-uninstall
  • bin/md-update
  • bin/monkeyparser
  • include/CaptainHook/CaptainHook.h
  • tests/test_app_metadata.py
  • tests/test_captainhook.py
  • tests/test_class_dump.py
  • tests/test_cocoapods_compat.py
  • tests/test_create_ipa.py
  • tests/test_installer.py
  • tests/test_logos.py
  • tests/test_lookin.py
  • tests/test_native_monkeyparser.py
  • tests/test_restore_symbols.py
  • tests/test_reveal.py
  • tests/test_roothide_sdk.py
  • tests/test_tweak_deploy.py
  • tests/test_tweak_package.py
  • tests/test_uninstaller.py
  • tests/test_xcode_sign_phase.py

Files

  • .gitignoreasset279 bytes
  • Frameworks/.gitkeepasset0 bytes
  • LICENSEasset35,147 bytes
  • Librarys/.gitkeepasset0 bytes
  • Librarys/Lookin/LookinServer-1.2.8-source.tar.gzasset155,113 bytes
  • Librarys/Lookin/LookinServer.framework/Info.plistasset631 bytes
  • Librarys/Lookin/LookinServer.framework/LICENSEasset1,066 bytes
  • Librarys/Lookin/LookinServer.framework/LookinServerruns709,400 bytes
  • Librarys/Lookin/LookinServer.framework/SOURCE.txtdoc91 bytes
  • Librarys/Lookin/README.mddoc1,666 bytes
  • Librarys/roothide/LICENSEasset1,065 bytes
  • Librarys/roothide/README.mddoc1,571 bytes
  • Librarys/roothide/include/module.modulemapasset73 bytes
  • Librarys/roothide/include/roothide.hasset1,179 bytes
  • Librarys/roothide/libroothide.tbdasset621 bytes
  • Librarys/roothide/libsubstrate.tbdasset532 bytes
  • MFrameworks/libsubstitute.dylibruns65,032 bytes
  • MFrameworks/substrate.hasset15,771 bytes
  • README.mddoc14,383 bytes
  • Resource/TargetApp.app/AppIcon60x60@2x.pngasset16,354 bytes
  • Resource/TargetApp.app/AppIcon60x60@3x.pngasset25,609 bytes
  • Resource/TargetApp.app/Assets.carasset33,880 bytes
  • Resource/TargetApp.app/Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nibasset1,793 bytes
  • Resource/TargetApp.app/Base.lproj/LaunchScreen.storyboardc/Info.plistasset258 bytes
  • Resource/TargetApp.app/Base.lproj/LaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nibasset832 bytes
  • Resource/TargetApp.app/Base.lproj/Main.storyboardc/BYZ-38-t0r-view-8bC-Xf-vdC.nibasset5,171 bytes
  • Resource/TargetApp.app/Base.lproj/Main.storyboardc/Info.plistasset258 bytes
  • Resource/TargetApp.app/Base.lproj/Main.storyboardc/UIViewController-BYZ-38-t0r.nibasset970 bytes
  • Resource/TargetApp.app/Info.plistasset2,384 bytes
  • Resource/TargetApp.app/PkgInfoasset8 bytes
  • Resource/TargetApp.app/TargetAppruns83,408 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • SKILL.mdcore28,522 bytes
  • Tools/cocoapods-compat.rbruns1,910 bytes
  • Tools/info-plist.jsruns3,762 bytes
  • Tools/lookin.shruns3,054 bytes
  • Tools/mpack.shruns1,661 bytes
  • Tools/pack.shruns23,117 bytes
  • Tools/reveal.shruns4,376 bytes
  • Tools/tweak-deploy.shruns5,482 bytes
  • assets/wechat-official-account.pngasset404,545 bytes
  • assets/wechat-personal.jpgasset101,285 bytes
  • bin/class-dumpruns618,072 bytes
  • bin/createIPA.commandruns831 bytes
  • bin/mdruns29,277 bytes
  • bin/md-doctorruns3,858 bytes
  • bin/md-installruns18,103 bytes
  • bin/md-uninstallruns5,891 bytes
  • bin/md-updateruns786 bytes
  • bin/monkeyparserruns8,615,760 bytes
  • change.logasset1,957 bytes
  • include/CaptainHook/CaptainHook.hruns65,291 bytes
  • include/substrate.hasset22,938 bytes
  • tests/captainhook_chain.xmasset167 bytes
  • tests/captainhook_fixture.masset3,568 bytes
  • tests/class_dump_fixture.masset877 bytes
  • tests/native_engine_roundtrip.casset1,203 bytes
  • tests/restore_symbols_fixture.masset914 bytes
  • tests/test_app_metadata.pyruns32,893 bytes
  • tests/test_captainhook.pyruns4,139 bytes
  • tests/test_class_dump.pyruns6,828 bytes
  • tests/test_cocoapods_compat.pyruns5,651 bytes
  • tests/test_create_ipa.pyruns4,018 bytes
  • tests/test_installer.pyruns28,573 bytes
  • tests/test_logos.pyruns4,847 bytes
  • tests/test_lookin.pyruns7,697 bytes
  • tests/test_native_monkeyparser.pyruns7,977 bytes
  • tests/test_restore_symbols.pyruns7,940 bytes
  • tests/test_reveal.pyruns4,833 bytes
  • tests/test_roothide_sdk.pyruns3,633 bytes
  • tests/test_tweak_deploy.pyruns8,813 bytes
  • tests/test_tweak_package.pyruns9,936 bytes
  • tests/test_uninstaller.pyruns10,361 bytes
  • tests/test_xcode_sign_phase.pyruns7,329 bytes

No excerpt is shown for this license. Read the source on GitHub.

View the complete source on GitHub

Skills included

  • monkeydev

Repository facts

License
GPL-3.0
Created
Jun 27, 2017
Last pushed
Nov 2, 2026
Forks
1,238
Open issues
177
Project activity
Active

Rank over the last 12 weeks

Now #214 · best #161 · down 19 in 30 days

  1. #205 on Oct 28
  2. #206 on Oct 29
  3. #207 on Oct 30
  4. #211 from Oct 31 to Nov 2
  5. #212 from Nov 3 to Nov 4
  6. #214 since Nov 5
26 earlier periods
  1. #151 on Aug 2
  2. #152 on Aug 7
  3. #151 on Aug 9
  4. #161 on Aug 18
  5. #162 on Aug 19
  6. #163 on Aug 23
  7. #168 on Sep 1
  8. #171 on Sep 3
  9. #176 on Sep 11
  10. #179 on Sep 14
  11. #186 on Sep 18
  12. #187 on Sep 21
  13. #193 on Sep 29
  14. #190 on Sep 30
  15. #190 on Oct 3
  16. #195 on Oct 7
  17. #195 from Oct 9 to Oct 10
  18. #197 on Oct 12
  19. #200 on Oct 13
  20. #199 on Oct 14
  21. #198 on Oct 15
  22. #200 on Oct 17
  23. #200 on Oct 19
  24. #199 on Oct 20
  25. #202 on Oct 23
  26. #206 on Oct 25

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 2, 2026

Changed on Oct 27, 2026

No longer found: Possible obfuscation, Access to secrets

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 74 notes
  • Librarys/Lookin/LookinServer.framework/LookinServer:22 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:20 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:21 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7096 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7504 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7502 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7503 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7579 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7577 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7578 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7587 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7588 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7679 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7745 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7743 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7744 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7874 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7877 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7875 Analysis incomplete: physical or joined line exceeds character limit
  • Librarys/Lookin/LookinServer.framework/LookinServer:7876 Analysis incomplete: physical or joined line exceeds character limit
Show all 239 signals by file

LICENSE

  • Network accessline 4
    Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
  • Network accessline 647
    You should have received a copy of the GNU General Public License     along with this program.  If not, see <http://www.gnu.org/licenses/>.
  • Network accessline 648
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
  • Network accessline 665
    if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see <http://www.gnu.org/licenses/>.
  • Network accessline 667
    <http://www.gnu.org/licenses/>.
  • Network accessline 672
    the library.  If this is what you want to do, use the GNU Lesser General Public License instead of this License.  But first, please read <http://www.gnu.org/philosophy/why-not-lgpl.html>.
  • Network accessline 674
    <http://www.gnu.org/philosophy/why-not-lgpl.html>.

Librarys/Lookin/LookinServer.framework/Info.plist

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  • Network accessline 2
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

Librarys/Lookin/LookinServer.framework/LookinServer

  • Executable scriptline 1
    Binary executable
  • Possible obfuscationline 7504
    <U+0002>�_�������1.2.8�tag�sn�mt�scn�LOOKIN_TAG_RETURN_VALUE_VOID�LookinError�v8@?0��/�.�lks_imageSourceName�@16@?0Q8�B16@?0#8�B16@?0@"UIView"8�lks_isChildrenViewOfTabBar�v32@?0@"UIWindow"8Q16^B24�v32@?0@"NSLayoutConstraint"8Q16^B24�v32@?0@"UIView

Librarys/Lookin/LookinServer.framework/SOURCE.txt

  • Network accessline 1
    Source: https://github.com/QMUI/LookinServer/tree/e553d1b689d147817dc54ad5c28fcff71e860101

Librarys/Lookin/README.md

  • Network accessline 5
    - Upstream: https://github.com/QMUI/LookinServer/tree/e553d1b689d147817dc54ad5c28fcff71e860101 (tag 1.2.8).

Librarys/roothide/README.md

  • Network accessline 3
    `libsubstrate.tbd` is linker metadata from [roothide/lib](https://github.com/roothide/lib/blob/85e9b5b8aff11bbefc59525c64c8f55149926e56/iphone/roothide/libsubstrate.tbd). It contains no executable code and is not copied into the device pack
  • Network accessline 5
    The upstream repository documents its text-based link stubs in [LICENSE.md](https://github.com/roothide/lib/blob/85e9b5b8aff11bbefc59525c64c8f55149926e56/LICENSE.md).
  • Network accessline 9
    `include/roothide.h` and `include/module.modulemap` are the unmodified API header and module declaration from [roothide/libroothide](https://github.com/roothide/libroothide/tree/7764c54759009272b4f2f23c18c62b21794fe6dd), under the accompany

MFrameworks/libsubstitute.dylib

  • Executable scriptline 1
    Binary executable

MFrameworks/substrate.h

  • Network accessline 30
    *  * You should have received a copy of the GNU Lesser General Public License  * along with Substrate.  If not, see <http://www.gnu.org/licenses/>.
  • Network accessline 31
    * You should have received a copy of the GNU Lesser General Public License  * along with Substrate.  If not, see <http://www.gnu.org/licenses/>. **/
  • Network accessline 32
    * along with Substrate.  If not, see <http://www.gnu.org/licenses/>.

README.md

  • Dangerous shell operationline 16
    bash -c "$(curl -fsSL https://raw.githubusercontent.com/theos/theos/master/bin/install-theos)"
  • Network accessline 16
    bash -c "$(curl -fsSL https://raw.githubusercontent.com/theos/theos/master/bin/install-theos)"
  • Dangerous shell operationline 22
    sudo /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"
  • Network accessline 22
    sudo /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"
  • Dangerous shell operationline 29
    sudo /opt/MonkeyDev/bin/md-update
  • Dangerous shell operationline 35
    sudo env MONKEYDEV_SOURCE_DIR="$PWD" /bin/bash bin/md-install
  • Dangerous shell operationline 37
    sudo env MONKEYDEV_SOURCE_DIR="$PWD" /bin/bash bin/md-update
  • Network accessline 41
    macOS 原有 `/bin/sh -c` 入口也已验证兼容。安装位置为 `/opt/MonkeyDev`,模板注册在当前用户的 Xcode 模板目录;安装、更新和卸载不修改 Xcode.app。安装器先准备并校验完整版本,再替换安装,生成版本回执和文件哈希。完整模板统一维护在 [MonkeyDev-Xcode-Templates](https://github.com/AloneMonkey/MonkeyDev-Xcode-Templates),安装时直接复制,不再应用模板
  • Access to secretsline 146
    [Credential-related source omitted]
  • Dangerous shell operationline 148
    | `MonkeyDevDevicePasswordFile` | 可选本地密码文件(一行密码),用于密码登录或非 root 用户的 sudo 安装 |
  • Dangerous shell operationline 154
    首次连接先在终端确认设备 SSH 主机身份。USB 模式在 rootless/rootful 下使用 `monkeydev-usb-<UDID>`,roothide 下使用独立的 `monkeydev-roothide-<UDID>` 作为主机身份别名;IP 模式使用目标主机身份;SSH 模式遵循用户已有配置。构建不会关闭主机密钥检查。SSH 免密登录与 sudo 权限独立:mobile 免密登录后,安装 deb 仍需要 sudo 密码或已有的免密 sudo 权限。
  • Network accessline 176
    历史资料保留在 [Wiki](https://github.com/AloneMonkey/MonkeyDev/wiki) 和 [MonkeyDevSpecs](https://github.com/AloneMonkey/MonkeyDevSpecs),其中旧依赖和安装步骤不代表当前适配状态。
  • Dangerous shell operationline 181
    sudo /opt/MonkeyDev/bin/md-uninstall
  • Network accessline 190
    欢迎访问我的个人博客 [AloneMonkey](https://www.alonemonkey.com),阅读更多技术文章与实践分享。

Resource/TargetApp.app/Info.plist

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  • Network accessline 2
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

Resource/TargetApp.app/TargetApp

  • Executable scriptline 1
    Binary executable
  • Network accessline 127
    <U+0005>��P��<U+0018>���<U+0017>$<U+0005>��P��<U+0018>���<U+0017><<U+0005>��P��<U+0018>���<U+0017>S<U+0005>��P��<U+0018>���<U+0017>v<U+0005>��P��<U+0018>���<U+0017>�<U+0005>��P��<U+0018>���<U+0017>`���P��<U+0018>���<U+0017>}���P��<U+0018>~��<U+0017>����P��<U+0018>{��<U+0017>����P��<U+0018>x��<U+0017>����P��<U+0018>u��<U+0017>����P��<U+0018>r��<U+0017>����P��<U+0018>o��<U+0017><U+0004><U+0001>��P��<U+0018>l��<U+0017>�<U+0001>��P��<U+0018>i��<U+0017> <U+0002>��P��<U+0018>f��<U+0017><U+0019><U+0002>��P��<U+0018>c��<U+0017>'<U+0002>��P��<U+0018>`��<U+0017>4<U+0002>��P��<U+0018>]��<U+0017>H<U+0002>��P��<U+0018>Z��<U+0017>\
  • Network accessline 128
    <U+0002>��P��<U+0018>f��<U+0017><U+0019><U+0002>��P��<U+0018>c��<U+0017>'<U+0002>��P��<U+0018>`��<U+0017>4<U+0002>��P��<U+0018>]��<U+0017>H<U+0002>��P��<U+0018>Z��<U+0017>\<U+0002>��P��<U+0018>W��<U+0017>k<U+0002>��P��<U+0018>T��<U+0017>z<U+0002>��P��<U+0018>Q��<U+0017>�<U+0005>��P��<U+0018>N��<U+0017>�<U+0005>��P��<U+0018>K��<U+0017>�<U+0005>��P��<U+0018>H��<U+0017>�<U+0005>��P��<U+0018>E��<U+0017><U+0005><U+0006>��P��<U+0018>B��<U+0017><U+0014><U+0006>��P��<U+0018>?��<U+0017>$<U+0006>��P��<U+0018><��<U+0017>F���P��<U+0018>9��<U+0017>����ptrace�[TargetApp] pass antidebug!�hash�TQ,R�
  • Network accessline 129
    /opt/MonkeyDev/bin/md�AloneMonkey�v8@?0�v16@?0@"NSString"8�https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/change.log�v32@?0@"NSData"8@"NSURLResponse"16@"NSError"24�name�T@"UILabel",W,N,V_name�changeLogInfo�T@"UITextView",W,N
  • Network accessline 206
    subject.CN�����<U+0001>���*iPhone Developer: peiqing liu (FUL3EHEPG5)�����<U+000E>���<U+0001>��� *�H��cd<U+0006><U+0002><U+0001>��������qq��<U+0001>�<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
  • Network accessline 207
    *�H��cd<U+0006><U+0002><U+0001>��������qq��<U+0001>�<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0">
  • Network accessline 208
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  • Access to secretsline 217
    [Credential-related source omitted]
  • Network accessline 267
    <U+0004>'0%0#�!�<U+001F>� http://crl.apple.com/root.crl0<U+000E><U+0006><U+0003>U
  • Network accessline 268
    http://crl.apple.com/root.crl0<U+000E><U+0006><U+0003>U
  • Network accessline 321
    <U+0004>�<U+0001><U+0008>0�<U+0001><U+0004>0�<U+0001>�<U+0006>	*�H��cd<U+0005><U+0001>0��0*<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0001><U+0016> https://www.apple.com/appleca/0��<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0002>0��<U+001A>��Reliance on this certificate by any party assumes acceptance of the then applicable standard terms and conditions of use, certificate policy and certif
  • Network accessline 322
    https://www.apple.com/appleca/0��<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0002>0��<U+001A>��Reliance on this certificate by any party assumes acceptance of the then applicable standard terms and conditions of use, certificate policy and certification practice statements.0
  • Network accessline 360
    �<U+000E>p3�c/F*h�e|<U+0001> kR��jZ��B�%�Q��2��bh!�oe���<U+0002>�K��R��:<U+0010> ��<U+0001>��[.Pbe><U+0005>&��H@���c℡��u�,��K�@?�>>�4,hDc]�.���Mi;<U+0004>���GtE�0<w<U+000F><U+0002><U+0003><U+0001>�<U+0001>��<U+0001>�0�<U+0001>�0?<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0001><U+0001><U+0004>3010/<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007>0<U+0001>�#http://ocsp.apple.com/ocsp03-wwdr010
  • Network accessline 361
    kR��jZ��B�%�Q��2��bh!�oe���<U+0002>�K��R��:<U+0010> ��<U+0001>��[.Pbe><U+0005>&��H@���c℡��u�,��K�@?�>>�4,hDc]�.���Mi;<U+0004>���GtE�0<w<U+000F><U+0002><U+0003><U+0001>�<U+0001>��<U+0001>�0�<U+0001>�0?<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0001><U+0001><U+0004>3010/<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007>0<U+0001>�#http://ocsp.apple.com/ocsp03-wwdr010 <U+0006><U+0003>U
  • Network accessline 362
    ��<U+0001>��[.Pbe><U+0005>&��H@���c℡��u�,��K�@?�>>�4,hDc]�.���Mi;<U+0004>���GtE�0<w<U+000F><U+0002><U+0003><U+0001>�<U+0001>��<U+0001>�0�<U+0001>�0?<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0001><U+0001><U+0004>3010/<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007>0<U+0001>�#http://ocsp.apple.com/ocsp03-wwdr010
  • Network accessline 370
    <U+0004>�<U+0001><U+0014>0�<U+0001><U+0010>0�<U+0001> <U+0006>	*�H��cd<U+0005><U+0001>0��0��<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0002>0�� ��Reliance on this certificate by any party assumes acceptance of the then applicable standard terms and conditions of use, certificate policy and certification practice statements.06<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0001><U+0016>*ht
  • Network accessline 371
    <U+0006>	*�H��cd<U+0005><U+0001>0��0��<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0002>0�� ��Reliance on this certificate by any party assumes acceptance of the then applicable standard terms and conditions of use, certificate policy and certification practice statements.06<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0001><U+0016>*http://www.app
  • Network accessline 372
    ��Reliance on this certificate by any party assumes acceptance of the then applicable standard terms and conditions of use, certificate policy and certification practice statements.06<U+0006><U+0008>+<U+0006><U+0001><U+0005><U+0005><U+0007><U+0002><U+0001><U+0016>*http://www.apple.com/certificateauthority/0<U+000E><U+0006>
  • Network accessline 402
    180424154128Z0/<U+0006>	*�H�� <U+0001>	<U+0004>1"<U+0004> �!v<U+0017>���@�N��-�W��<U+0019>�	r��PR��[$�0�<U+0001>[<U+0006>	*�H��cd	<U+0001>1�<U+0001>L<U+0004>�<U+0001>H<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  • Network accessline 403
    <U+0001>	<U+0004>1"<U+0004> �!v<U+0017>���@�N��-�W��<U+0019>�	r��PR��[$�0�<U+0001>[<U+0006>	*�H��cd	<U+0001>1�<U+0001>L<U+0004>�<U+0001>H<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0">
  • Network accessline 404
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

SKILL.md

  • Network accessline 13
    仓库:<https://github.com/AloneMonkey/MonkeyDev>。本文件可单独作为操作入口,无需先读取完整仓库文档。从分支或特定提交读取本文件时,使用同一版本的安装脚本和源码,避免新说明搭配旧模板。
  • Dangerous shell operationline 34
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
  • Dangerous shell operationline 46
    bash -c "$(curl -fsSL https://raw.githubusercontent.com/theos/theos/master/bin/install-theos)"
  • Network accessline 46
    bash -c "$(curl -fsSL https://raw.githubusercontent.com/theos/theos/master/bin/install-theos)"
  • Dangerous shell operationline 54
    sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"
  • Network accessline 54
    sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"
  • Dangerous shell operationline 65
    sudo env MONKEYDEV_SOURCE_DIR="$PWD" /bin/bash bin/md-install
  • Dangerous shell operationline 73
    sudo /opt/MonkeyDev/bin/md-update
  • Dangerous shell operationline 76
    sudo env MONKEYDEV_SOURCE_DIR="$PWD" /bin/bash bin/md-update
  • Access to secretsline 289
    [Credential-related source omitted]
  • Dangerous shell operationline 299
    把 `<UDID>` 和账号替换为实际值,使用已有密钥配置或 `-i`。USB 安装使用同一 HostKeyAlias;roothide 改用 `monkeydev-roothide-<UDID>`,避免与同一手机的旧环境记录冲突,不关闭主机密钥检查。SSH 免密与 sudo 免密独立;mobile 安装 deb 仍需已有 sudo 权限和所需密码,不为了通过测试擅自放宽 sudo 权限。
  • Network accessline 333
    SDK 提供 C、Objective-C、C++ 的 `jbroot()`、`rootfs()` 及 `jbrand()`。不要硬编码 `/var/jb` 或随机 `.jbroot-*` 路径;这些接口不会自动改写现有文件访问,也不会自动提升进程权限。rootless/rootful 不引入 SDK;同一份源码需用 `#if defined(THEOS_PACKAGE_SCHEME_ROOTHIDE)` 区分 SDK 调用和其他方案的路径处理。App 自身沙盒路径不应统一套 
  • Dangerous shell operationline 344
    验收时先用 None 验证编译与 deb 内容,再按用户选择的认证方式验证自动安装。tweak 重启目标 App 后检查实际 Hook 命中;要求弹窗时还需确认可见,不能用手工 dlopen 或调用弹窗函数代替。命令行工具需在设备执行并检查输出与退出码。SSH 不通先区分 USB 设备识别、主机身份、SSH 登录与 sudo 安装失败,不把所有错误归结为端口转发。
  • Dangerous shell operationline 350
    1. 通过 Homebrew 安装 CocoaPods:`brew install cocoapods`,确认 `pod --version` 可执行,不使用 sudo 安装 Pod。

Tools/cocoapods-compat.rb

  • Executable scriptline 1
    Executable file

Tools/info-plist.js

  • Executable scriptline 1
    Executable file

Tools/lookin.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 34
    rm -rf "$destination/_CodeSignature" || panic 1 'Cannot remove old LookinServer signature'

Tools/mpack.sh

  • Executable scriptline 1
    #!/bin/bash

Tools/pack.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 65
    rm -f "$TARGET_APP_PATH/.monkeydev-signing-input" || panic 1 "Cannot remove obsolete signing marker"
  • Dangerous shell operationline 70
    rm -f "$TARGET_APP_PATH/Frameworks/libsubstrate.dylib" || panic 1 "Cannot remove stale Substrate runtime"
  • Dangerous shell operationline 73
    rm -rf "$TARGET_APP_PATH/Frameworks/LookinServer.framework" || panic 1 "Cannot remove stale Lookin framework"
  • Dangerous shell operationline 76
    rm -rf "$TARGET_APP_PATH/Frameworks/RevealServer.framework" || panic 1 "Cannot remove stale Reveal framework"
  • Dangerous shell operationline 82
    rm -f "$TARGET_APP_PATH/Frameworks/$retired" || panic 1 "Cannot remove stale Cycript file: $retired"
  • Dangerous shell operationline 87
    rm -rf "${TARGET_APP_PATH}/PlugIns" || true
  • Dangerous shell operationline 88
    rm -rf "${TARGET_APP_PATH}/Watch" || true
  • Dangerous shell operationline 92
    rm -rf "${TARGET_APP_PATH}/SC_Info" || panic 1 "Failed to remove stale App Store metadata"
  • Dangerous shell operationline 111
    rm -rf "$headersStage"
  • Dangerous shell operationline 122
    rm -rf "$headersBackup"
  • Dangerous shell operationline 155
    cp -pR "$input/." "$stage/" || { rm -rf "$repackWork"; panic 1 "Cannot copy input App"; }
  • Dangerous shell operationline 172
    if ! rm -rf "$BUILD_APP_PATH" || { [[ -d "$previousBuildApp" ]] && ! mv "$previousBuildApp" "$BUILD_APP_PATH"; }; then
  • Dangerous shell operationline 176
    rm -rf "$repackWork"
  • Dangerous shell operationline 177
    if [[ "${inputCacheActive:-}" == YES ]]; then rm -rf "$TEMP_PATH"; fi
  • Dangerous shell operationline 233
    rm -rf "$repackWork" || panic 1 "Cannot clean previous App product"
  • Dangerous shell operationline 236
    rm -rf "$TEMP_PATH" || panic 1 "Cannot clean input cache"
  • Dangerous shell operationline 248
    rm -rf "${TEMP_PATH}" || panic 1 "Cannot clear input cache"
  • Dangerous shell operationline 273
    unzip -oqq "${TARGET_IPA_PATH}" -d "${TEMP_PATH}" || { rm -rf "$TEMP_PATH"; panic 1 "Cannot extract input IPA: $TARGET_IPA_PATH"; }
  • Dangerous shell operationline 275
    [[ ${#inputApps[@]} == 1 && -d "${inputApps[0]}" ]] || { rm -rf "$TEMP_PATH"; panic 1 "Input IPA must contain exactly one Payload App"; }
  • Dangerous shell operationline 312
    rm -rf "${TARGET_APP_FRAMEWORKS_PATH}"/RevealServer.framework
  • Dangerous shell operationline 404
    rm -f "$projectPlistStage"
  • Dangerous shell operationline 468
    rm -rf "${BUILD_APP_PATH}/Frameworks/lib${TARGET_NAME}Dylib.dylib"

Tools/reveal.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 34
    rm -rf "$destination/_CodeSignature" || panic 1 "Cannot remove old Reveal signature"

Tools/tweak-deploy.sh

  • Executable scriptline 1
    #!/bin/bash
  • Access to secretsline 2
    [Credential-related source omitted]
  • Access to secretsline 52
    [Credential-related source omitted]
  • Dangerous shell operationline 90
    cleanup() { ssh_device "rm -f '$remote'" </dev/null >/dev/null 2>&1 || true; }
  • Dangerous shell operationline 94
    install="if [ \"\$(id -u)\" = 0 ]; then dpkg -i '$remote'; else sudo -S -p '' dpkg -i '$remote'; fi"
  • Dangerous shell operationline 97
    ssh_device "if [ \"\$(id -u)\" = 0 ]; then dpkg -i '$remote'; else sudo -n dpkg -i '$remote'; fi" </dev/null || \
  • Dangerous shell operationline 98
    fail "Package installation failed. Non-root accounts need passwordless sudo for dpkg, or configure the account password."

bin/class-dump

  • Executable scriptline 1
    Binary executable
  • Possible obfuscationline 237
    ����<U+0003><U+0015>�<U+0008>����<U+0003><U+0013>��{B��OA��Wè<U+0003>��<U+0014>�O���{<U+0001>��C���<U+0003>��&���ܔ���<U+0003>��ӛ���<U+0003><U+0014>������<U+0003><U+0013>�7���Ք���<U+0003>��̛���<U+0003><U+0013>��{A��O¨��<U+0014>�O���{<U+0001>��C���<U+0003>��<U+0013>���ɔ���<U+0003>�������<U+0003><U+0014>�����<U+0003><U+0013>�$���<U+0094>���<U+0003>�������<U+0003><U+0013>��{A��O¨ݔ�<U+0014>�O���{<U+0001>��C���<U+0003>��H����<U+0003><U+0013>�N����<U+0003><U+0013>�T����<U+0003><U+0013>������<U+0003><U+0013>��{A��O¨���<U+0014>�<U+0003><U+0001>��W<U+0001>��O
  • Network accessline 1773
    !<U+000E>_��q�<U+0007>�RD<U+0010>HzB�' B<U+0004><U+0004>NC �N#<U+0004>
  • Network accessline 1774
    B<U+0004><U+0004>NC �N#<U+0004> n"$
  • Network accessline 2482
    ���<U+001F>''''�''<U+0016><U+0019>1''''='' '7('.4L''%''''''''''''+"'I'':<U+0013>'F'R@'O<U+0010>C''��������������������C���I���S���L���i���c���l���q���v���*���#���:���Q���d���D���B���<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "
  • Network accessline 2483
    '7('.4L''%''''''''''''+"'I'':<U+0013>'F'R@'O<U+0010>C''��������������������C���I���S���L���i���c���l���q���v���*���#���:���Q���d���D���B���<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/D
  • Network accessline 2484
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

bin/createIPA.command

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    trap 'rm -rf "$work"' EXIT

bin/md

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 115
    rm -rf "$td" || true # forget abou' it.
  • Dangerous shell operationline 118
    rm -rf "`dirname \"$tempDirsFile\"`" || true # forget abou' it.
  • Dangerous shell operationline 201
    eval $envVarName='$value'
  • Dangerous shell operationline 243
    runCmdOnDevice "ssh -p$hostPort root@$hostAddress rm -f \"$targetFilePath\"" "Failed to remove existing file $targetFilePath on device $hostAddress"
  • Dangerous shell operationline 409
    find "$packageDir" -type f -name "$f" -exec rm -f '{}' \; || \
  • Dangerous shell operationline 435
    rm -f "$zipFileName" || \
  • Dangerous shell operationline 621
    exec sudo "$0" "$@" || \
  • Dangerous shell operationline 674
    rm -f "$temporary"
  • Dangerous shell operationline 679
    rm -f "$temporary"
  • Network accessline 710
    logosProcessor="$HOME/theos/bin/logos.pl"     [[ -x "$logosProcessor" ]] || panic 1 "Logos not found: $logosProcessor. Install Theos as your normal user: https://theos.dev/docs/installation-macos"
  • Network accessline 711
    [[ -x "$logosProcessor" ]] || panic 1 "Logos not found: $logosProcessor. Install Theos as your normal user: https://theos.dev/docs/installation-macos"
  • Network accessline 844
    if [[ "$MonkeyDevDevicePassword" != "" && -z "$MONKEYDEV_PACKAGE_SCHEME" ]]; then 		sshpassProcessor=`which sshpass` || \ 		panic $? "Failed to locate sshpass. Is sshpass installed? If not, brew install https://raw.githubusercontent.com/kad
  • Network accessline 845
    sshpassProcessor=`which sshpass` ||  		panic $? "Failed to locate sshpass. Is sshpass installed? If not, brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb"
  • Network accessline 846
    panic $? "Failed to locate sshpass. Is sshpass installed? If not, brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb"

bin/md-doctor

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 46
    # sudo changes HOME; diagnostics must use the calling user's actual Theos/Reveal.

bin/md-install

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 48
    rm -f "$profile" || rollbackFailed=1
  • Dangerous shell operationline 52
    rm -f "$templateLink" || rollbackFailed=1
  • Dangerous shell operationline 55
    if [[ "$published" == 1 ]]; then rm -rf "$MonkeyDevPath" || rollbackFailed=1; fi
  • Dangerous shell operationline 66
    [[ -z "$work" ]] || rm -rf "$work"
  • Dangerous shell operationline 67
    if [[ "$lockHeld" == 1 ]]; then rm -f "$lockDir/pid"; rmdir "$lockDir"; fi
  • Dangerous shell operationline 109
    rm -f "$candidate/$relative"
  • Network accessline 120
    fetch() { /usr/bin/curl --fail --location --silent --show-error --retry 3 --connect-timeout 20 --max-time 180 --output "$2" "$1"; }
  • Network accessline 143
    sourceMode=download     base="$work/base"     archive "https://codeload.github.com/AloneMonkey/MonkeyDev/tar.gz/$branch" "$base" base-download
  • Network accessline 144
    base="$work/base"     archive "https://codeload.github.com/AloneMonkey/MonkeyDev/tar.gz/$branch" "$base" base-download fi
  • Network accessline 145
    archive "https://codeload.github.com/AloneMonkey/MonkeyDev/tar.gz/$branch" "$base" base-download
  • Dangerous shell operationline 188
    rm -rf "$candidate/templates"
  • Network accessline 193
    else     templateSource="$work/templates-release"     archive "https://codeload.github.com/AloneMonkey/MonkeyDev-Xcode-Templates/tar.gz/$templatesRef" "$templateSource" templates-download
  • Network accessline 194
    templateSource="$work/templates-release"     archive "https://codeload.github.com/AloneMonkey/MonkeyDev-Xcode-Templates/tar.gz/$templatesRef" "$templateSource" templates-download     templatesMode=download
  • Network accessline 195
    archive "https://codeload.github.com/AloneMonkey/MonkeyDev-Xcode-Templates/tar.gz/$templatesRef" "$templateSource" templates-download
  • Network accessline 239
    else     for name in dump.py dump.js; do         fetch "https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/$dumpRef/$name" "$candidate/bin/$name" || fail "Download failed: $name"
  • Network accessline 240
    for name in dump.py dump.js; do         fetch "https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/$dumpRef/$name" "$candidate/bin/$name" || fail "Download failed: $name"     done
  • Network accessline 241
    fetch "https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/$dumpRef/$name" "$candidate/bin/$name" || fail "Download failed: $name"
  • Dangerous shell operationline 246
    rm -f "$receipt" "$candidate/install-files.sha256"
  • Dangerous shell operationline 279
    [[ -n "$installUser" && "$installUser" != root && "$installUser" != loginwindow ]] || fail "Run sudo from your normal login account"
  • Dangerous shell operationline 351
    rm -f "$templateLink"

bin/md-uninstall

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 27
    [[ -z "$work" ]] || rm -rf "$work"
  • Dangerous shell operationline 28
    rm -f "$lockDir/pid"
  • Dangerous shell operationline 49
    [[ -n "$installUser" && "$installUser" != root && "$installUser" != loginwindow ]] || fail "Run sudo from your normal login account"
  • Dangerous shell operationline 117
    if [[ "$removeLink" == YES ]]; then rm "$templateLink"; fi
  • Dangerous shell operationline 118
    # This fixed, dedicated directory includes any user-added libraries. rm does
  • Dangerous shell operationline 121
    rm -rf "$MonkeyDevPath"

bin/md-update

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 7
    trap 'rm -f "$installerSnapshot"' EXIT
  • Network accessline 9
    cp "$MONKEYDEV_SOURCE_DIR/bin/md-install" "$installerSnapshot" else     /usr/bin/curl --fail --location --silent --show-error --retry 3 --connect-timeout 20 --max-time 180 \
  • Network accessline 10
    else     /usr/bin/curl --fail --location --silent --show-error --retry 3 --connect-timeout 20 --max-time 180 \         --output "$installerSnapshot" "https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/$ref/bin/md-install"
  • Network accessline 11
    /usr/bin/curl --fail --location --silent --show-error --retry 3 --connect-timeout 20 --max-time 180 \
  • Network accessline 12
    --output "$installerSnapshot" "https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/$ref/bin/md-install"

bin/monkeyparser

  • Executable scriptline 1
    Executable file; content unavailable

include/CaptainHook/CaptainHook.h

  • Executable scriptline 1
    Executable file
  • Possible obfuscationline 150
    #define CHDeclareSig5_(return_type, type1, type2, type3, type4, type5)  	const char *return_ = @encode(return_type);  	size_t return_len = __builtin_strlen(return_);  	const char *type1_ = @encode(type1);  	size_t type1_len = __builtin_strl
  • Possible obfuscationline 173
    #define CHDeclareSig6_(return_type, type1, type2, type3, type4, type5, type6)  	const char *return_ = @encode(return_type);  	size_t return_len = __builtin_strlen(return_);  	const char *type1_ = @encode(type1);  	size_t type1_len = __built
  • Possible obfuscationline 199
    #define CHDeclareSig7_(return_type, type1, type2, type3, type4, type5, type6, type7)  	const char *return_ = @encode(return_type);  	size_t return_len = __builtin_strlen(return_);  	const char *type1_ = @encode(type1);  	size_t type1_len = 
  • Possible obfuscationline 228
    #define CHDeclareSig8_(return_type, type1, type2, type3, type4, type5, type6, type7, type8)  	const char *return_ = @encode(return_type);  	size_t return_len = __builtin_strlen(return_);  	const char *type1_ = @encode(type1);  	size_t type1
  • Possible obfuscationline 260
    #define CHDeclareSig9_(return_type, type1, type2, type3, type4, type5, type6, type7, type8, type9)  	const char *return_ = @encode(return_type);  	size_t return_len = __builtin_strlen(return_);  	const char *type1_ = @encode(type1);  	size_

include/substrate.h

  • Network accessline 16
    *  * You should have received a copy of the GNU Lesser General Public License  * along with Substrate.  If not, see <http://www.gnu.org/licenses/>.
  • Network accessline 17
    * You should have received a copy of the GNU Lesser General Public License  * along with Substrate.  If not, see <http://www.gnu.org/licenses/>.  **/
  • Network accessline 18
    * along with Substrate.  If not, see <http://www.gnu.org/licenses/>.

tests/test_app_metadata.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 22
    [Credential-related source omitted]
  • Access to secretsline 329
    [Credential-related source omitted]
  • Access to secretsline 345
    [Credential-related source omitted]
  • Access to secretsline 378
    [Credential-related source omitted]
  • Access to secretsline 442
    [Credential-related source omitted]
  • Access to secretsline 464
    [Credential-related source omitted]
  • Access to secretsline 501
    [Credential-related source omitted]

tests/test_captainhook.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 62
    [Credential-related source omitted]

tests/test_class_dump.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 13
    [Credential-related source omitted]
  • Access to secretsline 96
    [Credential-related source omitted]

tests/test_cocoapods_compat.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 21
    [Credential-related source omitted]
  • Network accessline 54
    s.version = '1.0'   s.summary = 'Local integration fixture'   s.homepage = 'https://example.com/Plugin'
  • Network accessline 55
    s.summary = 'Local integration fixture'   s.homepage = 'https://example.com/Plugin'   s.license = { :type => 'BSD' }
  • Network accessline 56
    s.homepage = 'https://example.com/Plugin'
  • Network accessline 57
    s.license = { :type => 'BSD' }   s.author = 'Test'   s.source = { :git => 'https://example.com/Plugin.git', :tag => s.version }
  • Network accessline 58
    s.author = 'Test'   s.source = { :git => 'https://example.com/Plugin.git', :tag => s.version }   s.ios.deployment_target = '15.0'
  • Network accessline 59
    s.source = { :git => 'https://example.com/Plugin.git', :tag => s.version }

tests/test_create_ipa.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 32
    [Credential-related source omitted]
  • Access to secretsline 82
    [Credential-related source omitted]

tests/test_installer.py

  • Dangerous shell operationline 1
    """Installer integration checks: isolated DESTDIR, no sudo or user-home writes."""
  • Executable scriptline 1
    Executable file
  • Access to secretsline 48
    [Credential-related source omitted]
  • Access to secretsline 163
    [Credential-related source omitted]
  • Access to secretsline 165
    [Credential-related source omitted]
  • Access to secretsline 285
    [Credential-related source omitted]
  • Access to secretsline 302
    [Credential-related source omitted]
  • Access to secretsline 455
    [Credential-related source omitted]
  • Access to secretsline 484
    [Credential-related source omitted]

tests/test_logos.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 25
    [Credential-related source omitted]

tests/test_lookin.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 44
    [Credential-related source omitted]

tests/test_native_monkeyparser.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 11
    [Credential-related source omitted]
  • Access to secretsline 36
    [Credential-related source omitted]

tests/test_restore_symbols.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 11
    [Credential-related source omitted]

tests/test_reveal.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 23
    [Credential-related source omitted]

tests/test_roothide_sdk.py

  • Executable scriptline 1
    Executable file

tests/test_tweak_deploy.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 25
    data=sys.stdin.buffer.read() if command.startswith('cat >') or 'sudo -S' in command else b''
  • Access to secretsline 26
    [Credential-related source omitted]
  • Access to secretsline 27
    [Credential-related source omitted]
  • Access to secretsline 29
    [Credential-related source omitted]
  • Access to secretsline 41
    [Credential-related source omitted]
  • Dangerous shell operationline 61
    self.assertIn('sudo -n',install['args'][-1])
  • Dangerous shell operationline 65
    self.assertTrue(calls[-1]['args'][-1].startswith('rm -f '))
  • Dangerous shell operationline 105
    self.assertTrue(calls[-1]['args'][-1].startswith('rm -f '))

tests/test_tweak_package.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 73
    [Credential-related source omitted]

tests/test_uninstaller.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 46
    [Credential-related source omitted]
  • Access to secretsline 57
    [Credential-related source omitted]

tests/test_xcode_sign_phase.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 40
    [Credential-related source omitted]

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Combined signals: 3 facts
  • Passes content downloaded from raw.githubusercontent.com to an interpreterSKILL.md:46High confidence
  • Passes content downloaded from raw.githubusercontent.com to an interpreterSKILL.md:54High confidence
  • Reads SSH keys, and the same file sends data over the network or runs a command (line 90)Tools/tweak-deploy.sh:52High confidence
Declared and executed: 5 facts
Signal confidence: 221 facts

and 171 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Add this badge to your README

It updates every night and links to this page.

AloneMonkey/MonkeyDev: #214 on hotskills, 6.8k stars

[![AloneMonkey/MonkeyDev on hotskills](https://hotskills.dev/badge/alonemonkey-monkeydev.svg)](https://hotskills.dev/skill/alonemonkey-monkeydev/)