+path = require 'path'
+
+_ = require 'underscore-plus'
 async = require 'async'
+CSON = require 'season'
 optimist = require 'optimist'
 
 config = require './config'
 Command = require './command'
+fs = require './fs'
 Login = require './login'
+Packages = require './packages'
 request = require './request'
 
 module.exports =

        @logSuccess()
        callback()

  run: (options) ->
    {callback} = options
    options = @parseOptions(options.commandArgs)
    packageNames = @packageNamesFromArgv(options.argv)

    if packageNames.length is 0
      callback("Must specify a package name to star")
      return

    Login.getTokenOrLogin (error, token) =>
      return callback(error) if error?

      Run `apm stars` to see all your starred packages.
    """
    options.alias('h', 'help').describe('help', 'Print this usage message')
    options.boolean('installed').describe('installed', 'Star all packages in ~/.atom/packages')

  starPackage: (packageName, token, callback) ->
    process.stdout.write '\u2B50  ' if process.platform is 'darwin'
