d431dfc448
A /learn request can mix the source(s) to gather (paths, URLs, "what we just did") with requirements that shape the skill (focus, scope, what to omit). When a request led with a path or link, the agent fetched it and treated the trailing prose as incidental, dropping the user's stated focus — the symptom @GrenFX reported. The input layer was never the cause: both CLI (split(None, 1)) and gateway (get_command_args()) capture the full free-text argument. The gap was in build_learn_prompt, which dumped the request as one undifferentiated source blob. build_learn_prompt now tells the agent the request may mix sources and requirements in any order, that prose after a path/link is authoring guidance to honor (not noise), and to never fetch the first source and ignore the rest. Adds step 1b: apply every requirement to what the SKILL.md covers, not just which sources get read. Both surfaces inherit it; no parser change, zero tool footprint.