changelog · newest first

What shipped.

A running log of changes to toolspace.yepgent.com — version by version. Machine-readable mirror at changelog.json.

  1. v0.14 Surface federation v1 on the homepage (publishers can self-host)
    • Federation v1 shipped earlier today across #21 (discovery pipeline + publishers.json + daily auto-sync), #22 (FEDERATION.md onboarding walkthrough), and spec #18 (well-known-index v1 schema, three identity kinds: github, https, atproto). Daily cron at 13:17 UTC fetches every allowlisted publisher, validates each manifest, and auto-merges the sync PR on green.
    • Updated the homepage “For humans” section: replaced the stale “open a PR with your manifest URL” single-path guidance with a two-path layout — federation (self-host an index, get added to publishers.json once) as the preferred path for multi-tool publishers, single-tool PR retained as the lightweight alternative.
    • Added a federate link to the homepage footer pointing at FEDERATION.md so the publishing path is one click from any depth, mirroring the v0.13 footer-registry-link pattern.
    • First external federation publisher: oaustegard/muninn-utilities (Muninn, trust_tier: standard). Yep itself is dogfooded at yepgent.com as a kind=https publisher (trust_tier: verified, registry_status_map: {active: example}) after the initial kind=github attempt 404'd on a private repo — lesson banked as a pre-flight check in FEDERATION.md (#24).
  2. v0.13 Fix Schema chip filter (slug mismatch); add registry link to homepage footer
    • Fixed the **Schema** chip filter on /registry/ — selecting v0.1 / v0.2 / v0.3 / v0.4 was a no-op because chip data-value was slugged (v0-1) while the card data-mv attribute was the raw form (v0.1). Now slugging both ends so they match. Pre-existing bug, surfaced once the v0.12 cleanup made the filter visually prominent.
    • Added a registry link to the homepage index.html footer so the discovery path back to the marketplace is one click from any depth.
  3. v0.12 Registry search + filter cleanup; drop drift-prone hardcoded footer version
    • Added free-text search on /registry/ — filters cards by name, author, summary, and capability tags as you type. Combines with the existing chip filters.
    • Result count (N of 18) now updates live next to the search box so it's clear how many cards survived the current filter combination.
    • Collapsed the 57-chip **Capability** filter into a closed-by-default <details> disclosure. Shows (57) next to the label, and a · N selected hint when any are active, so users see the filter state without expanding.
    • Hid the **Status** filter group when only one distinct value is present (today: every entry is example) — was visual noise with no signal.
    • Per-card capability badges now show the first 3 with a +N more expander, so tag-heavy cards (e.g. muninn-flowing with 6 tags) don't dominate the grid.
    • Dropped the hardcoded SITE_VERSION = "0.7" from scripts/build_registry_pages.py and removed the version span from both registry and homepage footers — the page-vs-actual-version drift kept reappearing (last caught at v0.7 still rendering on v0.11 pages). The /changelog/ page remains the single authoritative version display, generated from changelog.json current_version.
    • Added .netlify to .gitignore so local netlify init artifacts don't accidentally land in commits.
  4. v0.11 Muninn v0.4 ship — 10 new manifests, 3 bumped to v0.4
    • Mirrored Muninn's full v0.4 utility set after oaustegard/muninn-utilities#48 — 13 manifests at v0.4, audit clean, single source of truth at oaustegard/muninn-utilities/manifests/<slug>/.
    • Bumped muninn-bsky-card, muninn-verify-patch, and muninn-perch-publish from v0.3 → v0.4 and relocated manifest_url from mixed locations (muninns-inbox + install-manifest-spec mirror) to the canonical muninn-utilities paths.
    • Added 10 new registry entries: muninn-blog-publish, muninn-bsky-limit, muninn-issue-close, muninn-memory-tfidf, muninn-news-watch, muninn-perch-triage, muninn-remind, muninn-task-policy, muninn-whtwnd, muninn-zeitgeist-delta.
    • Retained muninn-flowing v0.3 as a historical reference (not migrated to muninn-utilities); status stays example.
    • All Muninn entries status: example — preinstalled in Muninn's runtime, not externally installable; treat as read-only reference, not deploy targets.
    • Real-world v0.4 feature exercise: data_boundary.transmits[].to_kind: "agent-supplied" actually used on muninn-bsky-card (OG-image fetch) and muninn-blog-publish (GH-Pages poll) — the v0.4 variable-target outbound primitive lands where it's supposed to.
    • Bumped footer version to v0.11.
  5. v0.10 Changelog page is now generated from changelog.json
    • Added scripts/build_changelog_page.py — stdlib-only generator that renders /changelog/index.html from /changelog.json. Inline formatting uses a tiny markdown subset ([label](url) for links, backticks for code). Pattern mirrors build_registry_pages.py.
    • Enriched every existing changes[] string in /changelog.json with markdown-lite so the regenerated page preserves link + <code> fidelity of the prior hand-edited version.
    • Added changelog-page-fresh job to .github/workflows/check.yml — fails the PR on drift between committed changelog/index.html and a fresh build. Eliminates the drift class hit on v0.9 (JSON updated, HTML page forgotten).
    • Added current_version field to /changelog.json schema — used by the generator to render the footer version. Backward-compatible (extends toolspace-changelog/1).
  6. v0.9 First vi-authored manifest — registry consumer beyond Muninn
  7. v0.8 install-manifest-spec v0.3.1 + v0.4 mirror
    • Mirrored install-manifest-v0.3.1.json — additive fixes from Muninn consumer tests: kill_switch.kind: "none", inline kill_switch.manual.instructions, optional tool.namespace, runtime.install.layout enum, smoke.success.json_pointer_in / json_pointer_present. All v0.3 manifests validate unmodified (spec PR #11).
    • Mirrored install-manifest-v0.4.json — closes two structural gaps: runtime.install.method: "preinstalled" with required locator (kinds: python-module / binary-on-path / mcp-server-id) for tools baked into the agent runtime; data_boundary.transmits[].to_kind: "agent-supplied" + optional to_constraint for variable-target outbound. All v0.3.1 manifests validate unmodified (spec PR #12).
    • Updated landing page schema section: v0.4 shown as current; v0.3.1 and v0.3 shown as superseded with GitHub design-notes links; v0.2 frozen; v0.1 legacy. New manifests should target v0.4.
    • Bumped footer version to v0.8.
  8. v0.7 Three more Muninn community manifests
    • Added muninn-verify-patch, muninn-flowing, and muninn-perch-publish to /manifests.json — three new community-authored v0.3 consumer-test manifests merged into install-manifest-spec on 2026-05-10 (PR #7, #9, #10).
    • Mirrored the source manifests under /examples/ via scripts/sync_from_spec.py — manifest_url points at the in-tree copy so build_registry_pages.py resolves to the working tree, not the still-deployed site (per the build-from-deploy bug fix banked in toolspace-site#8).
    • Each entry's description surfaces the v0.3.1 candidates and v0.4 design questions it motivated — the registry doubles as a design-history index for the spec.
    • Topology coverage: verify-patch (LLM-driven verification with optional fallbacks), flowing (stateless DAG framework — the framework-out-of-scope motivating example), perch-publish (transactional read-then-publish, the v0.4 data_boundary.writes[] motivating example).
  9. v0.6 Agent-authored manifests
    • Registered gmail manifests as agent-authored on the marketplace registry — tool.author.name now reads the agent operator identity.
    • Fixed self-hosted manifest_url resolution in build pipeline: _resolve_self_hosted() maps own-origin URLs to local files, preventing one-cycle drift in CI.
    • Bumped footer version to v0.6.
  10. v0.5 Marketplace registry pages
    • Added /registry/ — a marketplace card grid of every manifest in the index, with client-side filter chips for capability, status, and schema version.
    • Added /registry/<id>/ — per-manifest product pages with hero, install command, scopes-with-rationale, data_boundary (reads / transmits / persists with retention pills), smoke contract, kill switch, action catalog, env table, and verify + cost panels.
    • Surfaced agent author as a first-class marketplace badge — when an entry's author is itself an autonomous agent, the card and product page call it out.
    • Added scripts/build_registry_pages.py — stdlib-only build script that fetches each manifest_url at build time, caches under _cache/registry/ for network resilience, and writes the static pages.
    • Added a check CI job that runs the build in --check mode and fails on drift between committed pages and a fresh build (with wall-clock timestamps pinned from committed pages, so only content drift trips it).
    • Linked /registry/ from the For-humans section on the landing page.
  11. v0.4 Versioning and changelog
    • Added this page and /changelog.json (schema toolspace-changelog/1) so site updates are visible to humans and machines without reading git log.
    • Added a changelog link to the site nav and a version label to the footer.
    • Backfilled previous releases (v0.1 through v0.3) so history is visible from launch.
  12. v0.3 First community manifest
  13. v0.2 Install-manifest spec v0.3 mirror
  14. v0.1 Launch
    • Bootstrap: toolspace-site as a static Netlify deploy at toolspace.yepgent.com.
    • Mirrored install-manifest-spec v0.1 + v0.2 schemas and reference examples (toolspace-site #1).
    • Modernized the landing page — hero glyph, agent → manifest → tool flow illustration, dark-mode default, demoted v0.1 to legacy (toolspace-site #2).
    • Adopted the yepgent shared theme (dark default, mint accent) for visual continuity with yepgent.com (toolspace-site #3).
    • GitHub Actions → Netlify deploy on push to main.
    • CORS-open headers on /schemas/*, /manifests.json, /examples/* so any agent runtime can fetch.

Machine-readable: changelog.json