cli library

CLI barrel for Magic framework.

Exposes ONLY the artisan-CLI surface (MagicArtisanProvider + the integration glue classes). Does NOT export Magic runtime (no Flutter dart:ui imports), so this barrel is safe for consumption from pure-Dart artisan dispatchers.

Consumers register the provider in their bin/artisan.dart:

import 'package:fluttersdk_artisan/artisan.dart';
import 'package:magic/cli.dart' show MagicArtisanProvider;

Future<void> main(List<String> args) async {
  final registry = ArtisanRegistry()
    ..registerAll(<ArtisanCommand>[...], providerName: 'fluttersdk_artisan')
    ..registerProvider(MagicArtisanProvider());
  exit(await ArtisanApplication(registry: registry).dispatch(args));
}

Runtime consumers (lib/main.dart of a Magic-based app) continue to import package:magic/magic.dart for facades + Magic.init().

Classes

InstallStubs
Install command stub templates.
MagicArtisanProvider
Contributes magic:* (and make:* / key:generate) commands to the artisan dispatcher.
MagicMainDartEditor
Magic-specific thin wrapper around MainDartEditor that pins the 'Magic.init' anchor so callers never hardcode the magic-internal call site name.
MainDartScaffoldDetector
Heuristic detector for the default flutter create counter-app scaffold.
MainDartSmartMerger
Preserve-mode smart merger for lib/main.dart.