Beispiele

Ein URI ist eine stabile Adresse für eine Aktion. Ein einzelner Ablauf kann eine lokale urirun-Registry, MCP, einen Agenten, ein LLM und eine weitere IFURI-App im LAN ansprechen — ohne die Adressen zu ändern.

Ablauf: prüfen und teilen

flow:
  id: local-review-and-share
  group: dev-ops

do:
  - urirun://local/registry/query/health
  - mcp://filesystem/list:
      path: ./project
  - llm://local/qwen/analyze:
      input: file://project-summary
  - tool://local/report/command/render:
      format: html
  - ifuri://lenovo-node.lan/services/browser/open:
      url: https://ifuri.com

Von Shell-urisys zu einem urirun-Binding

Statt eines handgeschriebenen Shell-Befehls in einem Ablaufschritt (das alte urisys):

ffmpeg -i a.mp4 -vf scale=1280:720 b.mp4

beschreibe ihn einmal als urirun-Binding mit Payload-Validierung und rufe ihn als stabilen URI auf:

{
  "bindings": {
    "media://local/video/transcode":
      "ffmpeg -i {input} -vf scale={width}:{height} {output}"
  }
}
urirun run 'media://local/video/transcode' \
  --registry registry.json \
  --payload '{"input":"a.mp4","width":1280,"height":720,"output":"b.mp4"}' --execute

Aus IFURI ausführen

ifuri-app urirun-scan ./project --registry-out generated/registry.json
ifuri-app urirun-call 'media://local/video/transcode' \
  --registry generated/registry.json \
  --payload '{"input":"a.mp4","width":1280,"height":720,"output":"b.mp4"}'

Weitere Beispiele (Docker, Transporte, Multi-Transport, MCP/A2A) findest du im Repository if-uri/urirun.