plesty-hub-agents
Skills and agent roles for building PLESTY lab experiments and the hub modules behind them — device drivers, analyzers and experiments — with the coding agent you already use.
Tell it which instruments you have and what you want to measure. It writes the device servers, field-tests them on your hardware until they pass, builds the experiment, runs it with you on the bench, and then improves it run by run — asking you before every step that touches the hardware and before every new round.
Install
Claude Code — as a plugin (recommended)
/plugin marketplace add https://gitlab.com/plesty/ai/plesty-hub-agents.git
/plugin install plesty-hub-agents@plesty
The skills appear as /plesty-hub-agents:hub-experiment, /plesty-hub-agents:hub-comply, … and
the roles as subagents. /plugin update brings in each release. For the MCP tools
(plesty check, GitLab and PyPI look-ups) also install the CLI:
uv tool install "plesty-hub-agents[mcp] @ git+https://gitlab.com/plesty/ai/plesty-hub-agents"
hub-agents doctor # uv, git, glab, Python — installs what it can, never with sudo
Claude app (claude.ai, Claude Desktop) — as skills
Zip a skill folder and upload it under Settings → Capabilities → Skills:
git clone https://gitlab.com/plesty/ai/plesty-hub-agents.git && cd plesty-hub-agents/skills
zip -r hub-experiment.zip hub-experiment
The app has no access to your lab network or your checkouts, so use it for the stages that are conversation and analysis — requirements, the plan, reading a finished run and proposing the next round. Building, field-testing and running happen in Claude Code (see the experiment guide).
Codex CLI, Gemini CLI — through the CLI
hub-agents workspace init ~/plesty-hub # one directory for all modules; projects every harness on PATH
cd ~/plesty-hub && codex # or gemini — or claude, if you do not use the plugin
Build an experiment
/plesty-hub-agents:hub-experiment pow-pl
| Stage | What happens | You |
|---|---|---|
| 1 Requirements | Q&A: each device (model, role, bench, connection, manual, safety limits), then the experiment (plan, records, in-run decisions, success) | answer, confirm |
| 2 Plan | what each device module and the experiment need, what runs in parallel, the risks | approve |
| 3 Devices | one agent per device, in parallel; then the hardware set-up and a field-test loop — find the cause, fix, test again — until each device passes | connect the hardware, say when it is free to act |
| 4 Experiment | the experiment module, a dry run and a full run against the device simulators | review the MR |
| 5 Run | you run it from the bench console with the agent monitoring, or the agent runs it | pick one |
| 6 Refine | efficiency, parameters, in-run decisions, data quality, robustness — a proposal for the next round | approve each round |
The pipeline keeps its state in .hub-agents/experiments/<slug>/, so it resumes where it
stopped. That folder holds bench addresses and lab notes and is never committed.
What ships
| Skill | Does |
|---|---|
hub-experiment |
instruments to a successful, improving experiment — the six stages above |
hub-module |
a new device module: architect → engineer → publisher |
hub-field-test |
configure a device's field test, or run it on the hardware |
hub-comply |
plesty check → triage → fix → repeat until every gate passes |
hub-develop |
branch off the right line → implement → comply → commit → MR |
hub-docs |
audit a module's docs/ against its code and fix it |
hub-publish |
release merge, tag, CI, PyPI, merge back |
hub-workspace |
clone / status / update checkouts by name, path or group |
Roles hub-architect → hub-engineer → hub-publisher hand off through
.hub-agents/handoff/*.md. Branch guards stop an edit or a push on main, exp or a
maintain/* line. Skills are validated for plesty-lib >=0.6.0,<0.7 and plesty-sdk
>=0.5.0,<0.6; a module pinned outside that range is told so.
Documentation
- Build an experiment — the pipeline, in Claude Code and in the Claude app
- Using the framework — install, workspace, every skill, the module pipeline, MCP, headless use
- Architecture — how one set of skills serves every harness
Develop
uv sync --all-extras
uv run pytest # catalog, plugin manifests, contracts against the installed lib/sdk
uv run plesty check # quantum, every gate
Changes land through a merge request into exp; main moves only by release.
License
LGPL-3.0-or-later, see LICENSE.
Metadata
Release files for plesty-hub-agents 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| plesty_hub_agents-0.1.0.tar.gz | 83.5 kB | Without provenance | Details for plesty_hub_agents-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| plesty_hub_agents-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for plesty_hub_agents-0.1.0-py3-none-any.whl |
Total release size: 197.3 kB
Release files / plesty_hub_agents-0.1.0.tar.gz
| Download URL | plesty_hub_agents-0.1.0.tar.gz |
|---|---|
| Size | 83.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a3b433892bc72b6c7ba75076e7e5067c7b489b07a2388a8d04aef76f33c20ffe
|
|
BLAKE2b-256 checksum How to use checksums |
22b7e302fb1dfad0c7b3c1cee877c40353412e2c2398fb4231c5e553b5194307
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / plesty_hub_agents-0.1.0-py3-none-any.whl
| Download URL | plesty_hub_agents-0.1.0-py3-none-any.whl |
|---|---|
| Size | 113.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e765da3cb11fb7622fd04379e1932fdafe6da038513c35812045c0e2ffb0b3a
|
|
BLAKE2b-256 checksum How to use checksums |
d8b4f4ff0303184c3866ba537609762af42a0e796c8e1a546b6a41e2e1f830fb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for plesty-hub-agents 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.