{"_id":"@0x402/og","_rev":"3-f22bb6c95b4ec45d1c8c94d144f3f2c1","name":"@0x402/og","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@0x402/og","version":"0.1.0","keywords":["0g","tee","inference","attestation","llm"],"author":{"name":"Wayne Kuo"},"license":"MIT","_id":"@0x402/og@0.1.0","maintainers":[{"name":"waynekuo","email":"wayne.k@typuslab.com"}],"homepage":"https://wayneal.github.io/0G","bugs":{"url":"https://github.com/WayneAl/0G/issues"},"dist":{"shasum":"2cfd8e74da7c028fbe475566eb8ecb314578a800","tarball":"https://registry.npmjs.org/@0x402/og/-/og-0.1.0.tgz","fileCount":13,"integrity":"sha512-BpEHTsmYfGrGiAm1g2B4jb8+509DuOwlV+tQoEdQWRSdDfYqLAkS9WN7rWUlQIYa29/omVw/MeI0VqUQulamww==","signatures":[{"sig":"MEUCIFSUnJYLNNyFZXAF1aJMWdcJpHEsUrJiDStcux/1s1y7AiEApU9OCbIMQHfpRfCiQEdraonjRqP31Pbh/xHGkcF5EuY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22332},"main":"./dist/index.js","type":"module","_from":"file:0x402-og-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","smoke":"tsx scripts/smoke.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"waynekuo","email":"wayne.k@typuslab.com"},"_resolved":"/private/var/folders/v9/gfr09p7j5nj2hsj_v0h5cq480000gn/T/278292fd13f39d193fbe19f19d504698/0x402-og-0.1.0.tgz","_integrity":"sha512-BpEHTsmYfGrGiAm1g2B4jb8+509DuOwlV+tQoEdQWRSdDfYqLAkS9WN7rWUlQIYa29/omVw/MeI0VqUQulamww==","repository":{"url":"git+https://github.com/WayneAl/0G.git","type":"git","directory":"packages/og"},"_npmVersion":"11.11.0","description":"0G Compute clients for TEE-attested inference — the Router (verified tier, attestation carried through) and a direct provider client behind one interface.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","viem":"^2.23.2","@0x402/seal":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","dotenv":"^16.4.7"},"_npmOperationalInternal":{"tmp":"tmp/og_0.1.0_1788793220406_0.26437953084973165","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@0x402/og","version":"0.1.1","keywords":["0g","tee","inference","attestation","llm"],"author":{"name":"Wayne Kuo"},"license":"MIT","_id":"@0x402/og@0.1.1","maintainers":[{"name":"waynekuo","email":"wayne.k@typuslab.com"}],"homepage":"https://wayneal.github.io/0G","bugs":{"url":"https://github.com/WayneAl/0G/issues"},"dist":{"shasum":"1224fbf13e5f4f1b74109d03fbfbebbc20f9d729","tarball":"https://registry.npmjs.org/@0x402/og/-/og-0.1.1.tgz","fileCount":13,"integrity":"sha512-i20tnHuMMtz7X4kgxTyGpWUMriRnMxLNyOmJFhEJBPZcuQhXq9wOyJ695cEfhmSbsYAiX7pGQNY4tMGdA8vqtA==","signatures":[{"sig":"MEQCIBlKxGW/PGYzKuHiV2azWPva1a3trCENzjYiz+B10uooAiBqriRv+nlYIZKiGm74Phs3P8rFNaTH5p05UvKb8FuNYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22332},"main":"./dist/index.js","type":"module","_from":"file:0x402-og-0.1.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","smoke":"tsx scripts/smoke.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"waynekuo","email":"wayne.k@typuslab.com"},"_resolved":"/private/var/folders/v9/gfr09p7j5nj2hsj_v0h5cq480000gn/T/426cc8cca8d8d3c26ebc19738b4ae73b/0x402-og-0.1.1.tgz","_integrity":"sha512-i20tnHuMMtz7X4kgxTyGpWUMriRnMxLNyOmJFhEJBPZcuQhXq9wOyJ695cEfhmSbsYAiX7pGQNY4tMGdA8vqtA==","repository":{"url":"git+https://github.com/WayneAl/0G.git","type":"git","directory":"packages/og"},"_npmVersion":"11.11.0","description":"0G Compute clients for TEE-attested inference — the Router (verified tier, attestation carried through) and a direct provider client behind one interface.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","viem":"^2.23.2","@0x402/seal":"0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","dotenv":"^16.4.7"},"_npmOperationalInternal":{"tmp":"tmp/og_0.1.1_1788838309546_0.6726571314758583","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@0x402/og","version":"0.1.2","description":"0G Compute clients for TEE-attested inference — the Router (verified tier, attestation carried through) and a direct provider client behind one interface.","license":"MIT","author":{"name":"Wayne Kuo"},"homepage":"https://wayneal.github.io/0G","repository":{"type":"git","url":"git+https://github.com/WayneAl/0G.git","directory":"packages/og"},"bugs":{"url":"https://github.com/WayneAl/0G/issues"},"keywords":["0g","tee","inference","attestation","llm"],"type":"module","main":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"publishConfig":{"access":"public"},"dependencies":{"viem":"^2.23.2","zod":"^3.24.2","@0x402/seal":"0.1.2"},"devDependencies":{"tsx":"^4.19.2","dotenv":"^16.4.7"},"scripts":{"build":"tsc -p tsconfig.build.json","test":"vitest run","typecheck":"tsc --noEmit","smoke":"tsx scripts/smoke.ts"},"types":"./dist/index.d.ts","_id":"@0x402/og@0.1.2","_integrity":"sha512-5NHZ6ESUKFGjZWN2XsPriFKJZb7ijOFlTxGyWhz70m6Xsg5TeelQE0gvyAi+XrQqaN5IJic8vQF94AcanKNmnw==","_resolved":"/private/var/folders/v9/gfr09p7j5nj2hsj_v0h5cq480000gn/T/a8c9ef27be2a8b59114b39c6c1a388c4/0x402-og-0.1.2.tgz","_from":"file:0x402-og-0.1.2.tgz","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-5NHZ6ESUKFGjZWN2XsPriFKJZb7ijOFlTxGyWhz70m6Xsg5TeelQE0gvyAi+XrQqaN5IJic8vQF94AcanKNmnw==","shasum":"763d0f0a10fd1ce39f5dbdbf2c5e7a3c1c4b670d","tarball":"https://registry.npmjs.org/@0x402/og/-/og-0.1.2.tgz","fileCount":13,"unpackedSize":22332,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCbeBsQIDmP3/YiqmKcby05yBkZPzaLLmNRSiBC6/zyxQIgIMt9jU95r5sMC5QjqwpVcJ2fSxK4hOGTWu6zX4kvsv0="}]},"_npmUser":{"name":"waynekuo","email":"wayne.k@typuslab.com"},"directories":{},"maintainers":[{"name":"waynekuo","email":"wayne.k@typuslab.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/og_0.1.2_1788845348475_0.6228813152273727"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-07T15:00:20.275Z","modified":"2026-09-08T05:29:08.830Z","0.1.0":"2026-09-07T15:00:20.543Z","0.1.1":"2026-09-08T03:31:49.662Z","0.1.2":"2026-09-08T05:29:08.623Z"},"bugs":{"url":"https://github.com/WayneAl/0G/issues"},"author":{"name":"Wayne Kuo"},"license":"MIT","homepage":"https://wayneal.github.io/0G","keywords":["0g","tee","inference","attestation","llm"],"repository":{"type":"git","url":"git+https://github.com/WayneAl/0G.git","directory":"packages/og"},"description":"0G Compute clients for TEE-attested inference — the Router (verified tier, attestation carried through) and a direct provider client behind one interface.","maintainers":[{"name":"waynekuo","email":"wayne.k@typuslab.com"}],"readme":"# @0x402/og\n\n0G Compute clients for TEE-attested inference, behind one interface.\n\n```bash\nnpm i @0x402/og\n```\n\n```ts\nimport { createInferenceClient } from \"@0x402/og\";\n\nconst client = createInferenceClient({ kind: \"router\", apiKey, network: \"testnet\" });\n\nconst result = await client.audit({ token, artifact });\n\nresult.output;       // { action, maxLtvBps, findings, reasoning }\nresult.trustMode;    // \"verified\" when the provider ran it in a TEE\nresult.attestation;  // chatId, teeVerified, the signed response hash — or null\nresult.promptHash;   // what a seal commits to, so the claim is checkable later\n```\n\nTwo backends behind one `InferenceClient`: the **Router** (`kind: \"router\"`), which asks\nfor attested execution and carries the attestation back, and a **direct** provider\nclient (`kind: \"direct\"`).\n\n## Why the attestation is the point\n\nAn inference result nobody can vouch for is a sentence. One that comes back with\n`teeVerified` and a signed response hash is something an underwriter can be made to\nanswer for — which is why [`@0x402/seal`](https://www.npmjs.com/package/@0x402/seal)\nrefuses a seal that claims an attested tier and carries no attestation, and why\n`promptHash` and `responseHash` are bound into the seal rather than left as prose.\n\n## The artifact is untrusted\n\n`artifact` is attacker-authored material about a token — name, symbol, source,\ncomments. It is never interpolated as instructions; see `prompt.ts`. Nothing\ndownstream branches on `output.reasoning` either: it is model-authored text derived\nfrom that same untrusted input, and it exists to be read by a human, not acted on.\n\n---\n\n[Repository](https://github.com/WayneAl/0G) · [Site](https://wayneal.github.io/0G) · MIT\n","readmeFilename":"README.md"}