Skip to content

Feature request: add coordinator.domains: frontmatter to cloudflare:* SKILL.md files (for spec-coordinator tag-routing) #49

@agentupskill

Description

@agentupskill

Context

A separate skills framework — Agent Upskill's spec-coordinator — uses an SME registry to route cross-domain spec requests to relevant skills. The registry consists of two routing layers:

  1. Tag-match (deterministic) — picks skills whose coordinator.domains: [...] frontmatter overlaps the user query's tokens (confidence 1.0).
  2. Sonnet classifier (fallback) — scores skills against the query via prompted classification (confidence 0.0–1.0; threshold 0.6 for picks).

In-house skills (e.g., pwa-architect, hitl-learning-architect) ship a coordinator.domains: [...] overlay so they're picked deterministically when the query matches their domain. Plugin skills like cloudflare:* currently ship without this overlay, which means they're picked classifier-only.

This works correctly today (the classifier picks cloudflare:agents-sdk, cloudflare:workers-best-practices, cloudflare:durable-objects, etc. when relevant — see agentupskill/skills-core#56 for the algorithmic clarification that ensures classifier coverage). But adding a tag-match overlay would:

  • Reduce ~5 Sonnet classifier calls per spec query when a cloudflare:* skill is clearly relevant (token-overlap sufficient).
  • Eliminate classifier-confidence variance (currently ±0.1 per _threshold-calibration.md F4.5) on queries where domain match is unambiguous.
  • Make routing more auditable — tag-picked skills emit method: tag with a domain-list in the routing trace.

Specific request

For each cloudflare:* skill's SKILL.md frontmatter, add a coordinator.domains: [...] field listing 3–8 representative domain tokens. Suggested domains per skill (calibrated against Agent Upskill's _routing-priors.md Z2/Z3/Z5/Z6/Z14/Z17 ambiguity zones):

Skill Suggested coordinator.domains
cloudflare:cloudflare (umbrella — leave classifier-only; Z6 specific-over-umbrella rule prefers specific skills when both match)
cloudflare:durable-objects durable-object, do, stateful-coordination, multiplayer, chat-room, websocket, alarm, sqlite-storage
cloudflare:agents-sdk agent, agents-sdk, mcp-server, workflow, durable-execution, voice-agent, browser-automation
cloudflare:workers-best-practices workers, worker-code, floating-promise, streaming, global-state, wrangler, worker-anti-patterns
cloudflare:wrangler wrangler, wrangler-cli, worker-deploy, kv-namespace, r2-bucket, d1-database
cloudflare:sandbox-sdk sandbox, sandbox-sdk, code-execution, code-interpreter, untrusted-code, ci-cd
cloudflare:cloudflare-email-service email-routing, email-sending, transactional-email, spf, dkim, dmarc
cloudflare:web-perf web-performance, core-web-vitals, lcp, inp, cls, lighthouse, chrome-devtools

The coordinator: block is namespaced under a custom-coordinator key so it doesn't conflict with existing Anthropic-defined frontmatter fields. Schema (per _routing-algorithm.md §Inputs):

---
name: cloudflare:durable-objects
description: ...
coordinator:
  domains: [durable-object, stateful-coordination, websocket, alarm, sqlite-storage]
  pickable: true  # default; only set false for product-owner / invoker skills
---

Why upstream rather than a downstream patch

Plugin frontmatter ships with the plugin distribution and is not editable downstream. Without the overlay shipped in the source, every Agent Upskill installation that consults cloudflare:* SMEs falls back to classifier-only routing.

Empirical context

PR-#320 (Boogles-Playhouse/claude-skills#320) drafted an 8-PR substrate-epic spec that needed a 6-SME panel including 3 cloudflare:* skills. The classifier sweep correctly picked them post-fix (see agentupskill/skills-core#56), but tag-match would have been faster + more deterministic. F-CAL-6 in _threshold-calibration.md records the calibration trace.

Acceptance

  • Each cloudflare:* SKILL.md gets a coordinator.domains: [...] block (or the umbrella one explicitly opts out).
  • A short note added to the marketplace README explaining the field's consumer (Agent Upskill spec-coordinator) so future skill authors know to populate it.
  • No breaking changes to Cloudflare's existing skill consumption — the field is additive.

Happy to send a PR if Cloudflare prefers that route over a maintainer-driven change.

Cross-references

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions