{"_id":"@sleekcms/sync","_rev":"33-2374d2cf5640891ed37873ac6e35439b","name":"@sleekcms/sync","dist-tags":{"latest":"2.14.0"},"versions":{"1.0.0":{"name":"@sleekcms/sync","version":"1.0.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.0.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"e4a19864da1e7048673ee4ef365bb768077350d2","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.0.0.tgz","fileCount":13,"integrity":"sha512-7i7jfBIzxAxzIdAzv7Y+uYP8lFwGgoIJ/+CesBp0lzUW3aolE9ym9jq6DLkyOOjqfBypFFa2ipTQlSMEfMGHEQ==","signatures":[{"sig":"MEYCIQCoBiHnscvl82/dS4VjWmsJDN4mOujiJCskY99mOy/XiwIhAKkUGiUqKJFt5866uMVcVIL2MqwDZOty3QFiKIi5h6CH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67305},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8a080963ac584c324f3e3fd7c9b49f1a4e5dcdc0","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.0.0_1778024982384_0.7358732081187433","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@sleekcms/sync","version":"1.1.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.1.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"0c740d51c28535a06daec01f9a94067b90e75bad","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.1.0.tgz","fileCount":13,"integrity":"sha512-571WhMQWmg+NJ1bHwZIytpt6K/h0wS62lRyk4YwlDWGFIRGUWBdsucHXCiKphGVD0apMfZwsZkxslTqlBpEsEw==","signatures":[{"sig":"MEUCIQCX6yKTJZlM1gIrzbH8UwRZnXpEu+Y/PZvUOe83AjSligIgF4KYOewgDpzRJsJGywvF9b+qo/MzOqbC+PDdry4DSRI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67303},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"fc2a70ace2c57422792db11c0fbd7cad83118176","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.1.0_1778043402641_0.47688741385255295","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@sleekcms/sync","version":"1.2.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.2.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"f9837c329414c4e96c8a4ba30b2ef5db22e867d7","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.2.0.tgz","fileCount":13,"integrity":"sha512-cEKuFYp2/kofOQjb9K2q0ELulOZeZX6LATFxYVEhOLrKzYaBsE6tH4Og1p7ADFHunMCeGDkAC7pTZ/DXHzg8lQ==","signatures":[{"sig":"MEQCIE3LztwVO0jorsdc6uQQqCKygDtoVX3LQFd4MwUF0eqBAiA0fx6pXeErALwbq+iKuFKe3oRX/ga/pF3nHUe7xOAUKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67549},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"028e1ff51730c08cccfad718de9296612ddc123c","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.2.0_1778109812115_0.061685830552596466","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@sleekcms/sync","version":"1.2.2","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.2.2","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"45e59c54b4225f8d42dfae39abd05a59ca41883c","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.2.2.tgz","fileCount":13,"integrity":"sha512-h1iFLNOjHfOjuLq4FUd+6/WkHElJpqhrIvqbDo+xNS1bndUdYEKavCJ0K67UzE4/fvpKti/65aNow79EG3nAVw==","signatures":[{"sig":"MEUCIQCkGaklyVZjhBgNiRTEL8VF/iC/E9Tw9jHEADq12GfOSwIgNXp35/mLy9qycRuxC3dlo/YBOwpd3HEToV6OVSW0EC0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67694},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"56951e22626bf985aba89d31741219645f89684d","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.2.2_1778335337779_0.16321712103525732","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@sleekcms/sync","version":"1.2.3","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.2.3","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"4710c0b15c8857920e2cc2ece6e169090767961d","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.2.3.tgz","fileCount":13,"integrity":"sha512-XAqxr468NqXBZQLQjCNgUWf4Zfba70EUZmrEf5YtTZalVBivTRGOm20nUVdED3Bv+NOpEL+nedL1B4FMUKshIQ==","signatures":[{"sig":"MEMCIF+QlX0nz2bCBda/Xgey6ZQxncvV45y4Rl/iTdAFm6lZAh8rgEnhiHr8LK8212+zGdQ27hdRh83pj8wQoPBFqmIi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68369},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c6e97ca96db180028a37f4b38a6b2ab4ff4cebd4","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.2.3_1778868405703_0.2877739556541059","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@sleekcms/sync","version":"1.3.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.3.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"49336a2883df840900373fc0430cb049b305745e","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.3.0.tgz","fileCount":13,"integrity":"sha512-QrZx51Z+/gADEhHffFuH+9vdVHNh8icfi5gY+lNs9+yXjAs9zdwjQREe6xXwNK2SMJMyhjIofuNSJcZDAqCswg==","signatures":[{"sig":"MEQCIFkG3EvZFYFgR594cQkMY+0hk0jDiXMDFi7neC3YOm1yAiB2cPnP7evpD24AdTEGLQVLByPeOvtTMQPmuFWLPq/gYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71287},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"aa47c84af0b883912bc8f0c201472190c8a4f2fb","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.3.0_1779236191901_0.6058888749225766","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@sleekcms/sync","version":"1.4.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.4.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"944ef0c0c4ee36eb856b4ed129873812efc16042","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.4.0.tgz","fileCount":13,"integrity":"sha512-E7q7e0Exv4AYmTkZLoIkyIzvguuzw04yxgVHVjGaoJ8wGAmmC61uhtPIWmHAJR6mnqNvmQ1YhHFJnZdoU2ECTA==","signatures":[{"sig":"MEQCIEaPhkVNM9VbRUpZvLKcPICztmcZA4nIomCQoxQj0ZiZAiAenCgBe330wfTtVxv7wZ/bUQ5jD80Ev7tsMaodzflwGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76496},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0422d98978cceececbcde5a928c0800bc5fde4ab","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.4.0_1779679188412_0.8306052176055636","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@sleekcms/sync","version":"1.4.1","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.4.1","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"725abbcbdd045cf1696ebc896cdb77d4a004879a","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.4.1.tgz","fileCount":13,"integrity":"sha512-9ZcOlQ2YhnoYfGJzdV4MoTLDZ/PR8/gcrvNylmmhYVxB+dcM2pUmWPcJyq1HXPiTbqj2mjW7SkqUfDo1NOaDCA==","signatures":[{"sig":"MEYCIQDiJ3gPvVmZ71AEj1Ui09gUGKApsWZyoJ6jxYrWfzV5LQIhALCwvCqbEBboA8wbbQMslaPVVWtn3M6xL79inw0FsEKR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77664},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"54e3b879b8d7c974d3449169a99590be36dace0a","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.4.1_1779916623555_0.3527694716366716","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@sleekcms/sync","version":"1.4.2","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.4.2","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"d4324e54f9c91925649f366eb2fc311fba00bf4d","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.4.2.tgz","fileCount":13,"integrity":"sha512-NurLZHaP4PBh/XymqAQWiSadPodcofT+J1R77RUA/6m1O4O76278BqfNQHesG0gD8brbh4z5n2LTLk7zf1ynOg==","signatures":[{"sig":"MEQCIHavDWpxanlvwmLbrC3t6I0LDjKsPEZAMzyLpiQLEn3zAiAY18UewHZ/0DNe91XW4jZqpkt1leFMbvazEIfvBsZnIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77793},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"925e48b804aff4e3a44a8b26d347add92f1a49b6","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.4.2_1779994900050_0.8765998543589408","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"@sleekcms/sync","version":"1.4.3","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.4.3","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"411336ac85bec6d8951c648fdef167004e739830","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.4.3.tgz","fileCount":13,"integrity":"sha512-Fa7s9w7heYSZIn4XRxeJE0G5MhOcZTlmu3mbkY5DVkzpEN6OFwmwQaTbIlp/DV6a1sMhM/V3UDtjuC5WfBcfJA==","signatures":[{"sig":"MEUCIQCRfJey8NRw84zHR138NreFk1qnmkrAnRn/1Wi+IFtgLgIgGMwBdUVJdF1MYeugWnXVPPN9Q7/1bsl6W0ocRTP7OnI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79264},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"801b41a0ae197590982012e475bbbcb45a88d5c1","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.4.3_1780013412080_0.8912340471473115","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"@sleekcms/sync","version":"1.4.4","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.4.4","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"fcb4c42e7d24e40337a0cba8c7be1d04b98f0f38","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.4.4.tgz","fileCount":13,"integrity":"sha512-cyOJN3+arGNVeY+6mBr3QYRZmMCDCNE/L3tyEY7l+6k9y4QXdVCrBgiDsYLj5siDNyLxnLNyqK3rQQzE7Y+QGA==","signatures":[{"sig":"MEUCIDaRkK6U6TudRIeNpeH0EoYNwkHDHiaVvOtzZ+RgK7qVAiEAvgQjUPVF24fgGe/+LXGozu9maDPbZWW7hVTS83jLSzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80272},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"61dcb3e0d8e09dc73727a5d13f9a0ee39910c324","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.4.4_1780464067707_0.7471591379767932","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@sleekcms/sync","version":"1.5.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.5.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"ea1b5e4b38e5fe469594e6ad42879142884fc64c","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.5.0.tgz","fileCount":13,"integrity":"sha512-y+YRt9TTtZoNHj7XzzbSyL7AIxIj+yy6OApx6i2um6KH2VHt/kY+BJIUW7WciZJEd3lAGHQtpmDXCE/SmpJTHg==","signatures":[{"sig":"MEYCIQD5gNMbS63KHBvxoNKU8D5UEKBSyNlAdmvij4NKyhtYtAIhAPGKmO0vi7EVztabAI092v3MZ5SFAPXAz5c3eh+Kjmdx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82742},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0e78c12defa84d486567745a4ee4ee68ff7d3322","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.5.0_1780509364910_0.3304876328407338","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@sleekcms/sync","version":"1.6.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.6.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"6f76721db91afba7e3253c3b607b129df8b8c6f7","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.6.0.tgz","fileCount":13,"integrity":"sha512-fr4scyP/JfA2P2So605LNB8KK6dYnkhCxqwD2kipy0zst7HQ76jMEV1K4lCDPzDLHvtgDcb12JbNIA5VYStZcA==","signatures":[{"sig":"MEUCIDYoWgQCQxHMvTqY/U/28LOG7VL6hPd/0NzFndhle8IUAiEA/9adOionWg764x4ESCCkwiV3Z+3OyzvOz/QO8deaX6g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83773},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b13bf7e93749b70a2f8b7434fe06be9a918ea83d","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.6.0_1780599166658_0.016646272772434356","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@sleekcms/sync","version":"1.7.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@1.7.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"bdbc5c2d3b323680ef7d59c4cbc1ed466efac576","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-1.7.0.tgz","fileCount":13,"integrity":"sha512-scyzoKcgvf+uajGlMSkeWpJojslOIAKkOifOqG/mTeVq51nQyETPKT6j7sS+bvr7uEiE42UWzPlsj7MnrJ7x6g==","signatures":[{"sig":"MEQCIHpaZjBUcSVSUi7WYDtfGHzXjiVFaQWRMvRfbMvuqLRqAiAlqbPEDnK0woU91nzj/kYK2agqD38MmJ/42W5sZN4ffQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83752},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8e9087940d1b8f24b60c1e432c07c9ac5eb3ae35","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test __tests__/*.test.ts","build":"tsc && cp src/AGENT.md dist/ && chmod +x dist/index.js dist/setup-site.js dist/sync-site.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.2","@types/node":"^22.10.0","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_1.7.0_1780612759566_0.2535121698461844","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@sleekcms/sync","version":"2.0.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.0.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"aaa606f28a6c7de55bbc994ab5084bf885c11e58","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.0.0.tgz","fileCount":4,"integrity":"sha512-xfjCVoGRnZXJeBpuiCZwQ1wQsY6eImDJ5WDvDSdWbjfL+F07maPDllmzL17KCgazSg9Hmp0eTyacZqcG9Aooug==","signatures":[{"sig":"MEYCIQDXJ/+ihWNmj/7pZZq3slF0BceRT457q6O9HRiMzCeB4wIhAMwV+eN2es8GDC+jcTV20zBd/fhLowZWed5S7ZGMgHp7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69026},"main":"dist/index.js","type":"module","gitHead":"b97a1ee4850c2e63dfe81f9eee63bb3f9d47baad","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.0.0_1781849130725_0.8199156704337767","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@sleekcms/sync","version":"2.1.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.1.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"6f88f2deace0e90faf0f4d2d7294071c47a54727","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.1.0.tgz","fileCount":4,"integrity":"sha512-PArxt7/LOzZi1o+rmVD4vdt6UeThCDSXHQA+97yZn/H1HqkABPKQOdc6i9miYS4QlmZLwIDdrXETvLJpFuZLQg==","signatures":[{"sig":"MEUCIDt2vqqHCWM2PJ0i4zlyDRbfZhawBG/zCtOAWnGyUWKxAiEApRFywVsCSvdhtKSENUE8z+R8A/UMN6ydDSWKqDPljdc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69353},"main":"dist/index.js","type":"module","gitHead":"55b298c4e8fad7a1f00f0fd2595721ca76e7a930","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.1.0_1781851464711_0.5786971717062235","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@sleekcms/sync","version":"2.2.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.2.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"662c293384545aa8d3ce66636438d05ceb8a9579","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.2.0.tgz","fileCount":4,"integrity":"sha512-8wAd4fEyJlO6Hv14dvKpB/z0opWA4ZRtrKHieRSIKlpN7eYanekA/aLZV2szjvVBtHXxrMRfozgEGxhnRBMV+Q==","signatures":[{"sig":"MEUCIQDfWjG15zquO5fes6qH6Og8P88uarXfbD2BGmRCy2jYYgIgZL0RLOwcMIjXaDyYpkXOeYwMV+E35vT8CVjHfDlsr/w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69465},"main":"dist/index.js","type":"module","gitHead":"edadf1875b7759697a901bc1f69321f9670ee352","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.2.0_1781851839667_0.9434122800496882","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@sleekcms/sync","version":"2.3.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.3.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"1652f3b92d1823f492166607e472034d3ba8d338","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.3.0.tgz","fileCount":4,"integrity":"sha512-MhokpT/d3PrEsNgT8I1ieqLateFDROZ2sG8G0bgXP6TCJmj8I3r4oBBza5oh6xgwynouXb8CCBnDe7XVuuLUiA==","signatures":[{"sig":"MEUCIFxqgbtQus+WqttSdaEYpfC55ejlu1RGf5USNIPKekg4AiEA/hrZEk78mKz2e7xi1GT53b6mh62ZlIkjgSadnOtZazk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68976},"main":"dist/index.js","type":"module","gitHead":"71db41254a6bd768523533052542bfbad11fad25","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.3.0_1781971265465_0.5118581895624219","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@sleekcms/sync","version":"2.4.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.4.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"88a1f54a443f1fdc89cff92755c404d6d92f0ec0","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.4.0.tgz","fileCount":5,"integrity":"sha512-XTEZ2FbF+/FLc6mkHVU/pS2PWk/gh6/vOMTHzlmSlTAfsUHJGM3+8YxzPB4Y4cI98KE4p8HLVf3SjuVcCr/bKw==","signatures":[{"sig":"MEUCIQCPE7xs9fhlbA0FW53ircAe4nJy5JRNJpe4MagY673/NAIgL5g9SBDm+K14zTrEzYkg7NMEN5gaHPI14Gi6Xi9wOWs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84629},"main":"dist/index.js","type":"module","gitHead":"bd4855697e5092d1ba9d858efe84f2f6671831c7","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.4.0_1782440394247_0.5612341297177206","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@sleekcms/sync","version":"2.5.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.5.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"b13e608cac1d4712031548b19786b9f1f8fc6c54","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.5.0.tgz","fileCount":5,"integrity":"sha512-wmxMuHpr1G/KcW/B1IeO/jVde5PKdD5083rTu18wo6o2iRVxYlgSGkZhitSP3tMNPT4NtbqRUF98JyQKl0i/lw==","signatures":[{"sig":"MEUCIA0icw434xhHmC421EBdXm6W1Pa3Ntw7CMsOOC+byOzLAiEAtusfU87+B8WJAEJ52i04FlFGOS75mwqSlV2oxRDuHgo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87111},"main":"dist/index.js","type":"module","gitHead":"0f56dafb709276568a9c5bbf338961cb3752354a","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.5.0_1782507996056_0.887411320498307","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@sleekcms/sync","version":"2.6.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.6.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"41034fac56efe752c46e00be70afe30b10ee1b47","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.6.0.tgz","fileCount":5,"integrity":"sha512-JsBGbT5fZvmUcxsbXWgqrtjC5eXXhpUGkcm5m9amzdeuVq0v4cu+LKxlxBja+TYNuLQ8U2LeZHYwhmoYYLo3Ug==","signatures":[{"sig":"MEQCIBivSYls6SanKbQPS3UuNjrTaSuiNRnnBGPNxu95r87gAiBJeLpO8eYkF/ZiCDEOgzKoDnTOWrE6ITdvfiyGHxwGqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87924},"main":"dist/index.js","type":"module","gitHead":"3f329a8c6b51fd84afacc828458129697abe8035","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.6.0_1782511720189_0.44382572675299325","host":"s3://npm-registry-packages-npm-production"}},"2.6.1":{"name":"@sleekcms/sync","version":"2.6.1","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.6.1","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"f20ab857458798e49f532f950d538e5a32da462d","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.6.1.tgz","fileCount":5,"integrity":"sha512-CyLp0FQd2Y90janUBp/JLmBFfApJ4qyQ/G6DISbZsW9ODix/Wy093uXlidqBJncD6n6MlM6UOH3SKTacg749uw==","signatures":[{"sig":"MEQCIGgoag8UzIbcfUkldOxMl8215z/pCQSgikhqCzs3ZTjFAiAIUovMeunp5Ap9Qa/EinxwuZ5sIK1DKPwIBXXqsGrr/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87951},"main":"dist/index.js","type":"module","gitHead":"15f8cf5f267e336464ddd624a60e667e865476e0","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.6.1_1782518157257_0.462571632740693","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@sleekcms/sync","version":"2.7.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.7.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"eb400f0d97122a909eb74f4618249b30c040656b","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.7.0.tgz","fileCount":5,"integrity":"sha512-X73NS+7f10rHXMazhgs6IN3ZwWQf39S+TUXB0pLq0Kzdis2yKkCL2vmEjsuv55mnxl59GDbaqtT+j1BMjsY4jw==","signatures":[{"sig":"MEYCIQCXXFGgfRogEXcczDmUQEoKSEGbQzJHRH3xXPExvY2S5gIhAMkWVx+u11PgTF1FdNE+jflT513efIPzcXZUGV1/R3AT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88051},"main":"dist/index.js","type":"module","gitHead":"cbf2e55fd3316db05e4f865c36681b472f28ce32","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"11.6.2","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.17.0","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.7.0_1782526454625_0.015468512993341177","host":"s3://npm-registry-packages-npm-production"}},"2.7.1":{"name":"@sleekcms/sync","version":"2.7.1","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.7.1","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"69384b9ac76b5e77f1385dc307d0b2c213943368","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.7.1.tgz","fileCount":5,"integrity":"sha512-+ttC3/Uw9zc6DOxlh4K4oDuhZh9SG/hPjYiss0e1mSEsBMX9SxsFGnlLeuOY8tRMVnkzrAQWSPuqVKxBxzrCtg==","signatures":[{"sig":"MEUCIQD5eohRIr7ADvSsjj++Rk31CjMaiLvbw0F2XKqCwolX0wIgJHys65LSv7vUAMk8B5fEOS2CrTFBzpcJq//F73dcA40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88731},"main":"dist/index.js","type":"module","gitHead":"dcb1717af28bec1074a03b6644dd3eaf91649bad","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.7.1_1783475881764_0.29356956990174665","host":"s3://npm-registry-packages-npm-production"}},"2.7.2":{"name":"@sleekcms/sync","version":"2.7.2","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.7.2","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"bb2b2a9fca66db1b985686a97ebaeb341e979a34","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.7.2.tgz","fileCount":5,"integrity":"sha512-aD8XwX+DbqSF1YlN7jNsZTBVnAUyOp1d+SHVRtptIpeDMCSzgeKMXnS8eosZ4YQfpqWde1DZNBCzHumhZyzQFA==","signatures":[{"sig":"MEQCICP4I8AM59K/eKx3CVh5lmhsoS89ThjwQG3YAPDyuUNpAiBGXdvI+2Y61RrxYSiBDYYLBEDLtWaCgurPUrUjzL90bg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89411},"main":"dist/index.js","type":"module","gitHead":"94753417d7e8389db93c601a2ed5b4b07a637bbf","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.7.2_1783544387291_0.049333237597897206","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@sleekcms/sync","version":"2.8.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.8.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"a4bad788e8891a77f98174171746b044ab53b92c","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.8.0.tgz","fileCount":5,"integrity":"sha512-5sn+oT0KJb0Be4P/O/KJkp1fz+wMbjHiPvCHPAKXWrwwZSyAU9CHHAJP/0pLDpAmaNXuwR7aM05SX1fL22nnwQ==","signatures":[{"sig":"MEYCIQC/+oexIk9+l2f+GXp57ywsfo1NKNyvYVsl8OHA59oSgAIhANG0HvzKkcUGJLMn3RJE5OtrYnXDf1wzvJwViscfGEF5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98839},"main":"dist/index.js","type":"module","gitHead":"b7cda0dbaf84e68492b161c2722f2c0da379c5ed","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.8.0_1786942972848_0.8254050618660087","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@sleekcms/sync","version":"2.9.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.9.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"0e977507c43860f46f5c7c1f291248670a1224e2","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.9.0.tgz","fileCount":5,"integrity":"sha512-+5k3ruzWoYqEHwFDZ3PMDsNC3M9IFvfB6B2Aii+zmnWlJUeq54iH2aNSPPww7TvNfitfIo0LKECmcsDvbNo0vg==","signatures":[{"sig":"MEQCIBJTSgWmKHISgLptHMhq6KAnK5MO6Ru2Ix9XJLM1AECGAiBZ9q/vxlN73Bft8dsaSCvslTenzrXPIifzLTY/5mxS2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101383},"main":"dist/index.js","type":"module","gitHead":"19056200acffde7ae4ae8af5cbb640e8777ccd04","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.9.0_1788296169248_0.6398616002815125","host":"s3://npm-registry-packages-npm-production"}},"2.9.1":{"name":"@sleekcms/sync","version":"2.9.1","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.9.1","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"4f91e0eb79b161b93a8cff2fdfd8b05dc04291ba","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.9.1.tgz","fileCount":5,"integrity":"sha512-hzMdHfGSWh4Sp91mm0iINibhUc0WSzheaT3eOIx1DEKc6VTXFRLyNGfguh0SSWtbzhYcRdf9Ojno+83XAQ5yWg==","signatures":[{"sig":"MEUCIQCNOYb+4SlQ9XjLh73w/fYUId4AbjMGoqSLRTMCy0Uu/wIgOpU+LNkKAolNrPm8K7+SlEVyumatcgR4spdN7dHIYgw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101948},"main":"dist/index.js","type":"module","gitHead":"f4851d30e1098303918c183e4fd6131750987e0b","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.9.1_1788296806267_0.7508324024619752","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@sleekcms/sync","version":"2.10.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.10.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"7c44ccff81fa839d2c2d1c6f1cd0bd44a8668b15","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.10.0.tgz","fileCount":5,"integrity":"sha512-RPJj66CoT569z5kx6khCOwhhP2tln029FEweXnWVqCzCCLOCFWhPn2Yb9i1KnkjuyHUK6Lkz5ZSsE/ApYUsV6A==","signatures":[{"sig":"MEUCIQCjJe+wHARMewhaD0Xz0FN4hzHV8G/Cbiu4zYxaL1Ip+gIgVv9MTG0Qbyj85DDwzTE/0OXiQmcCapw4C2tPBiuOUjs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103601},"main":"dist/index.js","type":"module","gitHead":"6f8cec53d26e526822a114769ba44125371c817f","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.10.0_1788390523290_0.9500662038559826","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@sleekcms/sync","version":"2.11.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.11.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"6927e8b5209cff6c2254bbc704fa8f9c747817db","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.11.0.tgz","fileCount":5,"integrity":"sha512-9ejhdJQVtIlSuNT1LQIZvXN/vkIad7c8PxBE0IoAPnYhrbm7KaoEuoHGKmKy6cSnx/fzdTNzlgIL2Lhx9KGe+w==","signatures":[{"sig":"MEQCIEaD7m/r19utXR+G8t85sG2WNJJ2Qlvbd01nbn0c7xLIAiBGizfWlKeP1bcJGjp4z/ZTBBKGl3xYSGmWzdDvqfy/Hw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112719},"main":"dist/index.js","type":"module","gitHead":"9af84b842c1faaf9332b75dcf6faedc348b0abb9","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.11.0_1789000241270_0.2627370160265048","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@sleekcms/sync","version":"2.12.0","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","_id":"@sleekcms/sync@2.12.0","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"homepage":"https://sleekcms.com","bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"bin":{"sleekcms":"dist/index.js"},"dist":{"shasum":"000831478b497f2acc9d65649a1d0f4e33f892b4","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.12.0.tgz","fileCount":5,"integrity":"sha512-eeo9ErTyjFdEVxGvdRY7ZRSjq/PBK5E0IqykS2tetgulNat5jhZApvaLOhBEpgJ24/CDnwbHqCG7RY1RTCwaCQ==","signatures":[{"sig":"MEQCIFGau/heSY9SCYtx7p/STBleGA3N50Ofv+atn2W1cbI3AiBWmQcngIsRUuRwTiAufHzP0USnieC1SPb9nLSI2RCR9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDgcSNwm6i+Zqz8HreqxROeNralbUw9crQUC1knkmZhWAiAYe24vCVRaLeDT4SHCGwXJwx5FI5WiWghsLyf9k13Rgg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118671},"main":"dist/index.js","type":"module","gitHead":"e42a12bef5b787ab7080f82bf7fe078f46d23f1b","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"tmp":"tmp/sync_2.12.0_1790377281409_0.14875854771233055","host":"s3://npm-registry-packages-npm-production"}},"2.14.0":{"_id":"@sleekcms/sync@2.14.0","bin":{"sleekcms":"dist/index.js"},"bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"dist":{"shasum":"867d8454fe90e5ad59120b1fe5e78af568e60685","tarball":"https://registry.npmjs.org/@sleekcms/sync/-/sync-2.14.0.tgz","fileCount":5,"integrity":"sha512-maV60Sm3dC+dK+GiB/qGPa6gqPgK94KSwUpFK2u5zr4EMUq0L7asz3y2+m7SKQpLz17psyM5D5S8KCP3tYqsug==","signatures":[{"sig":"MEUCIQCOtqQ5t4ERYWp4mCduLH7VnGjfuEU6QcYkGC2s2YeNngIgWXT/933UXAYO8NzcOOEGKhuNgoNW8mMiG255z7d+vUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCqk0DvCQjKsZzYLdN3PPGMNQBOpAol20pnClTTc3k8bQIhAIMu+YRSfWl77Dw3x1aaVtUNGou9IqvVdCjv7yctfnG/"}],"unpackedSize":120927},"main":"dist/index.js","name":"@sleekcms/sync","type":"module","author":{"name":"Yusuf Bhabhrawala"},"gitHead":"6f5bf7b5364fb0e5d29b657850d8314216009ec4","license":"ISC","scripts":{"dev":"tsx src/index.tsx","test":"node --import tsx --test __tests__/*.test.ts","build":"npm run clean && node esbuild.config.mjs && cp src/AGENT.md dist/ && cp src/build.mjs dist/ && chmod +x dist/index.js","clean":"rm -rf dist","typecheck":"tsc --noEmit","publish:npm":"npm publish --access public","prepublishOnly":"npm run typecheck && npm run build"},"version":"2.14.0","_npmUser":{"name":"yusufnb","email":"yusufnb@gmail.com"},"homepage":"https://sleekcms.com","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"_npmVersion":"10.9.8","description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","directories":{},"maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.1.0","react":"^19.2.7","chokidar":"^4.0.3","fs-extra":"^11.3.0","commander":"^13.1.0","ink-text-input":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","esbuild":"^0.28.1","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^19.2.17","@types/fs-extra":"^11.0.4"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sync_2.14.0_1790457699903_0.3606559132661349"}}},"time":{"created":"2026-05-05T23:49:42.384Z","modified":"2026-09-26T21:21:40.313Z","1.0.0":"2026-05-05T23:49:42.551Z","1.1.0":"2026-05-06T04:56:42.765Z","1.2.0":"2026-05-06T23:23:32.259Z","1.2.2":"2026-05-09T14:02:17.929Z","1.2.3":"2026-05-15T18:06:45.844Z","1.3.0":"2026-05-20T00:16:32.039Z","1.4.0":"2026-05-25T03:19:48.599Z","1.4.1":"2026-05-27T21:17:03.703Z","1.4.2":"2026-05-28T19:01:40.222Z","1.4.3":"2026-05-29T00:10:12.251Z","1.4.4":"2026-06-03T05:21:07.855Z","1.5.0":"2026-06-03T17:56:05.061Z","1.6.0":"2026-06-04T18:52:46.799Z","1.7.0":"2026-06-04T22:39:19.746Z","2.0.0":"2026-06-19T06:05:30.907Z","2.1.0":"2026-06-19T06:44:24.903Z","2.2.0":"2026-06-19T06:50:39.801Z","2.3.0":"2026-06-20T16:01:05.585Z","2.4.0":"2026-06-26T02:19:54.402Z","2.5.0":"2026-06-26T21:06:36.195Z","2.6.0":"2026-06-26T22:08:40.321Z","2.6.1":"2026-06-26T23:55:57.391Z","2.7.0":"2026-06-27T02:14:14.762Z","2.7.1":"2026-07-08T01:58:01.954Z","2.7.2":"2026-07-08T20:59:47.431Z","2.8.0":"2026-08-17T05:02:53.003Z","2.9.0":"2026-09-01T20:56:09.387Z","2.9.1":"2026-09-01T21:06:46.408Z","2.10.0":"2026-09-02T23:08:43.414Z","2.11.0":"2026-09-10T00:30:41.422Z","2.12.0":"2026-09-25T23:01:21.494Z","2.14.0":"2026-09-26T21:21:40.023Z"},"bugs":{"url":"https://github.com/sleekcms/cms-sync/issues"},"author":{"name":"Yusuf Bhabhrawala"},"license":"ISC","homepage":"https://sleekcms.com","keywords":["sleekcms","cms","sync","cli","ejs","headless-cms","ai-agent"],"repository":{"url":"git+https://github.com/sleekcms/cms-sync.git","type":"git"},"description":"Edit SleekCMS sites locally — models, content, templates, images — with live two-way sync and AI agent support.","maintainers":[{"name":"yusufnb","email":"yusufnb@gmail.com"}],"readme":"# SleekCMS CLI\n\n**Build complete websites with AI. Edit them locally. Deploy instantly.**\n\nSleekCMS Sync brings your CMS to your code editor — with full AI-agent support baked in. Spin up an entirely new site by describing it in plain English, or drop into any existing site and edit templates, content, and styles the way you'd expect: locally, with real files, in your editor of choice.\n\nEvery save auto-syncs. Every change goes live. No build steps. No Git hooks. No infrastructure to manage.\n\n---\n\n## How does it work\n\n- **AI generates your entire site from a description** — models, templates, layouts, styles, and content, all wired up and ready to go.\n- **AI-generated sites are plain files** — EJS templates, JSON content, CSS, JS. You own every line. Open in VS Code, Cursor, or any editor.\n- **Any AI can maintain it** — the CLI injects `AGENT.md`, `CLAUDE.md`, and `.vscode/copilot-instructions.md` into your workspace. GitHub Copilot, Claude, Cursor — they all read the same site reference and understand your structure from day one.\n- **Live sync, always** — save a file, it syncs. Open the SleekCMS dashboard and your preview updates in real time.\n- **One command to start** — no installs required.\n\n---\n\n## Quickstart\n\n```bash\nnpx @sleekcms/sync --token <YOUR_AUTH_TOKEN>\n```\n\nThat's it. The CLI fetches your site, opens an editor prompt, and starts watching for changes. Grab a token from your [SleekCMS > Builder](https://app.sleekcms.com).\n\n---\n\n## Installation\n\n### Run without installing (recommended)\n\n```bash\nnpx @sleekcms/sync --token <YOUR_AUTH_TOKEN>\n```\n\n### Install globally\n\n```bash\nnpm install -g @sleekcms/sync\nsleekcms --token <YOUR_AUTH_TOKEN>\n```\n\n---\n\n## Usage\n\n```bash\n# Basic — auto-sync on every save\nnpx @sleekcms/sync --token abc123-xxxx\n\n# Manual sync — push changes only when you press [s]\nnpx @sleekcms/sync --token abc123-xxxx --manual\n\n```\n\nOnce running, press `r` to re-fetch all files or `x` / `Ctrl+C` to exit. In `--manual` mode, press `s` to push your changes on demand.\n\n---\n\n## Building a site with AI\n\nThis is where SleekCMS CLI becomes something different. Instead of hand-crafting every template, you describe the site you want and let an AI agent build it.\n\n### How it works\n\nWhen the CLI starts for the first time, it writes three files into your local workspace:\n\n| File | Picked up by |\n|---|---|\n| `AGENT.md` | Copilot (agent mode), any generic agent |\n| `CLAUDE.md` | Claude / Claude Code |\n| `.vscode/copilot-instructions.md` | GitHub Copilot in VS Code |\n\nThese files contain the complete SleekCMS site-building reference — file naming conventions, model syntax, template helpers, content format, and all the rules an AI needs to produce valid, working code.\n\n### Generate a complete site\n\nOpen the workspace in Cursor, VS Code with GitHub Copilot, or Claude Code, then describe your site:\n\n```\nBuild a portfolio site with:\n- A home page with a hero section, featured projects, and a contact form\n- A blog with individual post pages\n- A shared header and footer\n- Tailwind CSS styling\n- SEO meta tags on every page\n```\n\nThe AI creates the right files in the right places:\n\n```\nsrc/models/pages/home.model\nsrc/models/pages/blog[].model\nsrc/models/entries/header.model\nsrc/models/entries/footer.model\nsrc/models/blocks/hero.model\nsrc/views/pages/home.ejs\nsrc/views/pages/blog[].ejs\nsrc/views/entries/header.ejs\nsrc/views/entries/footer.ejs\nsrc/views/blocks/hero.ejs\nsrc/views/layouts/main.ejs\nsrc/public/css/tailwind.css\nsrc/content/pages/home.json\nsrc/content/pages/blog[]/my-first-post.json\nsrc/content/entries/header.json\nsrc/content/entries/footer.json\n```\n\nAs soon as those files hit disk, the watcher picks them up and syncs each one to SleekCMS. Your site is live before the AI finishes explaining what it built.\n\n### AI-generated sites are fully editable and maintainable — automatically\n\nThere's no lock-in, no proprietary format, no \"AI black box\". Every file the AI writes is the same real file you'd write by hand:\n\n- **Templates** are standard EJS — open them in any editor, tweak any line.\n- **Models** are plain JSON-like schema files — add a field, save, done.\n- **Content** is readable JSON — edit values directly without touching the CMS dashboard.\n\nAnd because `AGENT.md` / `CLAUDE.md` live in the workspace, any AI session — today or months from now — picks up the same full site context. Ask it to add a dark mode toggle, refactor the blog layout, or generate ten more blog posts. It already knows your site.\n\n---\n\n## How sync works\n\nThe CLI runs a local watcher after the initial fetch. Every time you save a file:\n\n1. The watcher detects the change (debounced to batch rapid edits).\n2. The changed file is classified — template, model, content record, CSS, or JS.\n3. It's pushed to the SleekCMS API in the correct order: models first, then templates, then content.\n4. The SleekCMS server rebuilds and redeploys the affected pages.\n\nOn first run, the CLI pulls the full site state from the server. After that, a local `.cache/` folder tracks server-known state so only real diffs are pushed — no redundant API calls.\n\nRenames sync too. Rename or move a page's, entry's, or block's model, view, or content file (in your editor, with `mv`, or `git mv`) and SleekCMS renames it: its other files are moved to match and a page's URL follows (`models/pages/about.model` → `about-us.model` moves `/about` to `/about-us`). Rename a collection by its model file (`models/pages/blog+.model` → `news+.model`) and its records folder follows; renaming a record's content file changes its URL. Links typed into templates or copy keep the old URL, and the sync log lists them.\n\n```\nYour editor → file save → watcher → SleekCMS API → rebuild → live site\n```\n\n### Manual sync mode (`--manual`)\n\nPass `--manual` (`-m`) to skip the live watcher. The CLI still does the initial fetch, but after that nothing is pushed until you press `s`. On each `s`, it scans the workspace, diffs against the cached state in `.cache/`, and pushes only the files that changed since your last fetch or sync — the same diff logic, run on demand instead of on every save.\n\nThis is useful when you want to batch a set of edits (or let an AI agent finish writing several files) and push them as one deliberate action.\n\n```\nYour editor → edit freely → press [s] → diff vs last fetch → SleekCMS API → live site\n```\n\n### Session commands\n\n| Key | Action |\n|---|---|\n| `s` | Push changed files now (`--manual` mode only) |\n| `r` | Re-fetch all files from server |\n| `x` or `Ctrl+C` | Exit and clean up local workspace |\n| `q` | Quit, keeping local files |\n\n---\n\n## Previewing your site\n\nEvery change you sync is immediately reflected in SleekCMS. To preview:\n\n1. Open the [SleekCMS dashboard](https://app.sleekcms.com).\n2. Navigate to your site.\n3. Click **Preview** — you'll see the live build with your latest changes.\n\nNo manual deploy. No waiting. SleekCMS rebuilds on every sync and the preview reflects the current state of your local workspace in real time.\n\n---\n\n## Local workspace structure\n\n```\n<site-name>/\n├── AGENT.md                              # AI agent reference (auto-generated)\n├── CLAUDE.md                             # Claude reference (auto-generated)\n├── .vscode/\n│   ├── copilot-instructions.md           # GitHub Copilot context (auto-generated)\n│   └── settings.json                     # Editor settings\n│\n└── src/\n    ├── models/\n    │   ├── pages/<key>.model             # Page content schema\n    │   ├── entries/<key>.model           # Entry content schema\n    │   └── blocks/<key>.model            # Block content schema\n    │\n    ├── views/\n    │   ├── pages/<key>.ejs               # Page templates\n    │   ├── entries/<key>.ejs             # Entry templates\n    │   ├── blocks/<key>.ejs              # Block templates\n    │   └── layouts/<name>.ejs            # Layout wrappers\n    │\n    ├── content/\n    │   ├── pages/<key>.json              # Single page content\n    │   ├── pages/<key>/<slug>.json       # Collection page content (one file per item)\n    │   ├── entries/<key>.json            # Single entry content\n    │   ├── entries/<key>[].json          # Collection entry content (array)\n    │   └── images.json                   # Reusable site-level images (handle → shortcut)\n    │\n    ├── public/\n    │   ├── css/<name>.css                # Stylesheets\n    │   └── js/<name>.js                  # Scripts\n    │\n    └── setup.json                        # Site setup: default page title, Tailwind on/off, sitemap on/off, cookie consent, analytics ids\n```\n\n### File naming\n\nKeys are lowercase, dash-separated. For pages, `_` in the key maps to `/` in the URL. A `[]` suffix marks a collection.\n\n| Key | URL |\n|---|---|\n| `_index` | `/` |\n| `about` | `/about` |\n| `blog[]` | `/blog/<slug>` |\n| `docs_getting-started` | `/docs/getting-started` |\n\n---\n\n## Content models\n\nModels describe the shape of your content. They're JSON-like files with unquoted keys and type names as values.\n\n```\n{\n    title: text,\n    image: image,\n    body: richtext,\n    published: boolean\n}\n```\n\n**Nested groups:**\n```\n{\n    hero: {\n        heading: text,\n        background: image\n    }\n}\n```\n\n**Repeatable lists:**\n```\n{\n    features: [\n        {\n            title: text,\n            icon: image\n        }\n    ]\n}\n```\n\n**Block and entry references:**\n```\n{\n    cta: block(cta),\n    author: entry(authors),\n    tags: [entry(tags)]\n}\n```\n\n### Field types\n\n| Type | Value |\n|---|---|\n| `text` | String |\n| `paragraph` | Multiline string |\n| `richtext` | HTML string |\n| `markdown` | Markdown string |\n| `number` | Number |\n| `boolean` | `true` / `false` |\n| `emoji` | Single Unicode emoji character, e.g. `\"😀\"` |\n| `date` | `YYYY-MM-DD` |\n| `image` | `{ url, alt }` |\n| `video` | `{ url, embed }` |\n| `link` | URL string |\n| `json` | Object or array |\n| `block(key)` | Embedded block object |\n| `stack` | Array of heterogeneous block objects; each item carries `_block: \"<block_key>\"` to name its block |\n| `entry(key)` | Reference token `\"<index>\\|<text>\"` — `index` is the entry's 0-based position in `content/entries/<key>+.json` (what binds); the optional `<text>` is the entry's opening content copied verbatim (a substring check, not a summary you write). Resolves to the entry object in templates |\n\n---\n\n## EJS template syntax\n\n| Tag | Purpose |\n|---|---|\n| `<%= expr %>` | Output with HTML escaping |\n| `<%- expr %>` | Output raw HTML |\n| `<% code %>` | Execute JS (loops, conditionals) |\n\n### Template context\n\n| Variable | Description |\n|---|---|\n| `item` | The current page, entry, or block record |\n| `pages` | All page records |\n| `entries` | All entries keyed by handle |\n| `main` | Rendered page output (layouts only) |\n\n### Helper functions\n\n**Content access**\n\n| Function | Description |\n|---|---|\n| `getPage(path)` | Page by exact path |\n| `getPages(path, opts?)` | Pages where path starts with prefix; pass `{ collection: true }` for collection pages only |\n| `getEntry(handle)` | Entry by handle |\n| `getImage(handle)` | Site-level image by handle (from `images.json`) |\n| `getSlugs(path)` | Slugs under a collection path |\n| `path(page)` | Relative URL path of a page (e.g. `/blog/my-post`) |\n| `url(pathOrPage?)` | Site origin, or a full absolute URL when given a path string or page object |\n\n**Rendering**\n\n| Function | Description |\n|---|---|\n| `render(val)` | Render a block or entry through its template |\n| `marked(md)` | Convert markdown to HTML |\n| `remark(md, opts?)` | Convert markdown to HTML with syntax-highlighted code blocks, math (`$…$`, `$$…$$`) and Mermaid diagrams, adding only the CSS/JS a page needs. `opts.codeTheme` picks a highlight.js theme (default `github-dark`) |\n\n**Images**\n\n| Function | Description |\n|---|---|\n| `img(image, attr)` | `<img>` element |\n| `src(image, attr)` | Optimized image URL |\n| `picture(image, attr)` | `<picture>` with dark/light variants |\n| `svg(image, attr?)` | Inline SVG |\n\n`attr` can be a `\"WxH\"` string or `{ w, h, class, style, fit }` object.\n\n**Head injection** (deduplicated automatically)\n\n| Function | Description |\n|---|---|\n| `title(text)` | Set `<title>` |\n| `meta(attrs)` | Add `<meta>` tag |\n| `link(value)` | Add `<link>` (CSS URL, font, etc.) |\n| `style(css)` | Inline `<style>` block |\n| `script(value)` | External or inline `<script>` |\n\n> **Tailwind:** Creating `src/public/css/tailwind.css` enables Tailwind automatically — it's compiled and injected for you. Do **not** add it via `link()`.\n\n---\n\n## Example templates\n\n**Layout (`src/views/layouts/main.ejs`)**\n\n```ejs\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n</head>\n<body>\n  <%- render(getEntry('header')) %>\n  <main><%- main %></main>\n  <%- render(getEntry('footer')) %>\n</body>\n</html>\n```\n\n**Page (`src/views/pages/blog[].ejs`)**\n\n```ejs\n<% title(item.title + ' | My Blog') %>\n<% link('/css/styles.css') %>\n\n<article>\n  <h1><%= item.title %></h1>\n  <%- img(item.cover, '1200x600') %>\n  <%- marked(item.body) %>\n</article>\n```\n\n**Blog index listing**\n\n```ejs\n<% for (const post of getPages('/blog', { collection: true })) { %>\n  <a href=\"<%- path(post) %>\">\n    <%- img(post.cover, '400x250') %>\n    <h3><%= post.title %></h3>\n  </a>\n<% } %>\n```\n\n**Forms** (no backend needed)\n\n```html\n<form data-sleekcms=\"contact\">\n  <input name=\"name\" type=\"text\" required>\n  <input name=\"email\" type=\"email\" required>\n  <textarea name=\"message\"></textarea>\n  <button type=\"submit\">Send</button>\n</form>\n```\n\nAny form with `data-sleekcms=\"<name>\"` captures and stores submissions in the CMS dashboard automatically. File uploads work out of the box too — add an `<input type=\"file\">` and visitors can attach documents (PDF, Word, Excel, CSV, text) and images:\n\n```html\n<input name=\"resume\" type=\"file\" accept=\".pdf\">\n```\n\n---\n\n## Content files\n\nContent lives in `src/content/` as plain JSON. Edit any content file and save — it syncs like any other file.\n\n## Site setup (`src/setup.json`)\n\nSite-wide decisions made once — the default page title, whether Tailwind is compiled, whether a sitemap is published, the cookie consent switch, and analytics tag ids — live in `src/setup.json`, mirrored from **Settings → Website** in the CMS. The file is JSON with a comment above each key explaining it:\n\n```json5\n{\n  title: \"Acme Dental\",     // default <title> for pages without their own; null = the site name\n  tw_enabled: true,         // compile src/public/css/tailwind.css and inject it into every page\n  sitemap_enabled: false,   // publish sitemap.xml + robots.txt on every build\n  cookie_consent: false,    // consent banner; holds analytics + data-sleekcms-consent scripts until accepted\n  analytics: {              // tag ids injected into every page; include only the ones you use\n    ga4: \"G-XXXXXXXXXX\",\n  },\n}\n```\n\nEdit the values and save — it syncs like any other file. Keys you leave out keep their current value. Which pages are excluded from the sitemap is managed in the CMS UI, not in this file.\n\n## Cookie consent\n\nSet `cookie_consent: true` in `src/setup.json` and tag any script or iframe that sets cookies with `data-sleekcms-consent=\"<category>\"`. At build time SleekCMS neutralizes the tagged elements, injects a consent banner into every page, and activates each one only after the visitor accepts its category. The analytics ids in `setup.json` are tagged `analytics` automatically.\n\n```ejs\n<% script({ src: 'https://example.com/widget.js', 'data-sleekcms-consent': 'marketing' }) %>\n<iframe data-sleekcms-consent=\"marketing\" src=\"https://www.youtube.com/embed/VIDEO_ID\"></iframe>\n<a data-sleekcms-consent href=\"#\">Cookie settings</a>   <!-- reopens the preferences panel; put one in the footer -->\n```\n\nCategory names are yours (`analytics`, `marketing`, …); the banner offers exactly the ones found on the site. An optional empty `<div data-sleekcms-consent data-position=\"bottom\" data-theme=\"auto\" data-policy-url=\"/privacy\"></div>` in the layout customizes position (`bottom`, `bottom-left`, `bottom-right`, `modal`), theme, policy link, locale and button labels, and `--sleek-consent-bg/text/accent/on-accent/radius` CSS variables restyle it. The full reference is in the `AGENT.md` that `sleekcms sync` writes into your workspace.\n\n## Images\n\nImages are part of content, not a separate asset pipeline. Drop a shortcut string into any `image` field and the sync engine resolves it to a full `{ url, alt }` object on save:\n\n```json\n{\n  \"title\": \"About Us\",\n  \"image\": \"pexels:team meeting\",\n  \"hero\": {\n    \"heading\": \"Hello\",\n    \"background\": \"unsplash:mountain sunrise|Sunrise over the mountains\"\n  }\n}\n```\n\nSupported sources: `unsplash`, `pexels`, `pixabay`, `iconify`, `url`, `cms`. Append `|<alt text>` to set the image's `alt`.\n\n### Reusable images (`src/content/images.json`)\n\nFor images used in more than one place — logos, recurring icons, shared hero art — declare them once as `handle → shortcut`:\n\n```json\n{\n  \"logo\": \"url:https://cdn.example.com/logo.svg\",\n  \"hero\": \"pexels:team meeting|Our team\",\n  \"favicon\": \"iconify:mdi:rocket\"\n}\n```\n\nThen reference any of them from any `image` field with `\"cms:<handle>\"` (e.g. `\"cms:logo\"`). Templates can also fetch the resolved object directly via `getImage('logo')`.\n\n### Images in markdown\n\nInside `markdown` fields, the same shortcuts work in standard image syntax. Append `|<alt>` for alt text and a `<width>x<height>` token to set the rendered dimensions (defaults to `600x400`):\n\n```markdown\n![doctor](pexels:doctor|Smiling doctor 800x600)\n```\n\n---\n\n## Prerequisites\n\n- **Node.js** v16 or later\n- A **SleekCMS account** with a CLI auth token ([get one here](https://app.sleekcms.com))\n\n---\n\n## Troubleshooting\n\n| Problem | Fix |\n|---|---|\n| Authentication error | Verify your token in the SleekCMS dashboard |\n| No files downloaded | Check your token and `--env` setting |\n| Changes not syncing | Check terminal output; changes are debounced by 5 seconds |\n| Wrong workspace opened | Each token maps to a specific workspace folder |\n| Workspace disappeared | Expected — the local workspace is wiped on `Ctrl+C` / `x`. Your edits are already on the server; re-run the CLI to pull a fresh copy. |\n\n---\n\n## License\n\nISC — [Yusuf Bhabhrawala](https://sleekcms.com)\n\n---\n\n[SleekCMS](https://sleekcms.com) · [Documentation](https://docs.sleekcms.com) · [Dashboard](https://app.sleekcms.com)\n","readmeFilename":"README.md"}