PlugWiki

dart-resolve-package-conflicts: a Dart team skill for pub version conflicts

A Dart team skill that walks Claude through fixing package version conflicts when dart pub get fails.

Installs
19.1K
on skills.sh
Stars
537
on GitHub
Updated
Oct 2026
last repo commit

This skill gives Claude three workflows for Dart dependencies. It audits with dart pub outdated, upgrades with dart pub upgrade and --tighten, and resolves conflicts by removing only the conflicting package from pubspec.lock before running dart pub get. It triggers when pub get fails because of incompatible versions.

The skill says never to delete the whole pubspec.lock, because that causes uncontrolled upgrades across the dependency graph. It edits pubspec.yaml and pubspec.lock and runs commands that download packages. It is one file with no scripts.

Good for

  • Dart and Flutter developers whose pub get fails on incompatible versions
  • Teams auditing outdated or retracted packages
  • Maintainers tightening version constraints in pubspec.yaml

Install dart-resolve-package-conflicts

Claude Code

  1. 1

    Copy this prompt.

    Install the dart-resolve-package-conflicts skill in Claude Code. Run this command:
    
    npx skills add https://github.com/dart-lang/skills --skill dart-resolve-package-conflicts
    
    Then check that it loaded and tell me how to use it.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

From its listing on skills.sh. Source.

What's in the skill

When it loads

Workflow for fixing package version conflicts. Use this when `pub get` fails due to incompatible package versions.

Sections in SKILL.md

  1. Contents
  2. Core Concepts
  3. Version Constraints
  4. Workflow: Auditing Dependencies
  5. Workflow: Upgrading Dependencies
  6. Workflow: Resolving Version Conflicts
  7. Examples
  8. Tightening Constraints
  9. Surgical Lockfile Removal

Key facts

Installs on skills.sh
19,121 as of 2026-11-02
Last repo commit
2026-10-16

What it includes

  • Run dart pub outdated and read its columns

    Checks the Upgradable and Resolvable columns and flags retracted or discontinued packages.

    Try: “pub get fails with a version conflict. Resolve it without upgrading everything.”

    Runs code · Workflow: auditing dependencies

  • dart pub upgrade, --tighten, or bump constraints

    For Upgradable versions run dart pub upgrade and dart pub upgrade --tighten. For major updates edit pubspec.yaml first, then upgrade, then run dart analyze and dart test.

    Runs code · Workflow: upgrading dependencies

  • Delete one package's entry from pubspec.lock, then pub get

    Opens pubspec.lock, removes only the conflicting or retracted package block, runs dart pub get, then dart pub deps to check the graph.

    Runs code · Workflow: resolving version conflicts

  • Caret syntax, tight dev_dependencies, --enforce-lockfile in CI

    Use ^1.2.3 style constraints, set dev dependency lower bounds to the current version, and use dart pub get --enforce-lockfile in CI.

    Read · Version constraint rules

  • Tightening a constraint and removing one lockfile block

    Shows dart pub upgrade --tighten http and a before and after for pubspec.lock.

    Read · Examples

From the official docs

Permissions

Medium risk

Claude edits pubspec.yaml and pubspec.lock and runs dart pub commands that download packages. Commit first and review the version changes before you merge.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It changes your locked dependency versions

    Removing a lockfile block and running dart pub get can move a package to a newer version. Review the pubspec.lock diff and run the tests. github.com

  • Major upgrades can break your code

    The skill bumps constraints to the Resolvable version for major updates and then runs dart analyze and dart test. Expect to fix breaking API changes. github.com

Technical details
Talks toThe package source configured for dart pub (for example pub.dev)
Scopes
  • Runs dart pub outdated, upgrade, get and deps

  • Edits pubspec.yaml and pubspec.lock

Questions

What does dart-resolve-package-conflicts do?

It tells Claude how to audit, upgrade and repair Dart dependencies. The main path for a conflict is to remove only the problem package's entry from pubspec.lock and run dart pub get.

How do I install it?

Use the install box at the top of this page. The dart-lang/skills README also gives one command that installs every skill in the repo into the standard .agents/skills folder, if you want the whole set.

Why does it say never to delete pubspec.lock?

The skill says deleting the whole file and running dart pub get causes uncontrolled upgrades across the dependency graph. It removes only the conflicting package's block instead.

Is it safe to use?

It edits pubspec.yaml and pubspec.lock and downloads packages with dart pub commands, so it can change what versions your project uses. Commit first, review the diff, and run your tests. The skill ends upgrades with dart analyze and dart test.

Does it need an API key?

None is mentioned. It runs dart pub commands, which fetch package data from your configured package source.

Information

updated Nov 2, 2026

Folder
skills/dart-resolve-package-conflicts

dart-lang/skillsskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 2
  1. SKILL.md · github.com
  2. README.md · github.com

Updated Nov 2, 2026.