Skip to main content

Agent and CLI for operating a Seeed Studio reTerminal edge device — provisioning, display, and I/O for the LCD/CM industrial terminal.

Project description

reterminal

Agent and CLI for operating a Seeed Studio reTerminal edge device — provisioning, display, and I/O for the LCD/CM industrial terminal.

What you get

  • Device operation — map devices to serial ports, query and flash SenseCraft firmware, render to the e-paper display, and sound the buzzer, all from the CLI.
  • An agent-first CLI cited from teken (afi-cli) — every command also speaks --json, and the runtime package has no third-party dependencies.
  • A mesh identityculture.yaml (suffix + backend) and the matching prompt file (CLAUDE.md for backend: claude).
  • The canonical guildmaster skill kit (11 skills) under .claude/skills/, vendored cite-don't-import. See docs/skill-sources.md.
  • A build + deploy baseline — pytest, lint, the agent-first rubric gate, and PyPI Trusted Publishing wired into GitHub Actions.

Quickstart

uv sync
uv run reterminal learn               # what the tool does + the command map (add --json)
uv run reterminal devices list        # local: device→serial-port mappings on this machine
uv run reterminal display set "hello" # needs a reachable reTerminal E (ESPHome firmware)
uv run reterminal whoami              # identity from culture.yaml
uv run pytest -n auto                 # run the test suite

devices is local; firmware, display, and speaker act on a connected reTerminal E (USB-serial for firmware flash, the ESPHome HTTP API for display / speaker).

CLI

Operate the reTerminal E:

Command What it does
devices: record / list Record and list device→serial-port mappings (per-machine).
firmware: list / flash Query the SenseCraft firmware catalog and flash a reTerminal E.
display: set / show / image / card / cloud / svg Render text or graphics to the e-paper display.
speaker: beep Sound the buzzer.

Introspection and identity:

Command What it does
whoami Report this agent's nick, version, backend, and model from culture.yaml.
learn Print a structured self-teaching prompt.
explain <path> Markdown docs for any noun/verb path.
overview Read-only descriptive snapshot of the agent.
doctor Check the agent-identity invariants (prompt-file-present, backend-consistency).
cli overview Describe the CLI surface itself.

Every command supports --json. Each noun group has its own overview (reterminal display overview). Results go to stdout, errors/diagnostics to stderr (never mixed). Exit codes: 0 success, 1 user error, 2 environment error, 3+ reserved.

Fork it for another agent

reterminal began as the culture-agent-template scaffold, so it doubles as a starting point for a new AgentCulture mesh agent. To repurpose it:

  1. Rename the package reterminal/ and the reterminal CLI/dist name throughout pyproject.toml, the package, tests/, sonar-project.properties, and this README.md. The name is hard-coded in ~100 places, so list every occurrence first — see the git grep discovery command in CLAUDE.md, the authoritative rename procedure.
  2. Edit culture.yaml with your suffix and backend.
  3. Rewrite CLAUDE.md for your agent and run /init.
  4. Re-vendor only the skills you need from guildmaster (see docs/skill-sources.md).

See CLAUDE.md for the full conventions (version-bump-every-PR, the cicd PR lane, deploy setup).

License

MIT — see LICENSE.

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

reterminal-0.7.1.tar.gz (177.2 kB view details)

Uploaded Source

Built Distribution

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

reterminal-0.7.1-py3-none-any.whl (47.5 kB view details)

Uploaded Python 3

File details

Details for the file reterminal-0.7.1.tar.gz.

File metadata

  • Download URL: reterminal-0.7.1.tar.gz
  • Upload date:
  • Size: 177.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for reterminal-0.7.1.tar.gz
Algorithm Hash digest
SHA256 c17c958b148242a34ae2c0642f8e23a0dc7d8c07610d60a801cae3345c848737
MD5 a70ac757d4aa8a35414069db4fe54703
BLAKE2b-256 96c5aec011f85f6c9c7482acef9b2bbf11adb069a610cb6265a0c11cdd21d873

See more details on using hashes here.

File details

Details for the file reterminal-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: reterminal-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 47.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for reterminal-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cbe13de843b13bfc6d2afb205beb6b7b62d304e4e00e993115740cd6985c7b60
MD5 f3db47218e2ddfe6acf506fb1edf42b1
BLAKE2b-256 fcffc27bd71b5bcf138e41086b91f98cb8b921cf2c671a6e6fc12a48a4cb63bc

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