Skip to content

forge install: deploy the whole skill directory tree, not only .md files #90

Description

@N4M3Z

Skill directories deploy only .md files; every other companion is silently dropped, and three shipped artifacts already depend on whole-tree deploys.

Plan

Extend skill passthrough from "other .md files" to the whole tree: copy every non-SKILL.md file verbatim (extension and subdirectory structure preserved), skipping non-UTF-8 binaries with a warning. Compiled binaries stay in bin/ at the plugin root.

Changes

  • src/cli/assemble/sources.rs (walk_skill_dir, collect_skill_files): lift the .md-only filter for passthrough files; keep SKILL.md as the only assembled file.
  • Docs: the forge-core UseForge rule already describes the whole-tree behavior; today it is aspirational. Artifacts broken by the gap: ForgeSkill (its scripts/, agents/, eval-viewer/ never deploy, so the documented python -m scripts.<name> invocations fail at the deployed path), Plan/template.html (the HtmlPlan renderer's template), PullRequest/pull-request.mdschema (body validation schema).

Testing

  • forge install on a skill with a .mdschema, an .html, and a scripts/*.py companion deploys all three with structure preserved
  • non-UTF-8 file in a skill dir is skipped with a warning, not an error
  • existing .md companion behavior unchanged (assembled SKILL.md, verbatim companions)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions