Package: helpme
HelpMeA command line helper when you need it.OverviewBackgroundInstallationUsageContributingExamplesOverviewHelpMe is a general tool that can support the addition of helpers, or different
modules that have a set of metadata to collect for the user, and based on an internal
configuration file to define these metadata, and (if needed) an external config file
for user variables, we send help requests to the various helpers. For example:helpme githubposts an issue on a Github boardhelpme uservoicecreates a ticket on uservoicehelpme discoursecreates a post on a discourse boardPleasepost issueswith questions, feedback, or just to say hello, and see ourcomplete documentation here.BackgroundAsking for help is a standard need for research software users, and needing to perform this function from a command line is common given the headless environments provided on shared cluster resources.  While interactive web interfaces are the main avenue to submit help tickets and issues to get help, they are many steps away from the original command line where the issue arose, meaning that the user must interrupt a workflow, navigate to another program, and perform several clicks before needing to try to manually capture the problem at hand. At best, the user might copy an error message and the support staff then needs to ask or use internal resources to collect more information. This reality is not ideal because the user often presents a limited summary of the issue, and valuable information about the system, environment, or even a recording of the actual issue are lost. Extra time is spent on further communication and effort to obtain this information. HelpMe resolves these issues by recording information about the issue directly from the source, and allowing users to ask for help without leaving the working environment.HelpMe is a free to use, open source command line tool that serves one purpose: to connect a user on a command line to a a resource to get help. The software provides a general framework for developers to add "helpers," or different support endpoints to work with "recorders," each a specific way of capturing information like messages, terminal recordings (asciinema), and environment, to easily submit to the endpoint. Importantly, the complex interaction of various application programming interfaces (APIs) with the user's terminal is presented in a simple and intuitive way that puts the user in control of the interaction. By default, the software comes ready to use for interaction with Github and the UserVoice ticketing softwarecommonly used in Research Computing.  The HelpMedocumentation baseis rendered from the same repository and open for contribution. It provides ample detail for developers to add new helpers, recorders, and for users to install the software.InstallationLocalpipinstallhelpme[all]pipinstallhelpme[github]pipinstallhelpme[uservoice]DockerCurrent images are provided on quay.io atvanessa/helpme.
Older versions can be found onDocker hub.You can use the image built on Docker Hub directory$dockerrun-it--entrypointbashquay.io/vanessa/helpmeor you can build it from this repository!$dockerbuild-tquay.io/vanessa/helpme.Usage# Post an issue to a Github Repo.$helpmegithubvsoch/helpme# Post a question to a discourse board$helpmediscourse# Post a ticket to UserVoice$helpmeuservoiceThis is a very brief summary of usage. For complete details, see ourdocumentation.ContributingIf you'd like to contribute, we welcome pull requests, feature requests, and any form of help you
might offer! Please see ourcontributing guidelinesfor more details. Do you
have a question, or did you find a bug? You cansubmit an issueand we will help you out.Examplesrseng-supportan example issue submission system with helpme and GitHubLicenseThis code is licensed under the Mozilla version 2.0LICENSE.