agentleFS
MicrosoftKnown publishermicrosoft/power-platform-skills/plugins/mobile-apps/skills/report-issue/SKILL.md

report-issue

Skill1.1k starsChanged 12 days agoMITView on GitHub

Use when the user wants to report a bug, file an issue, submit a bug report, or report any problem with the mobile-app plugin.

  • Reads credentials

We split this skill into the rules it gives an agent

7 rules. 0 are common, 2 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If $ARGUMENTS contains a description, use it.

    line 28
  2. Distinctive:

    If in a project:

    line 62
  3. Very specific:

    If the description names a package matching @microsoft/power-apps-native-*, collect its declared and lockfile-resolved versions from …

    line 72
  4. Very specific:

    Run npx --no-install expo doctor and capture the text output verbatim.

    line 103
  5. Very specific:

    Ask for the affected workflow's Support ID when available.

    line 105
  6. Distinctive:

    If the user pasted an error, capture verbatim.

    line 111
  7. Very specific:

    If the user wants to open it, suggest open <url> (macOS) / xdg-open <url> (Linux) / start <url> (Windows).

    line 221

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Plugin check: Run node "${PLUGIN_ROOT}/scripts/check-version.js" - if it outputs a message, show it to the user before proceeding.

📋 Shared instructions: shared-instructions.md — read this first.

Report Issue — mobile-app

Generates a fully-populated GitHub issue body for the microsoft/power-platform-skills repo, scoped to the mobile-app plugin. Read-only — no project modifications.

Workflow

  1. Capture user description → 2. Detect project context → 3. Collect diagnostics → 4. Render issue body → 5. Print URL

Step 1 — Capture user description

Telemetry checkpoint: capture_issue_description

If $ARGUMENTS contains a description, use it. Otherwise prompt:

"What's the issue? Briefly describe what you expected vs. what happened. (You can paste error output if helpful.)"

Then ask via AskUserQuestion:

"Issue category? (a) Bug — something broke (b) Unexpected behavior — wrong output but no error (c) Documentation — docs are wrong / missing (d) Feature request (e) Question / discussion"

"How blocking is this? (a) Blocking — can't proceed at all (b) Workaround exists — but painful (c) Annoying — non-critical (d) Polish — nice-to-have"

Step 2 — Detect project context

Read-only checks:

test -f power.config.json && echo "in_project=true" || echo "in_project=false"
pwd
node --version
npm --version
node scripts/resolve-environment.js "$(node -e \"console.log(require('./power.config.json').environmentId)\")" 2>/dev/null || true
az --version 2>/dev/null | head -1
npx --no-install expo --version 2>/dev/null
uname -srm

If in a project:

node -e "console.log(require('./package.json').name, require('./package.json').version)" 2>/dev/null
node -e "console.log(JSON.stringify({env: require('./power.config.json').environmentId, name: require('./power.config.json').displayName}))"
test -f memory-bank.md && echo "memory_bank=present"
test -f native-app-plan.md && echo "plan=present"
ls src/generated/services/ 2>/dev/null | head -10

If the description names a package matching @microsoft/power-apps-native-*, collect its declared and lockfile-resolved versions from package.json and package-lock.json. Do not read package source or metadata from node_modules/.

node - <<'NODE'
const fs = require('node:fs');
const manifest = JSON.parse(fs.readFileSync('package.json', 'utf8'));
const lockfile = fs.existsSync('package-lock.json')
  ? JSON.parse(fs.readFileSync('package-lock.json', 'utf8'))
  : null;
const dependencies = { ...manifest.dependencies, ...manifest.devDependencies };
for (const [name, declared] of Object.entries(dependencies)) {
  if (!name.startsWith('@microsoft/power-apps-native-')) continue;
  const resolved = lockfile?.packages?.[`node_modules/${name}`]?.version ?? 'unknown';
  console.log(`${name}\tdeclared=${declared}\tresolved=${resolved}`);
}
NODE

For native-build issues also capture:

