fmt-json-flatten
Pass
Audited by Gen Agent Trust Hub on Aug 18, 2026
Risk Level: SAFECREDENTIALS_UNSAFEEXTERNAL_DOWNLOADSREMOTE_CODE_EXECUTIONCOMMAND_EXECUTIONPROMPT_INJECTION
Full Analysis
- [REMOTE_CODE_EXECUTION]: The skill requires the agent to execute a utility script
call.mjs. If the script is not present, instructions direct the agent to download it from the vendor's domain viacurl -sO https://fittings.sh/skill/call.mjsand execute it using Node.js. - [COMMAND_EXECUTION]: The documentation provides multiple bash commands for the agent to perform, including
curlfor fetching data and quotes,jqfor parsing responses, andnodefor running the payment handling client. - [CREDENTIALS_UNSAFE]: The execution environment requires a
FITTINGS_PRIVATE_KEYenvironment variable. The skill documentation explicitly notes that this key is stored in plaintext where the agent runs and recommends using a throwaway wallet holding minimal funds. This creates a risk of credential exposure if the agent's environment is compromised. - [INDIRECT_PROMPT_INJECTION]: The skill processes arbitrarily nested JSON data which is then flattened into dotted-path notation. This data ingestion represents a potential attack surface for indirect prompt injection if the output is interpreted by the agent without proper sanitization.
- Ingestion points: Data is accepted through command-line arguments in
call.mjsand parsed viaparseArgsusing the service's schema. - Boundary markers: None present; the script transforms the input based on the requested service schema.
- Capability inventory: The script possesses network access (
fetch) and the ability to load external libraries for cryptographic signing. - Sanitization: The script performs type validation (number, boolean, array, object) against the vendor's schema but does not perform content-level sanitization or escaping of the values processed.
- [DYNAMIC_EXECUTION]: The
call.mjsscript utilizes dynamicimport()to load dependencies such as@x402/fetch,@x402/evm, andviemat runtime.
Audit Metadata