Skip to main content

Arc Canteen CLI — track your project's progress and submit to Arc.

Project description

arc-canteen CLI

The CLI for you to build your next great project on Arc!

More about Arc here: https://docs.arc.io/arc-chain

  • Use arc-canteen context | claude in order to pipe App Kits, Arc Sample Apps and Arc / Circle docs into your build. More here: https://github.com/the-canteen-dev/context-arc
  • Use our testnet RPC once you log in: https://arc-node.thecanteenapp.com/
  • Make yourself known as an Arc + Canteen builder to the Circle + Canteen teams! This CLI enables Canteen, Arc and Circle to provide you prizes, support and (maybe even) investment as you keep on building!

Make sure you rotate your key regularly if you're having trouble logging in: arc-canteen rotate-rpc-key

Installation

uv tool install arc-canteen

This places the binary at ~/.local/bin/arc-canteen. (pipx install arc-canteen or pip install arc-canteen also work.)

Upgrade

uv tool upgrade arc-canteen

Commands

Top-level

Command Description
arc-canteen Show your dashboard (default when no subcommand given)
arc-canteen login Authenticate with GitHub and set up your profile
arc-canteen logout Clear your local credentials
arc-canteen status Show your dashboard
arc-canteen push Push any queued local events to the server
arc-canteen ls [traction|product|all] List all updates
arc-canteen history [traction|product|all] Alias for ls
arc-canteen profile-edit Shortcut for arc-canteen profile edit
arc-canteen update-traction Shortcut for arc-canteen update traction
arc-canteen update-product Shortcut for arc-canteen update product
arc-canteen submit-puzzle Submit your answer to the current puzzle
arc-canteen submit-showcase Submit your project as a candidate for the Arc Showcase
arc-canteen wallet Show your funded testnet wallet (created and funded with $5 USDC on first run)
arc-canteen rpc <method> [params] JSON-RPC call to the configured Arc chain
arc-canteen rpc-url [--export] Print the JSON-RPC URL with your token embedded
arc-canteen rotate-rpc-key Mint a fresh token, update config.yaml + $RPC, invalidate the old one
arc-canteen shell-init Print rc snippet that auto-loads $RPC in every shell
arc-canteen context Dump agent context (AGENTS.md + paths to docs and samples)
arc-canteen context sync Clone/pull developer docs + samples from context-arc

arc-canteen profile

Command Description
arc-canteen profile View your profile
arc-canteen profile edit Edit your Discord handle, Telegram, and email

arc-canteen update

Command Description
arc-canteen update Show recent updates
arc-canteen update traction Submit a traction update
arc-canteen update product Submit a product update

Agent context

arc-canteen context sync clones the-canteen-dev/context-arc into ~/.arc-canteen/context/. That repo bundles developer docs for Arc + Circle plus 5 sample codebases (as submodules). Subsequent sync invocations git pull --recurse-submodules.

arc-canteen context prints AGENTS.md plus a flat path manifest — pipe-friendly:

arc-canteen context | claude          # or aider / cody / cursor
arc-canteen context --paths           # just the paths, no entry-point content
arc-canteen context --full            # also inline every .md / .yaml

JSON-RPC

Use arc-canteen rpc <method> [params_json] to make authenticated JSON-RPC calls against the chain configured in ~/.arc-canteen/settings.yaml.

arc-canteen rpc eth_blockNumber                          # → 0x27a766a
arc-canteen rpc eth_chainId                              # → 0x4cef52
arc-canteen rpc eth_getBalance '["0xabc...", "latest"]'  # → 0x1bc16d674...
arc-canteen rpc eth_call '[{"to":"0xabc","data":"0x70a08231"}, "latest"]'
arc-canteen rpc eth_sendRawTransaction '["0xf86c..."]'
arc-canteen rpc eth_blockNumber --raw                    # full envelope

The proxy enforces a method allowlist; calls to disallowed methods return method '<x>' not allowed by the proxy.

Auto-load $RPC

arc-canteen login writes export RPC='<url>' to ~/.arc-canteen/env. To make every new shell pick it up, install one line:

arc-canteen shell-init >> ~/.bashrc      # or ~/.zshrc

After that, $RPC is set in every shell with no per-session step.

Rotating your key

arc-canteen rotate-rpc-key

Mints a fresh token (re-auth via your stored GitHub credential — no browser step), rewrites ~/.arc-canteen/config.yaml and ~/.arc-canteen/env, and invalidates the old token server-side. Update anything that hard-coded the old URL (a project .env, a CI secret) with the new one.

Tokens are good for 90 days; the dashboard nudges you as that approaches. arc-canteen logout also invalidates the token server-side.

Local state

  • ~/.arc-canteen/config.yaml — auth (token + when it was issued) + profile + cached updates
  • ~/.arc-canteen/settings.yaml — chain + event_name
  • ~/.arc-canteen/queue.yaml — append-only event queue (synced to server)
  • ~/.arc-canteen/envexport RPC='…'; sourced by your shell rc

Server

The CLI talks to https://arc-cli-server.thecanteenapp.com. The server is intentionally idempotent — re-sending an event that already landed is harmless, so the local queue can be replayed at any time.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arc_canteen-0.1.16.tar.gz (37.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arc_canteen-0.1.16-py3-none-any.whl (32.0 kB view details)

Uploaded Python 3

File details

Details for the file arc_canteen-0.1.16.tar.gz.

File metadata

  • Download URL: arc_canteen-0.1.16.tar.gz
  • Upload date:
  • Size: 37.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for arc_canteen-0.1.16.tar.gz
Algorithm Hash digest
SHA256 af4dae3dd3259165fd7da3788b23922490fbad97ef5c5ea47fdf8ea41d39aedf
MD5 bfce465be4902b862697c70fc32df08b
BLAKE2b-256 30e8b876588f658df43dddcacb26b64bc17f6c241bb11b3ef06bedf2d8b846ff

See more details on using hashes here.

File details

Details for the file arc_canteen-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: arc_canteen-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 32.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for arc_canteen-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 8f575daecf1e8890cac1b5dc8ab1052b514e1713457abbd259769fa5a838af85
MD5 e4b89d5207daf8a0471d74efb06a4d2e
BLAKE2b-256 d30474f382be3fc6d8ab38539a81507dfb9d1ea1f11114207aac429e566e8b8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page