@vention/vention-skills 0.9.23 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vention",
3
- "version": "0.9.23",
3
+ "version": "0.10.1",
4
4
  "description": "Vention skills for coding agents: write MachineLogic applications, build machine designs, and diagnose deployed machines.",
5
5
  "author": {
6
6
  "name": "Vention"
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Vention skills
2
2
 
3
- Version 0.9.23. Skills for coding agents that work with Vention machines, packaged as one plugin, `vention`, in the `vention-skills` marketplace.
3
+ Version 0.10.1. Skills for coding agents that work with Vention machines, packaged as one plugin, `vention`, in the `vention-skills` marketplace.
4
4
 
5
5
  | Skill | What it does |
6
6
  | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vention/vention-skills",
3
- "version": "0.9.23",
3
+ "version": "0.10.1",
4
4
  "description": "Vention skills for coding agents: write MachineLogic applications, build machine designs, and diagnose deployed machines.",
5
5
  "license": "MIT",
6
6
  "type": "module",
package/plugin.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
3
  "name": "vention",
4
- "version": "0.9.23",
4
+ "version": "0.10.1",
5
5
  "description": "Vention skills for coding agents: write MachineLogic applications, build machine designs, and diagnose deployed machines.",
6
6
  "author": {
7
7
  "name": "Vention"
@@ -3,7 +3,7 @@ name: vention-design
3
3
  description: Create, build and edit Vention machine designs and design graphs for agentic layout. Use when the user wants to start a new design, lay out an automation cell, add or reposition components in a Vention design, generate a machine layout from a description, add or place a floor plan image under a design, list a design's versions, or inspect an existing design graph. Trigger on MachineBuilder designs, design graphs, assembly graphs, extrusions, actuators, robot mounting, cell footprints, floor plans, or a machine-builder URL.
4
4
  license: MIT
5
5
  metadata:
6
- version: "0.9.23"
6
+ version: "0.10.1"
7
7
  author: Vention
8
8
  ---
9
9
 
@@ -3,7 +3,7 @@ name: vention-machine-logic
3
3
  description: Write, edit, validate, and deploy MachineLogic Python applications for Vention machines with the machine-logic-sdk and the Vention CLI. Load it before writing or changing any Python that talks to a Vention machine, however short, since device names and version-specific SDK calls come from here. Use to program a Vention machine or MachineMotion controller, drive actuators, conveyors, robots, pneumatics, or digital I/O, change an existing application, build a state machine, debug from logs, or pull, push, or link with the Vention CLI (vention or vn). Trigger on MachineLogic, machine-logic-sdk, MachineMotion, MachineBuilder applications, the Vention CLI, or a directory holding .machine-code-app-directory-info.json. Printing what the machine or robot holds now (positions, taught targets, calibration, I/O) is a program: files on disk hold only as-designed values. Not for explaining an existing machine or its configuration in words when no program is asked for, nor for Python that never touches the machine.
4
4
  license: MIT
5
5
  metadata:
6
- version: "0.9.23"
6
+ version: "0.10.1"
7
7
  machine-logic-sdk: ">=3.0,<4"
8
8
  author: Vention
9
9
  ---
@@ -200,7 +200,7 @@ machine.on_mqtt_event("cell/commands", on_command)
200
200
 
201
201
  ## Taught robot positions
202
202
 
203
- `vention pull` also writes `.vention-design-scene-assets.json` when the design has taught positions. It is the list `machine.get_scene()` loads, one record per position or frame: its `type` names the getter that reads it (`RobotWaypoint` is `get_cartesian_target`, `RobotJointPosition` is `get_joint_target`, `RobotCalibrationFrame` is `get_calibration_frame`, `ReferenceFrame` is `get_reference_frame`) and `parameters.name` is the name to pass, character for character. Read it before naming a target. When a step needs a position the file does not hold, ask the user to teach it on the design; never map a missing step onto a target that happens to exist.
203
+ `vention pull` also writes `.vention-design-scene-assets.json` when the design has taught positions. It is the list `machine.get_scene()` loads, one record per position or frame: its `type` names the getter that reads it (`RobotWaypoint` is `get_cartesian_target`, `RobotJointPosition` is `get_joint_target`, `RobotCalibrationFrame` is `get_calibration_frame`, `ReferenceFrame` is `get_reference_frame`) and `parameters.name` is the name to pass, character for character. Read it before naming a target, and copy each name as written even when its neighbours are cased differently: `"Pick approach"` and `"Drop Approach"` can sit in the same design. When a step needs a position the file does not hold, ask the user to teach it on the design; never map a missing step onto a target that happens to exist.
204
204
 
205
205
  Positions taught on the design live in the scene under their friendly names. Drive off those names rather than copying pose numbers out of a pendant into the source. `movel` holds a straight line in Cartesian space; `movej` interpolates the joints and can swing the tool sideways on the way, so a lift off a part or an approach that has to come straight down is `movel`.
206
206
 
@@ -241,12 +241,13 @@ Each example is a standalone `main.py` whose module docstring names the device n
241
241
  ```
242
242
 
243
243
  2. Run `uv venv --python 3.10 && uv pip install -r requirements-dev.txt`, then `.venv/bin/pyright`. The venv runs the target's Python and the SDK the application pins, so a wrong name or signature shows up against what the target runs. The first pyright run may download Node if none is on the PATH, so a slow or offline first run is not a type error. Fix every error and run it again until it is clean.
244
- 3. If `uv` is missing or the install fails, tell the user the code is unvalidated. Never report a check you could not run as passed.
245
- 4. `vention push`, then run the application on the digital twin from MachineBuilder before any hardware run. One or two full cycles prove the cycle; each extra one costs a cycle time and shows nothing the first two did not.
246
- 5. Read the output with `vention logs` once the run ends, rather than following it while the cycles play. `vention logs` prints only the most recent lines, so a count of matching lines can stop rising before the run ends. To wait for a cycle or a step, sleep once for its known cycle time, then read `vention logs` once. Never loop over `vention logs` waiting for a line to appear, and never end your turn while a background wait is running. MachineLogic failures name the device and the reason; read the log before proposing a change.
247
- 6. Check a motion from the log, not by watching the twin: `print` the robot's joint angles or the axis position at each step, then compare them with what the step should reach. For a repeated or oscillating motion, such as a wave, print the joint angles at each end of the swing, so the log alone shows how far it moved and which joints moved.
248
- 7. Pressing the emergency stop on the digital twin's pendant does nothing, so skip that test there. Tell the user the e-stop path is untested until the first run on the real cell.
249
- 8. Show the user the diff before pushing over an application they did not write in this session.
244
+ 3. pyright cannot check a name passed as a string. Check every name passed to `get_*` and `move_to_target*` with a case-sensitive `grep -F '"<name>"'` against `.vention-design-configuration.json` or `.vention-design-scene-assets.json`, and fix any that does not match exactly.
245
+ 4. If `uv` is missing or the install fails, tell the user the code is unvalidated. Never report a check you could not run as passed.
246
+ 5. `vention push`, then run the application on the digital twin from MachineBuilder before any hardware run. One or two full cycles prove the cycle; each extra one costs a cycle time and shows nothing the first two did not.
247
+ 6. Read the output with `vention logs` once the run ends, rather than following it while the cycles play. `vention logs` prints only the most recent lines, so a count of matching lines can stop rising before the run ends. To wait for a cycle or a step, sleep once for its known cycle time, then read `vention logs` once. Never loop over `vention logs` waiting for a line to appear, and never end your turn while a background wait is running. MachineLogic failures name the device and the reason; read the log before proposing a change.
248
+ 7. Check a motion from the log, not by watching the twin: `print` the robot's joint angles or the axis position at each step, then compare them with what the step should reach. For a repeated or oscillating motion, such as a wave, print the joint angles at each end of the swing, so the log alone shows how far it moved and which joints moved.
249
+ 8. Pressing the emergency stop on the digital twin's pendant does nothing, so skip that test there. Tell the user the e-stop path is untested until the first run on the real cell.
250
+ 9. Show the user the diff before pushing over an application they did not write in this session.
250
251
 
251
252
  ## Deploying to a real cell
252
253
 
@@ -268,7 +269,7 @@ This code drives physical machinery that can injure someone.
268
269
 
269
270
  ## Common mistakes
270
271
 
271
- - Device names that do not match `.vention-design-configuration.json`.
272
+ - Device or target names that do not match `.vention-design-configuration.json` or `.vention-design-scene-assets.json` character for character.
272
273
  - Answering with code in the reply instead of writing `main.py` to disk.
273
274
  - Commanding absolute moves before homing.
274
275
  - Calling a move without a `MotionProfile`, or passing jerk to a continuous move (it is ignored with a warning).
@@ -3,7 +3,7 @@ name: vention-machine-logic-hmi
3
3
  description: Build or edit the custom operator HMI of a MachineLogic application, the React touch screen in customui/ that runs in MachineBuilder and on the MachineMotion pendant, wired to the application's Python process through vention-communication. Use when the user asks for an operator screen, a custom HMI or UI, a touch panel, start and stop buttons, live machine state on screen, or recipes an operator picks, for a Vention machine or inside a directory holding .machine-code-app-directory-info.json. Uses @vention/machine-ui, @vention/machine-apps-components and @vention/machine-logic-ui-sdk. Do not use for the no-code HMI Builder, or for the Python motion logic alone (that is vention-machine-logic).
4
4
  license: MIT
5
5
  metadata:
6
- version: "0.9.23"
6
+ version: "0.10.1"
7
7
  author: Vention
8
8
  ---
9
9
 
@@ -181,7 +181,7 @@ The HMI drives physical machinery that can injure someone.
181
181
  - Start never fires on page load, on reconnect, or from a stream message. Only an operator's tap, confirmed in a modal, starts motion.
182
182
  - Start and Stop live in the `StatusTopBar`, so they are on every page. Do not repeat them on a page. Raise the bar above `theme.zIndex.modal`, as the example's `app.tsx` does, or an open `VentionModal` covers Stop.
183
183
  - Stop stays enabled unless the station is known to be ready or already stopping. That includes while the stream is disconnected: a dropped stream may hide a moving machine. Every other command is disabled while disconnected.
184
- - A tap on Stop shows at once. While the station stops, the Stop button reads "Stopping…", the Operate page's progress bar marks where the run now ends (the cycle in progress amber, the cancelled ones hatched and struck through), and a line by the heading says the emergency stop halts at once. Say it on the screen the operator already watches rather than in a separate alert.
184
+ - A tap on Stop shows at once. While the station stops, the Stop button reads "Stopping…" (derive that label from the streamed state and `connected`, as the example's `isStopping(status, connected)` does, never from a tapped flag alone: once the stream drops it reads "Stop" again and stays pressable), the Operate page's progress bar marks where the run now ends (the cycle in progress amber, the cancelled ones hatched and struck through), and a line by the heading says the emergency stop halts at once. Say it on the screen the operator already watches rather than in a separate alert.
185
185
  - Send Start with a `timeoutMs` and an abort signal, and abort it when the stream drops. A Start the operator can no longer see must not land later; say it was not confirmed and to check the station.
186
186
  - The HMI never offers a way around an emergency stop, safety interlock, light curtain or guard, not even a hidden one for testing.
187
187
  - The confirmation for anything that starts motion names what will move, not its positions or stops. The button itself can just say Start.
@@ -15,9 +15,9 @@
15
15
  "@emotion/styled": "11.14.1",
16
16
  "@mui/material": "5.16.7",
17
17
  "@tabler/icons-react": "3.44.0",
18
- "@vention/machine-apps-components": "1.30.13",
19
- "@vention/machine-logic-ui-sdk": "0.43.17",
20
- "@vention/machine-ui": "6.6.12",
18
+ "@vention/machine-apps-components": "1.30.14",
19
+ "@vention/machine-logic-ui-sdk": "0.45.9",
20
+ "@vention/machine-ui": "6.6.13",
21
21
  "react": "17.0.2",
22
22
  "react-dom": "17.0.2",
23
23
  "react-router-dom": "6.30.3",
@@ -1,5 +1,5 @@
1
- machine-logic-sdk==3.2.0
2
- vention-communication==0.15.6
3
- vention-state-machine==0.15.6
4
- vention-storage==0.18.6
1
+ machine-logic-sdk==3.1.0
2
+ vention-communication==0.15.29
3
+ vention-state-machine==0.16.23
4
+ vention-storage==0.20.7
5
5
  uvicorn==0.35.0
@@ -3,7 +3,7 @@ name: vention-monitoring
3
3
  description: Diagnose deployed Vention machines from controller state, history, health, and activity data. Use when the user reports a machine that is down, faulted, offline, slow, or underperforming, asks why a cycle time regressed, wants to interpret MachineMotion event data or drive and brake status, asks about OEE or uptime, or wants to know which machine in a fleet needs attention. Trigger on a MachineMotion serial number plus any complaint.
4
4
  license: MIT
5
5
  metadata:
6
- version: "0.9.23"
6
+ version: "0.10.1"
7
7
  author: Vention
8
8
  ---
9
9