Skip to main content

2n20 creator tools

Connect your strategy software to a 2n20 vault on Hyperliquid. Use your existing project or start with the included Python example.

Give your coding agent the 2n20-setup skill, or run the 2n20 CLI yourself. Run setup on the computer or server that will operate your strategy. You receive an approval link to review with your creator wallet. Your private trading key stays on the strategy machine.

After approval, resume the same setup directory to verify trading access and get your strategy settings. You define and operate the strategy. The starter's moving-average example teaches the integration; it makes no profitability claim. The Python import is twon20.

Build and install

Use Python 3.10 or later. Build the exact reviewed source with the pinned dependency lock:

git clone https://github.com/2n20/creator-tools.git
cd creator-tools
python3 -m venv .venv
.venv/bin/python -m pip --isolated install --require-hashes --only-binary=:all: -r requirements-release.txt
PYTHONPATH=src .venv/bin/python -m unittest discover -s tests -v
SOURCE_DATE_EPOCH=1790985600 .venv/bin/python scripts/build_release.py
.venv/bin/python -m pip --isolated install --no-deps dist/*.whl
.venv/bin/2n20 --version
source .venv/bin/activate

You install the Hyperliquid SDK with the starter's separate runner dependency lock. The base CLI needs no execution SDK. See the release instructions for artifact checks and Trusted Publishing.

Start or connect a project

Generate a new project in a directory that does not exist:

2n20 init my-strategy --template hyperliquid-python

Follow the installation and paper-run commands that init prints. It copies the bundled template and records its version. It does not install dependencies, create keys or start trading. Inspect the template source before using it. Review future template changes before updating your generated project.

For an existing strategy, continue in its authorized project directory. Never search unrelated projects or read their credentials to discover access.

2n20 onboard --vault '<official vault page URL>' --json

Save the returned resumeCommand and approvalUrl. If you run setup on a VPS, open the link on your wallet computer. Review the prepared request and approve with your creator wallet. Opening the link does not authorize a transaction.

Then run the exact resume command with the same setup directory. Read the CLI's separate results for contract approval, HyperCore activation and funding. An unavailable check leaves access unverified.

Resume with the existing key after an interruption. For expired consent or a changed nonce, follow the CLI's same-key renewal instruction. Resolve a conflicting requested or approved key before continuing. Do not generate another key to bypass a failed check.

If the handoff service is unavailable, import the exact public consent file printed by the CLI into the vault's Step 2. Resume the same directory. Renewal creates a new public file and retains the earlier files and private key.

Use your coding agent

Export the bundled skill:

2n20 skill export --directory '<new skill directory>'

Give your agent the exported SKILL.md, your vault URL and your strategy project location. If you need a project, ask it to generate the official starter in a new directory. Tell it where the strategy will run and which terminal/filesystem access you authorize. Your agent uses the CLI through that access; you open the approval link and use your wallet.

For Codex and Cursor, create the project's .agents/skills parent directory, then export to an unused .agents/skills/2n20-setup directory. For Claude Code, use an unused project .claude/skills/2n20-setup directory. You can use your agent application's user skill directory for a user-wide installation. Review the exported guide before invoking 2n20-setup. Pip installation leaves agent configuration directories untouched; export refuses an existing directory.

Keep setup and execution separate

Use setup, onboard, renew, config, status, check-consent, init and skill export without submitting trades or collateral transfers. Keep strategy.key private on the strategy machine. Public configuration names its path without embedding the key. Agents must never inspect, print, upload or commit private-key contents. The CLI sets ignore rules and restrictive file permissions before creating a key.

Use paper mode without a signing key. Read its results as simulated fills and P&L. For live execution, the starter uses the official Hyperliquid SDK with the approved trading key as signer and the verified trading account as account_address. It does not use the SDK's legacy vault_address.

Before a live test, choose the market, side, maximum notional, slippage and time limit. Authorize that plan as a separate action; key approval does not authorize orders. Check usable perpetual collateral, since spot USDC is a separate balance. The starter refuses insufficient margin, unavailable approval, conflicting account state and unsupported account modes. Read the starter README before considering a live plan. You decide whether to install and start a service.

Documentation and contributions

We maintain the CLI, skill and starter in this public repository. We keep the application and financial contracts in a separate private repository.

Metadata

Release files for 2n20 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for 2n20 0.3.1
File Size Uploaded
2n20-0.3.1.tar.gz 228.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for 2n20 0.3.1
File Interpreter ABI Platform
2n20-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 390.6 kB

Release files / 2n20-0.3.1.tar.gz

Download URL 2n20-0.3.1.tar.gz
Size 228.7 kB
Tags Source
SHA-256 checksum
How to use checksums
530e16253bea3bb01dd1b22c8e985563183050571536a48194578dba5c9f9223
BLAKE2b-256 checksum
How to use checksums
980668beff8aa8b80a4b63dd63e17c16d0f0b51752a672632fbe0a075f7a96c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release files / 2n20-0.3.1-py3-none-any.whl

Download URL 2n20-0.3.1-py3-none-any.whl
Size 161.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d7da060ec76996fbabd766c89e048db0e5359db689debc8b17741a360266e876
BLAKE2b-256 checksum
How to use checksums
39b84fbc4cab3c8efd20ed0a113242189a9e5aab0b3cbc7c9a63a105272d098b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page