anchor.diff:        args.add('--url-mappings=mojo:sky_viewer=http://sky_viewer/sky_viewer.mojo');
       } else {
         final appPath = _makePathAbsolute(argResults['app']);
  -      Artifact artifact = ArtifactStore.getArtifact(type: ArtifactType.viewer, targetPlatform: TargetPlatform.linux);
  -      final viewerPath = _makePathAbsolute(await ArtifactStore.getPath(artifact));
  +      String viewerPath;
  +      BuildConfig config = _getCurrentHostConfig();
  +      if (config.type == BuildType.prebuilt) {
  +        Artifact artifact = ArtifactStore.getArtifact(type: ArtifactType.viewer, targetPlatform: TargetPlatform.linux);
  +        viewerPath = _makePathAbsolute(await ArtifactStore.getPath(artifact));
  +      } else {
  +        String localPath = path.join(config.buildDir, 'sky_viewer.mojo');
  +        viewerPath = _makePathAbsolute(localPath);
  +      }
         args.add('file://$appPath');
         args.add('--url-mappings=mojo:sky_viewer=file://$viewerPath');
       }
  
positive.code: import '../artifacts.dart';
  import '../build_configuration.dart';
  import '../process.dart';
  
  final Logger _logging = new Logger('flutter_tools.run_mojo');
  
  class RunMojoCommand extends Command {
    final String name = 'run_mojo';
    final String description = 'Run a Flutter app in mojo.';
  
  
negative.code:     return _makePathAbsolute(path.join(argResults['mojo-path'], 'out', mojoBuildType, 'mojo_shell'));
    }
  
    BuildConfig _getCurrentHostConfig() {
      BuildConfiguration result;
      TargetPlatform target = getCurrentHostPlatformAsTarget();
      for (BuildConfiguration config in buildConfigurations) {
        if (config.targetPlatform == target) {
          result = config;
          break;
        }
      }
      return result;
    }
  
    Future<List<String>> _getShellConfig() async {
      List<String> args = [];
  
  