From 5f981405f56155a58469089532b9fea1f8ecdf21 Mon Sep 17 00:00:00 2001 From: breis Date: Thu, 23 Jul 2026 11:49:34 -0400 Subject: [PATCH] Register the edgecommons CLI as a tool; add docsPath for monorepo entries The CLI is the tool people reach for first and it was not in the catalog: `registry list --category tool` did not show the binary you are typing, and the docs site had no tool entry for it. - `docsPath` (optional): where an entry's docs/ lives inside its repo, for entries shipping from a monorepo. The CLI is at `cli/docs` inside the library repo, whose root docs/ holds the library's own internal design docs - syncing that would pull entirely the wrong thing. - The `edgecommons` entry itself: category `tool`, docsPath `cli/docs`. `platforms` is deliberately OMITTED - it means deployment targets, and the CLI is not deployed to anything. Verified: components.json validates (0 errors). Ordering note: merge this BEFORE the edgecommons PR that adds cli/docs and rewrites the Getting Started page. Registry-first is safe (the entry exists, its docs are skipped with a warning until they land); the reverse would break the docs-site build on the new page's links. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01LsX7cWVGLszurNYMVwMJGo --- components.json | 18 ++++++++++++++++++ registry.schema.json | 4 ++++ 2 files changed, 22 insertions(+) diff --git a/components.json b/components.json index f985606..f683625 100644 --- a/components.json +++ b/components.json @@ -249,6 +249,24 @@ "s3", "edgecommons-sink" ] + }, + { + "name": "edgecommons", + "repo": "edgecommons/edgecommons", + "docsPath": "cli/docs", + "language": "RUST", + "category": "tool", + "description": "The EdgeCommons CLI. One static binary that scaffolds components in four languages, validates their config and artifacts against the canonical schema, moves them between library versions, packages and releases them, and compiles a deployment definition into platform-native artifacts. Carries the templates and schema inside itself, so it works offline.", + "status": "beta", + "library": "edgecommons", + "topics": [ + "edgecommons", + "cli", + "scaffolding", + "deployment", + "iiot", + "edgecommons-tool" + ] } ] } diff --git a/registry.schema.json b/registry.schema.json index 9258787..65885f1 100644 --- a/registry.schema.json +++ b/registry.schema.json @@ -46,6 +46,10 @@ "pattern": "^[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+$", "description": "owner/name on GitHub, e.g. edgecommons/opcua-adapter" }, + "docsPath": { + "type": "string", + "description": "Path to the entry's `docs/` folder within its repo, when it is not at the repo root. Needed for entries that ship from a monorepo - the `edgecommons` CLI lives at `cli/` inside the library repo, whose root `docs/` holds the library's own internal design docs. Omit for the usual one-repo-per-entry case." + }, "language": { "type": "string", "enum": [