{"_id":"@4tk/openclaw-provider-4tk","_rev":"12-2fe4049729c82e4c94f2c7928b8d8cff","name":"@4tk/openclaw-provider-4tk","dist-tags":{"latest":"0.3.4"},"versions":{"0.1.0":{"name":"@4tk/openclaw-provider-4tk","version":"0.1.0","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.1.0","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"939ee15da004ffcac6481420619165b927538bcf","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.1.0.tgz","fileCount":5,"integrity":"sha512-pmBFq0zHrS1cxUWNDAM4F2z7x7lTxRy6vB/fFja+SFv4df0ugD8ebv+nzKsqPQgqm6fD1PKFGamo0gvjgdnGQg==","signatures":[{"sig":"MEYCIQDTeGr+ttcioeul/mwBpUDYRv2Xq9konMZxhyQ3cClUZQIhAJKNuumHDG8KkrmWoDeqqHrU5pMFUxPXKN4W43yjmK0T","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12978},"type":"module","gitHead":"07ec7015e286500da0c1a41b185fb264ae36e1aa","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.1.0_1776742252703_0.5207800669171199","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@4tk/openclaw-provider-4tk","version":"0.1.1","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.1.1","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"a5045a32d652a6af78d5008bf1da7570d1ec6629","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.1.1.tgz","fileCount":5,"integrity":"sha512-OaCk19cYK9wCoXW3h4n1i6y4fH80bq1EeKef2pVDV1Iujjai4L3TrI2QNHw80k8xcIIPMZlYEqirK7kRfX04BA==","signatures":[{"sig":"MEYCIQCYVQN65sC00Wbrf5E7WNkg2SfGpDSHK25fqw+vVsu1+wIhAIXCoQd/DKV7PZVkKfO0weZoH9gNqfShPyTirtCrZB2e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14810},"type":"module","gitHead":"b9a39f826b5ebeaa9bbc0f1a5124b743d3f14dd6","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.1.1_1776835659863_0.1385069508381176","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@4tk/openclaw-provider-4tk","version":"0.2.0","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.2.0","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"05ddf3aca51deb371c784a8053ab17f0b608bdba","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.2.0.tgz","fileCount":5,"integrity":"sha512-RTZBLtgeDlBwvclJ3pDdFXporJ4QJSUE2yXuAxD8A3We04b0X4UrnGvJxz62Ny/DtYTK6SMBizGlVxEEBLfmXw==","signatures":[{"sig":"MEYCIQDnQ5U+szbitOR0TnnGJfvlZUqiq2nJ6lWCvJNoxHqMdgIhAPmT4cxeJevSroei9pTbQf/SqMaQR54E8zYdA3aLZ/hj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21400},"type":"module","gitHead":"50f0c5abd5923bf8a887a41d35ebecc9c58c9277","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.2.0_1776857197084_0.9872024665984032","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@4tk/openclaw-provider-4tk","version":"0.2.1","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.2.1","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"2d8c5cebe051a3334562906f76eb26b400c59a90","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.2.1.tgz","fileCount":5,"integrity":"sha512-+ax4QNu4mM2z9lhnqxZOx2nZwddhPbeyID6VyGG/84AchnaeaWPvPr/GvV3449FSg19Bfsc2jZLqwhp4aEk1SA==","signatures":[{"sig":"MEYCIQDng8lU5rIPX7TcyjUHg9Kq+0gZja6LGNiKFzddHKhnfAIhAIgexFySGoU/S7RpDhao/9U1hp1mTrC1PgXww7ylNf6d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25285},"type":"module","gitHead":"c5f518db30a57d9fddb4a10ec60e8f6cd7616c5d","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.2.1_1776859299626_0.013373223605673612","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@4tk/openclaw-provider-4tk","version":"0.2.2","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.2.2","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"d223010ec84a7b78f4ede5a01468e27f7fc6ad68","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.2.2.tgz","fileCount":5,"integrity":"sha512-pTauR/iiZiJcb9Gj1Kq8AFj/jof5qyFNPmsjFCZUOHgKmBHQzIpI7tNWyX/TS4m//OzAvUHq8s7eOBpJs3Mt/Q==","signatures":[{"sig":"MEUCIQCKe8Jvm4vXrqslSGzU1tbs7Ct3oQVO7DGyevqBxkiVUAIgd83aWV7g40P6hK36f905U2Z5Hv3AzOoclcjGjQ0ETGQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32961},"type":"module","gitHead":"c5f518db30a57d9fddb4a10ec60e8f6cd7616c5d","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.2.2_1776865016118_0.1059281768655671","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@4tk/openclaw-provider-4tk","version":"0.2.3","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.2.3","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"1466ea92b7ee8f434475d86382771d6441f9347e","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.2.3.tgz","fileCount":5,"integrity":"sha512-jrfAH7elpqCcaiwoaZvEy51m9LMdnT1bAyXFgVqefjH8I18xzHAkqescG0b/jbQKfjtXAqVYyHNcreWVxV/c2w==","signatures":[{"sig":"MEUCIQDHzbC3H8JBZUi72t/XV3B8RoIH0kfksHWDAJlgkr8ieAIgTI7srtgVlBI0cTpzJVyalgiWX7ZPWqo7wFHhNKF83BI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32857},"type":"module","gitHead":"f2595c2a3d1fc289a420c74944fad8efef0db8fa","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.2.3_1776871562614_0.15280467236084005","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@4tk/openclaw-provider-4tk","version":"0.2.4","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.2.4","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"a2bd0bea86e0ca4df9e5ceaffdab4ddb124fab11","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.2.4.tgz","fileCount":5,"integrity":"sha512-IjHiAaUkHe+bewHh0/O+xx9Doqe2F/aEr3Q81tVuY4DrwWOd95XwZkPua8Q2fGxupoBJCIwpgRx3UiISTdpplA==","signatures":[{"sig":"MEYCIQCkSeDzHfWn51agLupjSWDNyz3q1vtGWHIqvbzwANK8awIhAP7rKnzo7ujJOvUg3/AWRqSZvndCeTkeHwZF+AhLfL/i","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35915},"type":"module","gitHead":"ca112c1842ecc6832de257a8864e59e7ec9e5ba6","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["fourtk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.2.4_1777101426557_0.5748519369793805","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@4tk/openclaw-provider-4tk","version":"0.3.0","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.3.0","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"7954c8f4bd6a75bb0880da14f07de4a24274a57a","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.3.0.tgz","fileCount":5,"integrity":"sha512-0IvUBBiOnYLP3Ic2p0GerxG4ZIqjUHC+2tmaYeJA1VbYfRyywcoV1fZS6/p0SrMQyQSGI/XuigjlwPlDMhx74Q==","signatures":[{"sig":"MEYCIQD0UELTenyGdZxCYmWAlI2lOD046bh2b4sjrOoEqwVmvgIhAMaPPMRoPeHhFEHKhWFyX/VneM/NDL9T1ZtzImZFTwyB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36544},"type":"module","gitHead":"ca112c1842ecc6832de257a8864e59e7ec9e5ba6","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["4tk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.3.0_1777110558676_0.6654252946225547","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@4tk/openclaw-provider-4tk","version":"0.3.1","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.3.1","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"c30b4a28327bee89cb9c7c4e628f175af8689201","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.3.1.tgz","fileCount":5,"integrity":"sha512-5tQGcYhLrCnAMctVc5NXhvWsuK0YCW/2jx/9CV6Glkcz8WNeqsWbSCYelEAG6fpGNOIpmr+PTVpx68k+C6soEQ==","signatures":[{"sig":"MEUCIFLTucNqAsxnNRQ2dHrL1qUwHcufbwdcxihLZ5n+hMVgAiEAsrGoNA9f28L9OLlCMfz5Pa3aQKj2Qvztsbiy0hw3ek8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36343},"type":"module","gitHead":"2cd42ccd68f66332c9347b3070487a03061a7a13","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.3.24-beta.2","pluginSdkVersion":"2026.3.24-beta.2"},"compat":{"pluginApi":">=2026.3.24-beta.2","minGatewayVersion":"2026.3.24-beta.2"},"providers":["4tk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.3.1_1777166138215_0.6827553319769464","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@4tk/openclaw-provider-4tk","version":"0.3.2","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.3.2","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"467801cb08c5189d59144d79c766bab292bce0d1","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.3.2.tgz","fileCount":5,"integrity":"sha512-N57Xh1J0vyKwTjKqQL3ykP1BQKK42POYPl3ig8cv9MohDf3GkSs34KNXo08o/ps4Lf3ulzpdVY91/TSGhWvGPA==","signatures":[{"sig":"MEQCIB0MH+U6WfwmQKB1Ie/Z88mR2dQqyL3YmmN5ZSjZyTqAAiBpcEYdsoUZ66LXyG/YZiLzz+0XDzbYQXew+Nwc3fqm9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38891},"type":"module","gitHead":"b8b0649fc248b673634797e1ff97bed78b1813a4","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.5.3-1","pluginSdkVersion":"2026.5.3-1"},"compat":{"pluginApi":">=2026.5.3-1","minGatewayVersion":"2026.5.3-1"},"providers":["4tk"],"extensions":["./index.ts"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.3.2_1777965216370_0.3238166674183771","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@4tk/openclaw-provider-4tk","version":"0.3.3","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"license":"MIT","_id":"@4tk/openclaw-provider-4tk@0.3.3","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"dist":{"shasum":"f10086fac99090534607111a14f0bcf26fc68ab0","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.3.3.tgz","fileCount":5,"integrity":"sha512-h+Xf/z5lhIHQ+txinicpThovFOM/QIiu/6DUza8gcxV1RmIuwV0ofAO25SJiEUqDSbjvnauETj/1zfYQ4QNbOg==","signatures":[{"sig":"MEUCIHTkKddioSDRx6iW54UbWJTbyufYdt8Ur+NNrBaXZiuMAiEAtqVrAlQw6eCy31a62f2VXPxoeDYMtGuNP74E1r4KEKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39087},"type":"module","gitHead":"b260698bd648a1aed7704f96214be70204b9a6f0","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"openclaw":{"build":{"openclawVersion":"2026.5.3-1","pluginSdkVersion":"2026.5.3-1"},"compat":{"pluginApi":">=2026.5.3-1","minGatewayVersion":"2026.5.3-1"},"providers":["4tk"],"extensions":["./index.mjs"]},"repository":{"url":"https://api.4tk.ai/docs/clients/openclaw/","type":"website"},"_npmVersion":"11.5.1","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","directories":{},"_nodeVersion":"24.7.0","dependencies":{"@sinclair/typebox":"^0.34.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/openclaw-provider-4tk_0.3.3_1778393410569_0.649972954983753","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@4tk/openclaw-provider-4tk","version":"0.3.4","description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","type":"module","license":"MIT","repository":{"type":"website","url":"https://api.4tk.ai/docs/clients/openclaw/"},"homepage":"https://api.4tk.ai/docs/clients/openclaw/","bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"publishConfig":{"access":"public"},"openclaw":{"extensions":["./index.mjs"],"providers":["4tk"],"compat":{"pluginApi":">=2026.5.3-1","minGatewayVersion":"2026.5.3-1"},"build":{"openclawVersion":"2026.5.3-1","pluginSdkVersion":"2026.5.3-1"}},"scripts":{"test":"node --test tests/*.test.mjs"},"dependencies":{"@sinclair/typebox":"^0.34.41"},"_id":"@4tk/openclaw-provider-4tk@0.3.4","gitHead":"045f3e2fb5aaf9c01a95d8d0cb40c2f1edffba9c","_nodeVersion":"24.7.0","_npmVersion":"11.5.1","dist":{"integrity":"sha512-fAsZr8Jbe17Sy+xnzk+ubgKzPkI9qPOIhKHhJFK/6RypBSlX7XSbuBI6SAPFqb0X/TSTz6RWoaVv1e8ZjE4cqQ==","shasum":"96b526f9733c79415b961aff08ac08e368637ac5","tarball":"https://registry.npmjs.org/@4tk/openclaw-provider-4tk/-/openclaw-provider-4tk-0.3.4.tgz","fileCount":5,"unpackedSize":39730,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCFw7NDRxy7ceAsUEtU8g0UcdNIR6oq+NDdFg2DnIAWVwIhAKeEEKPrSiOG8D2YWjIdgpc+r3pba/J5bbHyFOLiMofW"}]},"_npmUser":{"name":"4tk.ai","email":"team@4tk.ai"},"directories":{},"maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/openclaw-provider-4tk_0.3.4_1780666761224_0.9812647419405744"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-21T03:30:52.610Z","modified":"2026-06-05T13:39:21.488Z","0.1.0":"2026-04-21T03:30:52.829Z","0.1.1":"2026-04-22T05:27:40.009Z","0.2.0":"2026-04-22T11:26:37.252Z","0.2.1":"2026-04-22T12:01:39.779Z","0.2.2":"2026-04-22T13:36:56.247Z","0.2.3":"2026-04-22T15:26:02.811Z","0.2.4":"2026-04-25T07:17:06.710Z","0.3.0":"2026-04-25T09:49:18.823Z","0.3.1":"2026-04-26T01:15:38.382Z","0.3.2":"2026-05-05T07:13:36.508Z","0.3.3":"2026-05-10T06:10:10.721Z","0.3.4":"2026-06-05T13:39:21.366Z"},"bugs":{"url":"https://api.4tk.ai/docs/clients/openclaw/"},"license":"MIT","homepage":"https://api.4tk.ai/docs/clients/openclaw/","keywords":["openclaw","plugin","provider","responses","embeddings","tts","4tk"],"repository":{"type":"website","url":"https://api.4tk.ai/docs/clients/openclaw/"},"description":"OpenClaw provider plugin for 4TK.ai (Responses + Images + Embeddings + Speech)","maintainers":[{"name":"4tk.ai","email":"team@4tk.ai"}],"readme":"# OpenClaw 4TK Provider Plugin\n\n`@4tk/openclaw-provider-4tk` 是 4TK 的 OpenClaw provider 插件，用于将 4TK 能力接入 OpenClaw。\n\n## V1 能力\n\n- 对话/推理 provider（`openai-responses`）\n- `gpt-5.5` / `gpt-5.4` 的 `xhigh` 能力声明（`supportsXHighThinking` hook）\n- 图像生成/编辑 provider（OpenAI Images：`https://image.4tk.ai/v1/images/generations`、`.../edits`；编辑使用 `multipart/form-data` 上传图片）\n- Embedding 适配（`createEmbeddingProvider`）\n- Memory embedding adapter（`registerMemoryEmbeddingProvider`，可被 `openclaw memory` / `capability` 识别）\n- Speech/TTS provider（`registerSpeechProvider`）\n- 默认策略：\n  - memory: 默认开启；当默认主模型是 `4tk/*` 且 `memorySearch.provider=auto` 时，会自动补成 `4tk`\n  - TTS: 默认关闭；若 `defaults.enableTtsByDefault=true`，会自动补 `talk.provider=4tk` 和默认语音模型\n  - image: 默认补 `agents.defaults.imageGenerationModel` 为 `4tk/gpt-image-2`\n  - thinking: `4tk/gpt-5.5` 新会话默认 `xhigh`\n\n## 安装\n\n当前可用安装渠道：npm（`@4tk/openclaw-provider-4tk@0.3.4`）\n\n```bash\nopenclaw plugins install @4tk/openclaw-provider-4tk\n```\n\n## 0.3.4 补充说明\n\n`0.3.4` 起图像请求默认走 **image.4tk.ai**（`imageBaseUrl`），与聊天/embedding 使用的 `api.4tk.ai`（`baseUrl`）分离。\n\n## 0.3.1 补充说明\n\n`0.3.1` 将图像默认模型明确为 `gpt-image-2`（即默认 `4tk/gpt-image-2`），以匹配 Images API 的模型能力边界。\n\n## 鉴权（推荐：写入 OpenClaw auth profile）\n\n> 仅设置 `FOURTK_API_KEY` 可能不会被当前 agent 会话读取（会出现 `missingProvidersInUse`）。\n> 推荐使用 `models auth login` 写入 OpenClaw 的 auth profile。\n\n```bash\nopenclaw models auth login --provider 4tk --method api-key --set-default\n```\n\n执行后按提示粘贴 4TK 子令牌，会自动：\n\n- 写入 OpenClaw auth profile（当前 agent 可直接读取）\n- 将默认模型设为插件建议值（`4tk/gpt-5.5`）\n- 当 `agents.defaults.model.primary` 已是 `4tk/*` 且 `memorySearch.provider=auto` 时，自动将 memory provider 补为 `4tk`\n\n> 注意：插件不会覆盖你已经显式写死的 `agents.defaults.memorySearch.provider`（例如 `openai` / `voyage`）；只会在值为 `auto` 的场景下自动收敛。\n\n如需临时调试，也可以设置环境变量：\n\n```bash\nexport FOURTK_API_KEY=\"你在控制台创建的子令牌\"\n```\n\n## 推荐模型\n\n- 主模型：`4tk/gpt-5.5`（支持 `xhigh` 与图片输入）\n- 兼容模型：`4tk/gpt-5.4`\n- 图像生成/编辑默认模型：`4tk/gpt-image-2`\n\n`xhigh` 依赖两处一致：OpenClaw 的 `supportsXHighThinking` hook，以及请求层 `model.id` 必须是裸名（如 `gpt-5.5`），否则底层会按「非 xhigh 模型」降级。`0.1.1+` 已自动处理 `4tk/` 前缀。\n\n## 图像生成功能（傻瓜式）\n\n安装插件并完成 `models auth login` 后，OpenClaw 会自动加载 4TK Image provider。\n\n- 生成：默认使用 `4tk/gpt-image-2`，直接让助手“生成一张图……”\n- 编辑：在同模型下附带参考图，让助手“按这张图风格重绘/编辑……”\n\n底层会调用：\n\n- `POST https://image.4tk.ai/v1/images/generations`\n- `POST https://image.4tk.ai/v1/images/edits`\n\n## 可配置项（现在都会生效）\n\n`plugins.entries[\"4tk-provider\"]` 支持：\n\n- `baseUrl`：作用于对话、embedding、speech（默认 `https://api.4tk.ai/v1`）。\n- `imageBaseUrl`：作用于 OpenClaw image provider（默认 `https://image.4tk.ai/v1`）。\n- `defaults.embeddingModel`：作用于 memory 默认模型与 provider embedding fallback。\n- `defaults.imageModel`：作用于 OpenClaw image provider 默认模型，默认 `gpt-image-2`。\n- `defaults.extraModels`：追加聊天模型到 catalog / dynamic resolver（支持字符串或对象），用于新增模型时免发版。\n- `defaults.speechModel`：作用于 talk provider 默认语音模型。\n- `defaults.enableMemoryByDefault`：控制是否注入 memory 默认项。\n- `defaults.enableTtsByDefault`：`false` 时保持默认关闭；`true` 时自动补全 `talk.provider` 与 `talk.providers.4tk.modelId`。\n\n示例：\n\n```json\n{\n  \"plugins\": {\n    \"entries\": {\n      \"4tk-provider\": {\n        \"imageBaseUrl\": \"https://image.4tk.ai/v1\",\n        \"defaults\": {\n          \"extraModels\": [\n            \"gpt-5.6\",\n            { \"id\": \"gpt-5.6-2026-05-01\", \"name\": \"GPT-5.6 2026-05-01\", \"reasoning\": true, \"input\": [\"text\", \"image\"] }\n          ]\n        }\n      }\n    }\n  }\n}\n```\n\n## 本地开发与测试\n\n```bash\ncd openclaw-plugins/openclaw-provider-4tk\nnpm install\nnpm test\n```\n\n## 发布清单（ClawHub / npm）\n\n1. 更新版本号\n2. `npm test`\n3. ClawHub（需同时提供源码仓库与提交；源码仓库为 `4tk-ai/4tk.ai`）：\n\n```bash\ncd openclaw-plugins/openclaw-provider-4tk\nCOMMIT=\"$(git rev-parse HEAD)\"\nVERSION=\"$(node -p \"require('./package.json').version\")\"\nnpx clawhub package publish \"$(pwd)\" \\\n  --family code-plugin \\\n  --name @4tk/openclaw-provider-4tk \\\n  --display-name \"4TK OpenClaw Provider\" \\\n  --version \"$VERSION\" \\\n  --tags latest \\\n  --changelog \"...\" \\\n  --source-repo \"4tk-ai/4tk.ai\" \\\n  --source-commit \"$COMMIT\" \\\n  --source-ref \"main\" \\\n  --source-path \"openclaw-plugins/openclaw-provider-4tk\" \\\n  --no-input\n```\n\n4. `npm publish`（需 npm 2FA 或具备发布权限的 granular token）\n\n若 ClawHub 提示 GitHub API rate limit，请隔几分钟后重试。\n","readmeFilename":"README.md"}