[ "$(uname)" = "Darwin" ] && xcode-select -p
[ "$(uname)" = "Darwin" ] && pod --version 2>/dev/null
java -version 2>&1 | head -1
echo "ANDROID_HOME=$ANDROID_HOME"

Step 3 — Collect diagnostics

Telemetry checkpoint: collect_issue_diagnostics

Run npx --no-install expo doctor and capture the text output verbatim.

Ask for the affected workflow's Support ID when available. Use the telemetry helper's read-only --report mode from the affected project to inspect only its allowlisted timeline. Include the Support ID and relevant step/error category in the issue body, not environment, tenant, or organization IDs. Do not upload the telemetry directory or raw timing/authentication files.

If the user pasted an error, capture verbatim. Otherwise look for recent failure signals:

  • Last 50 lines of any Metro / Gradle / Xcode log if user mentions a build failure
  • git status --short if in a git repo (to show modified files — sanitize for secrets first)
  • Output of npx --no-install tsc --noEmit if relevant

Do NOT capture:

  • Contents of src/playerConfig.ts (contains tenantId / clientId — sensitive)
  • Contents of .env or any file matching .env*
  • Connection IDs unless the user explicitly opted in (PII / can map to tenant)
  • Anything under node_modules/
  • Package source excerpts, patched package contents, or proposed fork code
  • Tenant/environment/organization IDs in a public issue, even though verified IDs can exist in access-controlled telemetry

Step 4 — Render issue body

Telemetry checkpoint: render_issue_report

Print this block — user copies into a new issue:

### Description

<user's description>

### Category

<Bug / Unexpected behavior / Docs / Feature / Question>

### Severity

<Blocking / Workaround / Annoying / Polish>

### Environment

| | |
|---|---|
| Plugin | mobile-app |
| Plugin version | <from .plugin/plugin.json, or legacy .claude-plugin/plugin.json fallback, or "unknown"> |
| OS | <uname output> |
| Node | <version> |
| npm | <version> |
| Power Apps CLI | <version> |
| Expo CLI | <version> |
| Xcode | <if macOS> |
| JDK | <if android> |
| ANDROID_HOME set | <yes/no> |

### Project context

<if in project>
- Mobile project detected: yes
- Support ID: `<affected workflow run GUID, or unavailable>`
- Failed step / error category: `<registered step and fixed category, or unknown>`
- Memory bank present: <yes/no>
- Plan present: <yes/no>
- Connector count: <count, not generated service or business-table names>
</if>

<if not in project>
Not run inside a mobile-app project.
</if>

### Affected native package

<include only when the issue concerns @microsoft/power-apps-native-*>
- Package: `<package name>`
- Declared version: `<package.json range>`
- Resolved version: `<package-lock.json version or unknown>`
- Platform: `<iOS / Android>`
- Ownership evidence: <why the documented caller contract is satisfied and the failure is package-internal>

### Reproduction steps

1.
2.
3.

### Expected

<what should have happened>

### Actual

<what happened>

### Logs / errors

<paste verbatim — sensitive values redacted>


### Notes

<anything else>

Step 5 — Print URL

Telemetry checkpoint: generate_issue_submission_url

Tell the user:

Open this URL to file the issue:

https://github.com/microsoft/power-platform-skills/issues/new?labels=plugin%3Amobile-app

Paste the block above into the body. Review for any sensitive values before submitting.

If the user wants to open it, suggest open <url> (macOS) / xdg-open <url> (Linux) / start <url> (Windows). Do not auto-open without confirmation.

Notes

  • This skill never modifies any file or invokes mutating commands. Pure diagnostic.
  • For diagnosing connection-specific failures, suggest the user run /list-connections first and paste that output into the issue.
  • For diagnosing build failures, suggest they include the full Metro/Gradle/Xcode log (not truncated).

Download now (ZIP)

Trending

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Aug 30: 0 new projectsWeek of Sep 6: 0 new projectsWeek of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projects
Aug 2026Sep 2026Oct 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Who's talking about microsoft/power-platform-skills

The biggest 5 of 50 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 50

Talked about on GitHub (50 times).

On GitHub · 50

45 more on GitHub

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.