Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计异常

appstorereject-scan应用商店拒绝扫描

Agent Skill

appstorereject-scan 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

198

周安装

8

GitHub Stars

公开资料未说明

下载量

62
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:appstorereject-scan(应用商店拒绝扫描)
来源仓库:https://github.com/nickgdwn/appstorereject-skills
仓库路径:skills/appstorereject-scan
安装命令:
npx skills add https://github.com/nickgdwn/appstorereject-skills --skill appstorereject-scan
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/nickgdwn/appstorereject-skills --skill appstorereject-scan

简介

appstorereject-scan 用于查找、检索和筛选应用商店拒绝扫描相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词或任务场景快速定位候选结果时使用。

  • 扫描开发者代码库中的常见 App Store 和 Google Play 拒绝触发器,所有分析均在本地进行,不离开机器。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需确认权限范围和维护状态,避免触发联网、命令执行或文件读写。
  • 建议结合来源仓库和原始 README 核验具体用法,确保与宿主环境兼容,并在使用前验证 API 调用和配置选项的有效性。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Pre-Submission Scan

Scan the developer's codebase for common App Store and Google Play rejection triggers. All analysis happens locally — no code leaves the machine. Check definitions are served by the API for up-to-date coverage.

Scan Lifecycle

Execute these steps in order. Each step is a script call or API curl. Do NOT skip steps. Do NOT dispatch subagents.

0. Resolve API Key

Before any authenticated API call, resolve the API key. Check in this order:

  1. Run echo $ASR_API_KEY — if non-empty, use that value
  2. If empty, read ~/.appstorereject/config.json with the Read tool and extract the apiKey field value

Store the resolved key in your working memory. You will use it directly in curl commands throughout this scan. In every authenticated curl command below, replace $ASR_API_KEY with the actual key value — do NOT rely on the shell env var, because each Bash call runs in a separate shell context and exports do not persist.

If neither source has a key, tell the developer to set up an API key (see hub skill for setup instructions).

1. Detect Platform & Framework

node {baseDir}/scripts/detect-platform.js ./

Read the JSON output. Confirm with the developer:

  • "Detected {framework} targeting {platforms}. Bundle ID: {bundleId}. Is this correct?"
  • Ask: "Is this your first submission or an update?"
  • If both iOS and Android detected, ask: "Scan iOS, Android, or both?"

2. Auth Gate

Start the scan session:

curl -s -X POST -H "Authorization: Bearer $ASR_API_KEY" -H "Content-Type: application/json" -d '{"bundleId":"<bundleId>","scanType":"<first_submission|update>","platform":"<ios|android>"}' "https://api.appstorereject.com/api/scans/start"
  • 200: Save scanToken from response.
  • 403: Show error to developer (scan/app limit reached). Include upgrade URL.
  • 401: API key not set. Tell developer to run setup (see hub skill).

3. Load Graph

curl -s "https://api.appstorereject.com/api/scan/graph?platform=<detected>" > /tmp/asr-graph.json

4. Evaluate Skip Conditions

node {baseDir}/scripts/evaluate-section.js ./ --graph-file /tmp/asr-graph.json

Read the JSON output. Note sectionsToScan — these are the sections to load checks for.

5. Load Checks (Single Request)

curl -s "https://api.appstorereject.com/api/scan/checks?sections=<comma-separated-sectionsToScan>&framework=<detected>&platform=<detected>&scanToken=<token>" > /tmp/asr-checks.json

6. Execute Checks

For each section in sectionsToScan order, read that section's checks from /tmp/asr-checks.json.

For each check in the section:

  1. Execute the executionRule field — it contains Grep, Glob, and Read instructions. Run them against the developer's project.
  2. If the check triggers (the condition described in the execution rule is met), record a finding:

- guideline: from the check's guideline field — do NOT override - risk: from the check's risk field — do NOT override - finding: from the check's findingTemplate field, filling in {placeholders} from your analysis - slug: from the check's slug field — copy exactly (or null if absent) - checkId: from the check's checkId field - context: following the check's contextTemplate (max 200 chars, no code snippets, no file paths with usernames)

  1. If the check does NOT trigger, move to the next check silently.

After all sections are complete, write findings to temp file:

# Write the findings array as JSON to /tmp/asr-findings.json

Do NOT invent findings that aren't in the check definitions. If you notice something concerning without a matching check, mention it in a separate "Additional observations" section after the main output.

7. Collect Slugs

node {baseDir}/scripts/collect-slugs.js --findings-file /tmp/asr-findings.json

8. Fetch Resolution Guides

Run the fetchCommand from step 7's output:

# Execute the exact fetchCommand string from collect-slugs output
# Save response to /tmp/asr-guides.json

If fetchCommand is null (no slugs to fetch), skip to step 9 with no guides file.

9. Format Report

Pass the scan metadata from steps 1-2 so the analytics payload is complete:

node {baseDir}/scripts/format-report.js --findings-file /tmp/asr-findings.json --guides-file /tmp/asr-guides.json --scan-token <scanToken from step 2> --bundle-id <bundleId from step 1> --platform <platform> --framework <framework from step 1>

10. Present Results

Read format-report.js output:

  1. Show the findingsTable to the developer.
  2. For each entry in guideSections:

- Display resolutionSteps verbatim — do NOT paraphrase, summarize, or rewrite - Run the codebaseContextPrompt to search the developer's project for relevant files - Add an "In your codebase" subsection with what you found - Include prevention section if present

  1. For each entry in unguidedFindings:

- Note the finding and that no community guide is available yet - Provide brief guidance based on the finding details

NEVER silently replace API resolution guides with your own generated steps. The API guides are community-maintained. Your role: present them verbatim and add codebase context.

11. Report Analytics

curl -s -X POST -H "Authorization: Bearer $ASR_API_KEY" -H "Content-Type: application/json" -d '<analyticsPayload from format-report output>' "https://api.appstorereject.com/api/scans/complete"

12. Cleanup

rm -f /tmp/asr-graph.json /tmp/asr-checks.json /tmp/asr-findings.json /tmp/asr-guides.json

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.49%
按下载量换算23

Claude

30.78%
按下载量换算19

Cursor

17.06%
按下载量换算11

Gemini CLI

8.22%
按下载量换算5

安全审计

Gen Agent Trust Hub

可疑

Socket

可疑

Snyk

未通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills