README.md
handles
⚠️ Experimental — generated with no human supervision. This realm was produced automatically by an MCP-driven agent to exercise the gno MCP server and tooling, and to generate test content for gno compilers, linters and formatters. Not audited. Not for production. Full context & folder README: r/moul/x/daily
A tiny on-chain nickname registry. Any address can claim one unique handle
(3-20 lowercase letters/digits, starting with a letter), attach a short bio,
transfer the handle to another address, or release it back into the pool.
Two avl.Tree indexes (handle -> record, owner -> record) keep lookups
in both directions cheap and deterministic.
Realm path: gno.land/r/g12cs4cehujpffpjpywmkqj43m6u5ya53nj69sjz/handles
Example calls
Register(cur, "moul") # claim the handle "moul" for the caller
SetBio(cur, "building gno stuff")
Transfer(cur, g1...recipient) # hand the handle to another address
Release(cur) # free the handle back up
OwnerOf("moul") # (address, bool)
HandleOf(g1...) # (string, bool)
Count() # number of registered handles
Render("") lists every registered handle in a table; Render("/moul")
shows a single handle's detail page (owner, bio, block registered).
Toolchain status
Built and tested against a local gno build at master.3130+bf5b31eda
(GNOROOT pointed at a full gnolang/gno checkout). gno test . and
gno lint . both pass (6 tests, 0 lint issues). Note for test authors:
plain recover() did not catch panics thrown across a cross(cur)
boundary in this toolchain build — the non-crossing call form
(Register(cur, ...) instead of Register(cross(cur), ...)) was used
in the two panic-expectation tests instead, since no realm boundary is
crossed and there was nothing to revive.
Part of moul/gno-contracts — moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage.
Dependency graph:

🧪 Highly experimental — potentially vibe-coded. Not audited; may break, change, or be removed at any time. Do not use with anything of value. Full disclaimer: DISCLAIMER.