Skip to content

drknowhow/toolspace-site

Repository files navigation

toolspace-site

Source for toolspace.yepgent.com — the public home of the install-manifest-spec: an open manifest spec for personal, stateful AI agents — the long-running kind that hold memory, schedule themselves, learn their operator's preferences over weeks and months, and act between conversations.

Toolspace is the structured JSON layer that sits on top of AGENTS.md. Where AGENTS.md gives an agent prose context about a repo or workspace, toolspace gives it a machine-readable contract for the tools, memories, schedules, and behaviors that make up a personal agent's surface.

Not a registry for coding-assistant plugins — that lane is being solved well by others, and the manifest shape that fits a per-task coding helper is structurally different from what a persistent personal agent needs. The canonical demo is Yep and its federated counterpart Vi; every primitive ships in production there before it lands in the spec.

The site hosts the schemas, reference manifests, and the curated index. Manifests can live anywhere — raw GitHub URLs, third-party mirrors, or here.

Layout

schemas/install-manifest-v0.1.json   # mirrored from install-manifest-spec
schemas/install-manifest-v0.2.json   # mirrored from install-manifest-spec
schemas/install-manifest-v0.3.json   # mirrored from install-manifest-spec (superseded)
schemas/install-manifest-v0.3.1.json # mirrored from install-manifest-spec (superseded)
schemas/install-manifest-v0.4.json   # mirrored from install-manifest-spec (current)
examples/gmail.json                   # reference manifest (v0.1)
examples/gmail.v0.2.json              # reference manifest (v0.2)
examples/gmail.v0.3.json              # reference manifest (v0.3; validates unmodified against v0.4)
examples/muninn-flowing.v0.3.json     # federation example (Muninn publisher)
examples/muninn-perch-publish.v0.3.json
examples/muninn-verify-patch.v0.3.json
examples/vi-federation.v0.4.json      # reference v0.4 manifest (preinstalled + agent-supplied destinations)
manifests.json                        # registry index (lists every version)
publishers.json                       # federation allowlist (one entry per publisher)
index.html                            # landing page
netlify.toml + _headers               # CORS + cache headers
scripts/sync_from_spec.py             # mirror schemas/examples from spec
scripts/validate_manifests_index.py   # structural check on manifests.json
scripts/federation.py                 # shared federation helpers (stdlib)
scripts/discover_publishers.py        # validate publishers' well-known indexes
scripts/sync_from_publishers.py       # fetch + merge federation into manifests.json
.github/workflows/check.yml           # CI: byte-identity + index validity + tests
.github/workflows/federation-sync.yml # daily cron: fetch publishers, open auto-PR
FEDERATION.md                         # publisher onboarding walkthrough

Adding a manifest

Two paths, depending on how many tools you publish:

Federation (recommended for publishers with multiple tools). Host your own .well-known/install-manifests.json index and get listed once in publishers.json. Every tool you add, version, or deprecate flows in automatically on the next daily sync. See FEDERATION.md for the onboarding walkthrough.

One-off PR (single tool / preview drop). Open a PR adding an entry to manifests.json directly:

  1. Required fields: id, name, description, capabilities (list), manifest_url (https), status (stable / preview / example / deprecated).
  2. The manifest_url must validate against the schema in /schemas/. Use the install-manifest CLI to verify before opening the PR:
    pip install install-manifest
    install-manifest validate <your-manifest-url>
    install-manifest lint     <your-manifest-url>   # style + best-practice warnings (LM001-LM010)
    lint is non-fatal by default (exit 0 with findings); add --strict to gate publication on a clean result. Use install-manifest diff <old-url> <new-url> to surface breaking / additive / cosmetic changes between two versions before bumping.
  3. CI runs validate_manifests_index.py on every PR.

Syncing from the spec

When install-manifest-spec ships a new schema version or updated example, mirror it here:

# from a sibling clone of install-manifest-spec
python scripts/sync_from_spec.py
git diff
git commit -am "sync: schema/examples from install-manifest-spec @ <sha>"

CI runs sync_from_spec.py --check on every push to catch silent drift.

Deploy

Netlify, deployed from main. toolspace.yepgent.com is configured as the custom domain on the Netlify site; DNS lives in GoDaddy and points at Netlify's load balancer.

License

MIT

About

toolspace.yepgent.com — registry for agent install manifests (install-manifest-spec)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors