HackerTrans
TopNewTrendsCommentsPastAskShowJobs

ddworken

no profile record

Submissions

The Great Google Password Heist

bughunters.google.com
3 points·by ddworken·2 years ago·0 comments

Truly Paranoid Software Updates

blog.daviddworken.com
2 points·by ddworken·3 years ago·0 comments

Show HN: HiSHtory: Your shell history in context, synced, and queryable

github.com
179 points·by ddworken·4 years ago·68 comments

Show HN: HiSHtory: Your shell history in context, synced, and queryable

github.com
3 points·by ddworken·4 years ago·0 comments

comments

ddworken
·last year·discuss
I actually made a CLI tool (https://github.com/ddworken/hishtory) that automatically binds to Control+R to support both history searching and AI queries (by prefixing queries with `?`).

Here's the prompt engineering I did: https://github.com/ddworken/hishtory/blob/master/shared/ai/a...
ddworken
·3 years ago·discuss
I'll also plug my project [0] as another alternative that supports syncing (similar to Autumn) and also has a number of powerful customization features (e.g. custom columns to collect arbitrary metadata with each command, like the git remote) and an AI shell command generator.

[0]: https://github.com/ddworken/hishtory
ddworken
·4 years ago·discuss
If you're interested in something more actively maintained, and with cross-machine syncing, two recent alternatives are:

* github.com/ddworken/hishtory * github.com/ellie/atuin

Disclaimer: I'm the maintainer of the first one.
ddworken
·4 years ago·discuss
Ah, thank you commenting on this! This is absolutely unintentional and was the fault of a missing comment in the bash script (that I didn't notice because I generally use zsh). See https://github.com/ddworken/hishtory/commit/72ff95ab8b23c3be... and if you run `hishtory update` it should be all fixed.
ddworken
·4 years ago·discuss
Yup exactly! This way you'll never again lose a history entry.
ddworken
·4 years ago·discuss
Yes! See the `hishtory redact` command to do exactly this.
ddworken
·4 years ago·discuss
Yes! Though they'll have a single shared history log since there is no way to distinguish between them.
ddworken
·4 years ago·discuss
See https://github.com/ddworken/hishtory/blob/master/backend/web...

Also, Github pro tip: Press `t` when on any github repo to bring up fuzzy matching that can be used to easily find any specific file.
ddworken
·4 years ago·discuss
Actually the install script is in the repo! See https://github.com/ddworken/hishtory/tree/master/backend/web...
ddworken
·4 years ago·discuss
+1 to prefixing with a space. hiSHtory supports this out of the box so that anything prefixed with a space isn't recorded (even if your shell doesn't do that by default!). And if you do ever mess up, `hishtory redact` can be used to delete history entries.
ddworken
·4 years ago·discuss
Agreed! I'll make sure to get this implemented ASAP. :)
ddworken
·4 years ago·discuss
See https://github.com/ddworken/hishtory/issues/6 for info on how to disable control-R and how to uninstall. And sorry about this, I agree that a cleaner way to uninstall is needed and will get this implemented soon!
ddworken
·4 years ago·discuss
Though keep in mind that all history entries are end to end encrypted, so even with syncing enabled, your shell history isn't accessible to the backend.
ddworken
·4 years ago·discuss
See https://github.com/ddworken/hishtory/issues/4

This isn't supported quite yet, but is the next item on the road map.
ddworken
·4 years ago·discuss
It just adds to it, your standard shell history is still there and completely unaffected by this tool. And if you prefer using your native shell's control-r you can also do that.

> if I delete something using `hishtory redact` does it delete it from my native shell history too

It does not (though if you think it should, please open an issue and I'm happy to add this!)

> Also just a heads up, I find the demo gif to be unintelligibly fast.

Ah thanks! Updating.
ddworken
·4 years ago·discuss
In addition, hiSHtory also supports fish for anyone who uses fish!
ddworken
·4 years ago·discuss
If you'd rather `go install` it, that works too! The advantage of this is that it doesn't require users to have go installed. And if you look at the script, all it does is call an API to determine the latest pre-built version for the current OS and install it.
ddworken
·4 years ago·discuss
Yup exactly! And you can even collect other custom metadata to make it easier to jump write back to where you were.
ddworken
·4 years ago·discuss
Ah, I hadn't come across Atuin before! They're pretty similar, but I think one significant advantage of hiSHtory is the "Custom Columns" support where you can populate custom columns with the output of an arbitrary shell script. For example, you can use this to collect the current git branch as an additional column.
ddworken
·4 years ago·discuss
Ah very cool! One advantage of hiSHtory over this is that hiSHtory also supports Linux (since it isn't bound to iCloud sync).