{"id":"gas-city","repo":"omercnet/paseo-plugins","url":"https://github.com/omercnet/paseo-plugins/tree/main/paseo-gas-city","name":"gas-city","description":"A Paseo control plane for observing and operating Gas City supervisors.","categories":["orchestration","monitoring","productivity"],"platforms":[],"caveats":["Requires Paseo 0.8.x","Requires a reachable Gas City v1.4.1 supervisor on the Paseo daemon host","Native Open in Paseo session bridging is unavailable until Gas City exposes correlated prompt and reply identifiers"],"images":["https://raw.githubusercontent.com/omercnet/paseo-plugins/f90a54e3f38d0127e999e4b2f989ccfeac6b7a24/paseo-gas-city/docs/images/paseo-gas-city-wide-overview.webp","https://raw.githubusercontent.com/omercnet/paseo-plugins/f90a54e3f38d0127e999e4b2f989ccfeac6b7a24/paseo-gas-city/docs/images/paseo-gas-city-wide-events.webp","https://raw.githubusercontent.com/omercnet/paseo-plugins/f90a54e3f38d0127e999e4b2f989ccfeac6b7a24/paseo-gas-city/docs/images/paseo-gas-city-dispatch-confirmation.webp","https://raw.githubusercontent.com/omercnet/paseo-plugins/f90a54e3f38d0127e999e4b2f989ccfeac6b7a24/paseo-gas-city/docs/images/paseo-gas-city-compact-overview.webp"],"health":{"manifestValid":true,"hasReadme":true,"hasLicense":true,"hasTests":true,"hasTypecheckScript":true,"updatedRecently":true},"scannedAt":"2026-09-11T16:47:58.022Z","path":"paseo-gas-city","security":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-09-11T16:45:18.620Z","commit":"f90a54e3f38d0127e999e4b2f989ccfeac6b7a24"},"author":"Omer Cohen","license":"MIT","paseoVersionRequirement":"^0.8.0","manifest":{"id":"gas-city","requirements":{"paseo":"^0.8.0"}},"repoMeta":{"stars":2,"defaultBranch":"main","pushedAt":"2026-09-11T14:51:56Z"},"owner":{"login":"omercnet","avatarUrl":"https://avatars.githubusercontent.com/u/639682?v=4"},"installNotesHtml":"<p>From GitHub:</p>\n<pre><code class=\"language-bash\">paseo plugin add omercnet/paseo-plugins:paseo-gas-city\n</code></pre>\n<p>Update an existing Git installation with:</p>\n<pre><code class=\"language-bash\">paseo plugin update gas-city\n</code></pre>\n<p>From a local checkout on the Paseo daemon host:</p>\n<pre><code class=\"language-bash\">git clone https://github.com/omercnet/paseo-plugins.git\ncd paseo-plugins/paseo-gas-city\nbun install --frozen-lockfile\npaseo plugin install \"$PWD\"\n</code></pre>\n<p>Start or confirm the Gas City supervisor before opening the plugin:</p>\n<pre><code class=\"language-bash\">gc start /path/to/city\ngc status /path/to/city --json\npaseo plugin ls\n</code></pre>\n<p><code>paseo plugin ls</code> must report <code>gas-city</code> as <code>running</code> with no load error.</p>\n<p>Open <strong>Gas City</strong> from the sidebar or Command Center. Configure the supervisor endpoint and optional\nworkspace mappings under <strong>Gas City settings</strong>. In a workspace, open the <strong>Factory</strong> panel for the\nmapped rig.</p>","readmeText":"# Paseo Gas City\n\nA Paseo control plane for observing and operating Gas City supervisors. It adds a global Gas City\nsurface and a workspace-scoped Factory panel.\n\n## Screenshots\n\nThese screenshots use a temporary local Gas City v1.4.1 fixture. They contain no private project\nor session data.\nWide captures omit Paseo's host navigation so the plugin surface remains the focus.\n\n### Wide overview\n\n![Gas City supervisor, city status, sessions, convoys, and work](docs/images/paseo-gas-city-wide-overview.webp)\n\n### Work and event feed\n\n![Gas City sessions, work, and recent event feed](docs/images/paseo-gas-city-wide-events.webp)\n\n### Guarded dispatch\n\n![Observe-only Gas City dispatch confirmation](docs/images/paseo-gas-city-dispatch-confirmation.webp)\n\n### Compact layout\n\n![Gas City compact mobile layout](docs/images/paseo-gas-city-compact-overview.webp)\n\n## What it does\n\n- Discovers the configured supervisor and shows its cities, health, version, and diagnostics.\n- Shows city-wide status and recent events, plus rig-filtered sessions and work. Convoys without\n  upstream rig attribution remain visible in mapped workspace views.\n- Maps a Paseo workspace to a Gas City rig by explicit override or longest ancestor path.\n- Provides **Open Gas City**, **Configure Gas City**, and workspace **Open Gas City Factory** commands.\n- Provides `/sling <bead-id> [agent-role]` to prefill a confirmed dispatch from a workspace.\n- When mutations are enabled, supports confirmed bead dispatch plus wake, message, submit, stop,\n  suspend, close, and kill session actions.\n\n## Configure\n\nGas City settings are host-scoped and shared by every Paseo client connected to that daemon:\n\n- **Supervisor endpoint** defaults to `http://127.0.0.1:8372`.\n- **Allow remote endpoint** opts into daemon-side requests to a non-loopback host.\n- **Enable mutations** unlocks confirmed dispatch and session controls; observation remains available\n  while it is off.\n- **Refresh interval** and **event limit** control dashboard polling and bounded event pages.\n- **Workspace mappings** override automatic longest-ancestor rig matching when a workspace is\n  ambiguous or lives outside its rig path.\n\nSettings are a safety and routing configuration, not a credential vault. Put authentication and\nnetwork access controls in front of Gas City itself.\n\n## Safety defaults\n\nThe default endpoint is `http://127.0.0.1:8372`. Non-loopback endpoints are rejected unless **Allow\nremote endpoint** is enabled. Mutations are disabled by default, and mutation RPCs require explicit\nconfirmation even after they are enabled. These controls are an interactive safety interlock, not\nan authorization boundary; Gas City remains responsible for access control. Responses, lists, and\nstrings are bounded and validated before they reach the UI.\n\nPaseo plugins are trusted, unsandboxed code. Review the source before installing it on the daemon\nhost. Enabling a remote endpoint sends requests to that host from the Paseo daemon.\n\n## Requirements and limitations\n\n- Paseo `^0.8.0` with plugins enabled.\n- A reachable Gas City v1.4.1 supervisor exposing its HTTP API.\n- HTTP or HTTPS endpoints only. Credentials, query strings, and fragments are rejected.\n- Automatic workspace mapping requires the workspace path to be inside exactly one discovered rig;\n  ambiguous or unrelated paths need an explicit mapping.\n- The dashboard polls at the configured interval. Supervisor events are a head snapshot, city event\n  pages expose continuation cursors, and bounded or partial responses are marked truncated.\n- **Open in Paseo is unavailable with Gas City v1.4.1.** `POST\n  /v0/city/{cityName}/session/{id}/messages` returns a request ID and city event cursor, but\n  `/v0/city/{cityName}/session/{id}/stream` emits transcript events with no request, message, or\n  turn correlation ID. A provider would therefore be unable to assign a reply to a Paseo prompt\n  safely when the session produces independent output.\n\n## Install\n\nFrom GitHub:\n\n```bash\npaseo plugin add omercnet/paseo-plugins:paseo-gas-city\n```\n\nUpdate an existing Git installation with:\n\n```bash\npaseo plugin update gas-city\n```\n\nFrom a local checkout on the Paseo daemon host:\n\n```bash\ngit clone https://github.com/omercnet/paseo-plugins.git\ncd paseo-plugins/paseo-gas-city\nbun install --frozen-lockfile\npaseo plugin install \"$PWD\"\n```\n\nStart or confirm the Gas City supervisor before opening the plugin:\n\n```bash\ngc start /path/to/city\ngc status /path/to/city --json\npaseo plugin ls\n```\n\n`paseo plugin ls` must report `gas-city` as `running` with no load error.\n\nOpen **Gas City** from the sidebar or Command Center. Configure the supervisor endpoint and optional\nworkspace mappings under **Gas City settings**. In a workspace, open the **Factory** panel for the\nmapped rig.\n\n## Develop\n\n```bash\nbun install\nbun run check\nbun run typecheck\nbun test\nbun run test:coverage\nbun run verify:package\n```\n\nBuild and verify the distributable archives with:\n\n```bash\nbun run verify:package\nbun run package:release\n```\n\nRelease Please maintains the package version, changelog, component tag, and GitHub release. Tags use\n`paseo-gas-city-v<version>`. The release workflow re-runs checks, typechecking, coverage, and package\nverification before uploading the ZIP asset and its SHA-256 checksum.\n\nThe package is `@omercnet/paseo-gas-city` at version `0.0.1`. The supported distribution paths are\nthe Git source above and the versioned GitHub release ZIP.\n"}