@vention/vention-skills 0.9.5 → 0.9.6

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.5",
3
+ "version": "0.9.6",
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.5. Skills for coding agents that work with Vention machines, packaged as one plugin, `vention`, in the `vention-skills` marketplace.
3
+ Version 0.9.6. 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.5",
3
+ "version": "0.9.6",
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.5",
4
+ "version": "0.9.6",
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.5"
6
+ version: "0.9.6"
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. Use when the user wants to program a Vention machine or MachineMotion controller, drive actuators, conveyors, robots, pneumatics, or digital I/O from Python, build a state machine for a cell, debug a failing application from its logs, or pull, push, or link an application with the Vention CLI (vention or vn). Trigger on MachineLogic, machine-logic-sdk, MachineMotion, MachineBuilder applications, or the Vention CLI, including inside a directory that holds .machine-code-app-directory-info.json. Do not use when the user has asked for no program at all and only wants an existing machine, its parts, or its configuration explained back to them in words; a read-only script that prints what the machine reports is still a program.
4
4
  license: MIT
5
5
  metadata:
6
- version: "0.9.5"
6
+ version: "0.9.6"
7
7
  machine-logic-sdk: ">=3.0,<4"
8
8
  author: Vention
9
9
  ---
@@ -24,6 +24,7 @@ from __future__ import annotations
24
24
 
25
25
  import argparse
26
26
  import http.client
27
+ import os
27
28
  import re
28
29
  import sys
29
30
  import urllib.request
@@ -33,6 +34,7 @@ from typing import IO, NoReturn
33
34
  from urllib.parse import urljoin, urlsplit
34
35
 
35
36
  INDEX_URL = "https://docs.vention.com/llms.txt"
37
+ INDEX_URL_ENV = "VENTION_DOCS_INDEX_URL"
36
38
  PACKAGE = "machine-logic-sdk"
37
39
  TIMEOUT = 20
38
40
  ALLOWED_SCHEMES = frozenset({"http", "https", "file"})
@@ -44,6 +46,7 @@ REQUIREMENT_PATTERN = re.compile(
44
46
  re.IGNORECASE | re.MULTILINE,
45
47
  )
46
48
  EXACT_VERSION_PATTERN = re.compile(r"^\d+(\.\d+)+[\w.+-]*$")
49
+ SERIES_TITLE_PATTERN = re.compile(rf"^(?:{re.escape(PACKAGE)}\s+)?(v\d+\.\d+)", re.IGNORECASE)
47
50
  CATCH_ALL_PATTERN = re.compile(rf"^(?:{re.escape(PACKAGE)}\s+)?v(?P<bound>\d+(?:\.\d+)*)\s+and\s+lower\b", re.IGNORECASE)
48
51
 
49
52
 
@@ -126,7 +129,7 @@ def page_for_version(entries: list[tuple[str, str]], version: str) -> Page:
126
129
  return Page(stripped, url, "v" + ".".join(bound.split(".")[:2]))
127
130
  elif titled.match(stripped):
128
131
  return Page(stripped, url, wanted)
129
- published = sorted({found.group(0) for title, _ in entries if (found := re.search(r"v\d+\.\d+", title))})
132
+ published = sorted({found.group(1) for title, _ in entries if (found := SERIES_TITLE_PATTERN.match(title.strip()))})
130
133
  unavailable(
131
134
  f"the docs publish no {PACKAGE} page for {wanted} (published: {', '.join(published) or 'none'}); "
132
135
  f"refusing to answer from another version"
@@ -139,7 +142,11 @@ def main() -> int:
139
142
  source.add_argument("--version", help="the exact SDK version to document, e.g. 3.1.0")
140
143
  source.add_argument("--from-requirements", metavar="PATH", help="read an exact machine-logic-sdk== pin from a requirements file")
141
144
  source.add_argument("--from-uv-lock", metavar="PATH", help="read the resolved machine-logic-sdk version from a uv lock file")
142
- parser.add_argument("--index-url", default=INDEX_URL, help=f"documentation index to read (default: {INDEX_URL})")
145
+ parser.add_argument(
146
+ "--index-url",
147
+ default=os.environ.get(INDEX_URL_ENV) or INDEX_URL,
148
+ help=f"documentation index to read (default: ${INDEX_URL_ENV}, else {INDEX_URL})",
149
+ )
143
150
  output = parser.add_mutually_exclusive_group()
144
151
  output.add_argument("--print-url", action="store_true", help="print only the page URL")
145
152
  output.add_argument("--print-page", action="store_true", help="fetch the page and print it verbatim")
@@ -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.5"
6
+ version: "0.9.6"
7
7
  author: Vention
8
8
  ---
9
9
 
@@ -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.5"
6
+ version: "0.9.6"
7
7
  author: Vention
8
8
  ---
9
9