{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=satianurag/repo-fire-check@0.2.1","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/satianurag/repo-fire-check@0.2.1","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/satianurag/repo-fire-check@0.2.1","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/satianurag/repo-fire-check@0.2.1 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"One screen. Zero credentials. Is anything on fire in my repos today? A deterministic local-git fire alarm for up to 20 clones: unpushed commits, dirty worktrees, unresolved conflicts, CI and review state, lockfile rot, stale branches. Fixed seven-row checklist, one health score, day-over-day delta and streak. Day one already has yesterday in it: with no saved history the play reconstructs yesterday's card from git itself (commit dates, branch ages, lockfile mtimes), so the very first run reports real movement instead of an empty baseline, and names the rows it could not reconstruct. Finds your clones automatically -- no ~/src convention required -- and a scan that reached zero repositories reports UNKNOWN, never a perfect score. No LLM anywhere: identical repo state produces an identical card. Reads your repositories with plain git (strictly read-only); the optional gh CLI upgrades CI and review rows and degrades silently to a cached snapshot without it. Writes only its own state, listed by path, mode and rea","distribution":{"digest":"sha256:3cb5acd5d627d502161636d583aa1a1cf6c558d21f8137f2269e77eb3a6eea81","mediaType":"application/vnd.modiqo.rote-flow","size":42302,"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/satianurag/repo-fire-check@0.2.1","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/satianurag/repo-fire-check@0.2.1","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/satianurag/repo-fire-check@0.2.1.json"},"name":"repo-fire-check","owner":{"kind":"user","slug":"satianurag"},"parameters":[{"default":"auto","description":"Where your clones live: comma-separated dirs, ~ and glob patterns supported. The default 'auto' walks a fixed ladder -- the git repo containing your current directory (its parent, so sibling clones come too), then the conventional code homes (~/src, ~/code, ~/dev, ~/Developer, ~/projects, ~/repos, ~/git, ~/work, ~/workspace, ~/Documents, ~/Desktop) -- and prints exactly which roots it used. Ignored in demo mode.","example":"~/work,~/oss","input":{"allowCustom":true,"choices":[],"label":"Roots"},"name":"roots","required":false,"type":"string"},{"default":20,"description":"Cap on discovered repositories; the scan budget guard (1-200).","example":20,"input":{"allowCustom":true,"choices":[],"label":"Max repos"},"name":"max_repos","required":false,"type":"integer"},{"default":2,"description":"Directory levels below each root to search for .git (1-8).","example":2,"input":{"allowCustom":true,"choices":[],"label":"Depth"},"name":"depth","required":false,"type":"integer"},{"default":false,"description":"Opt-in network: run git fetch before computing ahead/behind, bounded by an 8s per-repo budget that degrades to cached refs on timeout. Off by default: the default run is fully offline.","example":false,"input":{"allowCustom":true,"choices":[],"label":"Fetch"},"name":"fetch","required":false,"type":"boolean"},{"default":3,"description":"Staleness threshold in days for branches and pending review requests.","example":3,"input":{"allowCustom":true,"choices":[],"label":"Stale days"},"name":"stale_days","required":false,"type":"integer"},{"default":"unpushed,dirty,conflict,ci,reviews,deps,stale","description":"Comma-separated subset of checks to run, or all. Accepted: unpushed,dirty,conflict,ci,reviews,deps,stale.","example":"unpushed,dirty,conflict,ci,reviews,deps,stale","input":{"allowCustom":true,"choices":[],"label":"Checks"},"name":"checks","required":false,"type":"string"},{"default":"~/.rote/fire-check/history.jsonl","description":"Where the append-only run history lives; re-pointable per machine. Demo runs use a separate demo-history.jsonl next to it.","example":"~/.rote/fire-check/history.jsonl","input":{"allowCustom":true,"choices":[],"label":"History path"},"name":"history_path","required":false,"type":"string"},{"default":true,"description":"Append this run to the history file (delta and streak need it). Set false for a fully read-only run; the stage then renders as skipped.","example":true,"input":{"allowCustom":true,"choices":[],"label":"Record history"},"name":"record_history","required":false,"type":"boolean"},{"default":false,"description":"Print the score weights and check thresholds in the human view, so 'why this score?' is one flag away.","example":true,"input":{"allowCustom":true,"choices":[],"label":"Explain"},"name":"explain","required":false,"type":"boolean"},{"default":false,"description":"Run bundled deterministic fixture repos with a [DEMO] badge instead of your real roots. Seeds real git repos into a temp dir and demo history; never touches your repositories or real history.","example":true,"input":{"allowCustom":true,"choices":[],"label":"Demo"},"name":"demo","required":false,"type":"boolean"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/satianurag/repo-fire-check@0.2.1 --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/satianurag/repo-fire-check@0.2.1","headlessCommandTemplate":"rote play run https://play.modiqo.ai/satianurag/repo-fire-check@0.2.1 <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.77.0"},"publishedAt":"2026-09-01T19:55:30.847312+00:00","reference":"satianurag/repo-fire-check@0.2.1","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"localTools":["python3","git","gh"],"roteCli":{"minimumVersion":"0.62.0"},"sessions":false},"resolution":"pinned","schema":"rote.play.v1","stats":{"downloads":2,"installs":0},"steps":{"count":8,"names":["backfill","delta","discover","gather_deps","gather_local","gather_remote","record_history","score"]},"title":"repo-fire-check","type":"play","version":"0.2.1","visibility":"public"}