Provider Discovery
Enables discovery and verification of compute providers on the 0G network, ensuring secure and reliable service selection.
Install this skill
Security score
The Provider Discovery skill was audited on Feb 25, 2026 and we found 23 security issues across 2 threat categories. Review the findings below before installing.
Categories Tested
Security Issues
Template literal with variable interpolation in command context
| 71 | console.log(`Chatbot providers: ${chatbotServices.length}`); |
Template literal with variable interpolation in command context
| 73 | console.log(` ${s[0]} — model: ${s[6]}, TEE: ${s[10]}`); |
Template literal with variable interpolation in command context
| 75 | console.log(`Image providers: ${imageServices.length}`); |
Template literal with variable interpolation in command context
| 76 | console.log(`Speech providers: ${speechServices.length}`); |
Template literal with variable interpolation in command context
| 96 | throw new Error(`No TEE-verified ${serviceType} providers found`); |
Template literal with variable interpolation in command context
| 102 | console.log(`Selected provider: ${providerAddress}`); |
Template literal with variable interpolation in command context
| 103 | console.log(`Model: ${model}`); |
Template literal with variable interpolation in command context
| 104 | console.log(`TEE verified: ${selected[10]}`); |
Template literal with variable interpolation in command context
| 120 | console.log(`Provider ${providerAddress} acknowledged`); |
Template literal with variable interpolation in command context
| 133 | console.log(`Endpoint: ${endpoint}`); |
Template literal with variable interpolation in command context
| 134 | console.log(`Model: ${model}`); |
Template literal with variable interpolation in command context
| 155 | throw new Error(`No ${serviceType} providers available`); |
Access to .env file
| 21 | - `.env` with `PRIVATE_KEY`, `RPC_URL` |
Access to .env file
| 58 | const provider = new ethers.JsonRpcProvider(process.env.RPC_URL); |
Access to .env file
| 59 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider); |
Access to .env file
| 86 | const provider = new ethers.JsonRpcProvider(process.env.RPC_URL); |
Access to .env file
| 87 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider); |
Access to .env file
| 114 | const provider = new ethers.JsonRpcProvider(process.env.RPC_URL); |
Access to .env file
| 115 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider); |
Access to .env file
| 128 | const provider = new ethers.JsonRpcProvider(process.env.RPC_URL); |
Access to .env file
| 129 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider); |
Access to .env file
| 144 | const provider = new ethers.JsonRpcProvider(process.env.RPC_URL); |
Access to .env file
| 145 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider); |
Install this skill with one command
/learn @0gfoundation/provider-discovery