{"ok":true,"version":"2026.07.15.12","data":{"id":"handshake-protocol","title":"Agent handshake protocol","type":"Protocol","level":"Foundational","readTime":6,"summary":"A lightweight protocol for agents to exchange intent, guardrails, and skills.","tags":["agents","api","handshake"],"outcomes":["Standardize agent onboarding","Share guardrails automatically","Reduce coordination drift"],"outline":["Identity claim","Guardrail exchange","Skill bundle response"],"cta":"Adopt the protocol","path":"/library/handshake-protocol","hasFullBody":true,"body":{"sections":[{"heading":"Identity claim","paragraphs":["Agent declares name, version, capability scope (read knowledge / draft metadata / never custody). Host returns APP_ID and protocol version."]},{"heading":"Guardrail exchange","paragraphs":["Both sides assert: no securities solicitation, no key handling, education-only. If either side cannot accept, abort before skills load."]},{"heading":"Skill bundle response","paragraphs":["Host returns POST /api/agent/pack JSON (or downloadable YAML) containing skills, modules, guardrails, and API endpoints. Agents should cache the pack with generatedAt and re-fetch when version changes."]}]}}}