{"_id":"@bernierllc/content-workflow-ai-review-step","_rev":"16-2fdbdedc139cca45c4e79455ffe7ed7b","name":"@bernierllc/content-workflow-ai-review-step","dist-tags":{"latest":"0.8.2"},"versions":{"0.1.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.1.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.1.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"30fe44c1a5cc4374923f6304499ca4c358d4a4ee","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.1.0.tgz","fileCount":26,"integrity":"sha512-a0u4gsAp+ahqB7XyYmibwI3l1muqyALWkkSaXJ3NltZ7K5jb4YAmwi7ALYwseBvzW9XwuEtpp7SQEVCzGW3YiQ==","signatures":[{"sig":"MEYCIQDxheQGYcVMLZpv5CUhH97VySSg2iQ+CnAmnD3RPAHdbQIhAO2Z4BhESa9+IGuUN08L2eUo7yhyxMX2jvLqWUzNXQk7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.1.0.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/tmp/88902f8a2c4cb2ace5d76bdd37add720/bernierllc-content-workflow-ai-review-step-0.1.0.tgz","_integrity":"sha512-a0u4gsAp+ahqB7XyYmibwI3l1muqyALWkkSaXJ3NltZ7K5jb4YAmwi7ALYwseBvzW9XwuEtpp7SQEVCzGW3YiQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.7.0","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.0.3","@bernierllc/neverhub-adapter":"0.1.2","@bernierllc/ai-provider-router":"1.0.1","@bernierllc/ai-content-reviewer":"1.0.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.1.0_1766087468176_0.7691691410540413","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.1.1","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.1.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"00bb3a832b16bf3f7d8dda3f1dcde85e8a350392","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.1.1.tgz","fileCount":26,"integrity":"sha512-+2KM/gQp4hF+AreUsB+at5sADfBHK9voGqzTaf6Q2CPS1nRRQetwtIIrDURf+htp18DkXAvnxrWXhHkB4lW+tg==","signatures":[{"sig":"MEUCIEH9HHZY9RxybIGU0iQI7BpFEP/p/IgYLTekyWloP7JKAiEAzeaPbi9hZ/2W5xxNAyHA5zNZrFT2/3NMqzhi9GRGBp8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.1.1.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/tmp/74e9386103d1baef38af1ddf6c434115/bernierllc-content-workflow-ai-review-step-0.1.1.tgz","_integrity":"sha512-+2KM/gQp4hF+AreUsB+at5sADfBHK9voGqzTaf6Q2CPS1nRRQetwtIIrDURf+htp18DkXAvnxrWXhHkB4lW+tg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.7.0","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.0.4","@bernierllc/neverhub-adapter":"0.1.2","@bernierllc/ai-provider-router":"1.0.2","@bernierllc/ai-content-reviewer":"1.0.4"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.1.1_1766437828537_0.7933511493203993","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.1.2","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.1.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"d1354dab7e7f02f9854ad6385c3e8f5c12411542","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.1.2.tgz","fileCount":26,"integrity":"sha512-y5yAE0cjOMas5PHeNt1oNC42U/NYNWTuL09EtN7KKdNjN2CRF2FxKDW7lSSF9LgpXi5LM6NzG37VDHWgGPJzBA==","signatures":[{"sig":"MEUCIGfKsjuNK0hNB16ZUtM/hqYCfzm6DFs/C7Ew3ARTUWuXAiEAnSiMp/8aN7FcjFBKshes1nHUDQhQPWukrEDp1NZM3gY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.1.2.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/tmp/1cccf9e8ddacf0b5fa97e2160b502eae/bernierllc-content-workflow-ai-review-step-0.1.2.tgz","_integrity":"sha512-y5yAE0cjOMas5PHeNt1oNC42U/NYNWTuL09EtN7KKdNjN2CRF2FxKDW7lSSF9LgpXi5LM6NzG37VDHWgGPJzBA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.7.0","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.1.0","@bernierllc/neverhub-adapter":"0.1.2","@bernierllc/ai-provider-router":"1.0.3","@bernierllc/ai-content-reviewer":"1.0.5"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.1.2_1766454449235_0.49751496386024785","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"652a2802ce31c5faa27dd80e18846ae1e055e478","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.0.tgz","fileCount":26,"integrity":"sha512-cbPHQkeXKABsHl/Wok1XUrdPsSeCj7+dQpFz1Fqe5NFgkmi/2mCDH9JWmSIQbiNcdkNdDLihrdt/HJ3Zd3HwOQ==","signatures":[{"sig":"MEQCH2/X9RCeTrXeRnU8s3Q3srfgPQRzZUQ0N46oIBt7TqICIQDn0fNoYh2bjs38GMUywFuJByxjgoHuqMCQ/mfakojgXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77208},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.3.0","@bernierllc/neverhub-adapter":"0.1.4","@bernierllc/ai-provider-router":"1.2.0","@bernierllc/ai-content-reviewer":"1.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.0_1767642500125_0.8936768010409422","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.2","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"f304cf20752d1ed2d582fa7872339320987ca741","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.2.tgz","fileCount":26,"integrity":"sha512-yhI52Rs1IDVVRdXu/9m0u7SORKoSm3ngrzAmYB97dTQ4oYer6CAOXyhJcdDxx/xzhqZviFMzC+1GDw18JYH+Pg==","signatures":[{"sig":"MEUCIAilMZ8TsfNMmUzXPKhQYW0RMn6b8GHapuTPl30wBaoyAiEApAt+RxgT+79qPlUUpL6A/aqTwBbmn6f4eJXqCm84L3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.3.2.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.3.2.tgz","_integrity":"sha512-yhI52Rs1IDVVRdXu/9m0u7SORKoSm3ngrzAmYB97dTQ4oYer6CAOXyhJcdDxx/xzhqZviFMzC+1GDw18JYH+Pg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.11.0","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@bernierllc/logger":"1.3.2","@bernierllc/neverhub-adapter":"0.1.6","@bernierllc/ai-provider-router":"1.2.2","@bernierllc/ai-content-reviewer":"1.0.9"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.2_1773163502148_0.9403931553337181","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.3","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"eecde645234a80532e6ad94a2a7c94301b9fcca2","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.3.tgz","fileCount":26,"integrity":"sha512-rjNWsYX91GHf1I6YDg4SNCdQhTmK3HPwMxhmVqXKsx95v7I2kcaydPRDdPOYAuLego4JmotCPakTp94BZqK/wQ==","signatures":[{"sig":"MEYCIQCR4wOf4FY26oYO2LzcTsAs9/uWc3eXN4aIAi46McQwAwIhAMq3s3i4V0uTNDRpHcLJnd6GC2IQBwc1gMkMyo5E6Oth","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77151},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.3.3.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.3.3.tgz","_integrity":"sha512-rjNWsYX91GHf1I6YDg4SNCdQhTmK3HPwMxhmVqXKsx95v7I2kcaydPRDdPOYAuLego4JmotCPakTp94BZqK/wQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.0","@bernierllc/neverhub-adapter":"0.1.6","@bernierllc/ai-provider-router":"1.2.3","@bernierllc/ai-content-reviewer":"1.0.10"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.3_1779133707050_0.5257937384026894","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.4","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"aeb7b2e06e0eeb163a8fedd7408c0d2a35acf263","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.4.tgz","fileCount":26,"integrity":"sha512-fg8bfyWc1Pi9OW3dRpHizZObJ2L6zjMuTfi1It4uh5z5XUcSiCqlD4XsmU3Zh1ufroV/jowa7M5RN4DoOMBCCg==","signatures":[{"sig":"MEQCIDgbU780MG1BvX2yR3LS6vWcmnbsHUw1UpHMGOw895b2AiAFS7TVyNJg0hSkwq4zNPyQONf8eiWIj8aSFag5d0VUfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77151},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.3.4.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.3.4.tgz","_integrity":"sha512-fg8bfyWc1Pi9OW3dRpHizZObJ2L6zjMuTfi1It4uh5z5XUcSiCqlD4XsmU3Zh1ufroV/jowa7M5RN4DoOMBCCg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.2","@bernierllc/neverhub-adapter":"0.1.6","@bernierllc/ai-provider-router":"1.2.4","@bernierllc/ai-content-reviewer":"1.0.11"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.4_1779157398303_0.8650570683775765","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.5","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.5","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"b188fff72c2233a905b35fc2e0d1978fd389e3de","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.5.tgz","fileCount":26,"integrity":"sha512-v2RxkoxcujD3bX6q+5XWK9D/pIbbpd4vGJQ15L46S7GLuQHmGuJtK9/BcGxHc89ydjhEjTrZVepz+px9pi3fHg==","signatures":[{"sig":"MEUCIDelyfDZlQMUkTk9atxPPlMvkuwG54vi6XOwD6swBYKrAiEA4q8msu1lFt+fxKbQYVDpRP4gL7bRrIynFZ8TVZVhyqg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77151},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.3.5.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.3.5.tgz","_integrity":"sha512-v2RxkoxcujD3bX6q+5XWK9D/pIbbpd4vGJQ15L46S7GLuQHmGuJtK9/BcGxHc89ydjhEjTrZVepz+px9pi3fHg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.3","@bernierllc/neverhub-adapter":"0.2.0","@bernierllc/ai-provider-router":"1.2.5","@bernierllc/ai-content-reviewer":"1.0.12"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.5_1779221549470_0.24774046237436886","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.3.6","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.3.6","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"043fa4f53cf76c4ca0dc1b3e3f1b63e84f13fee3","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.3.6.tgz","fileCount":26,"integrity":"sha512-cYOjWHlfdjqYBLucPSlzHdGgamS5G6Go73FlRQCUFDCWJiZus5Mf7D2zKeY6tW8FJItHdr4gvWjyFp+8pyXYEg==","signatures":[{"sig":"MEUCIGQLdvQ47qJAVljDzIDltWu4lPMAFHVKzm/FVhmmPRaeAiEAsn0WxRKYtDbZcvMjMEPJRDZJXH4e+0Wr+wK4F4Dq/I8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77151},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.3.6.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.3.6.tgz","_integrity":"sha512-cYOjWHlfdjqYBLucPSlzHdGgamS5G6Go73FlRQCUFDCWJiZus5Mf7D2zKeY6tW8FJItHdr4gvWjyFp+8pyXYEg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.3","@bernierllc/neverhub-adapter":"0.2.0","@bernierllc/ai-provider-router":"1.2.6","@bernierllc/ai-content-reviewer":"1.0.12"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.3.6_1779234037198_0.4975358457047363","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.4.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.4.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"23064ca08dd53bcbc40c33174de0ee56a23b7aaa","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.4.0.tgz","fileCount":26,"integrity":"sha512-Xh+j3bg67MT8hzZndCcEnoiz5iRYmFalygSNiNRMCvC44CnGxJKdeXfJkwFdwTJDA+ljLsp1V+eC0Zo9QOCD/A==","signatures":[{"sig":"MEUCIQDtC5eppEqZjoptfTNilP6lzE+y3F6xBimrvNDKo0/fAgIgdyu3pkCgMRkNoijj2bz7rdJNG5yOZDRUwJXAKe+VyEA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.4.0.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.4.0.tgz","_integrity":"sha512-Xh+j3bg67MT8hzZndCcEnoiz5iRYmFalygSNiNRMCvC44CnGxJKdeXfJkwFdwTJDA+ljLsp1V+eC0Zo9QOCD/A==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.6.0","@bernierllc/neverhub-adapter":"0.3.0","@bernierllc/ai-provider-router":"1.3.0","@bernierllc/ai-content-reviewer":"1.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.4.0_1779241598446_0.04570640818767169","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.4.1","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.4.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"822986da473affd5809be92dced56ef36c265323","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.4.1.tgz","fileCount":26,"integrity":"sha512-PPIU+odDnFK7cbZW9BKLuwj2WqjD5Mi1S+UgHX3hF1ntZSuii6gq7Ioep2fXUx6khnny1+ybN+bfZmq5foI/lA==","signatures":[{"sig":"MEUCIQDBt8PNKjtdEazLu8LPySawXUv9mknitEVELaVm82aGVAIgfRZVpDtYga7qhJctBhU5yyHvY/8lg/dEZxZ/4i4bfp4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77150},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.4.1.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.4.1.tgz","_integrity":"sha512-PPIU+odDnFK7cbZW9BKLuwj2WqjD5Mi1S+UgHX3hF1ntZSuii6gq7Ioep2fXUx6khnny1+ybN+bfZmq5foI/lA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.6.0","@bernierllc/neverhub-adapter":"0.3.0","@bernierllc/ai-provider-router":"1.3.1","@bernierllc/ai-content-reviewer":"1.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.4.1_1779243417858_0.3168381656601782","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.6.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.6.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"f4d3be848ac85e8353656a7ff066cfa3a117f8c1","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.6.0.tgz","fileCount":30,"integrity":"sha512-Bs3TvA5R9b97KnHZy3TfTwMvdw90MZfLpd3b5afzCLmRmB54NGUeRasg/b3WnnZx7Z3W/Hei1dJEfFP88W5lqw==","signatures":[{"sig":"MEYCIQCvBpvz6sByO/kVEScqudq8j7Cf7U68zB8Hdv/FSuqqQgIhAJuZvgF2vl6wjWHH8t/C8tphaaHLvvtAC0lkslhikzmc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80086},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.6.0.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.6.0.tgz","_integrity":"sha512-Bs3TvA5R9b97KnHZy3TfTwMvdw90MZfLpd3b5afzCLmRmB54NGUeRasg/b3WnnZx7Z3W/Hei1dJEfFP88W5lqw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.6.0","@bernierllc/neverhub-adapter":"0.3.0","@bernierllc/ai-provider-router":"1.5.0","@bernierllc/ai-content-reviewer":"1.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.6.0_1779245938619_0.8069807683128372","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.7.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.7.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"a59e51e724e84a470f70503cc6b736137b2cbffc","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.7.0.tgz","fileCount":30,"integrity":"sha512-Lo09ie7vlmCk4oe7ten4WLN1QmjGuYm9tmkEAS65jje0htDJ41k219zXT1boil9ex66JSPl274hXAaImRcgOEg==","signatures":[{"sig":"MEUCIC58RQKhO6ygEa9XShBIoIRZueTgIFl/H0xURjH9A/aUAiEA/rPCPyLCMCFYkBTtYDoSowzk79OBzDKJA4CQpl499l4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80086},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.7.0.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.7.0.tgz","_integrity":"sha512-Lo09ie7vlmCk4oe7ten4WLN1QmjGuYm9tmkEAS65jje0htDJ41k219zXT1boil9ex66JSPl274hXAaImRcgOEg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.7.0","@bernierllc/neverhub-adapter":"0.4.0","@bernierllc/ai-provider-router":"1.6.0","@bernierllc/ai-content-reviewer":"1.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.7.0_1779250344669_0.46795989046317943","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.8.0","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.8.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"b836d961e5dabb7eaea8d7524add933b41c92c38","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.8.0.tgz","fileCount":30,"integrity":"sha512-nKYY5IvgTod6rF57P2ZDj41nTfTAWYeQ/PgE+EFvGGNLgroOnZlRt6yCjKrbgExpIkpjhcTZvrcVMy2gNH7MhA==","signatures":[{"sig":"MEUCIQDaAiBGUKY6/N0c1egjT3RfaqlCoBZQOzjdKISIJuCbhAIgRjQ/tEbalpT2+4LytJZ6RaIyvi/o+cZ1vr/W6+Gk/4Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80086},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.8.0.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.8.0.tgz","_integrity":"sha512-nKYY5IvgTod6rF57P2ZDj41nTfTAWYeQ/PgE+EFvGGNLgroOnZlRt6yCjKrbgExpIkpjhcTZvrcVMy2gNH7MhA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"11.14.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.7.0","@bernierllc/neverhub-adapter":"0.4.0","@bernierllc/ai-provider-router":"1.7.0","@bernierllc/ai-content-reviewer":"1.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.8.0_1779303403400_0.5333762922071412","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@bernierllc/content-workflow-ai-review-step","version":"0.8.1","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/content-workflow-ai-review-step@0.8.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"7188810797be6f95988546cd5f654beacadae4ff","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.8.1.tgz","fileCount":30,"integrity":"sha512-n0koQ8wm66Oe8uKdOGmU+hzAJVMv8F++tWVz2nOr5Igw5Ew5mg1E9BvKjExjnFs1SVrl1Dm4GHczK3qWWQsrxg==","signatures":[{"sig":"MEUCIBiXUAajA1fwMbLMmGClmeLfpvY41c1MJxYxSb3b21RXAiEAtspKsvUpKkT9lVYnJiS1+UvMUlX7pLECC8qJsuPYcD8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80086},"main":"dist/index.js","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.8.1.tgz","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d144be21-2f44-4c73-bea0-5621683d6ffa"}},"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.8.1.tgz","_integrity":"sha512-n0koQ8wm66Oe8uKdOGmU+hzAJVMv8F++tWVz2nOr5Igw5Ew5mg1E9BvKjExjnFs1SVrl1Dm4GHczK3qWWQsrxg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"12.0.1","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@bernierllc/logger":"1.7.1","@bernierllc/neverhub-adapter":"0.4.1","@bernierllc/ai-provider-router":"1.7.1","@bernierllc/ai-content-reviewer":"1.4.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/content-workflow-ai-review-step_0.8.1_1784015818033_0.0383391837674909","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"_id":"@bernierllc/content-workflow-ai-review-step@0.8.2","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"a96f88953e57a86a21eac8bf80b71803b9de0eee","tarball":"https://registry.npmjs.org/@bernierllc/content-workflow-ai-review-step/-/content-workflow-ai-review-step-0.8.2.tgz","fileCount":31,"integrity":"sha512-pzjMVkHwIA2KtZt3tB0rk3P0QMRYuateiybkRHrdKmPqUar4uyzB3EO4/bX+hmzDPU22dZiitClvobBCZBPqTA==","signatures":[{"sig":"MEUCIHV0mLKmiu+hLOZd25HsqAvd0n55BrjR9s+Qn9fY1W9kAiEAno240ktKm7zjwi9aiN4Xk7gSEZFdbTMW6+AN8ITLoLA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC5cWfat/zSixOOZqGssR4qSFEE/d+kAWaxau8BotrhMQIhAP651hvhHaZDSWx2/JLz9ur1xAkcHCBwI7sL3bWupDKA"}],"unpackedSize":80411},"main":"dist/index.js","name":"@bernierllc/content-workflow-ai-review-step","type":"module","_from":"file:bernierllc-content-workflow-ai-review-step-0.8.2.tgz","types":"dist/index.d.ts","author":{"name":"Bernier LLC"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"SEE LICENSE IN LICENSE","scripts":{"lint":"eslint src --ext .ts","test":"jest","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest --passWithNoTests","test:coverage":"jest --coverage"},"version":"0.8.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"d144be21-2f44-4c73-bea0-5621683d6ffa"}},"homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"_resolved":"/home/runner/work/tools/tools/packages/service/content-workflow-ai-review-step/bernierllc-content-workflow-ai-review-step-0.8.2.tgz","_integrity":"sha512-pzjMVkHwIA2KtZt3tB0rk3P0QMRYuateiybkRHrdKmPqUar4uyzB3EO4/bX+hmzDPU22dZiitClvobBCZBPqTA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"_npmVersion":"12.2.0","description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"@bernierllc/logger":"^1.7.1","@bernierllc/neverhub-adapter":"^0.4.1","@bernierllc/ai-provider-router":"^1.7.2","@bernierllc/ai-content-reviewer":"^1.4.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.56.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.0","@typescript-eslint/parser":"^6.19.0","@typescript-eslint/eslint-plugin":"^6.19.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/content-workflow-ai-review-step_0.8.2_1790884238566_0.2290390796576125"}}},"time":{"created":"2025-12-18T19:51:08.038Z","modified":"2026-10-01T19:50:38.821Z","0.1.0":"2025-12-18T19:51:08.349Z","0.1.1":"2025-12-22T21:10:28.672Z","0.1.2":"2025-12-23T01:47:29.373Z","0.3.0":"2026-01-05T19:48:20.262Z","0.3.2":"2026-03-10T17:25:02.307Z","0.3.3":"2026-05-18T19:48:27.212Z","0.3.4":"2026-05-19T02:23:18.429Z","0.3.5":"2026-05-19T20:12:29.629Z","0.3.6":"2026-05-19T23:40:37.335Z","0.4.0":"2026-05-20T01:46:38.620Z","0.4.1":"2026-05-20T02:16:58.009Z","0.6.0":"2026-05-20T02:58:58.769Z","0.7.0":"2026-05-20T04:12:24.859Z","0.8.0":"2026-05-20T18:56:43.558Z","0.8.1":"2026-07-14T07:56:58.161Z","0.8.2":"2026-10-01T19:50:38.645Z"},"bugs":{"url":"https://github.com/bernierllc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","homepage":"https://github.com/bernierllc/tools/tree/main/packages/service/content-workflow-ai-review-step","keywords":["workflow","ai","content","review","grammar","seo","tone","engagement","analysis","workflow-step"],"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/content-workflow-ai-review-step"},"description":"AI-powered content review workflow step with grammar, SEO, tone, and engagement analysis","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/content-workflow-ai-review-step\n\nAI-powered content review workflow step with comprehensive analysis for grammar, SEO, tone, engagement, and readability.\n\n## Features\n\n- **Multi-Provider Support**: Works with OpenAI GPT-4 and Anthropic Claude via AI Provider Router\n- **Comprehensive Analysis**: Grammar, SEO optimization, tone consistency, engagement potential, and readability\n- **Structured Suggestions**: Location-aware suggestions with severity levels (critical, warning, suggestion)\n- **Scoring System**: Overall score (0-100) plus category-specific scores\n- **Custom Prompts**: Configurable review prompts per workflow\n- **Cost Tracking**: Token usage and cost tracking per review\n- **Event Publishing**: Optional NeverHub integration for real-time progress updates\n- **Type-Safe**: Full TypeScript support with strict mode\n\n## Installation\n\n```bash\nnpm install @bernierllc/content-workflow-ai-review-step\n```\n\n## Quick Start\n\n```typescript\nimport { AIReviewStep } from '@bernierllc/content-workflow-ai-review-step';\nimport { AIProviderRouter } from '@bernierllc/ai-provider-router';\nimport { Logger } from '@bernierllc/logger';\n\n// Initialize dependencies\nconst aiRouter = new AIProviderRouter({\n  providers: [\n    {\n      name: 'openai',\n      priority: 1,\n      enabled: true,\n    },\n  ],\n});\n\nconst logger = new Logger({ level: 'info' });\n\n// Create review step\nconst reviewStep = new AIReviewStep(aiRouter, logger);\n\n// Execute review\nconst result = await reviewStep.execute(\n  {\n    id: 'review-step-1',\n    name: 'AI Review',\n    type: 'ai_review',\n    enabled: true,\n    order: 0,\n    aiConfig: {\n      provider: 'openai',\n      model: 'gpt-4',\n      temperature: 0.3,\n    },\n  },\n  {\n    content: {\n      id: 'article-123',\n      title: 'How to Write Great Content',\n      body: 'This is the article body...',\n    },\n  }\n);\n\nif (result.success && result.data) {\n  console.log('Overall Score:', result.data.overallScore);\n  console.log('Suggestions:', result.data.suggestions.length);\n  console.log('Summary:', result.data.summary);\n}\n```\n\n## Configuration\n\n### Step Configuration\n\n```typescript\ninterface WorkflowStepConfig {\n  id: string;                  // Unique step identifier\n  name: string;                // Step display name\n  type: 'ai_review';          // Must be 'ai_review'\n  enabled: boolean;            // Whether step is active\n  order: number;               // Execution order\n  aiConfig?: {\n    provider?: string;         // 'openai', 'anthropic', or 'auto'\n    model?: string;            // Specific model (e.g., 'gpt-4')\n    prompt?: string;           // Custom review prompt\n    temperature?: number;      // 0-1, default 0.3\n    maxTokens?: number;        // 100-10000, default 2000\n  };\n}\n```\n\n### Content Context\n\n```typescript\ninterface WorkflowContext {\n  content: {\n    id: string;\n    title?: string;\n    body: string;\n    metadata?: Record<string, unknown>;\n  };\n  userId?: string;\n  metadata?: Record<string, unknown>;\n}\n```\n\n## Review Result Structure\n\n```typescript\ninterface AIReviewResult {\n  // Overall quality score (0-100)\n  overallScore: number;\n\n  // Category scores\n  scores: {\n    grammar: number;      // 0-100\n    seo: number;          // 0-100\n    tone: number;         // 0-100\n    engagement: number;   // 0-100\n    readability: number;  // 0-100\n  };\n\n  // Actionable suggestions\n  suggestions: AIReviewSuggestion[];\n\n  // Summary of review\n  summary: string;\n\n  // Provider metadata\n  provider: string;      // 'openai', 'anthropic'\n  model: string;         // Model used\n  tokensUsed: number;    // Tokens consumed\n  costUsd: number;       // Estimated cost\n}\n```\n\n## Suggestion Format\n\n```typescript\ninterface AIReviewSuggestion {\n  type: 'grammar' | 'seo' | 'tone' | 'engagement' | 'readability' | 'clarity';\n  severity: 'critical' | 'warning' | 'suggestion';\n\n  // Original problematic text\n  original: string;\n\n  // Suggested improvement\n  suggestion: string;\n\n  // Explanation\n  reason: string;\n\n  // Location (optional)\n  location?: {\n    line?: number;\n    column?: number;\n    offset?: number;\n    length?: number;\n  };\n\n  // User acceptance (optional)\n  accepted?: boolean;\n}\n```\n\n## Advanced Usage\n\n### Custom Review Prompts\n\n```typescript\nconst result = await reviewStep.execute(\n  {\n    id: 'custom-review',\n    name: 'Technical Blog Review',\n    type: 'ai_review',\n    enabled: true,\n    order: 0,\n    aiConfig: {\n      provider: 'openai',\n      prompt: `Review this technical blog post for:\n      1. Technical accuracy\n      2. Code example quality\n      3. Developer-friendly tone\n      4. SEO optimization for technical keywords\n      Provide specific, actionable feedback.`,\n    },\n  },\n  context\n);\n```\n\n### With NeverHub Events\n\n```typescript\nimport { NeverHubAdapter } from '@bernierllc/neverhub-adapter';\n\nconst neverhub = new NeverHubAdapter();\nawait neverhub.register({\n  type: 'content-workflow',\n  capabilities: ['ai-review'],\n});\n\nconst reviewStep = new AIReviewStep(aiRouter, logger, neverhub);\n\n// Events published:\n// - ai.review.started\n// - ai.review.completed\n// - ai.review.failed\n```\n\n### Validation\n\n```typescript\nconst validation = reviewStep.validate(config);\n\nif (!validation.valid) {\n  console.error('Config errors:', validation.errors);\n}\n```\n\n## Utility Functions\n\n### Prompt Building\n\n```typescript\nimport {\n  buildReviewPrompt,\n  buildQuickReviewPrompt,\n  estimateTokenCount\n} from '@bernierllc/content-workflow-ai-review-step';\n\nconst prompt = buildReviewPrompt(content);\nconst quickPrompt = buildQuickReviewPrompt(content, ['grammar', 'clarity']);\nconst tokenEstimate = estimateTokenCount(prompt);\n```\n\n### Scoring Utilities\n\n```typescript\nimport {\n  calculateOverallScore,\n  getQualityLevel,\n  getWeakestCategory,\n  compareScores,\n} from '@bernierllc/content-workflow-ai-review-step';\n\nconst overall = calculateOverallScore(scores);\nconst quality = getQualityLevel(overall);\nconst weakness = getWeakestCategory(scores);\nconst improvement = compareScores(oldScores, newScores);\n```\n\n### Response Parsing\n\n```typescript\nimport {\n  parseReviewResponse,\n  validateReviewResult\n} from '@bernierllc/content-workflow-ai-review-step';\n\nconst result = parseReviewResponse(\n  aiResponse,\n  'openai',\n  'gpt-4',\n  500,\n  0.01\n);\n\nconst validation = validateReviewResult(result);\n```\n\n## Error Handling\n\n```typescript\nconst result = await reviewStep.execute(config, context);\n\nif (!result.success) {\n  console.error('Review failed:', result.error);\n\n  // Check metadata for partial info\n  if (result.metadata?.durationMs) {\n    console.log('Failed after', result.metadata.durationMs, 'ms');\n  }\n}\n```\n\n## Performance Considerations\n\n- **Token Usage**: Default maxTokens is 2000. Adjust based on content length.\n- **Temperature**: Lower temperature (0.2-0.4) provides more consistent reviews.\n- **Provider Selection**: Use 'auto' for automatic provider selection with failover.\n- **Caching**: Results are NOT cached by default. Implement your own caching if needed.\n\n## Testing\n\n```bash\n# Run tests\nnpm test\n\n# Run with coverage\nnpm run test:coverage\n\n# Run without watch mode\nnpm run test:run\n```\n\n## Requirements\n\n- **Dependencies**:\n  - `@bernierllc/ai-provider-router` - AI provider routing\n  - `@bernierllc/logger` - Logging\n  - `@bernierllc/neverhub-adapter` (optional) - Event publishing\n- **Environment**:\n  - Node.js 18+\n  - TypeScript 5.3+\n\n## License\n\nCopyright (c) 2025 Bernier LLC\n\nThis file is licensed to the client under a limited-use license.\nThe client may use and modify this code *only within the scope of the project it was delivered for*.\nRedistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.\n\n## Related Packages\n\n- [@bernierllc/ai-provider-router](../ai-provider-router) - AI provider selection and routing\n- [@bernierllc/ai-content-reviewer](../ai-content-reviewer) - Content review logic\n- [@bernierllc/content-editorial-workflow](../../core/content-editorial-workflow) - Workflow state machine\n- [@bernierllc/content-workflow-step-manager](../content-workflow-step-manager) - Step orchestration\n\n## Support\n\nFor issues and questions, please contact Bernier LLC.\n","readmeFilename":"README.md"}