agentsclimarketplace

Type tiered bridge command gating

Skill ychampion/cskill-agents/skills/type-tiered-bridge-command-gating

Gate bridge-executed slash commands by command type first: block local-jsx UI commands, allow prompt commands by construction, and require an explicit allowlist for plain local commands.From its SKILL.md

Install
npx -y skills add ychampion/cskill-agents --skill type-tiered-bridge-command-gating

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.7 KB, 489 tokens by cl100k_base, as published. Nobody here has run it

SKILL: Type Tiered Bridge Command Gating

Domain: command-architecture Trigger: Use when a remote or bridged client can invoke slash commands and you need a simple safety rule that separates text-expanding commands from local UI commands and plain local actions. Source Pattern: Distilled from reviewed remote-control, bridge transport, and capability-advertising implementations.

Core Method

Classify bridge safety by command type before inspecting individual command names. Treat local-jsx commands as unsafe by construction because they render local UI, treat prompt commands as safe by construction because they only expand into model text, and apply a narrow explicit allowlist only to plain local commands. This creates a three-tier gate where only one class needs per-command review, so remote/mobile surfaces stay predictable and new command types inherit the right default behavior.

Key Rules

  • Put the type check first so the bridge gate does not need ad hoc per-command exceptions for UI-rendering commands.
  • Block every local-jsx command by default; if a command depends on local Ink or terminal state, it should fail the bridge gate without consulting any allowlist.
  • Allow prompt commands by type, since their output is text passed back into the model flow rather than a local side effect.
  • Require explicit allowlist membership for plain local commands, making denial the default for any local command that has not been reviewed for remote execution.
  • Keep the allowlist static and easy to audit so adding a new remotely safe local command is an intentional registry change, not an incidental side effect of command loading.

Example Application

When a mobile client submits summary, model, and research, run the bridge gate on the resolved command objects. model is rejected immediately because it is local-jsx, research is admitted because it is prompt, and summary only passes if it appears in the reviewed local allowlist.

Anti-Patterns (What NOT to do)

  • Do not maintain one flat allowlist for every command type; that obscures why prompt commands are safe and makes UI commands easier to admit accidentally.
  • Do not treat plain local commands as safe by default just because they stream text; bridge safety requires explicit review.
  • Do not special-case individual local-jsx commands after the fact; the value of the pattern is that the type already encodes the unsafe class.

What ships with it: 1 file

1006 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.