npx skills add ...
npx skills add getsentry/sdk-skills --skill sdk-feature-implementation
npx skills add getsentry/sdk-skills --skill sdk-feature-implementation
Implement a feature across Sentry SDK repositories by spawning parallel agents. Use when you have Linear initiatives/projects/issues and want to create draft PRs. Triggers on "implement across SDKs", "spawn SDK agents", "SDK implementation", "parallel SDK implementation", "continue SDK rollout".
Implement a feature across Sentry SDK repositories by spawning parallel agents that create draft PRs.
Only operate on repos listed in SDK_REPOS.md. Only repos with Enabled=Yes are included by default. All repos are under the getsentry GitHub org.
Use gh CLI for all GitHub operations (PRs, branches, CI logs). Use Linear MCP for all context gathering and tracking.
Linear MCP is the primary source for all context gathering. The user needs to provide enough context to know what to implement and where. Accept any of these starting points:
mcp__linear-server__get_initiative to get the overview, then drill into projects/issues per SDK teamFrom the provided context, extract:
Context gathering flow:
mcp__linear-server__get_initiative — get initiative overview and linked projectsmcp__linear-server__get_project — get project details for target SDK teamsmcp__linear-server__get_issue — get detailed requirements, spec links, and GitHub issue attachments from each issuemcp__linear-server__list_comments — check for additional context or decisions in issue commentsLinear issues have GitHub issue/PR links as attachments — use these to find the corresponding GitHub issue numbers without needing to search GitHub directly.
If a spec URL was found, use WebFetch to read it. Otherwise, gather requirements from Linear issue descriptions and gh issue view <number> --repo getsentry/<repo-name> for GitHub issue details. Present a concise summary:
Ask the user to confirm the summary is accurate before proceeding.
Hybrid SDKs depend on native SDKs for their platform layers:
@sentry/core (JS) + sentry-cocoa (iOS) + sentry-java (Android)When implementing across both hybrid and native SDKs:
@sentry/core — check before implementing from scratch. If @sentry/core already has it, the work is: expose options in SDK types, pass through to native bridge, add testsFor each target repo, check for existing PRs:
gh pr list --repo getsentry/<repo-name> --search "<feature-keyword>" --json number,title,state,isDraft,urlgh pr view <number> --repo getsentry/<repo-name> --json state,isDraft,mergeable,statusCheckRollupPresent a matrix:
This handles "continue from where you left off" naturally. Ask the user to confirm the action plan.
references/agent-prompt.md for the implementation agent prompt template.<repo-name>, <spec-summary>, <reference-prs>, <feature-name>, and <issue-number> for each SDK.Local tests should have already passed during implementation. Use CI as final verification.
After agents create draft PRs, check CI status with gh pr view <number> --repo getsentry/<repo-name> --json statusCheckRollup.
If CI fails:
Fetch the actual failure logs — don't guess:
Fix the issue directly or spawn a fix agent with the CI error output included in the prompt.
The fix should:
git pushRe-check CI status after the fix.
Expect 2-3 CI fix iterations. Common issues:
dart pub get before dart format)@internal functionsRun CI-monitoring agents in the background so multiple PRs can be checked in parallel.
After CI passes, check for automated review feedback (Cursor bot, Danger, Sentry bot, etc.):
For each SDK implementation, check if sentry-docs needs updates:
.github/PULL_REQUEST_TEMPLATE.md)Create separate docs PRs per SDK — don't bundle multiple platforms into one PR.
Once all agents complete and CI passes:
Present a results table:
Link to Linear (if available):
mcp__linear-server__save_project to add the PR links to the project descriptionmcp__linear-server__query_data is read-only — always use mcp__linear-server__save_project for writesSummary: What was done and what needs manual follow-up.
gh CLI for all GitHub operations (PRs, branches, CI logs, pushing code)git worktree for isolated working directorieslinear-sdk-rollout skill first if Linear projects/issues don't exist yetUser: "Implement strict trace continuation across Rust, Go, and Java SDKs"
Response flow: