Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/labby/issues.md or /mcp/labby/issues.json, or Pod over MCP.

Reported issues for Labby

Pod holds 19 of 31 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to Labby.

Most discussed

Implement gateway enrichment hints for Code Mode upstreams

Summary

Implement gateway enrichment hints for Code Mode upstream namespaces.

This issue is self-contained. The root body gives the implementation summary, acceptance criteria, review decisions, and validation. Follow-up comments on this issue contain the full implementation plan and the full text of the epic plus all child beads.

Current Baseline Already Landed

Branch: codex/codemode-upstream-description

Commits already pushed:

Read the thread · 2026-06-25 · closed · 9 comments

Code Mode catalog stability: remaining hardening after #260 (permanent tool registry, visible-contract hashing, monotonic publication, notification coalescing)

Context

#260 fixed the observed "Labby tools flapping": the gateway reconcile diff measured change against the raw pool.healthy_tools() set with no Code Mode filtering, so invisible upstream churn (an upstream becoming healthy, lazily discovering tools, the eager reload probe populating tool maps) flipped tools_changed and broadcast notifications/tools/list_changed. Clients rebuilt their connector namespace mid-turn and the in-flight call hit a stale LABBY.codemode binding — fail

Read the thread · 2026-07-24 · closed · 3 comments

Emit outputSchema + structuredContent for directly-listed tools; preserve structured content through Code Mode

Summary

Emit outputSchema + structuredContent for directly-listed tools, preserve structured content end-to-end through Code Mode, and surface output shapes in the catalog for hidden tools.

The Code Mode nuance (why this is not blanket)

Read the thread · 2026-07-10 · closed · 2 comments

Generalize MRTR input overlay for confirmations and primitive parameter completion

Summary

Generalize Labby's current destructive-confirmation MRTR flow into a policy-driven input overlay for upstream and synthetic tools.

The overlay should support:

  1. destructive confirmation;
  2. missing primitive parameter completion;
  3. action-enum tools, including a two-round action-then-fields flow;
  4. Code Mode-hidden MCP App callback calls without a separate hard-block path.

This is a gateway-originated overlay. It complements upstream-to-downstream request relay: the gateway ask

Read the thread · 2026-07-10 · open · 2 comments

Add rmcp-openapi support for OpenAPI-derived MCP upstreams

Summary

Research rmcp-openapi and implement a Lab integration path for turning OpenAPI specs into MCP servers/tools through the gateway/upstream runtime.

rmcp-openapi is a Rust crate for exposing OpenAPI definition endpoints as MCP tools using the official Rust MCP SDK. The current docs.rs surface exposes a Server that implements rmcp::ServerHandler, converts OpenAPI operations into tools via ToolGenerator, supports dynamic ToolFilter / ResponseTransformer, and carries runtime

Read the thread · 2026-06-03 · open · 2 comments

Node runtime split and role-specific rollout

Summary

Implement docs/superpowers/plans/2026-04-24-node-runtime-split.md. Split lab serve into explicit controller and node runtime paths, stop deployed nodes from initializing controller-only surfaces, build role-specific controller/node artifacts, make nodes update verify real readiness and WebSocket reconnects, then prove the path with full verification and live rollout.

Beads

Epic: lab-686q

Plan

Read the thread · 2026-04-25 · closed · 2 comments

Param-completion elicitation for action-enum tools (post-action-resolution primitive projection)

Summary

Param-completion elicitation for action-enum tools — the missing-primitive-param overlay from #208's Fields rule, adapted to Labby's nested-action-with-enum tool pattern.

The interaction (why this earns its own issue)

Read the thread · 2026-07-10 · closed · 1 comment

Spike: evaluate rmcp tower layers for the dispatch gate chain + elicitation overlay

Summary (spike)

Evaluate rmcp's tower feature for restructuring the dispatch gate chain and hosting the #208 elicitation overlay as composable layers.

Context

Read the thread · 2026-07-10 · closed · 1 comment

Most recent

Retain and page oversized Code Mode results by handle

Summary

Add an optional retained-result path for Code Mode outputs that are expensive, rate-limited, non-idempotent, or inherently too large to regenerate safely after the response envelope truncates them.

This is Phase 2 of #217. The primary behavior remains reducing inside the sandbox before returning. Retained paging is a selective fallback, not the default result path.

Motivation

Re-running a tool with better projection code is acceptable for cheap idempotent reads. It is a poor fa

Read the thread · 2026-07-27 · open · 0 comments

Permanent synthetic-tool registry and full client-visible descriptor hashing

Context

#261 fixed the production symptom and most of the catalog-stability plan through #263, #264, and #267:

