Skip to content

Add create() to Stellar wallets (0.5.3) - #53

Merged
adrianvrj merged 1 commit into
mainfrom
stellar/create-account
Nov 12, 2026
Merged

adrianvrj merged 1 commit into
mainfrom
stellar/create-account

Conversation

@adrianvrj

Copy link
Copy Markdown
Contributor

A sponsored Stellar account is created with 0 XLM, and only execute() could create it. So the first XLM payment on a new account always failed with op_underfunded, and an app that starts with a trustline or a Soroban call had no public way to create the account.

  • wallet.create() creates the account without sending anything (sponsored when appId is set). It resolves at once when the account is already ready, and throws the existing "approve this device first" error on a device without the key.
  • addTrustline and invokeContract on an undeployed account now say "Call create() first."
  • execute() docs state what happens on a new sponsored account.
  • skills/cavos-stellar/SKILL.md explains the first call and uses create().
  • Version 0.5.3 and changelog, so CI publishes on merge.

Tests: 3 new in CavosStellar.create.test.ts; full suite 548 passed, typecheck and build clean.

Raised by the review on stellar/stellar-dev-skill#183.

A sponsored Stellar account starts with 0 XLM, and only execute() could
create it, so the first XLM payment always failed with op_underfunded and
an app that starts with a trustline had no public way to create the
account. create() creates it without sending anything and resolves at
once when the account is ready. addTrustline and invokeContract now point
to it. The Stellar skill explains what the first call does. 0.5.3.
@adrianvrj
adrianvrj merged commit d8d8d73 into main Nov 12, 2026
2 checks passed
@adrianvrj
adrianvrj deleted the stellar/create-account branch November 12, 2026 15:12
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.

1 participant