Module: Parabot

Defined in:
lib/parabot.rb,
lib/parabot/cli.rb,
lib/parabot/errors.rb,
lib/parabot/system.rb,
lib/parabot/version.rb,
lib/parabot/commands.rb,
lib/parabot/test_runner.rb,
lib/parabot/tmux_manager.rb,
lib/parabot/commands/base.rb,
lib/parabot/commands/init.rb,
lib/parabot/commands/test.rb,
lib/parabot/configuration.rb,
lib/parabot/logging_setup.rb,
lib/parabot/commands/start.rb,
lib/parabot/commands/doctor.rb,
lib/parabot/dry_run_logging.rb,
lib/parabot/commands/message.rb,
lib/parabot/commands/version.rb,
lib/parabot/language_detector.rb,
lib/parabot/messaging/adapter.rb,
lib/parabot/cli/command_router.rb,
lib/parabot/language_inference.rb,
lib/parabot/cli/argument_parser.rb,
lib/parabot/yaml_text_assembler.rb,
lib/parabot/messaging/tmux_adapter.rb,
lib/parabot/commands/custom_commands.rb,
lib/parabot/messaging/adapter_factory.rb,
lib/parabot/messaging/dry_run_adapter.rb

Defined Under Namespace

Modules: CLI, Commands, DryRunLogging, Messaging Classes: CommandError, Configuration, ConfigurationError, Error, LanguageDetectionError, LanguageDetector, LanguageInference, LoggingSetup, System, TestExecutionError, TestRunner, TmuxError, TmuxManager, ValidationError, YamlTextAssembler

Constant Summary collapse

VERSION =
"1.0.0"

Class Method Summary collapse

Class Method Details

.loggerObject



26
27
28
29
# File 'lib/parabot.rb', line 26

def self.logger
  require "semantic_logger"
  SemanticLogger["Parabot"]
end

.start(args = ARGV) ⇒ Object

Main entry point for the CLI



15
16
17
18
19
20
21
22
23
24
# File 'lib/parabot.rb', line 15

def self.start(args = ARGV)
  CLI.start(args)
rescue Parabot::Error => e
  logger.error(e.message)
  exit(1)
rescue StandardError => e
  logger.error("Unexpected error: #{e.message}")
  logger.debug(e.backtrace.join("\n"))
  exit(1)
end