docs(ensskills): add efp-protocol skill - #2325
Conversation
…ency Adds an efp-protocol skill orienting agents on the Ethereum Follow Protocol data model and how it surfaces in the Omnigraph (query.efp / Account.efp). The omnigraph skill declares efp-protocol as a conditional dependency, loaded when a query touches EFP fields. Refs #2324
🦋 Changeset detectedLatest commit: 7e129ec The changes in this PR will be included in the next version bump. This PR includes changesets to release 22 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Caution Review failedAn error occurred during the review process. Please try again later. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR adds a new efp-protocol agent skill under packages/ensskills to document Ethereum Follow Protocol concepts and how EFP data is queried via the ENS Omnigraph, then wires that skill into the existing omnigraph skill as a conditional dependency. It also updates the public docs skill list and ships a Changesets entry for the release.
Changes:
- Add
packages/ensskills/skills/efp-protocol/SKILL.mddescribing EFP’s list/record/tag model, primary-list validation, and Omnigraph query shapes with example queries. - Update
packages/ensskills/skills/omnigraph/SKILL.mdto conditionally loadefp-protocoland improve some inline query comments/examples. - Update docs + release metadata (
ensskills.mdx,.changeset) to include the new skill.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| packages/ensskills/skills/omnigraph/SKILL.md | Documents efp-protocol as a conditional dependency and refines example/query comments. |
| packages/ensskills/skills/efp-protocol/SKILL.md | New skill introducing EFP concepts + Omnigraph field guidance and example queries. |
| docs/ensnode.io/src/content/docs/docs/integrate/integration-options/ensskills.mdx | Adds efp-protocol to the canonical docs skill list. |
| .changeset/efp-protocol-skill.md | Announces the new skill and the omnigraph dependency change for release notes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Greptile SummaryThis PR adds a new
Confidence Score: 5/5Documentation-only change with no runtime code; safe to merge. All four changed files are Markdown/MDX documentation. The new skill accurately describes the EFP data model, primary-list validation rules, and block/mute semantics; the conditional-dependency wiring in the omnigraph skill is correctly described as conditional (not unconditional). The DomainResolver example query fix (moving No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Agent loads omnigraph skill] --> B{Query touches EFP fields?}
B -- No --> C[Run query with omnigraph alone]
B -- Yes --> D[Load efp-protocol skill first]
D --> E{Account.efp or Query.efp?}
E -- Account.efp --> F[Validated + filtered view\nfollowing / followers\nprimaryList]
E -- Query.efp --> G[Raw list-centric queries\nefp.list / efp.lists\nefp.listRecords]
F --> H[Primary-list validation\n1. metadata names tokenId\n2. list user == account]
H --> I[block/mute filtered out\nof following & followers]
G --> J[Raw records returned\nIncludes block/mute\nAny list - no validation]
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
A[Agent loads omnigraph skill] --> B{Query touches EFP fields?}
B -- No --> C[Run query with omnigraph alone]
B -- Yes --> D[Load efp-protocol skill first]
D --> E{Account.efp or Query.efp?}
E -- Account.efp --> F[Validated + filtered view\nfollowing / followers\nprimaryList]
E -- Query.efp --> G[Raw list-centric queries\nefp.list / efp.lists\nefp.listRecords]
F --> H[Primary-list validation\n1. metadata names tokenId\n2. list user == account]
H --> I[block/mute filtered out\nof following & followers]
G --> J[Raw records returned\nIncludes block/mute\nAny list - no validation]
Reviews (4): Last reviewed commit: "fix: bot notes (loop 1)" | Re-trigger Greptile |
- Query.efp capitalization (omnigraph, ensskills.mdx, changeset) - tags: describe as opaque UTF-8 strings, not lowercase-restricted - block: drop 'mutual exclusion' over-claim to match Omnigraph followers semantics - clarify omnigraph->efp-protocol dependency is conditional
|
@greptile review |
Closes #2324 (skill portion).
Adds an
efp-protocolagent skill and wires it into theomnigraphskill as a conditional dependency (loaded when a query touches EFP fields).efp-protocol/SKILL.md— EFP data model (lists, address records, tags, storage locations, account metadata), primary-list validation,block/mutefollower semantics, and how it surfaces in the Omnigraph (Account.efpvalidated view vs.Query.efpraw queries), with example queries.omnigraph/SKILL.md— conditional-dependency entry pointing atefp-protocol.ensskills.mdx— skill list updated; changeset added (ensskillsminor).Validated:
pnpm -F ensskills generate(no drift),pnpm lint, example queries checked against the generated schema.Out of scope: the SDK example-query and plugin-doc parts of #2324.