<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://veln.sh</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://veln.sh/capabilities</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://veln.sh/pricing</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://veln.sh/docs</loc>
<lastmod>2026-05-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/getting-started</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/agent-cli</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/verify</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/gate</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/sandbox</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://veln.sh/docs/console</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/docs/ecosystems</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/docs/configuration</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/about</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://veln.sh/blog</loc>
<lastmod>2026-05-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://veln.sh/terms</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://veln.sh/privacy</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://veln.sh/cookie-policy</loc>
<lastmod>2026-06-08T12:06:16.966Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://veln.sh/blog/gradle-supply-chain-security</loc>
<lastmod>2026-05-25T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/maven-supply-chain-security</loc>
<lastmod>2026-05-22T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/nuget-dotnet-supply-chain-security</loc>
<lastmod>2026-05-20T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/rubygems-bundler-supply-chain-security</loc>
<lastmod>2026-05-18T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/cargo-build-rs-supply-chain-security</loc>
<lastmod>2026-05-15T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/go-module-supply-chain-security</loc>
<lastmod>2026-05-13T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-audit-limitations</loc>
<lastmod>2026-05-12T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ai-picked-your-packages-who-checks</loc>
<lastmod>2026-05-11T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/replaying-colors-faker-through-veln</loc>
<lastmod>2026-05-10T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/github-actions-supply-chain-security</loc>
<lastmod>2026-05-10T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/slopsquatting-ai-hallucinated-packages</loc>
<lastmod>2026-05-09T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/replaying-node-ipc-through-veln</loc>
<lastmod>2026-05-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/colors-faker-protest-ware-incident</loc>
<lastmod>2026-05-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/side-project-graveyard-vulnerable-packages</loc>
<lastmod>2026-05-07T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/replaying-ua-parser-js-through-veln</loc>
<lastmod>2026-05-06T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/respond-to-supply-chain-compromise</loc>
<lastmod>2026-05-06T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ai-agent-shell-access-npm-install</loc>
<lastmod>2026-05-05T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/uv-pip-poetry-security-comparison</loc>
<lastmod>2026-05-04T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/slopsquatting-llm-hallucinated-package-names</loc>
<lastmod>2026-05-04T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/vibe-coding-ci-supply-chain</loc>
<lastmod>2026-05-03T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/replaying-event-stream-through-veln</loc>
<lastmod>2026-05-02T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/node-ipc-protest-ware-russia-ukraine</loc>
<lastmod>2026-05-02T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ai-package-preflight-check</loc>
<lastmod>2026-05-01T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-provenance-sigstore-explained</loc>
<lastmod>2026-04-30T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/dev-credential-theft-patterns</loc>
<lastmod>2026-04-29T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/veln-cooling-defaults-explained</loc>
<lastmod>2026-04-29T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/how-to-write-secure-npm-package</loc>
<lastmod>2026-04-28T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/python-vibe-coding-wheel-problem</loc>
<lastmod>2026-04-27T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/secure-dockerfile-python-advanced</loc>
<lastmod>2026-04-26T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/supply-chain-security-ml-ai-projects</loc>
<lastmod>2026-04-25T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ai-doesnt-notice-maintainer-changes</loc>
<lastmod>2026-04-24T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/solarwinds-attack-explained-for-developers</loc>
<lastmod>2026-04-24T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/python-virtual-environments-security</loc>
<lastmod>2026-04-23T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-scopes-private-packages-security</loc>
<lastmod>2026-04-22T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/shai-hulud-npm-worm</loc>
<lastmod>2026-04-22T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/when-the-ai-says-use-the-latest-version</loc>
<lastmod>2026-04-21T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/package-manager-security-2026-state</loc>
<lastmod>2026-04-21T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/aiocpa-malicious-pypi-update</loc>
<lastmod>2026-04-20T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/malicious-packages-targeting-aws-credentials</loc>
<lastmod>2026-04-19T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/fresh-laptop-npm-install-risk</loc>
<lastmod>2026-04-18T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/open-source-maintainer-burnout-supply-chain</loc>
<lastmod>2026-04-18T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-pypi-private-registry-security</loc>
<lastmod>2026-04-17T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-token-least-privilege</loc>
<lastmod>2026-04-16T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/supply-chain-budget-engineering-manager</loc>
<lastmod>2026-04-15T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ci-caching-supply-chain-security</loc>
<lastmod>2026-04-15T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/how-npm-resolves-transitive-dependencies</loc>
<lastmod>2026-04-15T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/network-egress-monitoring-supply-chain</loc>
<lastmod>2026-04-14T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/semantic-versioning-security-trap</loc>
<lastmod>2026-04-13T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/indie-founder-supply-chain-survival</loc>
<lastmod>2026-04-12T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/first-party-vs-third-party-npm-risk</loc>
<lastmod>2026-04-12T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/verify-python-package-metadata</loc>
<lastmod>2026-04-11T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/package-manager-shell-escapes</loc>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/evaluating-supply-chain-tools-checklist</loc>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-license-compliance-supply-chain</loc>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/llm-generated-code-supply-chain-risk</loc>
<lastmod>2026-04-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/pytorch-torchtriton-dependency-confusion</loc>
<lastmod>2026-04-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/how-pip-resolver-picks-versions</loc>
<lastmod>2026-04-01T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ua-parser-js-supply-chain-attack</loc>
<lastmod>2026-03-28T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/reading-package-lock-json</loc>
<lastmod>2026-03-21T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/litellm-supply-chain-attack</loc>
<lastmod>2026-03-15T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/dependency-confusion-attack-explained</loc>
<lastmod>2026-03-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/why-npm-ci-not-npm-install-in-ci</loc>
<lastmod>2026-03-04T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/npm-zero-day-window</loc>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/typosquat-naming-patterns-pypi</loc>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/why-npm-install-trusts-everything</loc>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/reproducible-python-builds-with-hashes</loc>
<lastmod>2026-02-19T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/xz-utils-supply-chain-compromise-timeline</loc>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/event-stream-flatmap-stream-attack</loc>
<lastmod>2026-02-04T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/sbom-formats-spdx-cyclonedx-swid</loc>
<lastmod>2026-01-29T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/mean-time-to-detection-malicious-npm</loc>
<lastmod>2026-01-21T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/ctx-phpass-expired-domain-takeover</loc>
<lastmod>2026-01-16T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/malicious-npm-postinstall-script-patterns</loc>
<lastmod>2026-01-12T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/sigstore-root-of-trust-explained</loc>
<lastmod>2025-12-21T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/trusted-publishing-npm-pypi</loc>
<lastmod>2025-12-08T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/maintainer-account-compromise-vectors</loc>
<lastmod>2025-11-18T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/cooling-period-academic-foundations</loc>
<lastmod>2025-10-30T00:00:00.000Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://veln.sh/blog/category/attack-post-mortem</loc>
<lastmod>2026-05-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://veln.sh/blog/category/technical-explainer</loc>
<lastmod>2026-05-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://veln.sh/blog/category/security-research</loc>
<lastmod>2026-05-04T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://veln.sh/blog/category/product-update</loc>
<lastmod>2026-04-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
