Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 35 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,6 @@

Manage your multisig accounts on Aptos & Movement **safely** through a secure CLI interface.

## Why safely?

In the wake of recent security incidents like the [SafeWallet frontend compromise](https://x.com/safe/status/1894768522720350673), it's become clear that web-based multisig interfaces pose significant risks. Web frontends can be modified by attackers, making transaction verification difficult or impossible for users. **safely** takes a different approach:

- **CLI-first**: No web frontend means no risk of compromised interfaces
- **Verifiable**: All transactions are transparent and can be inspected directly
- **Local execution**: Your keys stay on your machine

## Quickstart

1. Install the CLI:
Expand All @@ -18,29 +10,36 @@ In the wake of recent security incidents like the [SafeWallet frontend compromis
npm install -g @thalalabs/safely
```

2. Under a directory where you have your aptos profiles configured, view pending transactions of a multisig account:
2. Configure your Aptos profile (if not already done):

```bash
safely proposal -m <multisig_address> -p <profile_name>
aptos init --profile <profile_name>
# or with Ledger hardware wallet
aptos init --ledger --profile <profile_name>
```

Aptos profile can be configured by running `aptos init --profile <profile_name>` or `aptos init --ledger --profile <profile_name>` ([docs](https://aptos.dev/en/build/cli/trying-things-on-chain/ledger)).
See [Aptos CLI docs](https://aptos.dev/en/build/cli/trying-things-on-chain/ledger) for more details.

3. Launch the interactive terminal UI:

3. Follow the terminal UI to view transaction details, vote yes, vote no, or execute the transaction once vote threshold is met.
```bash
safely
```

See [docs.md](./docs.md) for detailed documentation.
The interactive mode will guide you through:

## Key Features
- Selecting or entering a multisig address
- Choosing your profile for signing
- Viewing pending proposals
- Voting on or executing transactions

- **Security First**: CLI-based interface eliminates frontend security risks
- **Transaction Simulation**: Display simulation results wherever possible
- **Human-Readable**: Clear transaction descriptions and parameter explanations
- **Open Source**: Community-driven development and quick iterations
- **Multi-Chain**: Support for both Aptos and Movement
- **Hardware Security**: Native Ledger support
- **Local Control**: All operations run locally on your machine
**This is the recommended way to use safely** - it provides a safe, guided experience with clear transaction details and simulation results.

## Usage
For advanced usage and automation, see the [Subcommands](#subcommands) section below.

## Subcommands

**Note**: The interactive mode (`safely` without arguments) is the recommended way to interact with multisig accounts. Subcommands are provided for advanced users who need automation or scripting capabilities.

```bash
> safely --help
Expand All @@ -67,7 +66,7 @@ Commands:
help [command] display help for command
```

For detailed usage instructions and examples, see [docs.md](./docs.md).
For detailed subcommand documentation and examples, see [docs.md](./docs.md).

## Development

Expand Down Expand Up @@ -115,6 +114,19 @@ We welcome contributions from the entire Move ecosystem! Whether you're:

Your input helps make multisig management safer and more efficient for everyone.

## Why safely?

In the wake of recent security incidents like the [SafeWallet frontend compromise](https://x.com/safe/status/1894768522720350673), it's become clear that web-based multisig interfaces pose significant risks. Web frontends can be modified by attackers, making transaction verification difficult or impossible for users. **safely** takes a different approach:

- **CLI-first**: No web frontend means no risk of compromised interfaces
- **Verifiable**: All transactions are transparent and can be inspected directly
- **Local Control**: All operations run locally on your machine
- **Transaction Simulation**: Display simulation results wherever possible
- **Human-Readable**: Clear transaction descriptions and parameter explanations
- **Multi-Chain**: Support for both Aptos and Movement
- **Hardware Security**: Native Ledger support
- **Open Source**: Community-driven development and quick iterations

## License

MIT.
Loading