|
Add self-extension tool system: write_tool, list_tools, tool_manual
- loader.py: module-level format (name/description/parameters/execute) preferred, class-based as fallback; isolated errors per file - write_tool: validates + writes tools/name.py, reloads registry, adds to tools/enabled.json in one call - list_tools: live tool list from registry (prevents hallucination) - tool_manual: serves manuals/*.md or auto-generates from schema - reload_tools: hot-reload without server restart - registry: registry injection pattern for tools that need it; _builtin_names set to guard against reload overwriting builtins Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
|---|
|
|
| navi/core/registry.py |
|---|
| navi/tools/list_tools.py 0 → 100644 |
|---|
| navi/tools/loader.py 0 → 100644 |
|---|
| navi/tools/reload_tools.py 0 → 100644 |
|---|
| navi/tools/tool_manual.py 0 → 100644 |
|---|
| navi/tools/write_tool.py 0 → 100644 |
|---|