{"owner":"genesiscode2026","slug":"agent-workspace-guard-sdk","channel":"genesiscode2026/agent-workspace-guard-sdk","version":"1.0.0","artifact_sha256":"c7053f36c99b723392e26394b3c8f0f56456490c1f20b31b8b33d3615a4b1438","published_at":"2026-09-16T21:07:16.165Z","price_micro":"149000000","update_price_micro":"39000000","resource_endpoint":"https://x402git.com/api/r/genesiscode2026/agent-workspace-guard-sdk","version_url":"https://x402git.com/api/v/genesiscode2026/agent-workspace-guard-sdk","computed":{"artifact_class":"Pack","component_inventory":[{"kind":"source","count":4},{"kind":"tests","count":3},{"kind":"examples","count":1},{"kind":"docs","count":15},{"kind":"config","count":2},{"kind":"other","count":1}],"file_count":26,"dir_depth":1,"bytes_text":59919,"bytes_binary":0,"languages":{"JavaScript":25919},"tree":[{"path":".gitignore","size":30,"binary":false},{"path":"ADVERSARIAL_TEST_MATRIX.md","size":3910,"binary":false},{"path":"AGENT_EVAL.md","size":1422,"binary":false},{"path":"ARCHITECTURE.md","size":2952,"binary":false},{"path":"CHANGELOG.md","size":570,"binary":false},{"path":"DEPENDENCIES.md","size":506,"binary":false},{"path":"LICENSE.md","size":1660,"binary":false},{"path":"LIMITATIONS.md","size":1281,"binary":false},{"path":"PREVIEW.md","size":2524,"binary":false},{"path":"QUICKSTART.md","size":1891,"binary":false},{"path":"README.md","size":2558,"binary":false},{"path":"SECURITY_EVIDENCE.md","size":632,"binary":false},{"path":"SUPPORT.md","size":775,"binary":false},{"path":"TEST_REPORT.md","size":1729,"binary":false},{"path":"THIRD_PARTY_NOTICES.md","size":213,"binary":false},{"path":"THREAT_MODEL.md","size":3635,"binary":false},{"path":"VERIFICATION.md","size":417,"binary":false},{"path":"commercial-manifest.json","size":1138,"binary":false},{"path":"examples/agent-runner-example.mjs","size":2500,"binary":false},{"path":"release-manifest.json","size":2520,"binary":false},{"path":"src/command-policy.mjs","size":5063,"binary":false},{"path":"src/filesystem-shield.mjs","size":6797,"binary":false},{"path":"src/index.d.ts","size":1137,"binary":false},{"path":"src/index.mjs","size":2275,"binary":false},{"path":"tests/adversarial-red-team.test.mjs","size":7147,"binary":false},{"path":"tests/adversarial-security.test.mjs","size":4637,"binary":false}],"readme_html":"<h2>Agent Workspace Guard SDK</h2>\n<blockquote><p><strong>Filesystem confinement and command-policy guardrails for autonomous coding agents.</strong></p></blockquote>\n<p><img src=\"https://img.shields.io/badge/tests-110%20passed-brightgreen.svg\" alt=\"Tests\" loading=\"lazy\" decoding=\"async\" /> <img src=\"https://img.shields.io/badge/license-Commercial%20Source-blue.svg\" alt=\"License\" loading=\"lazy\" decoding=\"async\" /> <img src=\"https://img.shields.io/badge/dependencies-0%20runtime-green.svg\" alt=\"Zero Runtime Deps\" loading=\"lazy\" decoding=\"async\" /></p>\n<hr />\n<h3>1. WHAT IS THIS?</h3>\n<p>The <strong>Agent Workspace Guard SDK</strong> is a lightweight, zero-dependency Node.js developer security library that prevents autonomous AI coding agents (such as tool-calling LLMs, Cursor extensions, Claude Code tools, or custom agents) from escaping their designated working directory or running dangerous host commands.</p>\n<h3>2. WHO IS IT FOR?</h3>\n<ul><li>Developers building autonomous coding agent workflows.</li><li>DevSecOps engineers integrating AI agent tools into developer machines.</li><li>SaaS platforms allowing AI agents to read and modify project files locally.</li></ul>\n<h3>3. WHAT PROBLEM DOES IT SOLVE?</h3>\n<p>AI agents given shell and file-access tools can be tricked via prompt injection or unexpected planning into reading <code>.env</code> credentials, following symlinks outside the workspace, escaping with <code>../../</code>, or executing destructive commands like <code>rm -rf /</code> or <code>sudo</code>. Heavy cloud microVMs (E2B, Modal) introduce 200ms+ network latency and $50–$200/mo cloud bills. This SDK provides in-process, sub-millisecond confinement directly in your Node.js runtime.</p>\n<h3>4. WHY PAY FOR IT INSTEAD OF BUILDING IT?</h3>\n<p>Writing ad-hoc regex or path checks fails on real-world edge cases: symlink race conditions (<code>TOCTOU</code>), Windows backslash traversal evasion (<code>..\\..\\</code>), multi-dot evasion (<code>....//</code>), shell chaining metacharacters (<code>;</code>, <code>&amp;&amp;</code>, <code>|</code>, <code>$()</code>), and command redirection (<code>&lt;</code>, <code>&gt;</code>). This SDK includes an independently verified, 110-case adversarial red-team test suite covering these exact attack vectors.</p>\n<h3>5. WHAT IS VERIFIED?</h3>\n<ul><li><strong>110 / 110 Adversarial Attack Cases Passed:</strong> Covering path traversal, symlink escapes, secret files, command chaining, and destructive command patterns.</li><li><strong>Zero External Runtime Dependencies:</strong> Built strictly on Node.js standard library (<code>node:fs</code>, <code>node:path</code>, <code>node:crypto</code>).</li><li><strong>Cryptographic Audit Log:</strong> Every command evaluation is chained using SHA-256 digests.</li></ul>\n<h3>6. HOW DO I RUN IT?</h3>\n<pre><code class=\"language-bash\"># 1. Run the 110-case adversarial security test suite\nnode --test tests/adversarial-red-team.test.mjs\n\n# 2. Run the interactive agent runner demonstration\nnode examples/agent-runner-example.mjs\n</code></pre>","dependencies":[],"licence":{"verdict":"manual"},"scan":{"verdict":"pass","scanner_version":"2026.09.1","at":"2026-09-16T21:07:19.421Z","checks":[{"id":"secrets","tool":"x402git/secrets","tool_version":"2026.09.1","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0},{"id":"limits","tool":"x402git/limits","tool_version":"2026.09.1","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0},{"id":"known_vulns","tool":"osv.dev","tool_version":"2026-09-16","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0,"packages":0},{"id":"known_malware","tool":"osv.dev/MAL","tool_version":"2026-09-16","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0,"packages":0},{"id":"dep_behaviour","tool":"socket.dev","tool_version":"2026-09-16","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0,"packages":0,"reason":"no dependency manifests"},{"id":"capabilities","tool":"x402git/caps","tool_version":"2026.09.1","status":"findings","at":"2026-09-16T21:07:19.421Z","findings":3},{"id":"injection","tool":"x402git/inject","tool_version":"2026.09.1","status":"pass","at":"2026-09-16T21:07:19.421Z","findings":0}],"findings":[{"kind":"capability","check":"capabilities","tier":"disclosed","rule_id":"host","severity":"LOW","description":"Talks to attacker.com","path":"tests/adversarial-red-team.test.mjs"},{"kind":"capability","check":"capabilities","tier":"disclosed","rule_id":"host","severity":"LOW","description":"Talks to malicious.org","path":"tests/adversarial-security.test.mjs"},{"kind":"capability","check":"capabilities","tier":"disclosed","rule_id":"host","severity":"LOW","description":"Talks to malicious.sh","path":"tests/adversarial-red-team.test.mjs"}],"capabilities":{"tools":[],"runs":[],"hosts":[{"host":"attacker.com","local":false,"from":"code","paths":["tests/adversarial-red-team.test.mjs"]},{"host":"malicious.org","local":false,"from":"code","paths":["tests/adversarial-security.test.mjs"]},{"host":"malicious.sh","local":false,"from":"code","paths":["tests/adversarial-red-team.test.mjs"]},{"host":"attacker.com","local":false,"from":"docs","paths":["ADVERSARIAL_TEST_MATRIX.md"]},{"host":"img.shields.io","local":false,"from":"docs","paths":["README.md"]},{"host":"malicious.sh","local":false,"from":"docs","paths":["ADVERSARIAL_TEST_MATRIX.md"]}],"env":[],"install_runs":false,"summary":"talks to 3 hosts · links to 3 hosts in its docs · nothing runs at install"},"counts":{"blocking":0,"disclosed":3,"review":0}},"originality":{"blob_overlap_ratio":0,"blobs_seen_elsewhere":0,"blobs_total":25,"nearest_listing":null,"derivative_of":null},"engineering":{"unique_5gram_ratio":0.595,"type_token_ratio":0.323,"effective_code_lines":489,"effective_doc_words":2646,"code_files":7,"test_files":3,"padding_suspected":true,"class_note":"Capped at Pack: unique 5-gram ratio 0.595 is below the 0.6 guard."},"cadence":{"releases":0,"median_days_between_releases":null,"on_time_fraction":null,"days_since_last":null,"score":null,"finished":false},"inventory_sentence":"4 source files · 3 test files · 1 example · 15 docs","extensions":{"md":16,"ts":1,"mjs":6,"json":2,"(none)":1},"lines_of_code":821,"warnings":["sbom_unavailable"],"repo_meta":{"repo_id":1372977367,"name":"agent-workspace-guard-sdk","full_name":"genesiscode2026/agent-workspace-guard-sdk","description":"In-process filesystem confinement and command-policy guardrails for autonomous coding agents.","homepage":null,"topics":["agent-safety","ai-agents","developer-tools","llm","nodejs","security"],"language":"JavaScript","default_branch":"main","size_kb":27,"created_at":"2026-09-16T12:08:05Z","pushed_at":"2026-09-16T13:30:30Z","licence_spdx":null,"open_issues":null,"stars":null,"forks":null,"watchers":null,"archived":false,"private":true,"html_url":null},"owner":{"login":"genesiscode2026","name":null,"avatar_url":"https://avatars.githubusercontent.com/u/329895054?v=4","bio":null,"blog":null,"company":null,"location":null,"twitter_username":null,"followers":null,"public_repos":1,"created_at":"2026-09-16T08:01:39Z","html_url":"https://github.com/genesiscode2026"},"computed_at":"2026-09-16T21:07:20.437Z","analyzer_version":"0.1.0"},"self_reported":{"description":"In-process filesystem confinement and command-policy guardrails for autonomous coding agents.","trigger_hint":"When requiring verified AI Agent Security functionality in autonomous workflows"}}