Beta playground

Orbit Plugin Kit playground

Paste an orbit.plugin.json and the names of the files in the folder, and this page runs the kit’s own validation rules and shows you the verdict it would give.

Everything happens in this tab. There is no upload and no server: these rules are a port of orbit-pack.py’s validate_manifest, validate_folder and lint_skill_text, checked case by case against the Python on 32 inputs — 29 folder verdicts and 3 lint verdicts — with no disagreement.

Input

The folder you would pack

The manifest is prefilled with the kit’s own template. Edit it, or paste your own, and the verdicts below change as you type.

The Python asks the filesystem whether a referenced file exists; this page asks this list instead, so a path outside the folder cannot be represented here.

The verdict

What the kit says

The lines below are the validator’s own output, in its own order: OK: or ERROR: for each rule it reached. It stops at the first manifest error, exactly as the Python does, then collects every file problem.

      Pack

      Pack the pasted files

      When the validator accepts the folder, this builds a real .orbit archive in the browser: a fixed entry timestamp and entries sorted by name, so the same input produces the same bytes every time. The length and hash below are measured from the archive that was actually built.

      The pack control stays disabled while the validator refuses the folder. The kit’s pack calls validate_folder first and stops when it fails; this does not skip that gate.

      Archive
      —
      Entries
      —
      SHA-256
      —
      Determinism
      —
      Not packed
      —

      Plainly

      What this playground does not do

      • It does not publish, list, sell or host anything. It validates a manifest and builds one archive file; where that file goes afterwards is your business and not this page’s.
      • It does not read your disk. Only the text you paste is validated and packed, so an icon or a README you list but do not paste is reported as not packed rather than invented.
      • It does not run the kit’s listings half. orbit-listing.py and its exit-3 money refusals are not part of this page, and no payment path exists here.
      • It does not prove an archive installs. The kit’s own validate reads a .orbit back; this page builds one, and the Python is what should be used to confirm it loads.
      • It is a port of the Python, not the Python. Where a browser cannot reproduce a filesystem the difference is stated on this page rather than hidden.

      The rules

      Read off the kit, not written here

      These lists are printed from the same module that runs the checks, so the page cannot describe a rule the validator does not apply.

      Categories
      —
      Refused filenames
      —
      Refused extensions
      —
      Source
      orbit-plugin-kit/orbit-pack.py and orbit-plugin-kit/orbit.plugin.schema.json

      Tell us what broke

      The most useful message is a folder the Python refuses and this page accepts, or the other way round. That is a port bug, and the Python is right.

      Open the feedback form