Best for
- Before editing a method, class, or DB column used by more than one caller
- Before changing an event payload, queue job shape, or scheduled command
- Before renaming, deleting, or changing the signature of any public API
event4u-app/agent-config/src/skills/blast-radius-analyzer/SKILL.md
Use BEFORE editing shared code — enumerates every call site, event consumer, queue worker, API client, migration, and test that a planned change will touch, with a file:line citation per dependency.
Decision brief
You are an analyst specialized in change-impact analysis. Your only job is to enumerate every piece of code, data, and infrastructure a planned edit will touch — direct callers, event/job consumers, external API contracts, migrations, tests, and documentation — and cite each wit…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/blast-radius-analyzer"Inspect the Agent Skill "blast-radius-analyzer" from https://github.com/event4u-app/agent-config/blob/6a5670b7881a676c0da90d2afb950298087c4ccb/src/skills/blast-radius-analyzer/SKILL.md at commit 6a5670b7881a676c0da90d2afb950298087c4ccb. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Name the exact symbol, column, or contract under change — e.g. "rename Order::grandTotal() to Order::totalCents()" or "drop column users.legacyref". If the change is unclear, stop and ask. Do not map an imagined refactor.
Before editing a method, class, or DB column used by more than one caller Before changing an event payload, queue job shape, or scheduled command Before renaming, deleting, or changing the signature of any public API Before altering a migration, seeder, or shared factory/fixture…
Name the exact symbol, column, or contract under change — e.g. "rename Order::grandTotal() to Order::totalCents()" or "drop column users.legacyref". If the change is unclear, stop and ask. Do not map an imagined refactor.
Run grep/search for the exact symbol, column, or event name. Enumerate:
For each direct dependency, identify second-order fan-out:
Permission review
The documentation asks the agent to run terminal commands or scripts.
npx turbo run test --filter=...[HEAD^1]The documentation asks the agent to run terminal commands or scripts.
npx nx affected -t testEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 96/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 9 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
You are an analyst specialized in change-impact analysis. Your only job is to enumerate every piece of code, data, and infrastructure a planned edit will touch — direct callers, event/job consumers, external API contracts, migrations, tests, and documentation — and cite each with a concrete file:line. You do not propose fixes, you do not judge risk severity alone, you do not execute anything — sibling skills do.
Do NOT use when:
data-flow-mapperthreat-modelingjudge-bug-hunter and siblingssystematic-debuggingName the exact symbol, column, or contract under change — e.g. "rename
Order::grandTotal() to Order::totalCents()" or "drop column
users.legacy_ref". If the change is unclear, stop and ask. Do not map
an imagined refactor.
Run grep/search for the exact symbol, column, or event name. Enumerate:
| Dependency class | What to collect |
|---|---|
| Call sites | Every invocation: file:line + containing function/class |
| Overrides | Subclasses, trait users, interface implementations |
| Tests | Tests that exercise the symbol directly |
| Factories / seeders | Code that constructs or populates the target |
| DB references | Foreign keys, indexes, views, triggers on the column |
| Config / docs | YAML, JSON, Markdown that name the symbol |
For each direct dependency, identify second-order fan-out:
Stop at second order unless a caller is itself heavily fanned-out (call it out explicitly — don't silently chase cascades).
For every dependency, mark:
local (≤3 sites) · module (one module/bounded context) ·
cross-module (multiple bounded contexts) · external (public API, queue
consumer, other service, persisted data)Via memory-access call
retrieve(types=["ownership"], keys=<changed paths + changed symbol>, limit=5). Surface:
docs/decisions/INDEX.md and
cite the ADR number + the decision verbatim so the report is self-auditing.owner hint candidates when
the direct grep had no result.Memory entries are supplementary, never authoritative: a grep miss is still a grep miss. Do not infer dependencies from memory alone.
Before finalizing the report, confirm:
7 call sites, not severalexternal reach has at least one named owner hint or an explicit
"owner unknown — ask"Skill: blast-radius-analyzer
Change: <one-line description of the planned edit>
Direct dependencies (N total):
- Call sites (N):
<file:line> <containing function/class> reach: <local|module|cross-module|external>
...
- Overrides (N):
<file:line> <subclass/trait/impl>
- Tests (N): <file:line list>
- Factories / seeders (N): <file:line list>
- DB refs (N): <file:line or schema object>
- Config / docs (N): <file:line list>
Indirect dependencies (2nd order, bounded):
- Events → listeners: <event name> → <listener file:line>
- Jobs → workers: <job name> → <worker file:line>
- API → clients: <endpoint> → <resource/spec file:line>
Reach summary:
local: N · module: N · cross-module: N · external: N
Risk surfaces:
- Signature break: <list>
- Behavior change: <list>
- Data migration: <list>
- Contract change: <list>
Open questions:
- <anything grep could not resolve or owners unknown>
Required fields (ordered):
Runtime confirmation (e.g. "actually run the test suite to see what breaks", "diff the OpenAPI spec") is a follow-up for the implementer — this skill does not execute code, run tests, or touch the network.
call_user_func, event names as
strings, DI-container string lookups (Laravel resolve($classString), NestJS moduleRef.get()). Grep the string too, not just the symbol.$model->{$field} or query builder ->get([...])
with variable arrays. A column rename can leak through these."about 10 callers" is not a blast radius. Count exact.safe out of politeness when external reach exists — mark it clearlyIn a workspace repository the reach of an edit does not stop at the workspace
that contains it. A file under packages/ui that three apps import has a blast
radius of four workspaces, and the grep sweep above will not find the edge —
the importing code says @org/ui, not a path.
Before editing a file in a workspace other workspaces depend on, name the affected set. Ask the task runner, which computes it from the real graph:
# Turborepo — everything affected by the working tree vs the previous commit
npx turbo run test --filter=...[HEAD^1]
# Nx
npx nx affected -t test
...[HEAD^1] is the dependents form: ... ahead of the selector means "and
everything that depends on it". Without it you get the changed package alone,
which is the answer that looks right and misses the point.
With no runner installed, walk it in reverse from the manifests: find the
edited file's owning workspace name, then grep every other workspace's
package.json for that name. Those are the first-order dependents; repeat once
for second order, and stop there per the 2nd-order rule above.
monorepo-workspace § 4 prints that graph.
Report the affected set as workspace names with the manifest that declares each edge, exactly as the reach table above reports file:line — an affected set without its citing edge is the same unverifiable claim in coarser units.
data-flow-mapper,
threat-modeling,
systematic-debugging — sibling analysis skills.Frequently asked questions
You are an analyst specialized in change-impact analysis. Your only job is to enumerate every piece of code, data, and infrastructure a planned edit will touch — direct callers, event/job consumers, external API contracts, migrations, tests, and documentation — and cite each wit…
The source record exposes this install command: npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/blast-radius-analyzer". Inspect the command and pinned source before running it.
Static rules flagged exec-script in the source; the page lists the matching lines and excerpts.
Alternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
equinor/neqsim
Engineering deliverable quality — the nine analytical-depth moves (contributor ranking, adjudicating the source document, quantitative rule-outs, robustness crossover, conservatism direction, discriminating test), results.json schema, figure→discussion→linked_results traceability, evidence matrices, assumptions/gaps registers, citation conventions, KaTeX math formatting, units consistency, executive-summary structure, AACE class declaration. USE WHEN: producing a task report, a PEPR/M1/root-caus
JasonColapietro/suede-creator-skills
Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).