Repository navigation
Conversation
Co-authored-by: Cursor <cursoragent@cursor.com>
GigaHierz
left a comment
There was a problem hiding this comment.
Approving. The card makes one claim that actually matters — "No keys and no signing" — so I verified it at source rather than from the README, because that sentence is the reason a reader will feel safe pointing an LLM at it.
Four independent lines of evidence, all consistent:
- No signing library is present at runtime.
package.jsonhas exactly one dependency,hono. No viem, ethers, or web3.celina-sdkis a devDependency used only by the alias-sync script. - No key material can be configured. The whole env surface is
TELEGRAM_BOT_TOKEN, optionalTELEGRAM_WEBHOOK_SECRET, optionalCELINA_API_BASE_URL, and a KV namespace. There is no private-key or mnemonic variable to set even by accident. - The only network path is HTTP to the public API — three
fetchcalls to/v1/toolsand/v1/<tool>. Nothing builds, signs, or broadcasts a transaction. - The upstream catalog cannot offer a write path. Since
/call <tool>forwards arbitrary tool names, I checked the backend:api.usecelina.xyz/v1/toolsreturns 50 tools, all reads (get_*,verify_*,lookup_*,check_*,resolve_*, andcall_contract_function, which is aneth_call). No transfer, swap, vote, stake, approve, prepare, or execute tool exists.
One note for anyone auditing this later: /setaddress stores a public address in KV, and grep hits for "key" in that repo are KV key names (wizardKey, addressKey) plus the Telegram KEYBOARD constant — not cryptographic keys. That is the one thing that looks alarming at a glance and isn't.
All three links return 200 and the bot profile is live, with a bio matching the card.
Also agreed with the call not to restate the command catalog here, given the two upstream surfaces currently disagree on --human. That keeps the inconsistency out of our docs entirely. Worth reconciling those two on your side when you get a chance, but it doesn't touch this diff.
|
Heads-up: this is approved and merge-ready — it is held by an unrelated CI outage, not by anything in your diff.
So the required check dies during install, before it reads a single file. This is repo-wide right now, not specific to you. #2335 pins the CLI version and fixes it. I will merge this the moment that lands — nothing needed from you. |
The hole, and the fix
The Celina page lists the SDK, MCP server, hosted MCP, and REST API, and the Build with AI overview repeats that list. Celina now also has a live read-only Telegram bot, @thecelinabot, which calls the public Celina API on Celo mainnet (balances, quotes, governance) and does not hold a key or sign.
This adds a Telegram card and a Resources row on
build-on-celo/build-with-ai/mcp/celina.mdx(t.me, https://www.usecelina.xyz/bot, and the celina-bot repo), and extends the existing Celina sentence onbuild-on-celo/build-with-ai/overview.mdxwith the same surface. The pagedescriptionmatches.The command catalog stays on usecelina.xyz/bot and the bot repo. Those two already disagree on
--humanvs--json, so this page does not restate commands.What this does NOT do / residual risk
docs.json. The Celina page is already in nav.bot.usecelina.xyz.Judgement calls
CardGroup, icontelegram, rather than a new section or a new nav page. One-line reversal if a maintainer wants it dropped.Issues
Closes #
Refs #
Stacking / conflicts
Branched off current
celo-org/docsmain, independent of other open PRs. Touchesbuild-on-celo/build-with-ai/overview.mdxandbuild-on-celo/build-with-ai/mcp/celina.mdx.Verification evidence
Ran with mint 4.2.823 on this branch head after the edits. No code examples.
Remaining ops steps
Checklist
mainmint broken-linkspasses on this branch head (see Verification evidence)Made with Cursor