Skip to content

Add Cloud Agent development environment config - #19

Draft
ZenulAbidin wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-2b83
Draft

ZenulAbidin wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-2b83

Conversation

@ZenulAbidin

Copy link
Copy Markdown
Owner

Summary

Adds a .cursor/environment.json so Cursor Cloud Agents get a ready-to-use development environment for zpywallet with zero manual setup.

The project is a pure-Python HD wallet library (no runtime services/daemons), so the environment only needs an install phase — no start/terminals.

What the install command does

  • Installs the dev toolchain into the user site (~/.local): python3 -m pip install --user --break-system-packages -r requirements-dev.txt (mirrors the CI step in .github/workflows/commit.yml).
  • Installs the package editable (pip install -e .) so import zpywallet works from any directory.
  • Idempotently ensures ~/.local/bin (where tox/pytest/flake8 land) is on PATH, so the documented commands in AGENTS.md (tox, python -m pytest ..., tox -e flake8, tox -e docs) work verbatim.

--user/--break-system-packages is used because the Ubuntu 24.04 base image ships an externally-managed (PEP 668) Python; a global sudo pip install collides with Debian-managed packages, and the repo already tracks a committed .venv, so the home-based user site keeps setup clean and repo-path independent.

Validation

Check Result
tox -e py312 (pytest suite) 164 passed, 7 skipped
tox -e flake8 Passed
tox -e docs (Sphinx -W + rstcheck) Passed
End-to-end wallet flow (mnemonic → HD xprv vs known vector → bech32 address derivation → DER sign/verify) Passed
Install idempotence Ran twice, exit 0, single PATH entry

Notes

  • No application code changed. A pre-existing library bug in create_keypair() (a coincurve 21.x API mismatch, unrelated to the environment) was noted but intentionally left out of scope.
Open in Web Open in Cursor 

Co-authored-by: Ali Sherief <ali@zenulabidin.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants