nlweb-tools-framework
Pass
Audited by Gen Agent Trust Hub on Sep 17, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The framework described in the skill processes untrusted user queries and external data retrieved from sites. This data is fed into an LLM to determine tool routing and generate responses, creating a surface for indirect prompt injection. 1. Ingestion points:
ToolSelector(incore/router.py) and search results fromcontext.retriever.search(inmethods/*.py). 2. Boundary markers: The skill mentions using<returnStruc>blocks to define JSON output shapes for LLM calls. 3. Capability inventory: Handlers execute Python logic, including retrieval and ranking. 4. Sanitization: Relies on strict JSON parsing of LLM outputs.\n- [DYNAMIC_EXECUTION]: The skill describes a tool routing flow where theToolSelectordynamically determines which Python handler inmethods/to invoke based on LLM-generated decisions at runtime.\n- [EXTERNAL_DOWNLOADS]: The documentation instructs users to fetch various configuration (sites.xml,tools.xml) and documentation (tools.md,nlweb-prompts.md) files fromhttps://github.com/nlweb-ai/NLWebto ensure they are using the latest versions.\n- [COMMAND_EXECUTION]: The implementation guidance includes acurlcommand for testing custom tools by forcing the router to select a specific handler.
Audit Metadata