Skip to content

draft: add SkillStore abstraction#11480

Merged
sjrl merged 15 commits into
skills-toolsetfrom
skills-toolset-skill-store-abstraction
Jun 8, 2026
Merged

draft: add SkillStore abstraction#11480
sjrl merged 15 commits into
skills-toolsetfrom
skills-toolset-skill-store-abstraction

Conversation

@tstadel

@tstadel tstadel commented Jun 2, 2026

Copy link
Copy Markdown
Member

Related Issues

  • Very rough idea of adding a SkillStore abstraction that facilitates loading skills not only from disk (e.g. on platform we want to load it from rds)

Proposed Changes:

How did you test it?

Notes for the reviewer

Checklist

  • I have read the contributors guidelines and the code of conduct.
  • I have updated the related issue with new insights and changes.
  • I have added unit tests and updated the docstrings.
  • I've used one of the conventional commit types for my PR title: fix:, feat:, build:, chore:, ci:, docs:, style:, refactor:, perf:, test: and added ! in case the PR includes breaking changes.
  • I have documented my code.
  • I have added a release note file, following the contributors guidelines.
  • I have run pre-commit hooks and fixed any issue.

@vercel

vercel Bot commented Jun 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
haystack-docs Ignored Ignored Preview Jun 3, 2026 3:29pm

Request Review

@github-actions

github-actions Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  haystack/dataclasses
  skill_meta.py
  haystack/skill_stores/file_system
  __init__.py
  skill_store.py 34, 82, 97, 107, 120
  haystack/skill_stores/types
  __init__.py
  protocol.py
  haystack/tools
  __init__.py
  haystack/tools/skills
  __init__.py
  skill_toolset.py 123-124
Project Total  

This report was generated by python-coverage-comment-action

Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/skill_stores/file_system/skill_store.py Outdated
Comment thread haystack/skill_stores/file_system/__init__.py
Comment thread haystack/skill_stores/types/__init__.py
Comment thread haystack/skill_stores/types/protocol.py Outdated
Comment thread haystack/skill_stores/types/protocol.py
Comment thread haystack/skill_stores/types/protocol.py Outdated
Comment thread haystack/skill_stores/types/protocol.py Outdated
Comment thread haystack/skill_stores/types/protocol.py Outdated
Comment thread haystack/skill_stores/types/protocol.py Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you make a version of this SkillStore using a db (like the one to be used in platform) to make sure this protocol definition works for at least two different backends?

Comment thread haystack/tools/skills/__init__.py Outdated
Comment thread haystack/tools/skills/skill_store.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/skills/skill_toolset.py Outdated
Comment thread haystack/tools/__init__.py Outdated
@sjrl sjrl marked this pull request as ready for review June 8, 2026 08:45
@sjrl sjrl requested a review from a team as a code owner June 8, 2026 08:45
@sjrl sjrl requested review from davidsbatista and removed request for a team June 8, 2026 08:45
@sjrl sjrl added the ignore-for-release-notes PRs with this flag won't be included in the release notes. label Jun 8, 2026
@sjrl sjrl removed the request for review from davidsbatista June 8, 2026 08:46

@sjrl sjrl left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Merging and finishing up in the target branch

@sjrl sjrl merged commit f60b6b3 into skills-toolset Jun 8, 2026
26 of 30 checks passed
@sjrl sjrl deleted the skills-toolset-skill-store-abstraction branch June 8, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ignore-for-release-notes PRs with this flag won't be included in the release notes. topic:tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants