Centralize skills_install_dir and load skills in the deep agent#183
Draft
danchild wants to merge 1 commit into
Draft
Centralize skills_install_dir and load skills in the deep agent#183danchild wants to merge 1 commit into
danchild wants to merge 1 commit into
Conversation
The path `Path(tempfile.gettempdir()) / "forge" / "skills"` was hardcoded identically in agent.py, worker.py, and runner.py. Define it once as a derived property on Settings and import at each call site. Also adds a comment in runner.py noting the assumption that worker and runner share the same host filesystem for skill mounts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #179
Summary
skills_install_dir— the hardcoded pathPath(tempfile.gettempdir()) / "forge" / "skills"was duplicated acrossagent.py,worker.py, andrunner.py. It is now defined once as a@propertyonSettingsand passed through to each call site.resolve_skill_pathswith a newskills_install_dirparameter, adding a third resolution tier: committed defaults → committed project overrides → runtime-fetched project skills (highest priority).ensure_skillsso that lock files and fetched skill packages are written toskills_install_dirinstead of the source-trackedskills_dir, keeping runtime artifacts out of the source tree.skills_install_dirbehavior in both the resolver and orchestrator, and updates existing worker/agent tests to match the new signatures.