Skip to content

Extract SkillOpt to separate package under RobotSail #1342

Description

@osilkin98

Context

As part of the repo-wide dead-code cleanup (see PR #1302, issue #1301), SkillOpt needs to be extracted to a separate package under the RobotSail GitHub account. SkillOpt is active R&D work (generalized backpropagation for prompt optimization) but is not invoked by the two core modes (create + design) or the inner/outer loop abstractions.

What to do

  1. Create a new repo under RobotSail/ (e.g., remote-factory-skillopt or skillopt)
  2. Move the following from this repo to the new one:
    • factory/skillopt/ (all files EXCEPT yaml_surface.py — that one stays, it's lazily imported by factory workflow run --from-yaml)
    • Files to move: reflect.py, trainer.py, gate.py, clip.py, aggregate.py, failure_tracker.py, slow_update.py, adapters/, prompts/, __main__.py
    • Related test files: tests/test_skillopt.py, tests/test_skillopt_adapters.py, tests/test_skillopt_integration.py
  3. Set up the new package with its own pyproject.toml, CI, etc.
  4. Update this repo:
    • Delete the moved files from factory/skillopt/
    • Keep factory/skillopt/yaml_surface.py and factory/skillopt/__init__.py (minimal)
    • Remove skill-refine workflow mode from factory/workflow/definitions.py registry
    • Delete skills/workflow-skill-refine/SKILL.md
    • Remove skill_reviewer agent role and prompt
  5. Update any import paths or cross-references

Why

SkillOpt is valuable ongoing R&D but outside the stated scope of the lean core (create + design + inner/outer loop + refactory). Extracting it preserves the work while reducing the core repo's surface area.

Related

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementImproves existing feature/functionality or code quality, does not change behavior of codebase

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions