← Back to context

Comment by ellieh

1 year ago

our sync is opt-in + optional, e2e encrypted, and self-hostable.

if that's not enough, you can disable all network features via a feature flag at compile time

if you don't care for sync, there are a bunch of other projects doing this (and supporting several shells), eg:

- mcfly: https://github.com/cantino/mcfly

- resh: https://github.com/curusarn/resh

I am happy Atuin user now, but I was initially worried that it would sync my data unless I explicitly disabled that feature. The fact that it's opt-in becomes clear once you read the docs and understand how it works, but it might be worth emphasizing that on the landing page. Currently it says:

    Shell history sync
    Sync your shell history to all of your machines, wherever they are

In any case, thanks for building a great tool!

> if that's not enough, you can disable all network features via a feature flag at compile time

Are there network features other than sync?

this is my only quip with atuin, despite my endorsement in a sibling comment. this should absolutely be opted-out BY DEFAULT. not defaulted to opt-in.

if you have someone outright cloning your entire project just to skip this opted-in privacy gap feature, it's a good indicator it's an issue to be mindful of!

  • I think you might be mixing them up?

    Opt-in means that the user needs to actively decide to use the feature, it's OFF by default. That's currently the case for atuin (happy user without sync here).

    Opt-out would mean the feature would be ON by default and users would need to actively decide NOT to use it.

  • You actually have to go and register an account or log in for sync to happen at all

    Otherwise it’s offline, by default, right after install