Currently, savvy doesn't record commands in an ssh session.
For now, you can install Savvy's CLI (curl -fsSL https://install.getsavvy.so | sh) into the machine you've sshed into and then run savvy record history. You can do this after the issue is over.
If you share more details about your set up I may be able to suggest other workarounds to get you set up. Feel free to email me at [email protected]
I agree with what a lot of folks here are saying around knowledge transfer is a continuous/on-going process.
Any one-off knowledge transfer will most likely fail. People can't learn actionable knowledge with doing the actions. - That's why we need continuous sharing and doing.
People only look for the artifacts of a knowledge transfer when they need it. When resolving unfamiliar issues, people's first question is: "Has this happened before? How did we resolve it the last time?" It's a simple question but most often its very hard to answer.
The knowledge needed to answer questions like the one above, is mostly manually compiled together and often from memory.
Finally, actionable knowledge is hosted in the same tools as product specs, meeting notes, press releases etc. As a result, creating, finding and following such knowledge is quite hard.
Disclosure: I'm building Savvy(getsavvy.so) to fix a lot of these issues for developers.
Lot of users typically find that they realize they should have recorded something after they've done it. That's why savvy also allows you to select commands from your shell history with savvy record history
The API source code is in a different repo.
Thanks! All credit to the dracula theme for tmux and Kitty terminal emulator.
If you have any questions or feedback feel free to email me at [email protected]
I'm building a similar product called Savvy(https://github.com/getsavvyinc/savvy-cli) and considered an approach similar to yours (writing in pure bash) but ultimately decided to use Go for a few reasons:
- charmbracelet makes it super easy to build rich TUI
- Go produces a single binary that's compatible across many platforms and keeps installation simple
- It's simpler to support multiple shells.
You're right. A runbook is more than just a list of commands.
I plan to add support for setting up and validating prerequisites for running a runbook with Savvy. For example, Savvy can ensure that all environment variables are automatically set up and removed as part of a `savvy run.`
A while ago, I built Flowshare, which is similar to Savvy but works in the browser. I will integrate that tech within Savvy to support capturing runbooks that involve steps in the browser and the terminal.
I like your suggestion on troubleshooting. Savvy can offer a great experience here as the cli will know when a command has failed or returned a nonzero exit code.
> but what if you rethought it to check in with the user step by step, telling them what they're about to do next
IIUC, your thoughts align with how Savvy Run currently works. Savvy suggests the next step, but devs can edit or ignore it. Providing troubleshooting help, as you suggested, will definitely improve the DX.
You're right. My post assumes too much prior knowledge.
A runbook is a set of precise commands that you can use to resolve or diagnose anything from a complete production outage to helping a developer debug their local environment.
Most developers manually create runbooks - Savvy's CLI changes that and allows you to create runbooks in seconds.
I think you hit the nail on the head when you say, "get a pulse on the developer zeitgeist on a particular topic." I really enjoyed using it to get a sense of what developers feel about a particular topic. I also learned about new products I wasn't aware of.
Currently, savvy doesn't record commands in an ssh session.
For now, you can install Savvy's CLI (curl -fsSL https://install.getsavvy.so | sh) into the machine you've sshed into and then run savvy record history. You can do this after the issue is over.
If you share more details about your set up I may be able to suggest other workarounds to get you set up. Feel free to email me at [email protected]