Why This Matters
progress output should update automatically when new tools are added instead of requiring a second manual mapping in app/output.py.
Read First
app/output.py
app/remote/reasoning.py
app/tools/registered_tool.py
app/tools/registry.py
Scope
- Add one registry-backed way to resolve a human-friendly tool label.
- Update
_humanise_message() and app/remote/reasoning.py to use it.
- Keep the existing human-friendly labels for current tools.
Tests / Coverage
- extend
tests/tools/test_registry.py
- add output tests that assert planned-action strings are humanized from real tool metadata
- add one fallback test for unknown tool names
Acceptance Criteria
app/output.py no longer owns the only source of tool display labels
- current progress output remains readable
- unknown tool names still degrade gracefully
Why This Matters
progress output should update automatically when new tools are added instead of requiring a second manual mapping in
app/output.py.Read First
app/output.pyapp/remote/reasoning.pyapp/tools/registered_tool.pyapp/tools/registry.pyScope
_humanise_message()andapp/remote/reasoning.pyto use it.Tests / Coverage
tests/tools/test_registry.pyAcceptance Criteria
app/output.pyno longer owns the only source of tool display labels