odysseus/services/memory
zai184 86b886c611
Some checks are pending
CI / Focused test guidance (report-only) (push) Waiting to run
CI / Python syntax (compileall) (push) Waiting to run
CI / JS syntax (node --check) (push) Waiting to run
CI / Python tests (pytest 1/4) (push) Waiting to run
CI / Python tests (pytest 2/4) (push) Waiting to run
CI / Python tests (pytest 3/4) (push) Waiting to run
CI / Python tests (pytest 4/4) (push) Waiting to run
CodeQL / Analyze (actions) (push) Waiting to run
CodeQL / Analyze (javascript-typescript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
ci / docker publish / build (amd64) (push) Waiting to run
ci / docker publish / build (arm64) (push) Waiting to run
ci / docker publish / merge manifest + tag (push) Blocked by required conditions
feat(skills): remote-only tag hides skills from local endpoints (#6693)
Skills tagged remote-only in frontmatter are excluded from the injected
skill index when the active model's endpoint is local (loopback/private/
tailscale per is_local_endpoint). Big on-demand reference lookups
overwhelm small local contexts; local models never see the skill, while
remote models and API/UI listings are unaffected.

- SkillsManager.index_for gains optional keyword-only local_model flag
  (None = don't gate, same contract as active_toolsets=None)
- _build_system_prompt/_build_base_prompt thread endpoint_url from
  _build_route_request_state; unknown endpoint fails open
- tests: cover hidden-on-local, visible-on-remote/unknown, untagged
  skills never gated

Refs: discussed for the local-model overwhelm problem

Co-authored-by: Alexandre Teixeira <111787685+alteixeira20@users.noreply.github.com>
2026-10-13 23:15:21 +01:00
..
__init__.py fix(memory): don't let an unreadable store get overwritten with an empty one (#5831) 2026-08-06 02:33:50 -06:00
builtin_skills.py Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
memory.py fix(memory): don't let an unreadable store get overwritten with an empty one (#5831) 2026-08-06 02:33:50 -06:00
memory_extractor.py feat(settings): opt-in reasoning effort for utility model calls (#6572) 2026-10-13 21:02:16 +01:00
memory_vector.py refactor(memory): canonicalize memory imports (#50) 2026-06-04 05:31:15 +01:00
service.py refactor(constants): single source of truth for data dir (#3368) 2026-06-08 09:58:52 +02:00
skill_extractor.py feat(settings): opt-in reasoning effort for utility model calls (#6572) 2026-10-13 21:02:16 +01:00
skill_format.py fix(skills): stop SKILL.md frontmatter escapes compounding on every save (#5883) 2026-08-12 01:09:02 +01:00
skill_importer.py fix(skills): harden skill import against DNS rebinding and SSRF TOCTOU (#5986) 2026-08-14 13:33:06 +01:00
skill_lifecycle.py Squash Odysseus development history 2026-09-11 06:04:19 +00:00
skills.py feat(skills): remote-only tag hides skills from local endpoints (#6693) 2026-10-13 23:15:21 +01:00