{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=elijahumana/whats-holding-this-port@0.3.0","method":"GET","rel":"https://rote.dev/rels/bootstrap-and-run","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"inspect":{"command":"rote play inspect https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0","effect":"read-only"},"installCliOnly":{"effect":"installs the rote CLI, nothing else","href":"https://play.modiqo.ai/install","method":"GET","rel":"https://rote.dev/rels/install-cli","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"run":{"command":"rote play run https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Diagnoses whether a local TCP or UDP port is free, attributes observable owners, optionally probes the endpoint, and reports one evidence-backed verdict.","distribution":{"digest":"sha256:485b2f34400a5af3bd1864c434cfbdba64585f08c5ee4fa4557909b97c95e50d","mediaType":"application/vnd.modiqo.rote-flow","size":22594,"verifiedBy":"rote verifies the downloaded archive against this digest before it runs"},"effects":{"credentialsProvidedBy":"runner","credentialsRemainLocal":true,"declaredWrites":[],"publisherReceivesCredentials":false},"id":"https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0","inputPolicy":{"optionalWithDefault":"show_default_and_accept_override","optionalWithoutDefault":"omit_unless_supplied","required":"ask","secrets":"collect_locally_outside_conversation"},"links":{"docs":"https://rote.dev","page":"https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0.json"},"name":"whats-holding-this-port","owner":{"kind":"user","slug":"elijahumana"},"parameters":[{"description":"Local port number from 1 through 65535.","input":{"allowCustom":true,"choices":[],"label":"Port"},"name":"port","required":true,"type":"integer"},{"default":"tcp","description":"Socket protocol: tcp, udp, or both.","input":{"allowCustom":true,"choices":[],"label":"Protocol"},"name":"protocol","required":false,"type":"string"},{"default":"any","description":"Any local address, or one assigned numeric IPv4 or IPv6 address.","input":{"allowCustom":true,"choices":[],"label":"Address"},"name":"address","required":false,"type":"string"},{"default":"none","description":"Bounded probe: none, tcp-connect, http-head, http-get, or tls-handshake.","input":{"allowCustom":true,"choices":[],"label":"Probe"},"name":"probe","required":false,"type":"string"},{"default":1,"description":"Probe timeout in seconds, bounded from 0.05 through 10.","input":{"allowCustom":true,"choices":[],"label":"Probe timeout"},"name":"probe_timeout","required":false,"type":"number"},{"default":3,"description":"Per-command observation timeout in seconds, bounded from 0.1 through 30.","input":{"allowCustom":true,"choices":[],"label":"Command timeout"},"name":"command_timeout","required":false,"type":"number"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0 --json","effect":"read-only"},"step":1,"type":"inspect_local_readiness"},{"references":["/parameters"],"step":2,"type":"collect_parameters"},{"references":["/parameters","/requirements","/effects"],"step":3,"type":"review"},{"consentBoundary":"the user approves the exact play and parameter values","references":["/parameters","/requirements","/effects"],"step":4,"type":"obtain_run_consent"},{"action":{"command":"rote play run https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/elijahumana/whats-holding-this-port@0.3.0 <name=value...> --yes"},"preservesAcquisitionBoundaries":["adapter_selection","oauth_dcr","google_discovery","static_token_setup","runtime_security_checks"],"requiresConsent":true,"step":5,"type":"run"}],"producedBy":{"roteVersion":"0.75.0"},"publishedAt":"2026-08-31T15:38:10.351408+00:00","reference":"elijahumana/whats-holding-this-port@0.3.0","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"localTools":["python3"],"roteCli":{"minimumVersion":"0.62.0"},"sessions":false},"resolution":"pinned","schema":"rote.play.v1","stats":{"downloads":3,"installs":0},"steps":{"count":4,"names":["full","listeners","owners","probe"]},"title":"whats-holding-this-port","type":"play","version":"0.3.0","visibility":"public"}