delete-app
Skill4 starsChanged 8 days agoMITView on GitHub
Deletes a Microsoft App via `ms app delete`. Use when the user asks to delete an app; always require explicit confirmation.
- Deletes or force-pushes
1 other project uses a version of this.
Other versions1 project uses a version of this.
Word for word · 1
- microsoft/managed-apps★ 36100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository38 other files it gives its agents.
- github-actions/AGENTS.mdAGENTS.md
- plugins/copilot-managed-runtime/AGENTS.mdAGENTS.md
- samples/CodeFlow/AGENTS.mdAGENTS.md
- samples/LearningHub/AGENTS.mdAGENTS.md
- samples/TaskManager/AGENTS.mdAGENTS.md
- add-azuredevopsSkill
- add-backendSkill
- add-data-sourceSkill
- add-dataverseSkill
- add-excelSkill
- add-mcscopilotSkill
- add-office365Skill
- add-office365-usersSkill
- add-onedriveSkill
- add-sharepointSkill
- add-teamsSkill
- add-workiqSkill
- create-appSkill
- deploySkill
- devSkill
- list-appsSkill
- list-connectorsSkill
- playSkill
- share-linkSkill
- shareSkill
- stateSkill
- add-data-sourceSkill
- setup-codeflowSkill
- add-data-sourceSkill
- setup-codeflowSkill
- add-data-sourceSkill
- setup-learninghubSkill
- add-data-sourceSkill
- setup-learninghubSkill
- add-data-sourceSkill
- setup-taskmanagerSkill
- add-data-sourceSkill
- setup-taskmanagerSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 4 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
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
- Very specific: line 21
Read memory-bank.md for app slug + GUID + environment.
- Very specific: line 29
If no ms.config.json, ask the user for the app slug or GUID.
- Distinctive: line 33
Before the destructive call, fetch the app metadata so the user sees what they're about to delete:
- Distinctive: line 46
Wait for explicit yes. If no, STOP — do not delete.
- Very specific: line 58
If the service returns a non-2xx with a message like "delete requires --force" (the app has active shares, child resources, etc.), DO NOT …
- Distinctive: line 62
Wait for an explicit second yes.
- Very specific: line 68
Never short-circuit the two confirmations into one.
- Distinctive: line 72
After successful delete, surface (do NOT run automatically):
- Very specific: line 86
If memory-bank.md exists, append a "Deleted" note with the timestamp and the app GUID, but do NOT delete the memory bank itself — the user …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
📋 Shared Instructions: shared-instructions.md — Cross-cutting concerns. Two confirmations required; never auto---force.
Delete App
Removes the app from the service. The local workspace is NOT deleted by this skill — the user can clean it up afterward (this skill suggests the command but doesn't run it).
Workflow
- Memory Bank → 2. Resolve App ID → 3. Verify with Show → 4. First Confirmation → 5. Try Non-Force Delete → 6. If Service Says Force Required: Second Confirmation → 7. Suggest Local Cleanup → 8. Update Memory Bank
Step 1: Check Memory Bank
Read memory-bank.md for app slug + GUID + environment.
Step 2: Resolve App ID
test -f ms.config.json && APP_ID=$(node -p "require('./ms.config.json').appId" 2>/dev/null) || trueIf no ms.config.json, ask the user for the app slug or GUID. Optionally invoke /list-apps to discover.
Step 3: Verify with Show
Before the destructive call, fetch the app metadata so the user sees what they're about to delete:
BIN=ms
$BIN app show --app "$APP_ID" --jsonDisplay: display name, slug, app GUID, environment, version, creation date, last modified, share count if available.
Step 4: First Confirmation
"About to delete the app
<display-name>(slug<slug>, GUID<guid>) from environment<env-name>. This removes the app from the service for all users — playing the app stops working immediately. Continue?"
Wait for explicit yes. If no, STOP — do not delete.
Step 5: Try Non-Force Delete
$BIN app delete --app "$APP_ID" --non-interactivems app delete is idempotent: if the app is already gone (HTTP 204) it emits a warning rather than erroring. Treat both existed: true and existed: false outcomes as success.
Step 6: If Service Says Force Required
If the service returns a non-2xx with a message like "delete requires --force" (the app has active shares, child resources, etc.), DO NOT auto-add --force. Instead, ask a second confirmation:
"The service requires
--forceto delete this app. Reason from the service:<verbatim message>. Adding--forcewill remove the app and any associated state (shares, etc.) immediately. Are you sure?"
Wait for an explicit second yes. Only then:
$BIN app delete --app "$APP_ID" --force --non-interactiveNever short-circuit the two confirmations into one. The service's --force requirement is the signal that downstream state will be affected.
Step 7: Suggest Local Cleanup
After successful delete, surface (do NOT run automatically):
App removed from service.
To clean up local workspace:
cd ..
rm -rf <project-dir>
Or keep the workspace if you intend to recreate / re-link to a new app.Step 8: Update Memory Bank
If memory-bank.md exists, append a "Deleted" note with the timestamp and the app GUID, but do NOT delete the memory bank itself — the user may want the history.
Failure Modes
| Error | Action |
App '<id>' not found in environment '<env>' | Idempotent path — the app is already gone. Emit a success note and update memory bank (mark deleted). |
| 403 not authorized | The account doesn't have Owner permissions on the app. Surface the error; suggest $BIN app share review or a different account. |
| 5xx from the service | Transient. Retry once after 5s; if still failing, STOP and surface verbatim — do not loop. |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

