Skip to content
Back to skills

Diff Profile

ASecurity

Compare two nyann profiles side-by-side and show what would change. TRIGGER ON: 'diff profiles', 'compare profiles', 'what's different between profiles', 'profile diff', 'diff default vs nextjs', 'compare default and python-cli', 'what would change if I switch profiles', 'show me the difference between profiles', 'how does X profile differ from Y', 'what hooks does X add over Y', 'profile comparison', '/nyann:diff-profile'. Do NOT trigger on "switch profile" / "migrate profile" — those are mi...

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 26, 2026
developmentpythonnextjsgitdocumentation

Works with

  • cli

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add thettwe/nyann --skill diff-profile --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Diff Profile?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Diff Profile
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thettwe-diff-profile/badge)](https://www.skillsdirectory.com/skills/thettwe-diff-profile)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: diff-profile
description: >
  Compare two nyann profiles side-by-side and show what would change.
  TRIGGER ON: 'diff profiles', 'compare profiles', 'what's different between profiles',
  'profile diff', 'diff default vs nextjs', 'compare default and python-cli',
  'what would change if I switch profiles', 'show me the difference between profiles',
  'how does X profile differ from Y', 'what hooks does X add over Y',
  'profile comparison', '/nyann:diff-profile'.
  Do NOT trigger on "switch profile" / "migrate profile" — those are migrate-profile.
  Do NOT trigger on "inspect profile" / "what does this profile do" — those are inspect-profile.
---

# diff-profile — Compare Two Profiles

You are the diff-profile skill. You compare two nyann profiles and show
exactly what would change: hooks added/removed, branching rules, CI config,
documentation settings, and more.

## When to trigger

- User asks to compare, diff, or contrast two profiles
- User is considering switching profiles and wants to see the impact
- User asks "what hooks does X add over Y" or "what's different"
- User asks what would change before running migrate-profile

**DO NOT trigger on:** "switch to profile X" (migrate-profile), "what does
this profile do" (inspect-profile), "audit this repo" (doctor).

## Execution flow

### 1. Resolve the two profiles

The user must name two profiles. Common patterns:

- Explicit: "diff default vs nextjs-prototype"
- Current vs target: "what would change if I switch to python-cli"
  → resolve the current profile from CLAUDE.md / preferences, then diff
  current vs the named target.
- If only one profile is named and the repo has an active profile, use
  the active profile as `from` and the named one as `to`.
- If you can't determine both, ask: "Which two profiles should I compare?"

### 2. Run the diff

```
bin/diff-profile.sh <from> <to>
```

Both arguments are **bare profile names** (e.g. `default`, `python-cli`),
not filesystem paths. The script resolves them via `load-profile.sh`.

### 3. Present the results

Show a section-by-section summary. Focus on what the user cares about:

- **Hooks:** "Switching adds `eslint`, `prettier` to pre-commit and
  removes `gitleaks`."
- **Branching:** "Strategy changes from github-flow to gitflow."
- **CI:** "CI generation gets enabled."
- **Documentation:** "Scaffold types gain `prd` and `research`."

If `identical` is true, say so: "These profiles are identical."

For human-readable output, pass `--format human` to the script instead
of rendering JSON yourself.

### 4. Suggest next steps

- "Want to switch? Run `/nyann:migrate-profile` to apply the change."
- "Want to inspect either profile in detail? Run `/nyann:inspect-profile <name>`."
- If there are hook changes: "After switching, run `/nyann:retrofit` to
  install the new hooks."

## Error handling

- Profile not found → show the available profiles list from load-profile.sh's
  error output and ask the user to pick a valid name.
- Same profile named twice → "Both profiles are the same. Nothing to diff."

## When to hand off

- "Switch to this profile" → `migrate-profile`.
- "Tell me about this profile" → `inspect-profile`.
- "Apply these changes" → `retrofit`.
- "Bootstrap with this profile" → `bootstrap-project`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.