Cookie Consent by FreePrivacyPolicy.com Sherpa

Docs


Sherpa: The Cloud Programmer's Workbench

Built for the sudoer in all of us, Sherpa is a modern-day REPL and data management tool which lets you work with Cloud APIs, queries, event streams, shell commands, and script blocks interactively and iteratively.

What's a REPL?

A REPL, or Read-Eval-Print Loop, is an interactive interface to a programming language or shell.

As programmers and administrators we use REPLs constantly as we interact with host shells (bash, sh, zsh, etc), query languages like SQL, and interactive language prompts like those provided by NodeJS, Python, etc.

What Makes Sherpa's REPL ROCK?

Sherpa's REPL interface combines features of modern notebook tools like Jupyter and Observable with workflow-aware constructs similar to those found in the TIBET Workflow System or AWS Step Functions.

Like a terminal, Sherpa lets you enter code or commands and runs them at your request. As with a terminal, each new command can target any shell or language available on your machine.

Unlike a terminal, Sherpa treats each command as a rich multi-line I/O entry with its own input editor, output visualizer, pre/post processors, etc.

Enter multi-line command input with a rich syntax-aware text editor (the default) or more advanced input tools including micro-forms.

Visualize the results with content-aware renderers for JSON, XML, and other formats or create your own custom visualizers.

What's a Runbook?

A Sherpa Runbook is a workflow-driven script, a sequence of one or more blocks of code that can be run either interactively or in response to an event.

Sherpa Runbooks let you go beyond pure scripts in that they can embed markdown and todo entries along with task-specific workflow steps.

Markdown entries let you annotate your Runbooks using rich content including text, images, video, 3D, and other elements.

Todo entries let you place "process checks" in your scripts.

For example, maybe your organization requires you to get sign-off from at least one other developer before running a refresh on the DEV database. You can edit your 'refresh-database' Runbook to include a Todo that reminds you to do that step before continuing with the refresh steps in the Runbook.

If you've ever used an old-school runbook, binder, or wiki page that says "Follow these steps to refresh the database", imagine transforming that page into a runnable script you can trigger manually or automatically.

Accelerate and Automate

Sherpa's REPL lets you interact and iterate just as you would with a typical terminal while offering more powerful input and output controls. It also handles asynchronous processing automatically, freeing you to work faster.

If all you ever do is use the REPL features of Sherpa you'll still be more productive than if you rely on a typical terminal, REPL, or simple evaluator.

Runbooks let you go further by letting you save, document, and workflow-enable your best scripts, grouping them into Playbooks that serve individual projects, platforms, or other needs.