Skip to content

feat(coding-agent): select subagent thinking levels - #1196

Open
ProDrifterDK wants to merge 2 commits into
PrimeIntellect-ai:mainfrom
ProDrifterDK:feat/subagent-thinking-level
Open

feat(coding-agent): select subagent thinking levels#1196
ProDrifterDK wants to merge 2 commits into
PrimeIntellect-ai:mainfrom
ProDrifterDK:feat/subagent-thinking-level

Conversation

@ProDrifterDK

@ProDrifterDK ProDrifterDK commented Aug 11, 2026

Copy link
Copy Markdown

Summary

  • add thinking_level to rlm(...) so parent agents can select a child reasoning level
  • keep omission backward-compatible by inheriting and clamping the parent level, while explicit requests fail before admission when unsupported
  • document the Python API and cover host forwarding, model capability validation, prompt guidance, and daemon-owned child propagation

Daemon compatibility

This does not change a daemon command, event, or response shape. The kernel host request remains the existing generic rlm.run payload, and the daemon-owned child path already receives the resolved internal thinkingLevel option, so no protocol or schema bump is required.

Validation

  • npm run check
  • npx tsx ../../node_modules/vitest/dist/cli.js --run test/suite/regressions/4649-subagent-model-selection.test.ts test/system-prompt.test.ts
  • npx tsx ../../node_modules/vitest/dist/cli.js --run test/agent-session-recursion.test.ts
  • npx tsx ../../node_modules/vitest/dist/cli.js --run test/acp-rlm-subagents.test.ts test/suite/regressions/3885-subagent-runtime-host.test.ts
  • npx tsx ../../node_modules/vitest/dist/cli.js --run test/daemon-mode.test.ts -t "gives RLM subagents messaging controllers for their own nested children"
  • python -m unittest -v test_subagent_registry with the worktree runtime on PYTHONPATH

Note

Add thinking_level kwarg to rlm() subagent spawning

  • Adds a thinking_level kwarg to rlm.run that pins the child subagent's thinking level independently of the parent's current level.
  • When omitted, the child inherits a clamped version of the parent's level; when provided explicitly, the value is validated against the target model's supported levels.
  • Validation is fail-closed: invalid strings, empty values, or model-unsupported levels reject the spawn before admission with a descriptive error.
  • Updates the system prompt to document accepted values, inheritance behavior, and fail-closed semantics for the agent's own use.

Macroscope summarized f068311.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant