{"id":"r4ck.dev/r4ck","name":"r4ck","commands":["r4ck"],"examples":[{"run":"r4ck search \"2 vcpu 4gb under $10 in eu\"","does":"Search every VPS, cloud, bare metal, GPU and PaaS offer"},{"run":"r4ck cheapest --min-vcpu 4 --min-ram 8 --has api,cli","does":"Find the cheapest offer that fits"},{"run":"r4ck compare 120 344 902","does":"Compare offers side by side"},{"run":"r4ck providers --has cli --country DE","does":"List providers by feature and country"},{"run":"claude mcp add r4ck -- r4ck mcp","does":"Bridge every r4ck tool into Claude Code"}],"description":"r4ck.dev from the terminal and for agents: search hosting offers by spec, price and place, and bridge the same tools into any MCP client.","homepage":"https://r4ck.dev","repository":"https://github.com/profullstack/r4ck.dev","license":"MIT","agentic":true,"latest_version":"0.3.0","vendor":"Profullstack","install":"curl -fsSL https://r4ck.dev/install.sh | sh","publisher":"profullstack","w3bs":"w3bs install r4ck.dev/r4ck","scan":{"status":"passed","scanner":"threatcrush 0.13.30","filesScanned":109,"summary":{"critical":1,"high":6,"medium":27,"low":15,"info":0},"malware":0,"truncated":false,"version":"0.3.0","sources":{"installer":"https://r4ck.dev/install.sh","installerSha256":"893099a2c6e8d71b85bf8af20eb64bb8352341355a8a059aab90278f4fd99eaa","repository":"github.com/profullstack/r4ck.dev"},"notes":[],"scannedAt":"2026-11-01T22:56:34.819Z","findings":[{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"critical","category":"code","cwe":"CWE-89","file":"source/apps/web/src/routes/pages.js","line":301,"malware":false},{"ruleId":"secret-database-url","title":"Database URL with credentials","severity":"high","category":"secret","cwe":"CWE-798","file":"source/.env.example","line":2,"malware":false},{"ruleId":"secret-database-url","title":"Database URL with credentials","severity":"high","category":"secret","cwe":"CWE-798","file":"source/.github/workflows/ci.yml","line":24,"malware":false},{"ruleId":"secret-database-url","title":"Database URL with credentials","severity":"high","category":"secret","cwe":"CWE-798","file":"source/docker-compose.yml","line":7,"malware":false},{"ruleId":"secret-database-url","title":"Database URL with credentials","severity":"high","category":"secret","cwe":"CWE-798","file":"source/packages/config/src/index.js","line":32,"malware":false},{"ruleId":"tls-verification-disabled","title":"TLS certificate verification disabled","severity":"high","category":"code","cwe":"CWE-295","file":"source/packages/db/src/index.js","line":16,"malware":false},{"ruleId":"py-ssrf-outbound-request","title":"outbound request to a non-constant URL","severity":"high","category":"code","cwe":"CWE-918","file":"source/scripts/refresh-snapshot.py","line":9,"malware":false},{"ruleId":"js-unescaped-html-sink","title":"unescaped HTML rendering","severity":"medium","category":"code","cwe":"CWE-79","file":"source/apps/web/public/app.js","line":100,"malware":false},{"ruleId":"js-regex-from-input","title":"regular expression compiled from a variable","severity":"medium","category":"code","cwe":"CWE-1333","file":"source/apps/web/src/lib/gate.js","line":68,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/apps/web/src/lib/webhooks.js","line":151,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/apps/web/src/lib/webhooks.js","line":152,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/auth/src/api-keys.js","line":40,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/auth/src/api-keys.js","line":45,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/auth/src/api-keys.js","line":50,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/auth/src/api-keys.js","line":68,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":20,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":97,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":103,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":104,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":108,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":113,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":117,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":121,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":158,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":164,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":195,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":211,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":296,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/accounts.js","line":308,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/catalog.js","line":54,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/catalog.js","line":130,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/catalog.js","line":279,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/migrate.js","line":35,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"medium","category":"code","cwe":"CWE-89","file":"source/packages/db/src/search.js","line":118,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":51,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":54,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":58,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":59,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":60,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":61,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":62,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":63,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":64,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":67,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":146,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":239,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/credits.test.js","line":272,"malware":false},{"ruleId":"sql-template-interpolation","title":"SQL built from a template literal or f-string","severity":"low","category":"code","cwe":"CWE-89","file":"source/test/webhooks.test.js","line":67,"malware":false},{"ruleId":"secret-generic-credential","title":"Hardcoded Credential","severity":"low","category":"secret","cwe":"CWE-798","file":"source/test/webhooks.test.js","line":150,"malware":false}]}}