← back to Cli Printing Press
chore(cli): drop dead manifest_url + manifest_checksum from registry guidance (#364)
5777d267ac2a02ed48ceae345fc9a64d45ac3e4f · 2026-04-28 10:35:16 -0700 · Trevin Chow
Megamcp was the only consumer of these registry.json fields — it used
manifest_checksum for cache invalidation and manifest_url to fetch
tools-manifest.json over HTTP. With megamcp removed in #363, both fields
are dead weight in every published library entry and in the publish
skill's instructions.
This commit drops them from:
- skills/printing-press-publish/SKILL.md — the example schema and the
per-field guidance no longer instruct agents to compute or write
these values. Also drops the cli-only mcp_ready value from the
example since computeMCPReady stopped emitting it after #359.
- cmd/manifest-gen/main.go — the "For registry.json:" trailer that
printed manifest_checksum guidance is gone. spec_format now prints
as a plain "Spec format:" line. The trailing stdout-checksum print
(used by scripts that piped into registry generation) is removed.
The library repo's existing registry.json entries still carry these
fields; a follow-up PR there strips them. Field readers in
tools/generate-skills/main.go ignore both, so no consumer breaks
during the transition.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Files touched
M cmd/manifest-gen/main.goM skills/printing-press-publish/SKILL.md
Diff
commit 5777d267ac2a02ed48ceae345fc9a64d45ac3e4f
Author: Trevin Chow <trevin@trevinchow.com>
Date: Tue Apr 28 10:35:16 2026 -0700
chore(cli): drop dead manifest_url + manifest_checksum from registry guidance (#364)
Megamcp was the only consumer of these registry.json fields — it used
manifest_checksum for cache invalidation and manifest_url to fetch
tools-manifest.json over HTTP. With megamcp removed in #363, both fields
are dead weight in every published library entry and in the publish
skill's instructions.
This commit drops them from:
- skills/printing-press-publish/SKILL.md — the example schema and the
per-field guidance no longer instruct agents to compute or write
these values. Also drops the cli-only mcp_ready value from the
example since computeMCPReady stopped emitting it after #359.
- cmd/manifest-gen/main.go — the "For registry.json:" trailer that
printed manifest_checksum guidance is gone. spec_format now prints
as a plain "Spec format:" line. The trailing stdout-checksum print
(used by scripts that piped into registry generation) is removed.
The library repo's existing registry.json entries still carry these
fields; a follow-up PR there strips them. Field readers in
tools/generate-skills/main.go ignore both, so no consumer breaks
during the transition.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---
cmd/manifest-gen/main.go | 10 +---------
skills/printing-press-publish/SKILL.md | 8 ++------
2 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/cmd/manifest-gen/main.go b/cmd/manifest-gen/main.go
index c57656d3..2211ce05 100644
--- a/cmd/manifest-gen/main.go
+++ b/cmd/manifest-gen/main.go
@@ -11,7 +11,6 @@
// manifest-gen -spec ./espn-spec.yaml -format internal -output ./out
//
// The tool writes tools-manifest.json to the output directory.
-// It also prints a SHA-256 checksum for use in registry.json.
package main
import (
@@ -103,15 +102,8 @@ func main() {
os.Exit(1)
}
- checksum := pipeline.ComputeToolsManifestChecksum(manifestData)
fmt.Fprintf(os.Stderr, "\nWrote %s (%d bytes)\n", manifestPath, len(manifestData))
- fmt.Fprintf(os.Stderr, "Checksum: %s\n", checksum)
- fmt.Fprintf(os.Stderr, "\nFor registry.json:\n")
- fmt.Fprintf(os.Stderr, " \"manifest_checksum\": %q,\n", checksum)
- fmt.Fprintf(os.Stderr, " \"spec_format\": %q\n", format)
-
- // Also print the checksum to stdout for scripting.
- fmt.Println(checksum)
+ fmt.Fprintf(os.Stderr, "Spec format: %s\n", format)
}
func loadSpec(source string) ([]byte, error) {
diff --git a/skills/printing-press-publish/SKILL.md b/skills/printing-press-publish/SKILL.md
index c50f129e..637192c1 100644
--- a/skills/printing-press-publish/SKILL.md
+++ b/skills/printing-press-publish/SKILL.md
@@ -619,10 +619,8 @@ The registry file has this structure:
"public_tool_count": 7,
"auth_type": "<api_key|none|bearer_token|cookie|composed>",
"env_vars": ["<ENV_VAR_NAME>"],
- "mcp_ready": "<full|partial|cli-only>",
- "manifest_checksum": "<sha256:hex of tools-manifest.json>",
- "spec_format": "<openapi3|graphql|internal>",
- "manifest_url": "library/<category>/<api-slug>/tools-manifest.json"
+ "mcp_ready": "<full|partial>",
+ "spec_format": "<openapi3|graphql|internal>"
}
}
]
@@ -639,9 +637,7 @@ Read `$PUBLISH_REPO_DIR/registry.json`, parse the `entries` array (not the top-l
- `auth_type`: from manifest `auth_type`
- `env_vars`: from manifest `auth_env_vars`
- `mcp_ready`: from manifest `mcp_ready`
-- `manifest_checksum`: SHA-256 hash of the `tools-manifest.json` file in the CLI directory (format: `sha256:<hex>`). Compute with: `sha256sum tools-manifest.json | awk '{print "sha256:" $1}'`. If `tools-manifest.json` does not exist, omit this field.
- `spec_format`: from manifest `spec_format` (e.g., `openapi3`, `graphql`, `internal`). Omit if empty.
-- `manifest_url`: derived from the entry's `path` field: `<path>/tools-manifest.json`. Omit if `tools-manifest.json` does not exist.
If the manifest has no MCP fields (empty `mcp_binary`), omit the `mcp` block entirely.
← 0e1b8508 chore(cli)!: remove megamcp aggregate server and Composio pl
·
back to Cli Printing Press
·
fix(cli): add source rate-limit guardrails (#366) 174d23c8 →