Metadata-Version: 2.1
Name: ape-turnkey
Version: 0.8.0a0
Summary: ape-turnkey: turnkey.com plugin for Ape
Home-page: https://github.com/ApeWorX/ape-turnkey
Author: ApeWorX Ltd.
Author-email: admin@apeworx.io
License: Apache-2.0
Keywords: ethereum
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.9,<4
Description-Content-Type: text/markdown
Provides-Extra: test
Provides-Extra: lint
Provides-Extra: release
Provides-Extra: dev
License-File: LICENSE

# Overview

Ape account plugin and CLI for [Turnkey](https://turnkey.com).
Recommended plugin for automation and use with the [Silverback Platform](https://silverback.apeworx.io).

## Dependencies

- [python3](https://www.python.org/downloads) version 3.9 up to 3.13.

## Installation

### via `pip`

You can install the latest release via [`pip`](https://pypi.org/project/pip/):

```bash
pip install ape-turnkey
```

### via `setuptools`

You can clone the repository and use [`setuptools`](https://github.com/pypa/setuptools) for the most up-to-date version:

```bash
git clone https://github.com/ApeWorX/ape-turnkey.git
cd ape-turnkey
python3 setup.py install
```

## Usage

In order to use this plugin, you will need the `TURNKEY_ORGANIZATION_ID`, `TURNKEY_API_PUBLIC_KEY`, and `TURNKEY_API_PRIVATE_KEY` variables.
You can see which account you are signed in with using the following command:

```sh
$ ape turnkey whoami
Logged in as '<your account nickname>' under '<organization name>'
```

After that, you can do actions like list your wallets:

```sh
$ ape turnkey wallets list
...
```

You can create a new wallet via:

```sh
$ ape turnkey wallets new turnkey-wallet ...
SUCCESS: Wallet ID '1234....beef' created!
```

You will then be able to use this wallet for signing messages and transactions with Ape now, for example:

```py
$ ape console

 In[0]: acct = accounts.load("turnkey-wallet")

 In[1]: acct.sign_message("Signing using the turnkey API!")
Out[1]: <MessageSignature v=0 r=... s=...>
```

## Development

Please see the [contributing guide](CONTRIBUTING.md) to learn more how to contribute to this project.
Comments, questions, criticisms and pull requests are welcomed.