Two structural items from #261 remain. The release PR closed the umbrella issue, but #264 explicitly notes that full descript

Read the thread · 2026-07-27 · closed · 0 comments

Streamable HTTP over Unix sockets with optional SO_PEERCRED authentication

Summary

Support connecting to co-located MCP upstreams over Unix domain sockets using rmcp 3's transport-streamable-http-client-unix-socket transport, with optional filesystem and SO_PEERCRED authentication for trusted local services.

Current state

Labby 1.7.0 uses rmcp 3.0.0-beta.2 and enables only transport-streamable-http-client-reqwest. Upstream configuration and connection code currently expect HTTP(S) URLs. No Unix-socket client, listener, socket-path configuration, or pee

Read the thread · 2026-07-11 · closed · 0 comments

Decide rmcp Tower and request-state adoption

Summary

Decide whether Labby should adopt two rmcp 3 features that are available but not enabled: protocol-level Tower service composition and request-state integrity protection.

This issue consolidates the former #215 Tower spike. The basic research question is now answered; the remaining work is an adoption decision backed by a small prototype.

1. Tower protocol service

Finding

rmcp 3.0.0-beta.2 exposes service::tower::TowerHandler<S, R>. It implements rmcp's protocol `Ser

Read the thread · 2026-07-10 · open · 0 comments

Set ToolAnnotations on builtin/gateway tools + propagate upstream annotations downstream

Summary

Set ToolAnnotations on Labby's own tools and propagate upstream annotations through the aggregated list_tools.

Current state

Plan

Read the thread · 2026-07-10 · closed · 0 comments

URL-mode elicitation (elicit_url / UrlElicitationParams)

Summary

Add URL-mode elicitation (elicit_url / ElicitRequestParams::UrlElicitationParams) alongside the existing Form path.

Motivation

Plan

Read the thread · 2026-07-10 · closed · 1 comment

Resource subscriptions passthrough (enable_resources_subscribe + resources/updated aggregation)

Summary

Add resource subscription passthrough: advertise resources/subscribe, route subscribe/unsubscribe to the owning upstream, and fan resources/updated notifications back to subscribed downstream clients.

Current state

Plan

Read the thread · 2026-07-10 · closed · 1 comment

Destructive-action gate should honor lab:admin scope — coordinate with elicitation overlay (#208)

Summary

Two coupled gate problems around destructive upstream tools. Filing this as the coordination point between the elicitation-overlay work (#208) and the standing admin-scope bug.

Read the thread · 2026-07-10 · open · 0 comments

Code Mode bypasses the confirmation_required gate for destructive upstream tools

Summary

Tools classified as destructive are refused on the widget-callback path but execute without challenge through Code Mode. The confirmation gate is enforced per-transport rather than per-tool, so codemode is an unauthenticated bypass around it.

This is not theoretical — it was used (unintentionally) to create a real GitHub issue during a debugging session on 2026-07-10.

Reproduction

1. Direct call is refused

// labby::issue_write
{"method":"create","owner":"jmagar

[Read the thread](https://github.com/dinglebear-ai/labby/issues/207) · 2026-07-10 · closed · 0 comments

### [codemode] Thread upstream outputSchema into ToolDescriptor so Output types aren't `unknown`

Parent: #185 · Separate track

## Reality — smaller than it looks
The pipeline already supports output types end to end:
- `ToolDescriptor.output_schema: Option<Value>` **exists** (types.rs L106); the `ToolDescriptor::tool(…, output_schema)` ctor takes it (L135–140).
- `ts_signatures::generate_tool_types(…, output_schema)` emits a real `Output` type and only falls back to `"unknown"` when the schema is `None` (ts_signatures L74–76).

So every tool's `Output` is `unknown` for exactly one reason: 

[Read the thread](https://github.com/dinglebear-ai/labby/issues/193) · 2026-07-04 · closed · 1 comment

### [codemode] Thread CallContext (execution_id + ordinal) to host.call_tool for _meta enrichment

Parent: #185 · Depends on: #190, #191

## Goal
Enrich the same `_meta` with `execution_id` + a monotonic `call_ordinal` so every sandbox-originated upstream call auto-correlates to its Code Mode run and to the `calls[]` telemetry — no sandbox-authored trace, no author discipline.

## Decision (locked)
Thread a **neutral `CallContext` param** into `CodeModeHost::call_tool` rather than smuggling meta through `params` — preserves the trait's deliberately neutral vocabulary (host.rs L5–6, L78–85).

[Read the thread](https://github.com/dinglebear-ai/labby/issues/192) · 2026-07-04 · open · 0 comments

The remaining reports are on [the project's issue tracker](https://github.com/dinglebear-ai/labby/issues).