Skip to content

protoLabsAI/mythxengine-protoagent-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MythxEngine — a protoAgent plugin

Turn a protoAgent agent into a creature designer: it composes a band of creatures from parts on a fixed budget and tests it in a generated mythxengine survival world — the part-economy and the spore loop as agent tools.

What it contributes

  • mythx_part_catalog — the design space: body stats (hp/attack/reach/speed/haul), chassis, behavior parts, their point costs, the budget, and the roster schema.
  • mythx_draft_and_run — submit a BandRoster JSON; the host validates the build against the budget (over-budget → rejected with a reason), then runs the band autonomously in a generated world and returns the outcome (survivors / foraged / windows). The agent iterates.
  • mythx_join_game — join a running game server as a faction and command its band over the wire (the network-multiplayer client, in-plugin).
  • mythx_draft_cost — pre-flight a band against the budget without running a game (instant): legal? total cost, budget, points left. The cheap inner loop of composing — iterate a build before fielding it.
  • mythx_join_room — join a multi-operator draft room: submit a band (a preset, or a custom roster you composed) and play it in a shared game the host assembles from every player's draft (the build is budget-validated at register).
  • A console view (rail icon → /plugins/mythxengine/view) — a join-and-watch dashboard: Join Arena (a pre-built world) or Join Room (preset or a custom band you compose + cost-check in-panel), then watch it play window by window.
  • design-a-band skill — teaches the compose → validate → run → iterate loop.

Requires

The plugin is pure Python — it shells out to the mythx_host binary (the deterministic engine) and talks to it over gRPC. The binary is not in this plugin; build it from the engine repo and point host_bin at it:

git clone https://github.com/protoLabsAI/mythxengine-sdk
cd mythxengine-sdk && cargo build -p mythx_host    # → target/debug/mythx_host

(mythx_draft_and_run/mythx_draft_cost run mythx_host serve --draft with the band as an in-process agent; mythx_join_game/mythx_join_room connect to a running mythx_host serve over the wire.)

Install (into a protoAgent fork)

The plugin's source lives in the engine repo (protoLabsAI/mythxengine-sdk, under integrations/protoagent-plugin/) and is published to its own repo, protoLabsAI/mythxengine-protoagent-plugin, for git-URL install (protoAgent's installer reads the manifest at the clone root).

By git URL (distribution). Install and pin a version:

python -m server plugin install https://github.com/protoLabsAI/mythxengine-protoagent-plugin --ref v0.1.0
python -m server plugin install-deps mythxengine   # installs requires_python (mythx_sdk)

install, install-deps, and enable are all explicit by design (ADR 0027). mythx_sdk is not on PyPI — if install-deps can't resolve it, install it straight from the engine repo:

pip install "git+https://github.com/protoLabsAI/mythxengine-sdk.git#subdirectory=python/mythx_sdk"

By drop-in (local dev). Copy — or symlink, to keep edits live — this directory into the fork's plugins/mythxengine/:

ln -s /path/to/mythxengine-sdk/integrations/protoagent-plugin /path/to/protoAgent/plugins/mythxengine

Then enable + configure (either install path):

plugins: { enabled: [mythxengine] }
mythxengine:
  host_bin: /path/to/mythxengine-sdk/target/debug/mythx_host
  default_seed: 0

Layout

protoagent.plugin.yaml   # manifest (id, config, settings, the console view)
__init__.py              # register(registry) → 5 tools + the view router + the skill
engine.py                # catalog + draft-and-run core (langchain-free, testable)
live.py                  # the join/play session (mythx_join_game / mythx_join_room)
skills/design-a-band/SKILL.md

Built on the mythxengine part-economy (drafted rosters), worldgen (seeded worlds), and the creature-recipe model (composable parts).

About

MythxEngine — a protoAgent plugin: design a band, run it in a generated survival world. Mirror of protoLabsAI/mythxengine-sdk:integrations/protoagent-plugin (auto-published on tag).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages