Skills
Skill 54 of 56
Read and change a LaunchDarkly project’s Automations auto-cleanup settings via the hosted MCP.
4 minutes · 824 words · 12 sections
Install
npx skills add launchdarkly/ai-tooling --skill launchdarkly-automations-cleanup-settingsnpx skills add launchdarkly/ai-tooling/plugin marketplace add launchdarkly/ai-toolingThe first command installs just this skill, by the name in its SKILL.md; the second installs the whole repository.
You’re using a skill that reads and changes a project’s auto-cleanup settings, from the “Automated flag cleanup” section of the project’s Settings > Automations page. Auto-cleanup opens pull requests in the user’s GitHub repositories on a schedule. Treat every write as production automation with a blast radius.
This skill requires the remotely hosted LaunchDarkly MCP server.
Required MCP tools:
get-automations with section: "cleanup" and projectKey: the project’s cleanup settings, the upcoming run (enabled, flagKeys, nextRunAt in Unix milliseconds), and automationsPage, the link to the project’s Automations page.update-automations with projectKey and a cleanup object: change one or more settings. Omitted fields keep their stored values. Send cleanup on its own, without accountWide, repo, or archival.Optional: get-projects to pick the project, get-automations to suggest the repositories already mapped to the project.
If get-automations has no section argument, or rejects section, the server has not picked up cleanup and archival yet. Ask the user to reconnect the LaunchDarkly MCP server once. If it still has none, guide the browser steps in references/browser-steps.md (opens in a new tab) instead. Do not invent REST calls.
| Field | Meaning |
|---|---|
schedule | disabled (off), daily, weekly, or monthly |
repositories | GitHub repositories (owner/name) cleanup opens pull requests in |
maxJobsPerRun | The most cleanup pull requests one run opens |
flagStates | Which flags runs pick up: readyToArchive (the default), readyForCodeRemoval, live |
customContext | Extra instructions for the cleanup agent, such as where flags are defined. The agent also follows the repository’s AGENTS.md |
retryAttempted | true retries flags that already had a cleanup pull request |
configuredByMemberId | The member whose permissions cleanup jobs use. Read-only: it becomes whoever saves the settings |
update-automations makes the calling member the one whose permissions cleanup jobs use. Say so in the proposal when configuredByMemberId is someone else.repositories and flagStates replace the whole stored list. To add one repository, read the current list and send it with the new one. To remove one, send the list without it.flagStates at readyToArchive unless the user asks for more: live picks up flags that are still serving.disabled makes LaunchDarkly open pull requests in the listed repositories, starting with the next run. A schedule with no repositories opens none.get-automations with section: "cleanup" and projectKey. Report the schedule, repositories, job limit, flag states, and who cleanup runs as. If upcoming.enabled is true, say when the next run is (nextRunAt) and which flags it will pick up (upcoming.flagKeys).
Read the settings: get-automations with section: "cleanup".
Ask for anything the change needs and the user did not give: the schedule, and at least one repository when none is stored. Suggest the repositories mapped to the project in get-automations. Only the user’s answer goes in.
Propose the change, for example:
Automated flag cleanup is off for project
default. Turn it on weekly inacme/web, with at most 10 pull requests per run? LaunchDarkly will start opening pull requests that remove the code for flags that are ready to archive. Cleanup jobs will run with your permissions.
After the user confirms, call update-automations with projectKey, confirm: true, and a cleanup object holding only the confirmed fields.
The response lists changed and the settings as read back. If it reports a mismatch on read-back, show the user the current values from get-automations with section: "cleanup" and do not retry blindly.
Propose it (“Turn off automated flag cleanup for project default? No new cleanup pull requests will open; open ones stay open.”), then update-automations with projectKey, cleanup: { "schedule": "disabled" }, and confirm: true.
Read-only. Call get-automations with section: "cleanup" and check in this order. Stop at the first answer.
settings.schedule is disabled: cleanup is off.settings.repositories is empty: there is nowhere to open pull requests.upcoming.enabled is false while the schedule is on: no member is set to run cleanup, or that member is no longer on the account. Someone with access must save the settings again, which makes them the member cleanup runs as.upcoming.flagKeys: its state is not in flagStates, the run limit (maxJobsPerRun) is full, or it already had a cleanup pull request and retryAttempted is false.upcoming.flagKeys: it is waiting for the next run at nextRunAt.If none of these explain it, point the user at the cleanup history in the “Automated flag cleanup” section of automationsPage. Do not change settings to try something.
section argument: see Prerequisites.launchdarkly-flag-cleanup.launchdarkly-automations-archival-settings.launchdarkly-release-autopilot-settings.Read and change a LaunchDarkly project's Automations auto-cleanup settings via the hosted MCP. Auto-cleanup runs on a schedule and opens pull requests that remove the code for flags that are ready. Use when the user wants to turn automated flag cleanup on or off, change its schedule, repositories, flag states, job limit, or agent instructions, see which flags the next run will pick up, or asks why cleanup did not open a pull request. For first-time setup of every Release Autopilot capability, use launchdarkly-release-autopilot-onboarding.
The verbatim description from this skill’s front matter — the string an agent matches on to decide whether to load it.
skills/release-autopilot/launchdarkly-automations-cleanup-settings/SKILL.mdmain, last pushed 7 November 2026.SKILL.md, not by matching a directory convention. 10 distinct layouts observed: skills/agentcontrol/*/SKILL.md, skills/aws-devops-agent/*/SKILL.md, skills/experiments/*/SKILL.md, skills/feature-flags/*/SKILL.md, skills/metrics/*/SKILL.md, skills/observability/*/SKILL.md, skills/onboarding/*/SKILL.md, skills/onboarding/sdk-install/*/SKILL.md, skills/*/SKILL.md, skills/release-autopilot/*/SKILL.md.h1 and no skipped levels:.claude-plugin/marketplace.json by LaunchDarkly, declaring 1 plugin. It is read for editorial metadata only — never as the skill index, which is always the repository tree./launchdarkly/ai-tooling.md, and each skill at its own .md URL.3 files · 3 KB
Everything this skill ships beside its prose. All of it is set here, as subchapters of skill 54.
Documentation the agent loads on demand, rather than up front.
Everything else published alongside the skill.