Skip to content

Repository files navigation

Asteria Command Station

Asteria is a host-side command station for VEX AIM robotics work. It combines a local robot daemon, a browser control surface, a mobile bridge, curated FSM examples, and a living wiki so a human, pair-programming assistant, or autonomous agent can operate from the same source of truth.

Asteria command station

Demo Video

Watch the Asteria demo

A short demo of Asteria, a local command station that connects AI agents, a VEX AIM robot, FSM demos, vision capture, and a handheld Asteria DS controller through one safer daemon-centered workflow. The demo is under seven minutes.

What It Shows

  • A robotics daemon that keeps robot status, control leases, command dispatch, prompt logs, FSM files, image capture, and mobile sessions in one local runtime.
  • A desktop GUI for connection management, direct motion, shared Desk prompts, FSM authoring, vision review, and debugging.
  • A practical agent interface: agents can read status, claim control, write notes, resolve Desk prompts, create FSMs, compile behaviors, and stop safely.
  • A teaching surface for robotics concepts such as finite state machines, leases, teleop, event injection, safety stops, and operator-agent handoff.
  • A paired handheld path through Asteria DS, which turns an old 3DS into a lightweight robot controller and prompt terminal.

Public Repo Scope

Included:

  • asteria/daemon/ - local runtime and API server.
  • asteria/gui-app/ - React command station source.
  • asteria/gui/ - static fallback GUI.
  • asteria/mobile/ - authenticated mobile bridge used by Asteria DS.
  • asteria/tools/ - FSM helpers.
  • asteria/artifacts/fsm/ - curated example FSMs and behavior diagrams.
  • wiki/ - the Asteria operating wiki and source notes.
  • scripts/asteria_mobile_setup.py - token/config generator for handheld clients.

Not included:

  • Course labs and unrelated coursework.
  • The vendored OpenClaw skill bundle.
  • Local virtual environments and generated build products.
  • Private generated mobile tokens, prompt logs, runtime sessions, and robot images.
  • VEX AIM and AIM websocket dependency repos. Those are referenced as external runtime dependencies.

Quick Start

The daemon and GUI can run disconnected for review, FSM editing, and agent workflow testing.

git clone https://github.com/RedLynx101/asteria-command-station.git
cd asteria-command-station
python -m asteria.daemon.server --host 127.0.0.1

Open:

http://127.0.0.1:8766/

For the modern React GUI:

cd asteria\gui-app
npm ci
npm run build
cd ..\..
python -m asteria.daemon.server --host 127.0.0.1

For the CLI:

python -m asteria.cli status
python -m asteria.cli --holder-id codex --holder-label Codex --holder-kind agent list-prompts --pending-only

Pair Programmer, Agent, Classroom

Asteria is deliberately useful at three levels:

  • Pair programmer: inspect the code, adjust FSM behavior, run disconnected GUI checks, and use the wiki to understand system decisions.
  • Full agent: use the CLI and Desk prompt flow to claim/release control, create behaviors, compile FSMs, log notes, and report artifacts.
  • Educational tool: step through how command leases, FSM compilation, mobile teleop, and stop semantics fit together in a robotics control stack.

Live Robot Dependencies

Live VEX AIM control needs two external local dependencies. They are not needed for disconnected GUI/wiki/CLI review, but they are needed for robot connection and runtime-backed FSM execution:

  • vex-aim-tools supplies aim_fsm, genfsm, state-machine runtime support, and robotics helpers.
  • AIM_Websocket_Library supplies the vex Python package and WebSocket transport for the VEX AIM robot.

Clone them into this repo root when doing live robot work:

asteria-command-station/
  asteria/
  vex-aim-tools/
  AIM_Websocket_Library/

The optional OpenClaw gateway integration is supported through environment variables and the Asteria bridge client, but OpenClaw itself is not vendored here. See docs/EXTERNAL_REPOS.md.

Wiki

Start with wiki/index.md. The wiki is part of the operating model: it captures validated runtime behavior, FSM conventions, safety semantics, recovery notes, and source provenance for future agents.

Contributing

I am open to collaboration on Asteria. Useful contributions include FSM demos, GUI polish, safer agent workflows, classroom-friendly docs, bug reports, and experiments that make robot/agent coordination easier to understand. See CONTRIBUTING.md for the working guidelines.

Repository Pair

Use this repo with the paired public handheld client:

Asteria DS talks to this daemon over the authenticated mobile bridge and can submit prompts, claim teleop, send motion vectors, request stops, and show low-bandwidth camera previews.

License

MIT License. See LICENSE.

About

Asteria is a host-side command station for VEX AIM robotics work. It combines a local robot daemon, a browser control surface, a mobile bridge, curated FSM examples, and a living wiki so a human, pair-programming assistant, or autonomous agent can operate from the same source of truth.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages