merge-main/SKILL.md
Merge origin/main into the current branch and resolve all conflicts. Use when the user wants to sync their branch with main, pull in upstream changes, or says "merge in main", "sync with main", "rebase from main", or "update from main". Always invoke this skill for merge/sync workflows — don't just run git merge manually.
npx skillsauth add paulund/skills merge-mainInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
git fetch origin main && git merge origin/main --no-edit
If the merge succeeds cleanly, skip to step 4.
If there are conflicts, git diff --name-only --diff-filter=U lists the conflicted files. Resolve them all before continuing.
Read every conflicted file before editing. For each conflict, decide which strategy applies:
Lock files — always take theirs, then reinstall:
pnpm-lock.yaml, package-lock.json, yarn.lock, bun.lockb: git checkout --theirs <file>, then run the package manager install (see step 3).Config/manifest files (package.json, pyproject.toml, etc.):
Read both sides of the conflict marker. Usually the right answer is to include both sides' additions (e.g. a new dependency from each branch). Resolve manually, keeping all new entries from both sides.
Source files — prefer the better pattern: Read the diff carefully. Take whichever side represents an improvement:
logger.error) over raw console.error/console.logtry/catch with error handling over bare async callsgetErrorMessage(err) over inline err instanceof Error ? err.message : String(err)When both sides are equally valid, prefer origin/main to stay aligned with the shared baseline.
After editing each file, verify no <<<<<<<, =======, or >>>>>>> markers remain.
If package.json or any lock file was part of the conflict resolution:
pnpm install --frozen-lockfile=false
git add <all resolved files>
git commit -m "Merge origin/main"
Use git commit without --no-edit so the default merge message is used. Don't amend — create the commit fresh.
pnpm test
If tests fail, fix the root cause before presenting the work as done.
git merge -X theirs — it blindly discards work from the current branch.git reset --hard to escape conflicts; investigate and resolve them.origin/main and flag it to the user.testing
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
development
TypeScript project conventions. Auto-load when editing *.ts or *.tsx files.
development
Use when writing or fixing PHP code, implementing classes, traits, or interfaces, applying PSR standards, or working with PHP 8.3+ patterns like readonly properties, enums, named arguments, match expressions, and union types.
tools
Next.js 15 App Router project conventions. Auto-load when working in app/, src/app/, components/, server actions, or route handlers.