Repository navigation
Make models.txt data only and route models from harness.md - #13
Merged
Merged
Conversation
models.txt now holds one line per role with T3's own provider, model, and option ids, so no harness has to decode a slug. The routing rules that were split across models.txt, harness.md, and a paragraph pasted into seven skills now live once in harness.md's Models section. Drop the per-skill fallback models and the unused ~/.cursor/rules/oddstack-models.mdc override. A missing role line now stops the skill. scripts/check-models.mjs fails CI when a skill reads a role the map has no line for.
Name the done marker file, say a shared delegate_task child runs in the parent's checkout, merge the REPORT-END and terminal-state wait steps, and keep the cursor workaround until the SDK fix ships rather than dropping it after one short-path success. harness.md now says to leave unnamed options at their defaults and to title each delegate_task.
Owner
Author
|
T3 test run. I launched a Claude Opus lead in this worktree (
|
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.
Why
Agents had to combine three sources before their first spawn: the 50-line rules header in
models.txt, the Models table inharness.md, and a 6-sentence paragraph pasted into seven skills. Each skill also hard-coded its own fallback models, so changing the map left stale copies behind. Slugs such asgrok-4.7-high-fasthad to be decoded into a model and options from one example.What changed
models.txtis data only. Each entry is<provider> <model> <option>=<value>, using the ids from T3'sorchestrator_capabilities, orinherit. Panel roles separate entries with|. The model choices are the same as before.harness.mdModels section is the single routing source. It maps an entry todelegate_task(T3),Agent(Claude Code), orTask(Cursor), and has five rules: always route through T3 on the entry's provider, unroutable Claude seats stay unspawned, unroutable Cursor seats run on the session model, same-family fallback on rejection, and a missing role line stops the skill.harness.md, in place of the repeated paragraph. Per-skill default models are gone (arena,architect,how,why,interrogate,reflect,swarm, playbooks).~/.cursor/rules/oddstack-models.mdcoverride is removed, along with theauto/inherit-parentaliases (nowinherit)./setup-oddstackwrites the new format and reads ids fromorchestrator_capabilitiesin T3.scripts/check-models.mjs. It parses every entry and fails when a skill reads a role the map has no line for.Verification
node scripts/check-models.mjs: 17 roles parse, and 20 role reads in skills resolve. Renaminghow explorerin the map makes it fail onskills/how/SKILL.md.node scripts/check-skill-names.mjspasses.