{"_id":"claude-cwc","_rev":"31-8b19a362aca604ccb5258e33129c115d","name":"claude-cwc","dist-tags":{"latest":"0.12.2"},"versions":{"0.2.0":{"name":"claude-cwc","version":"0.2.0","_id":"claude-cwc@0.2.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"67c4112ff660505a85bfea50d585b5d01bfdde45","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.2.0.tgz","fileCount":30,"integrity":"sha512-yRqrCdAqgXGfPe56nvsLEaigXjiyXRbi8vx5O2VKTo3DWU/Pf7RTGKol8G7/ckLn+TRgLsz7Vh2Q9lHk7Z3dPw==","signatures":[{"sig":"MEYCIQCOKXc34OmM1xJ1Gu/w1BvMkenz15zIiPyiJYDE4rSziQIhAPAl0SxC4sL0XtAk549dtRjR9bM+4SqbyKFUMiuL0OFy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":575854},"type":"module","engines":{"node":">=18"},"gitHead":"49785b9cd3d9a107323091b3d46df3373044a612","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.2.0_1779817212055_0.8198022534506293","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"claude-cwc","version":"0.2.1","_id":"claude-cwc@0.2.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"093387a708cfa87befb323fe732d173bb1c31d08","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.2.1.tgz","fileCount":30,"integrity":"sha512-w1T8BMU6eDnwFIIhDh9HFq/jXtfDmyWx7brHt4+2NgL5x+qcN6PDEFWCN3x4ni1xrbRQXkGVo6ns43mzkbhWsw==","signatures":[{"sig":"MEYCIQClU+/u4HuyhaLz+3QMwGUh+l9FE3CkqQLCa25QOSU7tAIhAO+VGsee+COrLtgI44PqJ58KGFwVDZfpIfvT5ZDnp9j1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":574963},"type":"module","engines":{"node":">=18"},"gitHead":"57538d189445bb64dcba4b8965ba6a1009bb8c27","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.2.1_1779819545294_0.3528274400227984","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"claude-cwc","version":"0.2.2","_id":"claude-cwc@0.2.2","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"c48322658f6cbb8aceaa871a15270c394323d243","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.2.2.tgz","fileCount":30,"integrity":"sha512-ZZBxfCkeDg/gEUSCSCEAWOgby+ulkqXLMFIZ3Pd3zAXpCTaoaRHwFwijVxK+tjJV96Iayl1IGR5Gkrap0Axlxw==","signatures":[{"sig":"MEQCIByLE/WMMwVaOubbf5Iuz3c4ydzd3ePcZwzOBk6n0lycAiAk23DOwsGxnZTelEU3vcE+fwL+vsUboApE8prmf9DTrw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":574995},"type":"module","engines":{"node":">=18"},"gitHead":"ec55042c7616b89a36a62009336556eb49d7cff1","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.2.2_1779825818749_0.854054413161839","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"claude-cwc","version":"0.2.3","_id":"claude-cwc@0.2.3","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"c6e15e3d61a344bde6e0eae475d1d5f6c9a7657b","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.2.3.tgz","fileCount":30,"integrity":"sha512-PeZYy4EE/t4fYnMcwRWz3ejZfEgUP9WBZx7Kwp6dSAWRuqIpmUM7TbZffOS+0ejBPFpe/yFYuoZNEvg3jvkMzQ==","signatures":[{"sig":"MEUCIQDnoTI58FliwownZJX/KIUt3+K9VfTGfa+RpvA+I9UjUwIgG2/8BeK1yPF6pXeA7xS2V/pRCeO57pLmJ4SUqvrYX2E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":576549},"type":"module","engines":{"node":">=18"},"gitHead":"a6390cd3416ed666c9aba28d8819df3a30838988","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.2.3_1779942818059_0.6841289457961786","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"claude-cwc","version":"0.3.0","_id":"claude-cwc@0.3.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"b4013db22f2b1b74a277d80db3c2fa8263dcfb4c","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.3.0.tgz","fileCount":30,"integrity":"sha512-cHEaDU3i592hS1BNKG3K0LuSr8IzvIRnGF0JQFfRtx/wjdeK0uVZ5JhOaFRy9OPR/d9ut8y8k+Et1zh2+XcPlw==","signatures":[{"sig":"MEQCICrGOsaQLbBSL1g+nWN/iobKFOxPA3lt991Enui8Ur0sAiB7dH5/xo6Ow2NrtJOFbSYlEt2MPlcxsapDWn5j+DqweQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":631237},"type":"module","engines":{"node":">=18"},"gitHead":"ac7294dc7d6293bfe90fdc0968f600d7ed3ed599","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.3.0_1779996819298_0.19789892477405968","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"claude-cwc","version":"0.4.0","_id":"claude-cwc@0.4.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"daf4e9d4152a76d56797860ce41390538d2cae92","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.4.0.tgz","fileCount":31,"integrity":"sha512-7npbTbYAyEV1AekQsKHC/9Q9DOBfoMH0kI6+0WKWA76RE6i9bBZrXXmOwW1NZC9e7vt+50oCx3oIc3j3kAPdHQ==","signatures":[{"sig":"MEQCIEX+/CQ/BE3Z4NgsRvOkCGve6rWCSUU2oRNwUxujdAxIAiBOMOGqjTDXf0lFcgYLRuI6Vn02VGCe6h0o6aKkXImcIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":648123},"type":"module","engines":{"node":">=18"},"gitHead":"9f5131da8cc7fd125d47df324de1c6c3df0aa279","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.4.0_1780000047808_0.2821208438088887","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"claude-cwc","version":"0.4.1","_id":"claude-cwc@0.4.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"326b8f4d6e2b8118e681b556f742b7b9952bf763","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.4.1.tgz","fileCount":31,"integrity":"sha512-rJ82QkAwNcS+o/bT/0oySuW+Be9dVyGkqfCgLmtA9tSTNvXG5iiOpMf+BYNbetmdyqmBc1zphUDQO/FNqUwaaA==","signatures":[{"sig":"MEYCIQCatOFuJ2msTldeZAQIoUPWz0NAf4hpYN6VQ3WG2XO5RgIhAPL5FmCt96wad6UQuffi8lIH4v75xefNCABVjbVAhNov","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":648133},"type":"module","engines":{"node":">=18"},"gitHead":"be93347a52fdc4fc31ceee677a23ef438e05e261","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.4.1_1780000169158_0.6220275625302414","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"claude-cwc","version":"0.4.2","_id":"claude-cwc@0.4.2","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"63cfb5b27370437c054b4304741fcf37b30c1b5d","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.4.2.tgz","fileCount":31,"integrity":"sha512-mbz9FyR5UGX5WJKPJM6vTDwF1sIHR6fUcuiW+vw3joiChb4PaTNDVfyi0PHG1XpxdZSK9vdcvXIJbqFOXI5HGA==","signatures":[{"sig":"MEUCIQCjZmH3YuD9T6JeQCSPdq5HJKqm1pfBINAMWxyqMVpfgQIgObVrjmXK49HbATl5OFuUd3IoBKePyMx/+6/veUJZydg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":649702},"type":"module","engines":{"node":">=18"},"gitHead":"5df64aa4ef449214a7cfd7445209613abd47e2e5","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.8.2","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"20.19.1","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.4.2_1780000702024_0.6879029650096946","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"claude-cwc","version":"0.5.0","_id":"claude-cwc@0.5.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"8af7ea9c1ad8c852312f85b4983ae78d4b95f8db","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.5.0.tgz","fileCount":34,"integrity":"sha512-Sf1umG6ytL+3g41MrPZyGmjk1HAOswFNdJBfjA3Alylte9Y0CwlUSFiavpVlsbIDEyDCp+CnoUQ4449yosDaDA==","signatures":[{"sig":"MEQCIDeAhv9fT99Jn/cq3QAkbnk4nt1J08YMNuWwdOL3NPGuAiA8wyVjBqtYCBj5Cx08pszDkFte1RCp6pq9fDGLHfaFxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":690604},"type":"module","engines":{"node":">=18"},"gitHead":"e92a7b903e4e749091a753b7e5e7bdf7007720c4","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.5.0_1780796674352_0.3008953909874541","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"claude-cwc","version":"0.6.0","_id":"claude-cwc@0.6.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"c7364b9f0ef33aa77b51959318ebbc6646008419","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.6.0.tgz","fileCount":37,"integrity":"sha512-LdNEM1fTYl7juDA3sxputu+QrKCjN3YjqkSsNGJrO6xi+LR37C7TnKdkHRk2U43p4KKg5Y29XbxZ/wWxZbmIpQ==","signatures":[{"sig":"MEQCIDzd9sE5iTERPrbITxHbLwL0eqFBYRKfTSFwrM7XJLebAiBAnaZkIe7HrUe0I02/fggwgScy/Tvzul6keY8tk4M5dw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":700048},"type":"module","engines":{"node":">=18"},"gitHead":"8279ee0b85462187d898b24eaf914b144682b3ea","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.6.0_1780935396609_0.48756453595947846","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"claude-cwc","version":"0.6.1","_id":"claude-cwc@0.6.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"941ca5dbe8f80e1e5646c5deffb43778cd3fd795","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.6.1.tgz","fileCount":37,"integrity":"sha512-HIUbuJJmfXmXp641dvfUx+kh9A7uZCBjocRSQWK86vzhcsaGThjLB+wuOSxzMQdhY9mXf43w6dLLuTjM2+xlDA==","signatures":[{"sig":"MEQCIDsB+ll5e/fTLlLbnC2R8GKhLGkqe+gYB6mLwvj+206nAiAkc6zUF/5cYGoeGM53TBeg/mkYKpjy4/10tbLyG/juHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":707004},"type":"module","engines":{"node":">=18"},"gitHead":"63f841c3bbc828502514ba07a11546693d2c9acb","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.6.1_1780952881127_0.004198613181255251","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"claude-cwc","version":"0.6.2","_id":"claude-cwc@0.6.2","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"e7c55eab287613dd29f6d6e8eff2a0b1bd4553c8","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.6.2.tgz","fileCount":37,"integrity":"sha512-brnNymslgOehr0ocU0fq2tLis6+j9OxQiQ3c5r1/MbDIkbWw7cemyTsLvkwzZ0h2loGJ2o7yOJRGgqbd2g6QkA==","signatures":[{"sig":"MEQCIAp8HDKfQtRX1gXi+6RN7iJJnVeasi3dArcr2l6LDs9TAiBkCY4uoE8l0uC/hTYqXTeDtZimqCrrmX9Sr92VUgROAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":708230},"type":"module","engines":{"node":">=18"},"gitHead":"6d3fb0ea255573718f17a7334214678807f43971","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.6.2_1781052480619_0.08487802155771962","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"claude-cwc","version":"0.8.0","_id":"claude-cwc@0.8.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"63ef046980f84ee5433ab2676e37f9be8d1fbf7a","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.8.0.tgz","fileCount":49,"integrity":"sha512-tEhwfbvNIshO/9RzakunFiwgq5PRCjmiYOKPeS41hDytGsrEMtBK9wReLiUpAsQmR4Kn4V5R73a6DEJHvlOlHQ==","signatures":[{"sig":"MEUCIBObJui2BYFOIEFl2GHYAeGyuZCoN7YXUjtgerm/u8f7AiEAuOeuAIzmhB+YL+fmTLUS67qivPgO+sRi+v2KgVcnvhw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":828223},"type":"module","engines":{"node":">=18"},"gitHead":"06eb3440c258292ad5f5a9c3373a11bc46f6096c","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.8.0_1781372278429_0.443196954327016","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"claude-cwc","version":"0.8.1","_id":"claude-cwc@0.8.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"51a6a1c0e7d54e2df3de46bd338f462aeaa43a65","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.8.1.tgz","fileCount":49,"integrity":"sha512-wG1xnNvDvSgj+XsgXhx6cWv26Qk7zesnEqebVcMSnHNcIg3uZFugD+xsHuyyLbWqJMXvtjZ85CA2HqQTThMNjQ==","signatures":[{"sig":"MEUCIQCNdrzEbHZjfoR2erfMuPiyAT8Aqv90UOJPhZPUa0iJPQIgKxu4qU1cFc7cdTxnGjbkkuJHLxe+xV7BASWNl2dB6D8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":833609},"type":"module","engines":{"node":">=18"},"gitHead":"133e9f4ea6e3d1710038e4bb8375296ee47c58b3","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.8.1_1781393064036_0.19037732566835408","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"claude-cwc","version":"0.9.0","_id":"claude-cwc@0.9.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"f6da4f642521b412ced6bed2785543fdfe8faa6f","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.9.0.tgz","fileCount":49,"integrity":"sha512-j3s3gRcDvM3SKg3ezvoM/ek+2LcPwNcOtxmmCKjACacV54So4kSUSB0rVNvLOY9o51f/duvBN3xXTjUDYRzZ7w==","signatures":[{"sig":"MEUCIQDKm5NgnkT7hZm+vkY6dfk1YdN8Y/S106O3ET77kpG3MQIgLHTPf6mhXwRaiCZMQjL648hJmzTRuWQGWT6+Mp47ss0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":912256},"type":"module","engines":{"node":">=18"},"gitHead":"6b4bc95d7a8ae8c6f0f75d08d404153a7d2d8a80","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.9.0_1781414916322_0.9190029953792966","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"claude-cwc","version":"0.9.1","_id":"claude-cwc@0.9.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"c763839333b731f083d83c47fed1b9e9dfc49c64","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.9.1.tgz","fileCount":49,"integrity":"sha512-X14IfaNogM8HncPM4GqxdZg+kEXJU1RXPcyZjsPi7V2dqpx1GLyiungxUTo9jBz5yi4mJQZuTUhe9+nuw8OfIA==","signatures":[{"sig":"MEYCIQDO7Of1nZ1c7JvKW9ugyQX7xDP0eUNRhNxaaYcKOkTp3wIhANwVScEtlxV/5rNH6CnU237Bc4daCns66++SIw4VkdNp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":913366},"type":"module","engines":{"node":">=18"},"gitHead":"8cf042b6825e9e709b74029c35c5cc7c89ce2d21","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.9.1_1781456028985_0.8224965270095632","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"claude-cwc","version":"0.10.0","_id":"claude-cwc@0.10.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"36bff49d9d1302a7b7f9af4fc20488fde4a0bf89","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.10.0.tgz","fileCount":52,"integrity":"sha512-zlsubczdCEJURfG2mQCB5ZvzjLrJ8s6ZedgPjDEqExVMMSRYqTf0UtfsP8v1b2Brz+8qGBdGOr/PPgjjnB8tUA==","signatures":[{"sig":"MEYCIQCXrvUBr8HLLKvZ5x30SvK8fzKuH2tcfkpGWen2WYrPSgIhAJpaURAvk8X57fr+SNel6W8h4v2/wTFS9rd6q/RmtEym","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":925146},"type":"module","engines":{"node":">=18"},"gitHead":"02179be3cc1abefe24ab52af64e795a60611be4e","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.10.0_1781472587506_0.8927251490558301","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"claude-cwc","version":"0.10.1","_id":"claude-cwc@0.10.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"d6cf47b1eb3270893001ee4c0adb1966284e78ca","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.10.1.tgz","fileCount":52,"integrity":"sha512-b+hJiBnUOdYIRKQPQMm8f0OGQ+Z3wynPz83BhC1+ZVhGu3IJs9qF62+yJz5VYXSQI+LpEQp2juXq+8UsnOi+ug==","signatures":[{"sig":"MEQCIAzUIOUwWEGamMR91z5BM6UY7BaXrRt0ZB0MxZU1yub+AiBt9Ruy3B0yPf6ZhaZgEr405lLiJAehGwFUeA6d0oRbLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":927525},"type":"module","engines":{"node":">=18"},"gitHead":"1bb33088fc225a6dd9aecf4f1853725a78a04a0c","scripts":{"test":"vitest run","build":"npm run build:server && npm run build:client && npm run build:skills","start":"node dist/bin/cwc.js","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","cors":"^2.8.6","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/cors":"^2.8.19","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.10.1_1781488234584_0.022012413061910818","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"claude-cwc","version":"0.11.0","_id":"claude-cwc@0.11.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"3004fa26e6fa40b3bdb7d0a982c39d9132d5959c","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.0.tgz","fileCount":65,"integrity":"sha512-sE4nV1pAf2sSd5FN1MoV/3Mw2JtJkACsQNVv9xWYmphM3auviWhAKEzMsXSppUDvyM/kE5e0pF0/NlOXAGHavg==","signatures":[{"sig":"MEYCIQCwJmqBKLceoIraAZTiSAXinQYxln9k+vRn5ErdAQPr3gIhAIETUWSWk3dpQ2ynmJwWfBzHqzJUylibXrZESK6LP3ia","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1052961},"type":"module","engines":{"node":">=18"},"gitHead":"d800ecb63b2864135e8774ca95c1170e415f6145","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.0_1781894394626_0.8549409247223976","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"claude-cwc","version":"0.11.1","_id":"claude-cwc@0.11.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"bc6e1894a1146a6d426bb4bb97b7196acaecc27a","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.1.tgz","fileCount":65,"integrity":"sha512-dIQe1ux6xxhCkfn/o88rnC9wZ0/8hMUO2zfjfdxaNNRuyFsGwC+GUgh6Ppoi1ceDLb8w3N1vwfGFAmSo6Xxssw==","signatures":[{"sig":"MEUCIA2/DMq2d+2yn4IYJEEOEQWwfg2BCHIyynX+9Yy/9l2nAiEArgp9prO+4xraD1yRWeiF5Cq+x4rn8PQ+EHYKpvboo9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1058308},"type":"module","engines":{"node":">=18"},"gitHead":"f3c4d564c3fe28df8ccccea58c6a7a8a616f3d1b","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.1_1781896743322_0.9618494264960709","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"claude-cwc","version":"0.11.2","_id":"claude-cwc@0.11.2","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"9fc9f586a39bccd1cf5d353e461ce3a9c3b03b57","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.2.tgz","fileCount":65,"integrity":"sha512-Cj2JUlzyQWyzrG4ihR9oMDKZ7oGWeO9/OPv1nXTwiskBInGiXovT7F6m+85qrmqWH+TkLyU0lVfUXIQDlO8WeA==","signatures":[{"sig":"MEQCIDjqTrtmvK8UMHU4iDVtKADwWIQT40DneimA9kReMdWmAiBryLWq+sopGYDHXQ1Rv7Zxvj63AuUVsBg3KqvWei9TxA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1064274},"type":"module","engines":{"node":">=18"},"gitHead":"4eda7b8b9ea923c6c5f4b768ee113594fd3a1175","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.21.0","open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","@types/ws":"^8.18.1","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.2_1782110691930_0.964252418725891","host":"s3://npm-registry-packages-npm-production"}},"0.11.3":{"name":"claude-cwc","version":"0.11.3","_id":"claude-cwc@0.11.3","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"0b96c1409e60240e288cb8c41f523d16d6419e21","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.3.tgz","fileCount":73,"integrity":"sha512-El6lNExeJjsWBoxMfWULOgBlbolEWhn3fNTTBwqCim0AcSQEmBepZ0BqyB4bAIx1/u8YrIXYyF4y49o5NhBr6g==","signatures":[{"sig":"MEUCIHtdntdnCurLd7EGoqWN4TSDUT2fSZjcZrUzVgYLfT+3AiEA+nGqungUVPRSFwm64wvUiuH8Z8jU2rBrJKd+R5c5Xts=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1092709},"type":"module","engines":{"node":">=18"},"gitHead":"db90ca28b093f39853cd6debc4d12b4718333756","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.3_1782235518205_0.24623514019899617","host":"s3://npm-registry-packages-npm-production"}},"0.11.4":{"name":"claude-cwc","version":"0.11.4","_id":"claude-cwc@0.11.4","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"a1e997882bd826941ae782d943543db230e31481","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.4.tgz","fileCount":73,"integrity":"sha512-3WHilCRTUxJXv0FqDJvEmEY/VLqPYqbFrvZTZvF3KvUuplxyGjUtRPvgxCinQO/Dd4vMGn3v5ioV/UBMa2lKVA==","signatures":[{"sig":"MEQCIEcLtWSsvAsWYNcBxQqR88Jnc6huBUTfYFanOMeZpQx5AiB38wVqMhUY6J3QylPwwBZ9VtBHY7RozmjzZYVWLuZuOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1093062},"type":"module","engines":{"node":">=18"},"gitHead":"251778a49ab6b0c75e097e2bea767cf5e6ef831b","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.4_1782276834859_0.13785926167557272","host":"s3://npm-registry-packages-npm-production"}},"0.11.5":{"name":"claude-cwc","version":"0.11.5","_id":"claude-cwc@0.11.5","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"e8e95d06317714df119d54e52688d657d45f568a","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.5.tgz","fileCount":74,"integrity":"sha512-3tIm1d30AItMrlHtqY4k85EkHdZEFMH0ngs6b+H5S8Dw+IfRo3M9TL5ulgxtSbQltdWshFEwTIfYK5tBzG3WdQ==","signatures":[{"sig":"MEYCIQD7A48aYPxGjN7RBOV2NbCmtN8kKTFbI8G4AOiEB5CPQwIhAI2VTT4rvi44NHT+yf0bhSIeyw/q/6EGhwGT/VKp4nHp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1098428},"type":"module","engines":{"node":">=18"},"gitHead":"686a5939a1bda4437c03c504e6a21de3a77205bd","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.5_1782354781391_0.34118848802605095","host":"s3://npm-registry-packages-npm-production"}},"0.11.6":{"name":"claude-cwc","version":"0.11.6","_id":"claude-cwc@0.11.6","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"2febca0a43e7b3ea9fcf97cd0d8054eb268489a8","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.6.tgz","fileCount":75,"integrity":"sha512-47seMEgMPZkXe87cUh77VfiDNn//cbrtZAIXLXhPkpPNll12ZK3OrhKckaGrXquTZm2tDH6AJiPEc7e61tbZbQ==","signatures":[{"sig":"MEQCIEyFXQcdQlaQwLs9dxfp4iiDqBHwXjH+YFn5XHmpXvBHAiArBR1u5LjcPz56qypjnnpNmIFs0K4Np1EYZ+ioMkVI4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1115239},"type":"module","engines":{"node":">=18"},"gitHead":"a686cd53c9301ecc0462ad45985bf33c27a10efa","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.6_1783017131219_0.49364765641381947","host":"s3://npm-registry-packages-npm-production"}},"0.11.7":{"name":"claude-cwc","version":"0.11.7","_id":"claude-cwc@0.11.7","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"ced2a4e29a9f198e1fb8e672da4e741a381c611b","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.7.tgz","fileCount":75,"integrity":"sha512-TRgscTvUDCcNHf57yCGguEfCqnBENk0OHIiV/Cb1l/tHnXWmvrMuwFkcnpams7WgwvLcox0kY8TzRsf0qPpU7w==","signatures":[{"sig":"MEYCIQC5IA3hHrRc20xiq3HICYMHK5dvz2ML/Fxel0S5RVfpQgIhAPLg4jGk6jFF2eB+eyCh5reQsw7V+03+Vy8f6xSYcKix","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1115950},"type":"module","engines":{"node":">=18"},"gitHead":"176f2d29c6287365d9ad1d7239bb1354142b16c8","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.7_1783192337594_0.6254978287869435","host":"s3://npm-registry-packages-npm-production"}},"0.11.8":{"name":"claude-cwc","version":"0.11.8","_id":"claude-cwc@0.11.8","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"82007854c9cd09745c8f7569302995d8c51ad2d3","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.8.tgz","fileCount":75,"integrity":"sha512-hoVy7A/bGBkC8MbJRxlfnvltODyUUCJDFeP+IPypzLD5GNJwbuSmnaQJfQ32J++zUA6TRPclPsTUqQ/d/dZi2g==","signatures":[{"sig":"MEUCICdAnOZ/BQNbcc0wMgvy1btSJC1BE+jboA/0puu2VDqsAiEArw7d37Ni3ssjaZbme/teSIjrvzTM6xqsBL+61o0Uobk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1126340},"type":"module","engines":{"node":">=18"},"gitHead":"2b83cbaed9b809e5d20167495d3d911968bce516","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.8_1783229594199_0.8746771855357303","host":"s3://npm-registry-packages-npm-production"}},"0.11.9":{"name":"claude-cwc","version":"0.11.9","_id":"claude-cwc@0.11.9","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"400617717eb1e29c3a6a51112f197a5da9acfc75","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.11.9.tgz","fileCount":75,"integrity":"sha512-Rd6dzyqwuSelwhfwW7BGhnKfW1DQacrJWXnFFDP1/yeFANjKd1Cyarv1b4b5l6145osLtYu6M9GN87icLj0nLg==","signatures":[{"sig":"MEUCIC/fFFcjYt16r1PNHkjrjD7tptMTn0gC8XEHM8gNHdJqAiEAic+IwbWZFhGQq4Y146/TZ1zLzLHhF6PHTNW7PFPW9+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1126561},"type":"module","engines":{"node":">=18"},"gitHead":"7565165e0b9128639833bb6b9ad49cf1cf209bd4","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Visual composer for Claude Code multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.11.9_1783230011952_0.5388453867464602","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"claude-cwc","version":"0.12.0","_id":"claude-cwc@0.12.0","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"1f4cd304e8eab54beed2ae24a1e23eda320e1efe","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.12.0.tgz","fileCount":87,"integrity":"sha512-EyY9PsR4Ek6jauyunchzoR8B7sKZkAcAILhhoZ4EtXrnnSXPlKBp5Bd2h0NYYRple0WJDnsK0IC650IK5MwHww==","signatures":[{"sig":"MEYCIQCLVi71A80hDkvYkliBRK6kwlPILU/zhzK7D0iRXNAUvAIhAL6Fi5qGUGn3/tcMWVBwJU6d9XJ/W30ysd9upQuS3H7X","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1519184},"type":"module","engines":{"node":">=18"},"gitHead":"c60f64b2d577eea06eec878a1380480ed9ce81d1","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Local-first compiler for Claude Code rules, skills, loops, and multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.12.0_1784408258098_0.014597883620893537","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"claude-cwc","version":"0.12.1","_id":"claude-cwc@0.12.1","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"bin":{"cwc":"dist/bin/cwc.js"},"dist":{"shasum":"4597b7460fe6579f920a76b5461d2e1f7db7bc35","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.12.1.tgz","fileCount":87,"integrity":"sha512-Mcpskbm4QWkK5j5x9HoaBPApKweMsXPcfbMLgRoLXrbe+ombKeCKi831uQlznS93is0GagzaTw8ilbtGGxEfJg==","signatures":[{"sig":"MEQCIHwPU33Odu/8PTp0szEzODwvfEwbUsFRWOEMo/U/qN7hAiBtUyKCrQLAyGgWFBYpVVvicvfBW2z9JCXRkI9oK6HDkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1519436},"type":"module","engines":{"node":">=18"},"gitHead":"720d6ce0f32b12ef4c4252b51a7d5196759b8184","scripts":{"test":"vitest run","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/bin/cwc.js","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","dev:client":"vite --config client/vite.config.ts","dev:server":"tsc --watch","test:watch":"vitest","build:client":"vite build --config client/vite.config.ts","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"_npmVersion":"10.9.8","description":"Local-first compiler for Claude Code rules, skills, loops, and multi-agent workflows","directories":{},"_nodeVersion":"22.22.3","dependencies":{"open":"^11.0.0","uuid":"^9.0.0","react":"^19.2.6","croner":"^8.1.2","express":"^5.2.1","react-dom":"^19.2.6","gray-matter":"^4.0.3","@xyflow/react":"^12.10.2","react-router-dom":"^7.17.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^1.6.0","typescript":"^5.4.0","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/uuid":"^10.0.0","@types/react":"^19.2.15","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-cwc_0.12.1_1784951786766_0.9098464582500423","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"claude-cwc","version":"0.12.2","description":"Local-first compiler for Claude Code rules, skills, loops, and multi-agent workflows","type":"module","engines":{"node":">=18"},"bin":{"cwc":"dist/bin/cwc.js"},"scripts":{"test":"vitest run","test:watch":"vitest","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","build":"npm run clean && npm run build:server && npm run build:client && npm run build:skills","build:server":"tsc && node -e \"require('fs').chmodSync('dist/bin/cwc.js',0o755)\"","build:client":"vite build --config client/vite.config.ts","build:skills":"node -e \"const fs=require('fs');const p=require('path');const d='dist/skills/cwc-generate-workflow';fs.mkdirSync(d,{recursive:true});fs.copyFileSync('src/skills/cwc-generate-workflow/SKILL.md',p.join(d,'SKILL.md'))\"","dev:server":"tsc --watch","dev:api":"CWC_DISABLE_AUTH=1 node --watch dist/src/server/start.js 3579","dev:client":"vite --config client/vite.config.ts","typecheck":"tsc --noEmit && tsc --noEmit -p client/tsconfig.json","start":"node dist/bin/cwc.js","prepublishOnly":"npm run build"},"devDependencies":{"@types/express":"^5.0.6","@types/node":"^20.0.0","@types/open":"^6.1.0","@types/react":"^19.2.15","@types/react-dom":"^19.2.3","@types/uuid":"^10.0.0","@vitejs/plugin-react":"^4.7.0","typescript":"^5.4.0","vitest":"^1.6.0"},"dependencies":{"@xyflow/react":"^12.10.2","croner":"^8.1.2","express":"^5.2.1","gray-matter":"^4.0.3","open":"^11.0.0","react":"^19.2.6","react-dom":"^19.2.6","react-router-dom":"^7.17.0","uuid":"^9.0.0"},"_id":"claude-cwc@0.12.2","gitHead":"38666455cdc43604c84f852d1ee3c81d5c70ee9b","_nodeVersion":"22.22.3","_npmVersion":"10.9.8","dist":{"integrity":"sha512-XwfWTsNPP9dotxl4q0pKXTQ8U/Qb4xF2HJjSxXJonLexSojfgDffLNjVtmdXOArGd9Af75SdNq2Q0IGJHkYT9w==","shasum":"f1af5c050519d09114d5cebf47766baa25a96bf1","tarball":"https://registry.npmjs.org/claude-cwc/-/claude-cwc-0.12.2.tgz","fileCount":87,"unpackedSize":1521442,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD1OYyxUgz/m5rqF6zR0O95gIdE9Cv0Qbk09JRRyAxP/QIhAJ7waBxJPc76HRHobReT6aTODCkMc2c8o7wTEOauORRd"}]},"_npmUser":{"name":"fayzanmalik","email":"fayzanm786@gmail.com"},"directories":{},"maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-cwc_0.12.2_1784952508842_0.7747265391387683"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-26T17:40:12.001Z","modified":"2026-07-25T04:08:29.165Z","0.2.0":"2026-05-26T17:40:12.214Z","0.2.1":"2026-05-26T18:19:05.552Z","0.2.2":"2026-05-26T20:03:39.071Z","0.2.3":"2026-05-28T04:33:38.269Z","0.3.0":"2026-05-28T19:33:39.448Z","0.4.0":"2026-05-28T20:27:28.050Z","0.4.1":"2026-05-28T20:29:29.314Z","0.4.2":"2026-05-28T20:38:22.221Z","0.5.0":"2026-06-07T01:44:34.515Z","0.6.0":"2026-06-08T16:16:36.837Z","0.6.1":"2026-06-08T21:08:01.252Z","0.6.2":"2026-06-10T00:48:00.758Z","0.8.0":"2026-06-13T17:37:58.584Z","0.8.1":"2026-06-13T23:24:24.214Z","0.9.0":"2026-06-14T05:28:36.513Z","0.9.1":"2026-06-14T16:53:49.184Z","0.10.0":"2026-06-14T21:29:47.658Z","0.10.1":"2026-06-15T01:50:34.805Z","0.11.0":"2026-06-19T18:39:54.810Z","0.11.1":"2026-06-19T19:19:03.501Z","0.11.2":"2026-06-22T06:44:52.093Z","0.11.3":"2026-06-23T17:25:18.397Z","0.11.4":"2026-06-24T04:53:55.040Z","0.11.5":"2026-06-25T02:33:01.547Z","0.11.6":"2026-07-02T18:32:11.450Z","0.11.7":"2026-07-04T19:12:17.808Z","0.11.8":"2026-07-05T05:33:14.327Z","0.11.9":"2026-07-05T05:40:12.092Z","0.12.0":"2026-07-18T20:57:38.245Z","0.12.1":"2026-07-25T03:56:26.932Z","0.12.2":"2026-07-25T04:08:29.011Z"},"description":"Local-first compiler for Claude Code rules, skills, loops, and multi-agent workflows","maintainers":[{"name":"fayzanmalik","email":"fayzanm786@gmail.com"}],"readme":"# Claude Workflow Composer\n\n[![CI](https://github.com/fayzan123/claude-workflow-composer/actions/workflows/ci.yml/badge.svg)](https://github.com/fayzan123/claude-workflow-composer/actions/workflows/ci.yml)\n\n**Find the work you keep repeating in Claude Code — and turn it into the smallest useful automation.** CWC scans your local Claude Code history, surfaces the tasks you do by hand again and again, and recommends a rule, skill, managed loop, or multi-agent workflow. Runnable artifacts can be edited, exported, tested, scheduled, and monitored locally.\n\n![Claude Workflow Composer demo](demo.gif)\n\n---\n\n## Start here: scan your history\n\nRun `npx claude-cwc`, then click **Scan my history** on the dashboard. CWC reads your Claude Code sessions, clusters the work you repeat, and recommends the lightest artifact that fits each candidate. Review or override that recommendation before CWC generates anything. The visual canvas is reserved for work that genuinely needs a multi-agent workflow.\n\n## The Problem\n\nTurning repeated Claude Code work into a reliable automation usually means choosing and maintaining several different primitives:\n\n1. Hand-writing agent `.md` files with YAML frontmatter\n2. Manually authoring orchestrator skills with `disable-model-invocation: true` and sequenced handoff prose\n3. Deciding whether the work needs a durable instruction, one skill, a recurring loop, or a multi-agent graph\n4. No visual representation of a pipeline before running it\n5. No unified way to test, schedule, observe, and share the result\n\nCWC makes that sizing decision explicit while keeping the filesystem output inspectable.\n\n---\n\n## Quick Start\n\n```bash\nnpx claude-cwc\n```\n\nOpens a browser at `http://localhost:3579`. The local server binds to loopback and protects API calls with a per-run local token.\n\nUse **Detect automations** from the Home dashboard to scan your local Claude Code history, find repeated work, review rule suggestions, and generate ready-to-edit skills, loops, or workflows from the strongest candidates.\n\nOn first run, CWC may offer to install an optional Claude Code skill at `~/.claude/skills/cwc-generate-workflow/SKILL.md`. That skill lets you ask Claude Code to generate a `.cwc` workflow from plain English. Remove it with:\n\n```bash\nnpx claude-cwc uninstall-skill\n```\n\n```bash\nnpx claude-cwc stop    # Stop the server\n```\n\nOn macOS, install the background service if you want scheduled automations to keep running after reboot:\n\n```bash\nnpx claude-cwc install-service\nnpx claude-cwc uninstall-service\n```\n\n### Troubleshooting: Detect fails or finds nothing\n\nIf a history scan errors out or reports no automations when you expect some, run the offline health check:\n\n```bash\nnpx claude-cwc doctor --bundle\n```\n\nIt checks your environment (Claude binary, transcript discovery, per-file parsing) without invoking Claude, prints a verdict, and writes `cwc-doctor-bundle.json`. The bundle is redacted — it contains counts, versions, entry-type tallies, and project folder names, never your prompts, commands, or conversation content — so it's safe to attach to a [GitHub issue](https://github.com/fayzan123/claude-workflow-composer/issues). After a failed in-app scan, the same diagnostics are available at `http://localhost:3579/api/automation-scan/diagnostics`.\n\nOr from source:\n\n```bash\nnpm run build && npm start\n```\n\n---\n\n## How It Works\n\n```\nScan local Claude Code history\n  → Classify each repetition as Rule, Skill, Loop, or Workflow\n  → Review the recommendation and choose a different tier when needed\n  → Edit a skill directly, or refine a multi-agent workflow on the canvas\n  → Add schedules/webhooks in Automate mode when the artifact should run itself\n  → Preview every file that will be written before exporting\n  → Export to ~/.claude/ or a project's .claude/\n  → Run directly in Claude Code or through CWC's managed-run harness\n```\n\nThe exporter writes directly to `~/.claude/` (user-scoped) or `.claude/` inside any project directory (project-scoped, version-controllable). Conflict detection ensures it never touches files it doesn't own.\n\n### Build and edit\n\nSkill and loop artifacts open in a focused editor for their name, description, and Markdown body, with loop status and a direct link to Automate settings alongside it. They are stored as `.cwc` files for the same autosave, export, and managed-run behavior as workflows, but do not pretend to be agent graphs.\n\nChoose **Open as workflow** to graduate a skill or loop explicitly. The current edited body is authoritative: a numbered checklist seeds focused phases, while an unstructured body becomes one phase without resurrecting removed detection steps. Safe operational constraints remain available across phases, and external actions stay behind their approval boundaries. A workflow can be converted back to a skill only when it contains one bespoke agent and no real handoff; an optional terminal edge is safe to discard. Both conversions are explicit, undoable editor actions, and the next export previews the resulting file changes.\n\nFor workflow artifacts, drag an **existing agent** from the sidebar (`~/.claude/agents/` or project `.claude/agents/`) onto the canvas to create a **reference node** — it points to that agent file by slug rather than duplicating it. Drag **New Agent** to create a **bespoke node** — the exporter generates a new agent file for it. Drag **Approval Gate** to add a human checkpoint.\n\nConnect nodes by dragging between handles. Each connection becomes a **handoff** with a trigger description and optional context artifacts (files, text, JSON) passed between agents. Mark any node as a **terminal** (`Complete`, `Escalated`, or `Aborted`) to define workflow end states.\n\nEdit any node's completion criteria, tool access, skills, and system prompt in the **Node Panel**. The first node can also have a **start trigger** describing what initiates the workflow.\n\nReal-time validation surfaces duplicate slugs, empty names, disconnected nodes, and missing completion criteria in the workflow header before you export.\n\nUse **Generate agent** or **Generate skill** in the sidebar to draft reusable Claude Code assets from a plain-English description. CWC gives you an editable spec first, then writes the file into `~/.claude/agents/` or `~/.claude/skills/`. The **Discover** sidebar tab links to community agent and skill repositories.\n\n### Export\n\nClick **Export** in the artifact header. Choose a target directory (`~/.claude/` or any project's `.claude/`). Review a **preview** of every file that will be written or removed. Confirm to apply it.\n\nThe exporter:\n\n- **Plain skill / loop** → writes exactly one `.claude/skills/<slug>/SKILL.md`, with no `cwc-` prefix, orchestrator prose, or agent files. A loop's trigger remains in its `.cwc` metadata and is armed separately in CWC.\n- **Workflow skill** → generates an orchestrator at `.claude/skills/cwc-<workflow-slug>/SKILL.md` and writes agent files for its bespoke nodes. By default the skill includes `disable-model-invocation: true`; the export modal can opt an artifact into autonomous Claude invocation outside CWC's isolated-run harness. The orchestrator body is produced by BFS-traversing the graph into natural-language steps.\n- **Bespoke workflow nodes** → writes an agent `.md` file with frontmatter (name, description, color, model, tools), system prompt, completion criteria, skill references, and an ownership comment.\n- **Reference nodes** → writes nothing — the `exportedSlug` is set to the existing agent's slug so the orchestrator routes to it directly.\n- **Rename and conversion handling** → stages the complete new deployment, retains exact rollback bytes for replaced and removed paths, and publishes the new `.cwc` deployment identity inside the same transaction. A recipe conflict or later write failure restores the entire prior deployment.\n- **Conflict detection** → every managed file carries an ownership HTML comment. Before overwriting or deleting, the exporter verifies ownership — it never touches files created by other artifacts or by hand.\n\n### Run\n\nFrom any Claude Code session, invoke the exported artifact by its skill name:\n\n```\n/plain-skill-name        # skill or loop\n/cwc-workflow-name       # multi-agent workflow\n```\n\nPlain skills run their instructions directly. A workflow orchestrator delegates its implementation steps to sub-agents via the Agent tool; Claude Code resolves each agent name to its `.md` file and loads its prompt, tools, and completion criteria.\n\nYou can also use **Test run** from CWC after exporting a skill, loop, or workflow. Test runs spawn Claude Code headlessly with `--permission-mode bypassPermissions`, use a chosen working directory, and can run in a git worktree or in-place. Rules are guidance-file edits, not runnable artifacts.\n\nAt launch, CWC binds the exact verified skill and every plain filesystem-backed dispatched agent into a private, namespaced plugin for that run. This carries untracked or dirty project exports and reference agents into isolated worktrees without changing their bytes. Exported skills carry a `cwc:bespoke-agents` declaration so reference agents remain externally owned while missing, replaced, shadowed, or malformed dependencies fail closed. Namespaced plugin-agent dispatches are refused by managed runs until CWC can resolve and snapshot their exact installed bytes; they never fall through to mutable code under `bypassPermissions`. Dispatching exports created before this metadata was introduced must be re-exported once. Later exports or deletes cannot change an active run halfway through. Approval gates retain and revalidate the same binding across server restarts; a missing or changed binding is never replaced with the current deployment during resume.\n\nCompleted isolated runs stay reviewable in **Runs** regardless of artifact tier. CWC checkpoints tracked and untracked output onto the run's `cwc/<artifact-skill>/<runId>` branch, removes the temporary worktree, and offers two deliberate result actions:\n\n- **Apply result** — fast-forwards the original checkout only when it is still the same repository, completely clean (including untracked files), and still at the recorded base commit. CWC never stashes, resets, rebases, cherry-picks, creates a merge commit, or resolves conflicts.\n- **Discard** — after an inline confirmation, deletes only the exact CWC result branch recorded by the run. A renamed, moved, foreign, or checked-out branch is preserved.\n\nEach managed run has a server-owned `<runId>.manifest.json` beside its JSONL timeline. The manifest records repository/base/worktree/result authority, immutable runtime-binding authority, and the Apply/Discard disposition. Exported artifact logging can append timeline events, but `POST /api/runs/events` cannot create or change a manifest and event-only legacy runs never receive Git actions.\n\nThe result endpoints are `GET /api/runs/:runId/diff`, `POST /api/runs/:runId/apply`, and `POST /api/runs/:runId/discard`; each requires the matching `workflowId`, and Discard additionally requires `confirmed: true`. Preflight conflicts return `409` with an actionable reason and leave both the destination and result branch unchanged.\n\n### Automate\n\nOpen a runnable artifact's **Automate** mode to add schedules and webhooks. Generated loop schedules start disabled and are never armed without an explicit user action:\n\n- **Cron** — use the schedule builder or enter a custom cron expression (e.g. `0 9 * * 1-5` for weekdays at 9 am).\n- **Webhook** — CWC generates an inbound local URL (`POST http://localhost:3579/api/triggers/<token>`) to fire the artifact.\n- **Working directory / targets** — choose where the automation runs, including optional additional repos for fan-out.\n- **Isolation** — use a git worktree for an isolated branch, or run in-place when you explicitly want the current checkout.\n- **Precondition** — a shell command that must succeed before CWC starts the run.\n- **Setup command** — a shell command CWC runs after the run starts, before Claude begins.\n\nWorkflow artifacts can add a **gate node** (drag from the \"Gate\" section of the sidebar) at any point. When the run reaches a gate it:\n1. Commits all changes to a `cwc/<runId>` branch and pauses.\n2. Posts a diff of the working branch to the approval inbox in Runs mode and on the Home dashboard.\n3. Waits — the reviewer reads the diff, writes an optional note, and clicks **Approve** or **Reject**.\n4. On approval, the run resumes in the same Claude Code session from the gate point.\n\nThe Home dashboard has an **Automations** widget that globally pauses or resumes scheduled/webhook runs without deleting or disarming triggers. Runs mode shows live/history timelines, approval inbox items, diffs, Apply/Discard state for completed isolated results, a stop button for active CWC-managed runs, and notification settings (macOS banners and/or a webhook URL).\n\n### Detect\n\nClick **Detect automations** on the Home dashboard to scan your local Claude Code history for repeated work. CWC parses local transcript files, builds compact digests, asks Claude to cluster recurring tasks, and shows candidates with evidence, confidence, observed steps, and a suggested trigger.\n\nEach candidate receives a deterministic recommendation:\n\n- **Rule** — a repeated instruction with no meaningful tool activity. CWC shows the suggested line and only adds it after you explicitly choose user-level `~/.claude/CLAUDE.md` or an evidence project's `AGENTS.md`. Owned marker blocks make the rule removable without rewriting surrounding guidance.\n- **Skill** — a linear, single-role procedure. CWC generates one readable skill with a deterministic checklist fallback if generation fails.\n- **Loop** — a skill with an observed schedule or verify/retry pattern. CWC preserves observed verification, seeds any generated trigger disabled, and defaults automation isolation to a worktree.\n- **Workflow** — work with genuine independent branches or role changes, or any risky external action such as publishing or communicating. This conservative safety rule keeps gate-capable work on the canvas.\n\nWhen history shows a mutating MCP/connector tool, CWC keeps its exact observed name on one\napproval-gated bespoke agent. It does not broaden every phase's tool access or silently attach the\ncapability to a reference agent with a different immutable tool policy.\n\nThe promotion dialog marks the recommendation and lets you choose another tier. The selected tier is recorded with the candidate; CWC never silently escalates a smaller artifact into a workflow. Rules are applied immediately to the chosen guidance file, while skills, loops, and workflows are saved as `.cwc` artifacts and opened for review.\n\n### Delete\n\n`POST /api/export/delete` scans exported files, checks their ownership comments, and only removes files owned by the current artifact. Reference nodes have nothing to delete — they didn't write any files.\n\n---\n\n## Features\n\n- **Visual canvas** — React Flow with background grid, minimap, zoom controls, and drag-to-connect\n- **Right-sized generation** — deterministic Rule / Skill / Loop / Workflow recommendations with an explicit tier override before generation\n- **Focused skill editor** — edit one skill's identity and Markdown without canvas overhead; graduate it to a workflow or safely demote a one-node workflow\n- **Theme toggle** — switch between light and dark mode from the Home dashboard or workflow header\n- **Left sidebar** — My Agents (searchable, draggable from user/project `.claude/agents/`), Skills (searchable, draggable onto selected nodes), and Discover links for community assets\n- **Generate agent / skill** — draft new reusable Claude Code assets from plain English, refine the spec, then save to `~/.claude/`\n- **Right panels** — Node Editor (name, description, criteria, tools, skills, system prompt, terminal type) and Edge Editor (trigger, label, context artifacts)\n- **Export modal** — target selection, full file preview, warning display before writing anything\n- **Auto-save** — 500ms debounced save to `~/.cwc/workflows/`, no manual saving needed\n- **Saved artifacts** — home screen lists `.cwc` skills, loops, and workflows from `~/.cwc/workflows/`; opened paths are also tracked in `~/.cwc/recents.json`\n- **Markdown preview** — click any agent or skill card to view its source file\n- **Open in editor** — view any agent or skill file in your system editor\n- **Claude Code detection** — warns on startup if `~/.claude/` is missing\n- **Test run** — launch an exported skill, loop, or workflow headlessly from the UI (`--permission-mode bypassPermissions`, user-chosen working directory, worktree or in-place isolation) and stop it mid-run\n- **Live run view** — the active node pulses on the canvas, completed nodes get a check, and events stream into a timeline panel\n- **Run history** — JSONL timelines and server-owned managed-run manifests persist under `~/.cwc/runs/` with status, duration, source, cost, and isolated-result disposition\n- **Automate mode** — attach cron schedules or webhook URLs to a runnable artifact, choose targets/isolation, add preconditions/setup commands, and arm trusted triggers\n- **Approval gates** — insert a gate node into any workflow; when reached the run pauses and posts a diff of its working branch, a reviewer approves or rejects from the inbox (or terminal), the run resumes on the same session\n- **Isolated runs** — Test Run (and scheduler-fired runs) create a git worktree on a CWC-owned branch so the main checkout stays untouched during execution; completed results can be reviewed, safely fast-forwarded, or explicitly discarded\n- **Notifications** — macOS banner + optional webhook on run complete, gate pause, and approval request; configured from Runs mode\n- **Global pause** — one Home dashboard toggle suspends all scheduled and webhook automation runs without disarming triggers\n- **Detect automations** — scans local Claude Code transcripts, clusters repeated work, streams progress, classifies candidates by artifact tier, and supports explicit rule application or `.cwc` generation\n\n---\n\n## Architecture\n\n```\nClient (React + React Flow)             Server (Express :3579)\n┌──────────────────────────────┐        ┌─────────────────────────────┐\n│ HomeDashboard                 │ ────► │ /api/workflows              │\n│ DetectView + DetectHero       │ ◄───► │ /api/automation-scan (+SSE) │\n│ WorkflowView + WorkflowHeader │ ────► │ /api/recents                │\n│ BuildMode / SkillBuildMode    │ ────► │ /api/agents                 │\n│   Sidebar                     │ ────► │ /api/skills                 │\n│   Canvas (React Flow)         │ ────► │ /api/agents/generate        │\n│   StepDrawer                  │ ────► │ /api/skills/generate        │\n│   OrchestratorPreview         │ ────► │ /api/export/preview         │\n│ RunsMode                      │ ◄───► │ /api/runs (+SSE)            │\n│ AutomateMode                  │ ────► │ /api/automations            │\n│ RunModal                      │ ────► │ /api/triggers               │\n│ ExportFlow                    │ ────► │ /api/export                 │\n│ useWorkflow/useAutoSave       │ ────► │ /api/export/delete          │\n└──────────────────────────────┘        │ /api/exported-workflows     │\n                                        │ /api/file-content           │\n                                        │ /api/open-file              │\n                                        │ /api/service-status         │\n                                        │ /api/claude-check           │\n                                        │ /api/health                 │\n                                        └─────────────────────────────┘\n\nCore library:\n  schema.ts                 Canonical .cwc types\n  slugify.ts                Shared slug normalization\n  run-events.ts             Run event schema and validation\n  workflow/bfs.ts           Graph traversal\n  workflow/prose-generator.ts\n                            Orchestrator prose generation\n  export/exporter.ts        Export orchestration, slug reconciliation, conflict checks\n  export/file-writer.ts     Agent and workflow skill Markdown output\n  export/conflict-detector.ts\n                            Ownership-comment detection\n  export/skill-resolver.ts  User/plugin skill lookup\n  detection/*               Claude Code transcript parsing, digesting, analysis\n  generation/classifier.ts  Deterministic artifact-tier selection\n  generation/generate.ts    Tier-aware skill/loop/workflow generation\n  generation/*              Skill generation and workflow planning/compilation\n\nServer modules:\n  security.ts               API token cookie, auth middleware, CORS rules\n  launcher.ts               CLI/server launch and port-collision handling\n  run-store.ts              JSONL run persistence and SSE fan-out\n  run-manifest.ts           Versioned managed-run authority and serialized transitions\n  run-skill-binding.ts      Immutable per-run skill/agent plugin snapshots\n  workflow-runner.ts        Headless Claude Code process spawning\n  run-isolation.ts          Git worktrees, verified diffs, Apply/Discard preflight and mutation\n  run-launcher.ts           Test/scheduled/webhook run lifecycle\n  automation-state.ts       Trigger arm/pause/fire bookkeeping\n  automation-scheduler.ts   Cron trigger evaluation\n  trigger-targets.ts        Target repo fan-out resolution\n  scan-store.ts             Detection scan, classification, rule, and generation state\n  rule-files.ts             Owned CLAUDE.md/AGENTS.md rule-block edits\n  streaming-analyzer.ts     Streaming Claude analysis runner\n  notifier.ts               macOS and webhook notifications\n  config.ts                 Notification config persistence\n\nStorage:\n  ~/.cwc/\n    recents.json              Recent file paths (max 10)\n    workflows/                Saved .cwc skill, loop, and workflow artifacts\n    runs/<workflowId>/        <runId>.jsonl timelines + <runId>.manifest.json managed authority\n    worktrees/                Git worktrees plus .skill-bindings/ for active/paused run plugins\n    automation-state.json     Global pause flag + per-trigger arm state\n    automation-scan.json      Latest history scan, suggestions, promotion state, and logs\n    config.json               Notification settings (macos, webhookUrl)\n    server.pid                PID of running server\n  ~/.claude/\n    agents/*.md               Agent definitions (read + written)\n    skills/*/SKILL.md         User skills (read by sidebar)\n    plugins/cache/...         Plugin skills (read by sidebar)\n```\n\n---\n\n## Key Concepts\n\n| Concept                | Description                                                                                                  |\n| ---------------------- | ------------------------------------------------------------------------------------------------------------ |\n| **Artifact tier**      | The right-sized result for a repetition: Rule, Skill, Loop, or Workflow                                      |\n| **CwcFile**            | Versioned JSON container (`.cwc`) for runnable skills, loops, and workflows: metadata, nodes, and edges       |\n| **Rule**               | An explicitly applied, ownership-marked instruction in user `CLAUDE.md` or an evidence project's `AGENTS.md` |\n| **Plain skill**        | A single procedural skill exported at `.claude/skills/<slug>/SKILL.md`, with no agent dispatch               |\n| **Loop**               | A plain skill with recurrence and/or an observed verification condition, runnable through CWC's managed harness |\n| **Bespoke node**       | A node whose agent definition is authored in the UI — exporter writes a new `.md` file                       |\n| **Reference node**     | A node with an `agentRef` slug pointing to an existing agent on disk — exporter writes nothing               |\n| **Handoff**            | A directed edge with a trigger description and optional context artifacts                                    |\n| **Terminal edge**      | An edge with no target node — marks a workflow end state (complete/escalated/aborted)                        |\n| **Ownership comment**  | Managed agents use `cwc:node` markers and managed skills use `cwc:workflow` markers for safe writes/deletes  |\n| **Orchestrator skill** | The workflow skill generated at `.claude/skills/cwc-<workflow-slug>/SKILL.md` — a Claude Code skill that delegates via Agent tool |\n| **Conflict detection** | Reads the ownership comment from a file on disk to determine if this workflow can safely overwrite/delete it |\n| **Gate node**          | A `nodeType: 'gate'` node that pauses a run at a checkpoint, diffs the branch, and waits for approval       |\n| **Trigger**            | A cron or webhook definition stored in artifact metadata; the scheduler/webhook router fires armed, enabled triggers |\n| **Isolation**          | Worktree mode creates a `cwc/<runId>` branch so the main checkout is never modified by an automated run     |\n| **Model invocation**   | Per-artifact export option. Off keeps `disable-model-invocation: true`; auto omits it so Claude may invoke the skill outside CWC's run harness |\n| **Detection scan**     | Local Claude Code history analysis that clusters repeated tasks and recommends an artifact tier              |\n\n---\n\n## Why Open Source\n\nThis tool has filesystem access to `~/.claude/`. Open source is the trust model: there is no CWC-hosted backend, and the local Node.js server is the entire app backend. The server binds to `127.0.0.1`, restricts cross-origin API access, and protects packaged-app API requests with a per-run local token.\n\n---\n\n## Development\n\nThis project uses npm and `package-lock.json`. `package.json` declares Node `>=18`; CI runs Node 20 and 22 on Ubuntu and Windows.\n\n```bash\nnpm run dev:server          # Watch-mode TypeScript compilation to dist/\nnpm run dev:api             # Local API at :3579 with CWC_DISABLE_AUTH=1\nnpm run dev:client          # Vite dev server with HMR (port 5173, proxies /api to :3579)\nnpm test                    # Run all tests (Vitest)\nnpm run typecheck           # Type-check server + client\nnpm run build               # Production build (server + client + bundled skill)\nnpm start                   # Run the built CLI/server from dist/\n```\n\nFor local development, run `dev:server`, `dev:api`, and `dev:client` in separate terminals. `dev:api` intentionally disables packaged-app API auth so Vite can talk to the server; do not carry that behavior into packaged mode.\n\nDurable coding-agent guidance lives in `AGENTS.md`; Claude Code-specific guidance lives in `CLAUDE.md`. Keep them in sync when changing repo conventions.\n\n### Tests\n\nThe Vitest suite covers:\n\n- **BFS traversal**: linear chains, back-edges, fan-out, multi-root, terminal edges\n- **Prose generation**: start triggers, bold wrapping, context artifacts, Oxford comma, back-edge ordering\n- **File writer**: frontmatter, skills block, ownership comments, plain and orchestrator skill generation\n- **Exporter**: temp-filesystem integration for both artifact kinds, rename/conversion cleanup, skill resolution, preview parity, and hard conflicts for foreign or hand-authored files\n- **Validation**: empty workflows, missing names, duplicate slugs, disconnected nodes\n- **Graph layout**: horizontal spacing, fan-out vertical spacing, back-edge stability\n- **HTTP endpoints**: all API routes tested with real server instances\n- **Slugify**: special chars, truncation, hyphen collapse, empty input\n- **Conflict detection**: owned, foreign, absent, malformed states\n- **Server hardening**: local API token enforcement, workflow path confinement, export target path validation\n- **Skill resolution**: namespaced (plugin) and non-namespaced (user) skill lookup\n- **Claude runner**: binary resolution (incl. Windows shims), stdin prompt delivery, timeout/error envelopes\n- **Undo history**: coalescing, redo-stack clearing, edge cascade on node delete, history cap\n- **Run isolation**: worktree create/remove, diff generation, git detection\n- **Run launcher**: fireWorkflow lifecycle, worktree + in-place paths, classifyAndFinish\n- **Automation scheduler**: cron firing, precondition checks, daily cap, global pause gate\n- **Automation state**: arm/disarm, paused flag persistence, trigger hashing\n- **Gate endpoints**: approve (resume), reject, 409 on wrong state, diff response\n- **Notifier**: macOS toast, webhook POST, event filtering\n- **Automation detection**: transcript parsing, shape derivation, tier classification, streamed scan logs, tier override, rule application, artifact generation/cancellation, and trigger seeding\n- **Help copy and theme preference**: glossary terms, control hints, light/dark theme parsing, and dashboard event helpers\n\n---\n\n## Contributing\n\nPRs welcome. The codebase is TypeScript end-to-end (client + server + core library). Run `npm test` and `npm run typecheck` before submitting.\n\nIf you build an artifact you're proud of, share the `.cwc` file — that's how the community library grows.\n\n---\n\n## License\n\nMIT\n","readmeFilename":"README.md"}