Summary
Skills Graph currently records skills returned by list/search operations through the same usage relationship as skills that were actually retrieved or read from a valid local Skill Definition.
We have resolved the domain distinction:
- Skill Usage: a session used a skill during its work, such as through
get_skill or reading a valid SKILL.md Skill Definition.
- Skill Surfacing: a skill appeared in a list/search result without proving the agent used it.
Problem
Today, surfaced skills can be recorded through the same USED_SKILL relationship with actions such as list_skills_result. That weakens future recommendation and evolution signals because being shown to an agent is not the same as being used by an agent.
Proposed direction
Introduce separate graph semantics:
(:Session)-[:USED_SKILL]->(:Skill)
(:Session)-[:SURFACED_SKILL]->(:Skill)
Keep USED_SKILL for actual use:
get_skill
- valid local
SKILL.md reads
- other explicit skill retrieval/application events
Use SURFACED_SKILL for weaker exposure signals:
list_skills results
search_skills results
search_by_name results
Notes
This follows the context docs in context-graph/skills-graph/CONTEXT.md, where Skill Usage and Skill Surfacing are distinct terms.
Summary
Skills Graph currently records skills returned by list/search operations through the same usage relationship as skills that were actually retrieved or read from a valid local Skill Definition.
We have resolved the domain distinction:
get_skillor reading a validSKILL.mdSkill Definition.Problem
Today, surfaced skills can be recorded through the same
USED_SKILLrelationship with actions such aslist_skills_result. That weakens future recommendation and evolution signals because being shown to an agent is not the same as being used by an agent.Proposed direction
Introduce separate graph semantics:
Keep
USED_SKILLfor actual use:get_skillSKILL.mdreadsUse
SURFACED_SKILLfor weaker exposure signals:list_skillsresultssearch_skillsresultssearch_by_nameresultsNotes
This follows the context docs in
context-graph/skills-graph/CONTEXT.md, where Skill Usage and Skill Surfacing are distinct terms.