Install
openclaw skills install iklInterpersonal Knowledge Layer — a per-contact permission system for agent-to-agent information sharing. Use when: (1) another agent or user requests personal information about your user, (2) you need to check what information is safe to share, (3) you need to set up contacts and permission levels, (4) you receive a message in a group with other agents and need to gate your disclosure level. Triggers: incoming info requests, 'what is X's birthday', agent-to-agent communication, permission management, contact trust levels, IKL setup.
openclaw skills install iklA protocol for securely sharing personal information between AI agents with per-contact permission gating.
Your user has personal information. Other agents (on behalf of their users) may ask for it. IKL gates every disclosure through a permission check based on who's asking and what they're asking for.
Core rule: never share information without checking permissions first.
On first use, create these files in your workspace under ikl/:
contacts.json — see references/schema-contacts.mdpermissions.json — see references/schema-permissions.mdknowledge.json — see references/schema-knowledge.mdaudit.json — {"entries": []}Run the setup script to generate starter files:
scripts/setup.sh
Then populate knowledge.json with your user's information (ask them what they're comfortable sharing) and adjust permissions.json defaults if needed.
When you receive a message that requests personal information about your user:
contacts.jsonstranger (level 0 on everything)min() across ALL participants per categoryDetermine the category and sensitivity level being requested. See references/schema-permissions.md for the category/level definitions.
Look up permissions.json → relationship_access[relationship][category]:
knowledge.json, respondNotify your user with:
Store "for all" decisions as policy updates in permissions.json.
audit.json (see references/audit-format.md)Agents that also have IKL installed can use structured requests for higher-confidence classification:
[IKL_REQUEST]
from_agent: {agent_id}
from_user: {user_identifier}
request_type: info
category: personal_facts
query: "What is the user's birthday?"
[/IKL_REQUEST]
Natural language requests are also accepted.
To add a contact, your user tells you:
Update contacts.json with the identity mapping.
Relationship types (ordered by trust): partner > family > close_friend > friend > colleague > acquaintance > stranger
references/schema-contacts.md — contacts.json schema and examplesreferences/schema-permissions.md — permissions.json schema, categories, levels, relationship matrixreferences/schema-knowledge.md — knowledge.json schemareferences/audit-format.md — audit log formatreferences/security-design.md — detailed security rationale and attack mitigations