Hey, our early access is open! Simply sign up to get started!

Getting Started using unistry


We’re always looking to optimise all aspects of unistry, including any barriers to getting you onto our platform. We’ve replicated the simplicity of using our CLI in our set-up process so that by the end of this guide, you have a secure and reliable way to access your centralised command line history cross-device, cross-OS, anywhere across the world.

 

Create your own personalised configuration file  to shape your optimal experience.


If you have any suggestions on how we can improve this process, please click here to get in contact with us

Prerequisite(s)


    • Sign up for unistry if you haven’t already. We promise it’s quick!

Steps

Step 1: Upload your public key

 

First, you’ll need to ensure you’ve uploaded a public certificate key to the platform. We currently support SSH RSA and PEM, but this list will grow. Keep an eye out for our newsletter for the latest information (coming soon).

 

You can follow the bullet points below if you already have a supported certificate. If not, please see our how-to on generating a certificate pair (private and public).

 

  •     • Navigate to the security space, https://app.unistry.io/security
  •     • Click the “Add New Certificate” button.
  •     • In the new dialog window, enter a desired name for your certificate (a random name will be generated if one isn’t provided) and enter your public certificate.
  •     • Click “Add Certificate”.

 

You should now see a certificate item in your list of active certificates.

 

With this certificate added, it will allow you to encrypt all commands you push securely to the unistry platform. This addition also means you will only be able to decrypt your commands using the respective private key, but more on this later

User's active certificate

Step 2: Install unistry CLI

 

We currently do not use any Linux or Mac OS package managers for distributing and installing the unistry CLI. Instead, we recommend you install the unistry CLI by following the instructions on the unistry Download page.

 

Once you’ve completed the instructions, you can verify it’s working by running unistry -h, which will output the help text for the client.

$ unistry -h

Step 3: Link your unistry CLI to your unistry account

 

 

Once we have unistry installed on the desired host, we need to connect it to your account. Don’t have an account? Sign up for unistry if you haven’t already. What about your auth token? If you don’t have one, creating a new token is easy.

 

 

The unistry CLI uses the auth token to log into your account when pushing or reading from your unified history (sometimes referred to as your unistry tree).

 

 

After generating your new token, copy the value provided and run the command below to link the CLI and your account. We recommend to use the set-up wizard, unistry init

$ unistry init <authtoken>

For the best and most personalised experience we suggest using the set-up wizard, see the command below.

 

> You will need unistry CLI v0.9.6 and above

$ unistry init

Why not see how you can leverage your personalised unistry configuration file to shape your command line experience?

 

Step 4: Use unistry CLI​

 

View your commands

 

Using unistry is as simple as running the following command to get your unified history.

$ unistry tree

This command will return to you the encrypted commands contained within your unistry tree, if any. How do you view the unencrypted commands? Easy, you use the –decrypt flag and the -p flag to provide a path to or the base64 encoded representation of the private key, corresponding to the public key uploaded in step 1. For example

$ unistry tree --decrypt -p <path-to-private-key>

OR

$ unistry tree --decrypt -p <base64-encoding-of-private-key>

You should now see the value of the commands in your command line terminal. You can also control the amount of context outputted by the CLI by using one of the “view flags”. “View flags” can be used with the redacted and decrypted commands. By default, unistry uses the “standard” view. To utilise the other views, you can use the corresponding flag. For example:

$ unistry tree --compact

This view will show your commands as one per line, with their corresponding id.

$ unistry tree --detailed

This view will show your commands with their searchable metadata, including commit and summary messages. You can also type optimise your viewing experience by setting your personalised unistry configuration file.

 

 

Push your commands

 

 

What about the other way? Getting your history into your unistry tree utilises the import and push commands. By default, we follow a dry-run first principle meaning that we do the “least destructive” action by default and rely on the user (you) to state explicitly the action to execute. Using the following command, you will be able to see what commands will be pushed to your unified history on import:

 

$ history | unistry tree import

You should see the commands that will be synced over and a counter. To have more control, you can leverage existing system tools such as grep, awk etc., as well as the unistry CLI flags, or better yet, the unistry configuration file. For example:

$ history | grep -i "aws" | unistry tree import

For more information on available flags, run unistry help import

$ unistry help tree import

When you’re ready to push the history, you can pass the push flag. For example:

$ history | grep -i "aws" | unistry tree import --push

Start unifying

 

That’s it. You’re ready to go.

 

 

Please use the ‑‑help flag and watch out for our guides, blog posts, and videos to help you optimise your command line experience with unistry!

 

When is doubt, check our unistry configuration file out. 

Step 5: Leave us your feedback

 

Our goal with unistry is to create a tool that will defragment your history across devices by giving you a centralised history while bringing more context to an otherwise contextless area of computing.

 

We have a lot of amazing features planned in our roadmap, but ultimately we want to ensure we continue to bring value to you, our user.

 

Please reach out to us and keep giving us your thoughts and suggestions. We will focus on making this process easier for you in future releases of our unsitry CLI and Web app.

 

For now, please send any feedback you have to us via. email

Build a secure, unified, and contextual command-line experience across your devices and shells

All rights reserved 2023