@agentic15.com/agentic15-claude-zen 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/LICENSE +201 -0
- package/README.md +204 -0
- package/bin/create-agentic15-claude-zen.js +201 -0
- package/dist/hooks/auto-format.js +2 -0
- package/dist/hooks/check-pending-reviews.js +2 -0
- package/dist/hooks/complete-task.js +2 -0
- package/dist/hooks/detect-pending-reviews.js +2 -0
- package/dist/hooks/enforce-hard-requirements.js +2 -0
- package/dist/hooks/enforce-migration-workflow.js +2 -0
- package/dist/hooks/enforce-plan-template.js +2 -0
- package/dist/hooks/enforce-structured-development.js +2 -0
- package/dist/hooks/enforce-test-pyramid.js +2 -0
- package/dist/hooks/init-task-tracker.js +2 -0
- package/dist/hooks/performance-cache.js +2 -0
- package/dist/hooks/prevent-read-bypass.js +2 -0
- package/dist/hooks/session-start-context.js +2 -0
- package/dist/hooks/start-task.js +2 -0
- package/dist/hooks/task-status.js +2 -0
- package/dist/hooks/validate-component-contract.js +2 -0
- package/dist/hooks/validate-database-changes.js +2 -0
- package/dist/hooks/validate-e2e-coverage.js +2 -0
- package/dist/hooks/validate-git-workflow.js +2 -0
- package/dist/hooks/validate-integration-site.js +2 -0
- package/dist/hooks/validate-migration-impact.js +2 -0
- package/dist/hooks/validate-task-completion.js +2 -0
- package/dist/hooks/validate-test-quality.js +2 -0
- package/dist/hooks/validate-test-results.js +2 -0
- package/dist/hooks/validate-ui-integration.js +2 -0
- package/dist/hooks/validate-ui-runtime.js +2 -0
- package/dist/hooks/validate-ui-syntax.js +2 -0
- package/dist/hooks/validate-ui-visual-native.js +2 -0
- package/dist/hooks/validate-ui-visual.js +2 -0
- package/dist/hooks/validate-visual-regression.js +2 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +7 -0
- package/dist/scripts/add-version-headers.js +2 -0
- package/dist/scripts/help.js +2 -0
- package/dist/scripts/plan-amend.js +2 -0
- package/dist/scripts/plan-create.js +2 -0
- package/dist/scripts/plan-generate.js +2 -0
- package/dist/scripts/plan-help.js +2 -0
- package/dist/scripts/plan-init.js +2 -0
- package/dist/scripts/plan-manager.js +2 -0
- package/dist/scripts/pre-publish-checklist.js +2 -0
- package/dist/scripts/production-test.js +2 -0
- package/dist/scripts/profile-hooks.js +2 -0
- package/dist/scripts/setup-git-hooks.js +2 -0
- package/dist/scripts/task-done.js +2 -0
- package/dist/scripts/task-merge.js +2 -0
- package/dist/scripts/task-next.js +2 -0
- package/dist/scripts/task-start.js +2 -0
- package/dist/scripts/task-status.js +2 -0
- package/dist/scripts/verify-hooks.js +2 -0
- package/package.json +61 -0
- package/src/core/DependencyInstaller.js +41 -0
- package/src/core/GitInitializer.js +45 -0
- package/src/core/HookInstaller.js +54 -0
- package/src/core/ProjectInitializer.js +105 -0
- package/src/core/TemplateManager.js +159 -0
- package/src/index.js +56 -0
- package/templates/.babelrc +6 -0
- package/templates/.claude/CLAUDE.md +408 -0
- package/templates/.claude/ONBOARDING.md +723 -0
- package/templates/.claude/PLAN-SCHEMA.json +240 -0
- package/templates/.claude/POST-INSTALL.md +248 -0
- package/templates/.claude/PROJECT-PLAN-TEMPLATE.json +223 -0
- package/templates/.claude/hooks/enforce-plan-template.js +106 -0
- package/templates/.claude/hooks/session-start-context.js +130 -0
- package/templates/.claude/hooks/validate-git-workflow.js +74 -0
- package/templates/.claude/settings.json +262 -0
- package/templates/.gitignore +14 -0
- package/templates/Agent/.gitkeep +3 -0
- package/templates/README.md +76 -0
- package/templates/__mocks__/fileMock.js +9 -0
- package/templates/jest.config.js +48 -0
- package/templates/jest.setup.js +13 -0
- package/templates/package.json +40 -0
- package/templates/scripts/.gitkeep +3 -0
- package/templates/test-site/README.md +271 -0
- package/templates/test-site/index.html +13 -0
- package/templates/test-site/package.json +25 -0
- package/templates/test-site/server.js +125 -0
- package/templates/test-site/src/App.css +130 -0
- package/templates/test-site/src/App.jsx +78 -0
- package/templates/test-site/src/index.css +39 -0
- package/templates/test-site/src/main.jsx +10 -0
- package/templates/test-site/vite.config.js +12 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const _0xd5edc8=_0x843d;(function(_0x9c55fe,_0x443289){const _0x37a288=_0x843d,_0xa2a3d7=_0x9c55fe();while(!![]){try{const _0x1c5c62=parseInt(_0x37a288(0x1d9))/0x1*(-parseInt(_0x37a288(0x1b0))/0x2)+-parseInt(_0x37a288(0x163))/0x3+parseInt(_0x37a288(0x170))/0x4*(parseInt(_0x37a288(0x14d))/0x5)+parseInt(_0x37a288(0x1ad))/0x6+parseInt(_0x37a288(0x19e))/0x7+-parseInt(_0x37a288(0x17a))/0x8+parseInt(_0x37a288(0x1b6))/0x9;if(_0x1c5c62===_0x443289)break;else _0xa2a3d7['push'](_0xa2a3d7['shift']());}catch(_0x52cefe){_0xa2a3d7['push'](_0xa2a3d7['shift']());}}}(_0x15b9,0x4deb3));import{execSync as _0x1d6218}from'child_process';function _0x843d(_0x384dbb,_0x54e5ea){_0x384dbb=_0x384dbb-0x131;const _0x3d5626=_0x15b9();let _0x2a1a50=_0x3d5626[_0x384dbb];return _0x2a1a50;}import*as _0x3cb17d from'fs';import*as _0x1e9670 from'path';import{fileURLToPath as _0x33c6fe}from'url';const _0x1d484d={};_0x1d484d['reset']=_0xd5edc8(0x18f),_0x1d484d[_0xd5edc8(0x1a1)]=_0xd5edc8(0x1d5),_0x1d484d[_0xd5edc8(0x172)]='\x1b[31m',_0x1d484d[_0xd5edc8(0x198)]='\x1b[33m',_0x1d484d['cyan']=_0xd5edc8(0x17d);var k=_0x33c6fe(import.meta.url),S=_0x1e9670[_0xd5edc8(0x16f)](k),f=_0x1e9670['resolve'](S,'..'),h=_0x1e9670[_0xd5edc8(0x1c0)](f,_0xd5edc8(0x162),_0xd5edc8(0x15a)),m=0x1f4,y=_0x1d484d;function n(_0x470277,_0x58c210='reset'){const _0x3ae857=_0xd5edc8;console[_0x3ae857(0x183)](''+y[_0x58c210]+_0x470277+y[_0x3ae857(0x1d6)]);}function w(_0x59bce1,_0x4e4357){const _0x3deb82=_0xd5edc8,_0x4ce0c2={'TOsVY':function(_0x57e00b,_0x3b6839,_0x3f6ced){return _0x57e00b(_0x3b6839,_0x3f6ced);},'riVcC':_0x3deb82(0x1f1),'qxxhg':_0x3deb82(0x14b),'LYUQx':function(_0x4f4ef9,_0x4b2da5){return _0x4f4ef9/_0x4b2da5;},'wdYny':function(_0x3c6a87,_0x457478){return _0x3c6a87(_0x457478);},'PAPBL':function(_0x2485c3,_0x1f8cb2){return _0x2485c3-_0x1f8cb2;},'OAgTG':function(_0xed63fe,_0xace39d){return _0xed63fe<_0xace39d;},'uPanr':_0x3deb82(0x1da),'LcXRL':_0x3deb82(0x15b),'NSECj':'ERROR'};let _0x35436e=process[_0x3deb82(0x138)][_0x3deb82(0x18b)]();try{_0x4ce0c2[_0x3deb82(0x1bd)](_0x1d6218,_0x3deb82(0x1c4)+_0x59bce1+_0x3deb82(0x1c3)+JSON['stringify'](_0x4e4357)+'\x27',{'encoding':_0x4ce0c2[_0x3deb82(0x17e)],'stdio':_0x4ce0c2[_0x3deb82(0x168)],'timeout':0x1388});let _0x1d22ae=process[_0x3deb82(0x138)][_0x3deb82(0x18b)](),_0x5c2b52=_0x4ce0c2['LYUQx'](_0x4ce0c2[_0x3deb82(0x1c9)](Number,_0x4ce0c2['PAPBL'](_0x1d22ae,_0x35436e)),0xf4240);return{'success':!0x0,'duration':_0x5c2b52,'status':_0x4ce0c2['OAgTG'](_0x5c2b52,m)?_0x4ce0c2[_0x3deb82(0x1e7)]:_0x4ce0c2[_0x3deb82(0x146)]};}catch(_0x121cc1){let _0x4a76cb=process['hrtime'][_0x3deb82(0x18b)]();return{'success':!0x1,'duration':Number(_0x4ce0c2['PAPBL'](_0x4a76cb,_0x35436e))/0xf4240,'status':_0x4ce0c2['NSECj'],'error':_0x121cc1[_0x3deb82(0x153)]};}}function E(){const _0x54727a=_0xd5edc8,_0x4ee21e={};_0x4ee21e[_0x54727a(0x14e)]=_0x54727a(0x1ea),_0x4ee21e[_0x54727a(0x171)]='src',_0x4ee21e[_0x54727a(0x178)]=_0x54727a(0x151),_0x4ee21e['ShbmX']=_0x54727a(0x19b),_0x4ee21e[_0x54727a(0x1d2)]=_0x54727a(0x1db),_0x4ee21e[_0x54727a(0x16e)]=_0x54727a(0x1b4),_0x4ee21e['KviIw']=_0x54727a(0x166),_0x4ee21e['qqPpm']='old',_0x4ee21e[_0x54727a(0x13d)]='new',_0x4ee21e['NezQJ']=_0x54727a(0x15c),_0x4ee21e[_0x54727a(0x159)]=_0x54727a(0x18a),_0x4ee21e[_0x54727a(0x1bc)]=_0x54727a(0x1df),_0x4ee21e[_0x54727a(0x156)]='Write',_0x4ee21e['eQHxP']=_0x54727a(0x150);const _0x4f2efe=_0x4ee21e;let _0x334055=_0x1e9670['join'](f,_0x4f2efe[_0x54727a(0x14e)],_0x4f2efe['nmThe'],_0x4f2efe[_0x54727a(0x178)]),_0x1be9ae=_0x1e9670[_0x54727a(0x1c0)](f,_0x4f2efe[_0x54727a(0x14e)],_0x4f2efe[_0x54727a(0x1dd)],_0x4f2efe[_0x54727a(0x1d2)],_0x54727a(0x1a5));const _0x111bec={};_0x111bec[_0x54727a(0x140)]=_0x334055;const _0x4baccd={};_0x4baccd['tool_name']=_0x4f2efe[_0x54727a(0x16e)],_0x4baccd[_0x54727a(0x16a)]=_0x111bec;const _0x5a96ea={};_0x5a96ea[_0x54727a(0x140)]=_0x334055,_0x5a96ea[_0x54727a(0x195)]=_0x4f2efe['KviIw'];const _0x1df051={};_0x1df051[_0x54727a(0x1bf)]=_0x54727a(0x16d),_0x1df051['tool_input']=_0x5a96ea;const _0x4c3116={};_0x4c3116[_0x54727a(0x140)]=_0x334055,_0x4c3116['old_string']=_0x4f2efe[_0x54727a(0x1d4)],_0x4c3116[_0x54727a(0x144)]=_0x4f2efe[_0x54727a(0x13d)];const _0x33bc0d={};_0x33bc0d['tool_name']=_0x54727a(0x15e),_0x33bc0d[_0x54727a(0x16a)]=_0x4c3116;const _0x1188dc={};_0x1188dc[_0x54727a(0x1bf)]=_0x4f2efe[_0x54727a(0x1ed)],_0x1188dc[_0x54727a(0x16a)]={},_0x1188dc[_0x54727a(0x16a)][_0x54727a(0x1e1)]=_0x4f2efe[_0x54727a(0x159)];const _0x5d9b59={};_0x5d9b59['path']=_0x334055,_0x5d9b59['pattern']='export';const _0x373e18={};_0x373e18[_0x54727a(0x1bf)]=_0x4f2efe[_0x54727a(0x1bc)],_0x373e18[_0x54727a(0x16a)]=_0x5d9b59;const _0x1a9907={};_0x1a9907[_0x54727a(0x1bf)]=_0x4f2efe[_0x54727a(0x156)],_0x1a9907[_0x54727a(0x16a)]={},_0x1a9907[_0x54727a(0x16a)][_0x54727a(0x140)]=_0x1be9ae,_0x1a9907[_0x54727a(0x16a)][_0x54727a(0x195)]=_0x4f2efe['eQHxP'];const _0x3e0c86={};return _0x3e0c86[_0x54727a(0x1b4)]=_0x4baccd,_0x3e0c86['Write']=_0x1df051,_0x3e0c86[_0x54727a(0x15e)]=_0x33bc0d,_0x3e0c86[_0x54727a(0x15c)]=_0x1188dc,_0x3e0c86['Grep']=_0x373e18,_0x3e0c86[_0x54727a(0x1f2)]=_0x1a9907,_0x3e0c86;}function R(_0x2e804f=!0x1){const _0x4baa91=_0xd5edc8,_0x3174a6={'ysvda':_0x4baa91(0x1a1),'fbMTc':function(_0x5869c7,_0x2ee2c3,_0x5f2a52){return _0x5869c7(_0x2ee2c3,_0x5f2a52);},'xwjYg':_0x4baa91(0x142),'wEhyQ':function(_0x3acc6c){return _0x3acc6c();},'KsdeQ':'.js','KgwXL':_0x4baa91(0x186),'SewIB':_0x4baa91(0x197),'UhMZm':function(_0x4fd23c,_0x14f7bd){return _0x4fd23c===_0x14f7bd;},'ZcUxB':_0x4baa91(0x1da),'RSHPo':function(_0x5be41a,_0x4b66c1){return _0x5be41a===_0x4b66c1;},'fpYmj':_0x4baa91(0x15b),'fxNEF':'yellow','DQvTd':'red','xOAVJ':function(_0x290e97,_0x34cec8,_0xcdf971){return _0x290e97(_0x34cec8,_0xcdf971);}};_0x3174a6[_0x4baa91(0x15d)](n,_0x4baa91(0x1b2),_0x3174a6[_0x4baa91(0x134)]),n(_0x4baa91(0x1bb)+m+_0x4baa91(0x1c5),_0x3174a6[_0x4baa91(0x134)]);let _0x39e675=_0x3cb17d[_0x4baa91(0x1aa)](h)[_0x4baa91(0x155)](_0x286575=>_0x286575[_0x4baa91(0x1ca)](_0x4baa91(0x14a)))[_0x4baa91(0x158)](),_0x14028e=_0x3174a6[_0x4baa91(0x174)](E),_0x33f8be=[];for(let _0x2a31ef of _0x39e675){if(_0x4baa91(0x157)===_0x4baa91(0x135)){_0x5a62b4(_0x4baa91(0x167),_0x3174a6[_0x4baa91(0x1a3)]);return;}else{let _0x546ead=_0x1e9670[_0x4baa91(0x1c0)](h,_0x2a31ef),_0x28d460=_0x2a31ef[_0x4baa91(0x1d3)](_0x3174a6[_0x4baa91(0x1a6)],''),_0x5271be=_0x14028e['Read'];_0x2a31ef[_0x4baa91(0x175)](_0x4baa91(0x136))?_0x5271be=_0x14028e[_0x4baa91(0x15c)]:_0x2a31ef[_0x4baa91(0x175)](_0x3174a6[_0x4baa91(0x139)])||_0x2a31ef['includes'](_0x3174a6[_0x4baa91(0x160)])?_0x5271be=_0x14028e['WriteTest']:(_0x2a31ef[_0x4baa91(0x175)](_0x4baa91(0x147))||_0x2a31ef[_0x4baa91(0x175)]('ui'))&&(_0x5271be=_0x14028e[_0x4baa91(0x16d)]);let _0x1533c2=_0x3174a6['fbMTc'](w,_0x546ead,_0x5271be);const _0x2e67c0={};_0x2e67c0[_0x4baa91(0x17b)]=_0x28d460,_0x2e67c0[_0x4baa91(0x141)]=_0x1533c2[_0x4baa91(0x141)],_0x2e67c0[_0x4baa91(0x19c)]=_0x1533c2['status'],_0x2e67c0['error']=_0x1533c2['error'],_0x33f8be[_0x4baa91(0x13a)](_0x2e67c0);let _0x5d2794=(_0x1533c2[_0x4baa91(0x141)][_0x4baa91(0x1a4)](0x2)+'ms')[_0x4baa91(0x1c1)](0xc),_0x1de0e2=_0x3174a6[_0x4baa91(0x1e3)](_0x1533c2[_0x4baa91(0x19c)],_0x3174a6[_0x4baa91(0x169)])?_0x3174a6[_0x4baa91(0x1a3)]:_0x3174a6[_0x4baa91(0x1f0)](_0x1533c2[_0x4baa91(0x19c)],_0x3174a6['fpYmj'])?_0x3174a6[_0x4baa91(0x16c)]:_0x3174a6[_0x4baa91(0x179)];(_0x2e804f||_0x1533c2['status']!==_0x3174a6[_0x4baa91(0x169)])&&(_0x3174a6[_0x4baa91(0x14f)](n,_0x28d460[_0x4baa91(0x1c1)](0x28)+'\x20'+_0x5d2794+'\x20'+_0x1533c2[_0x4baa91(0x19c)],_0x1de0e2),_0x1533c2[_0x4baa91(0x1e0)]&&console[_0x4baa91(0x183)]('\x20\x20Error:\x20'+_0x1533c2[_0x4baa91(0x1e0)]));}}return _0x33f8be;}function b(_0x465cd5){const _0x5e2c2b=_0xd5edc8,_0xb46af3={'miUhV':_0x5e2c2b(0x190),'gDmxQ':function(_0x192c34,_0x106b73,_0x447633){return _0x192c34(_0x106b73,_0x447633);},'onDib':_0x5e2c2b(0x198),'ajGNt':function(_0x2fe010,_0xf011b6,_0x55f31b){return _0x2fe010(_0xf011b6,_0x55f31b);},'vZmUo':_0x5e2c2b(0x142),'qXhaj':function(_0x42e70c,_0x5ea72a,_0x179dde){return _0x42e70c(_0x5ea72a,_0x179dde);},'azHvG':function(_0x4c0063){return _0x4c0063();},'VaXoU':_0x5e2c2b(0x14a),'gIJqp':_0x5e2c2b(0x136),'sjyzQ':_0x5e2c2b(0x186),'aUseg':_0x5e2c2b(0x197),'IvuFz':_0x5e2c2b(0x147),'kTxGP':function(_0x343e58,_0x55671a){return _0x343e58===_0x55671a;},'OiaOZ':_0x5e2c2b(0x1a1),'GjJzd':function(_0x14a321,_0x2795b1){return _0x14a321===_0x2795b1;},'Fbivt':'SLOW','LrtTW':_0x5e2c2b(0x1da),'HLoQn':function(_0x3652fb,_0x155be7,_0x12cccb){return _0x3652fb(_0x155be7,_0x12cccb);},'pLtHA':function(_0x28e3a3,_0x822993){return _0x28e3a3===_0x822993;},'HhJsv':'DDGCD','oafZE':'red','XrqYH':'Performance\x20Summary','egzfu':function(_0x9d2286,_0x1aff6d,_0x162a13){return _0x9d2286(_0x1aff6d,_0x162a13);},'nJCAM':function(_0x3381a5,_0x37f45b){return _0x3381a5/_0x37f45b;},'yQlAp':function(_0x4b15af,_0x5777a9,_0x8d83c){return _0x4b15af(_0x5777a9,_0x8d83c);},'NzhQd':function(_0x571e43,_0x4b4106){return _0x571e43>_0x4b4106;},'hahZX':function(_0x436c19,_0x1feefb){return _0x436c19>_0x1feefb;},'gLkTS':function(_0x206438,_0x40707f,_0x43a807){return _0x206438(_0x40707f,_0x43a807);},'PsKbx':function(_0x102eda,_0x6afc39,_0x5012f1){return _0x102eda(_0x6afc39,_0x5012f1);},'wVlcm':_0x5e2c2b(0x193),'OYPAu':_0x5e2c2b(0x152),'XafHv':_0x5e2c2b(0x194),'uuxXl':'A\x20(Very\x20Good)','xKmIM':function(_0x5e3bc2,_0x185c64){return _0x5e3bc2>=_0x185c64;},'PxKzs':'B\x20(Good)','kMGXV':_0x5e2c2b(0x18d)};_0xb46af3['qXhaj'](n,'\x0a'+'ā'['repeat'](0x3c),_0xb46af3[_0x5e2c2b(0x189)]),_0xb46af3[_0x5e2c2b(0x13e)](n,_0xb46af3[_0x5e2c2b(0x13f)],_0xb46af3[_0x5e2c2b(0x189)]),_0xb46af3[_0x5e2c2b(0x1a0)](n,'ā'['repeat'](0x3c),_0xb46af3[_0x5e2c2b(0x189)]),console[_0x5e2c2b(0x183)]('');let _0x4204fa=_0x465cd5[_0x5e2c2b(0x155)](_0xfd05df=>_0xfd05df[_0x5e2c2b(0x19c)]===_0x5e2c2b(0x1da)),_0x5b3fa2=_0x465cd5[_0x5e2c2b(0x155)](_0x4bfe24=>_0x4bfe24[_0x5e2c2b(0x19c)]===_0x5e2c2b(0x15b)),_0x1f879f=_0x465cd5[_0x5e2c2b(0x155)](_0x535ca7=>_0x535ca7[_0x5e2c2b(0x19c)]===_0x5e2c2b(0x14c)),_0x3c213d=_0xb46af3[_0x5e2c2b(0x1d8)](_0x465cd5[_0x5e2c2b(0x184)]((_0x3cc9dd,_0x4154c0)=>_0x3cc9dd+_0x4154c0[_0x5e2c2b(0x141)],0x0),_0x465cd5['length']),_0x423abf=Math['max'](..._0x465cd5[_0x5e2c2b(0x1e4)](_0x3297ec=>_0x3297ec['duration'])),_0x5e8f7c=Math['min'](..._0x465cd5['map'](_0x17c7cb=>_0x17c7cb[_0x5e2c2b(0x141)]));_0xb46af3[_0x5e2c2b(0x1a7)](n,_0x5e2c2b(0x1cc)+_0x465cd5[_0x5e2c2b(0x19a)],_0xb46af3['vZmUo']),_0xb46af3['egzfu'](n,_0x5e2c2b(0x164)+m+'ms):\x20'+_0x4204fa[_0x5e2c2b(0x19a)],_0xb46af3[_0x5e2c2b(0x192)]),_0xb46af3[_0x5e2c2b(0x15f)](n,_0x5e2c2b(0x145)+m+_0x5e2c2b(0x1c6)+_0x5b3fa2[_0x5e2c2b(0x19a)],_0xb46af3[_0x5e2c2b(0x1a9)](_0x5b3fa2['length'],0x0)?_0x5e2c2b(0x198):_0xb46af3['OiaOZ']),n('ā\x20Errors:\x20\x20\x20\x20\x20\x20\x20'+_0x1f879f[_0x5e2c2b(0x19a)],_0xb46af3[_0x5e2c2b(0x1c8)](_0x1f879f['length'],0x0)?_0xb46af3[_0x5e2c2b(0x1de)]:_0xb46af3[_0x5e2c2b(0x192)]),console[_0x5e2c2b(0x183)](''),_0xb46af3[_0x5e2c2b(0x17c)](n,_0x5e2c2b(0x1cd)+_0x3c213d[_0x5e2c2b(0x1a4)](0x2)+'ms',_0xb46af3[_0x5e2c2b(0x189)]),_0xb46af3[_0x5e2c2b(0x15f)](n,_0x5e2c2b(0x176)+_0x5e8f7c[_0x5e2c2b(0x1a4)](0x2)+'ms',_0xb46af3[_0x5e2c2b(0x192)]),_0xb46af3[_0x5e2c2b(0x18c)](n,'Slowest:\x20'+_0x423abf[_0x5e2c2b(0x1a4)](0x2)+'ms',_0x423abf>m?_0xb46af3[_0x5e2c2b(0x1b5)]:_0xb46af3['OiaOZ']),console['log'](''),_0x5b3fa2[_0x5e2c2b(0x19a)]>0x0&&(_0xb46af3[_0x5e2c2b(0x149)](n,_0xb46af3[_0x5e2c2b(0x1b7)],_0x5e2c2b(0x198)),_0x5b3fa2[_0x5e2c2b(0x158)]((_0x5ef4ca,_0x2bb715)=>_0x2bb715[_0x5e2c2b(0x141)]-_0x5ef4ca[_0x5e2c2b(0x141)])[_0x5e2c2b(0x1d7)](_0xfb687f=>{const _0x599b26=_0x5e2c2b;if(_0xb46af3['miUhV']!==_0xb46af3['miUhV']){if(_0x5b3e27){const _0x5d8e5d=_0x2ad975[_0x599b26(0x1c2)](_0x536f29,arguments);return _0x282f3e=null,_0x5d8e5d;}}else _0xb46af3[_0x599b26(0x19d)](n,'\x20\x20'+_0xfb687f['hook'][_0x599b26(0x1c1)](0x28)+'\x20'+_0xfb687f[_0x599b26(0x141)][_0x599b26(0x1a4)](0x2)+'ms',_0xb46af3[_0x599b26(0x1b5)]);}),console[_0x5e2c2b(0x183)]('')),_0xb46af3[_0x5e2c2b(0x1a9)](_0x1f879f['length'],0x0)&&(_0xb46af3[_0x5e2c2b(0x149)](n,_0xb46af3[_0x5e2c2b(0x1ab)],_0xb46af3[_0x5e2c2b(0x1de)]),_0x1f879f[_0x5e2c2b(0x1d7)](_0x19d825=>{const _0x46e16d=_0x5e2c2b;if(_0xb46af3[_0x46e16d(0x165)](_0xb46af3[_0x46e16d(0x132)],_0xb46af3[_0x46e16d(0x132)]))_0xb46af3[_0x46e16d(0x18c)](n,'\x20\x20'+_0x19d825['hook']+':\x20'+_0x19d825[_0x46e16d(0x1e0)],_0xb46af3[_0x46e16d(0x1de)]);else{_0xb46af3[_0x46e16d(0x15f)](_0x2f8b52,_0x46e16d(0x1b2),_0xb46af3[_0x46e16d(0x189)]),_0xb46af3[_0x46e16d(0x13e)](_0x6d03bd,'Target:\x20<'+_0x213a28+_0x46e16d(0x1c5),_0xb46af3[_0x46e16d(0x189)]);let _0x33746b=_0x4e5cd1[_0x46e16d(0x1aa)](_0x107f58)[_0x46e16d(0x155)](_0x1a7433=>_0x1a7433[_0x46e16d(0x1ca)](_0x46e16d(0x14a)))['sort'](),_0x408bf9=_0xb46af3['azHvG'](_0x4a85e1),_0x397e85=[];for(let _0x8a94b7 of _0x33746b){let _0x317259=_0xf7ce63[_0x46e16d(0x1c0)](_0x1a002e,_0x8a94b7),_0xaaa646=_0x8a94b7[_0x46e16d(0x1d3)](_0xb46af3[_0x46e16d(0x1e2)],''),_0x35d020=_0x408bf9['Read'];_0x8a94b7['includes'](_0xb46af3[_0x46e16d(0x1e5)])?_0x35d020=_0x408bf9[_0x46e16d(0x15c)]:_0x8a94b7[_0x46e16d(0x175)](_0xb46af3[_0x46e16d(0x182)])||_0x8a94b7[_0x46e16d(0x175)](_0xb46af3['aUseg'])?_0x35d020=_0x408bf9[_0x46e16d(0x1f2)]:(_0x8a94b7[_0x46e16d(0x175)](_0xb46af3['IvuFz'])||_0x8a94b7[_0x46e16d(0x175)]('ui'))&&(_0x35d020=_0x408bf9[_0x46e16d(0x16d)]);let _0x1c0681=_0xb46af3[_0x46e16d(0x15f)](_0xee607,_0x317259,_0x35d020);const _0x246fff={};_0x246fff[_0x46e16d(0x17b)]=_0xaaa646,_0x246fff[_0x46e16d(0x141)]=_0x1c0681[_0x46e16d(0x141)],_0x246fff['status']=_0x1c0681['status'],_0x246fff['error']=_0x1c0681['error'],_0x397e85[_0x46e16d(0x13a)](_0x246fff);let _0x1a5a17=(_0x1c0681[_0x46e16d(0x141)]['toFixed'](0x2)+'ms')['padEnd'](0xc),_0x1ef4c5=_0xb46af3[_0x46e16d(0x1c7)](_0x1c0681[_0x46e16d(0x19c)],_0x46e16d(0x1da))?_0xb46af3[_0x46e16d(0x192)]:_0xb46af3[_0x46e16d(0x131)](_0x1c0681[_0x46e16d(0x19c)],_0xb46af3['Fbivt'])?_0xb46af3[_0x46e16d(0x1b5)]:'red';(_0x505b7e||_0x1c0681[_0x46e16d(0x19c)]!==_0xb46af3[_0x46e16d(0x1cf)])&&(_0xb46af3['HLoQn'](_0x1a2dfe,_0xaaa646[_0x46e16d(0x1c1)](0x28)+'\x20'+_0x1a5a17+'\x20'+_0x1c0681['status'],_0x1ef4c5),_0x1c0681['error']&&_0x1edd75[_0x46e16d(0x183)]('\x20\x20Error:\x20'+_0x1c0681[_0x46e16d(0x1e0)]));}return _0x397e85;}}),console[_0x5e2c2b(0x183)](''));let _0x343104=_0x4204fa['length']/_0x465cd5[_0x5e2c2b(0x19a)]*0x64,_0x428a0a,_0x49c13a;return _0x343104===0x64?(_0x428a0a=_0xb46af3['XafHv'],_0x49c13a=_0xb46af3['OiaOZ']):_0x343104>=0x5a?(_0x428a0a=_0xb46af3['uuxXl'],_0x49c13a=_0xb46af3[_0x5e2c2b(0x192)]):_0xb46af3[_0x5e2c2b(0x1b1)](_0x343104,0x50)?(_0x428a0a=_0xb46af3[_0x5e2c2b(0x1a8)],_0x49c13a=_0xb46af3[_0x5e2c2b(0x1b5)]):_0xb46af3[_0x5e2c2b(0x1b1)](_0x343104,0x46)?(_0x428a0a='C\x20(Acceptable)',_0x49c13a=_0xb46af3[_0x5e2c2b(0x1b5)]):(_0x428a0a=_0xb46af3[_0x5e2c2b(0x199)],_0x49c13a=_0x5e2c2b(0x172)),n('Performance\x20Grade:\x20'+_0x428a0a+'\x20('+_0x343104[_0x5e2c2b(0x1a4)](0x1)+'%)',_0x49c13a),console[_0x5e2c2b(0x183)](''),{'total':_0x465cd5[_0x5e2c2b(0x19a)],'passed':_0x4204fa['length'],'slow':_0x5b3fa2[_0x5e2c2b(0x19a)],'errors':_0x1f879f[_0x5e2c2b(0x19a)],'avgDuration':_0x3c213d,'maxDuration':_0x423abf,'minDuration':_0x5e8f7c,'grade':_0x428a0a,'passRate':_0x343104};}function A(_0x2dcf01){const _0x48d5aa=_0xd5edc8,_0x30bb35={'BwJgp':function(_0x47c6a0,_0x60d2,_0x3bb223){return _0x47c6a0(_0x60d2,_0x3bb223);},'BPuZm':function(_0x494d86,_0x374cb8){return _0x494d86+_0x374cb8;},'fQbVH':_0x48d5aa(0x198),'OccwJ':_0x48d5aa(0x1eb),'zzWcs':_0x48d5aa(0x1b9),'TxGlW':_0x48d5aa(0x1d0),'woBnh':_0x48d5aa(0x197),'uXHMH':_0x48d5aa(0x1d1),'UCUqa':_0x48d5aa(0x133),'CIAhz':_0x48d5aa(0x148),'hqnZd':_0x48d5aa(0x147),'ckwPE':_0x48d5aa(0x137),'HAoWR':'\x20\x20\x20-\x20Check\x20file\x20extensions\x20before\x20processing','DcoLr':_0x48d5aa(0x173),'eltHA':_0x48d5aa(0x1ac),'DGyuz':_0x48d5aa(0x1cb),'eyJLh':function(_0x2d7042,_0x2fed42,_0x40d987){return _0x2d7042(_0x2fed42,_0x40d987);},'Tgwzm':_0x48d5aa(0x191),'vHbRW':function(_0x9dc64,_0x5def5e,_0x52397c){return _0x9dc64(_0x5def5e,_0x52397c);},'krWcB':_0x48d5aa(0x1a1),'uCTvl':function(_0x5f3e01,_0x4d8a39,_0x12ebcc){return _0x5f3e01(_0x4d8a39,_0x12ebcc);},'vijxQ':'cyan'};let _0x5e602b=_0x2dcf01[_0x48d5aa(0x155)](_0x59b03d=>_0x59b03d[_0x48d5aa(0x19c)]===_0x48d5aa(0x15b));if(_0x5e602b[_0x48d5aa(0x19a)]===0x0){_0x30bb35['vHbRW'](n,_0x48d5aa(0x167),_0x30bb35[_0x48d5aa(0x1ec)]);return;}_0x30bb35[_0x48d5aa(0x143)](n,'š\x20Optimization\x20Recommendations:\x0a',_0x30bb35[_0x48d5aa(0x18e)]),_0x5e602b[_0x48d5aa(0x158)]((_0x2555ad,_0x470057)=>_0x470057[_0x48d5aa(0x141)]-_0x2555ad[_0x48d5aa(0x141)])[_0x48d5aa(0x1d7)]((_0x1bb340,_0x2d22de)=>{const _0x2af7fd=_0x48d5aa;_0x30bb35[_0x2af7fd(0x1b3)]===_0x30bb35['DGyuz']?(_0x30bb35['BwJgp'](_0x4342d9,_0x30bb35[_0x2af7fd(0x161)](_0xbc13de,0x1)+'.\x20'+_0x5ee5e7['hook']+'\x20('+_0x849a12['duration'][_0x2af7fd(0x1a4)](0x2)+_0x2af7fd(0x188),_0x30bb35[_0x2af7fd(0x1ef)]),_0x300beb[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35[_0x2af7fd(0x154)])&&(_0x599306['log'](_0x2af7fd(0x191)),_0x47623f[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x196)]),_0x5e7e53[_0x2af7fd(0x183)](_0x30bb35['TxGlW'])),_0x32f56b[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35[_0x2af7fd(0x16b)])&&(_0x239c1e[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x1ba)]),_0x194f08[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x1a2)]),_0x301cbe[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x181)])),_0x478a1b[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35['hqnZd'])&&(_0x3ee39d['log'](_0x30bb35[_0x2af7fd(0x180)]),_0x782440[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x1ee)]),_0xbafa48['log'](_0x30bb35[_0x2af7fd(0x1dc)])),_0x1f977b[_0x2af7fd(0x183)]('')):(_0x30bb35['eyJLh'](n,_0x2d22de+0x1+'.\x20'+_0x1bb340[_0x2af7fd(0x17b)]+'\x20('+_0x1bb340['duration'][_0x2af7fd(0x1a4)](0x2)+_0x2af7fd(0x188),_0x30bb35[_0x2af7fd(0x1ef)]),_0x1bb340[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35[_0x2af7fd(0x154)])&&(console[_0x2af7fd(0x183)](_0x30bb35['Tgwzm']),console['log']('\x20\x20\x20-\x20Lazy-load\x20dependencies'),console[_0x2af7fd(0x183)](_0x2af7fd(0x1d0))),_0x1bb340[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35[_0x2af7fd(0x16b)])&&(console['log'](_0x30bb35[_0x2af7fd(0x1ba)]),console[_0x2af7fd(0x183)]('\x20\x20\x20-\x20Cache\x20active\x20task/plan\x20status'),console[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x181)])),_0x1bb340[_0x2af7fd(0x17b)][_0x2af7fd(0x175)](_0x30bb35[_0x2af7fd(0x1ce)])&&(console[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x180)]),console[_0x2af7fd(0x183)](_0x30bb35[_0x2af7fd(0x1ee)]),console[_0x2af7fd(0x183)]('\x20\x20\x20-\x20Cache\x20component\x20contracts')),console[_0x2af7fd(0x183)](''));});}function v(){const _0x21cd86=_0xd5edc8,_0x8b53db={'utAQR':'(((.+)+)+)+$','ijNvp':function(_0x33ca6b,_0xd2b8c1,_0x403e29){return _0x33ca6b(_0xd2b8c1,_0x403e29);},'VLEId':function(_0x34ac52){return _0x34ac52();},'Agpci':function(_0x4ecf07,_0x2aa5e9){return _0x4ecf07(_0x2aa5e9);},'aqeWp':function(_0x541a53,_0x86b9c4){return _0x541a53(_0x86b9c4);},'Qydyf':function(_0x539b4b,_0x11cfa1){return _0x539b4b>_0x11cfa1;}},_0x1e5797=(function(){const _0x4fa563=_0x843d,_0x5da716={};_0x5da716[_0x4fa563(0x13c)]=function(_0x15c1d8,_0x448d3a){return _0x15c1d8!==_0x448d3a;};const _0x3f2297=_0x5da716;let _0x20c282=!![];return function(_0x2159a8,_0x3890a9){const _0x5488c5=_0x20c282?function(){const _0x333bda=_0x843d;if(_0x3890a9){if(_0x3f2297['HqMbu'](_0x333bda(0x1ae),'nLsdp'))_0x2679ff[_0x333bda(0x183)](''+_0x3973e8[_0x43c5b2]+_0x5811a8+_0x3c3434[_0x333bda(0x1d6)]);else{const _0x16a5bf=_0x3890a9[_0x333bda(0x1c2)](_0x2159a8,arguments);return _0x3890a9=null,_0x16a5bf;}}}:function(){};return _0x20c282=![],_0x5488c5;};}()),_0x5ee5f7=_0x8b53db[_0x21cd86(0x1b8)](_0x1e5797,this,function(){const _0x2094ed=_0x21cd86;return _0x5ee5f7[_0x2094ed(0x1e8)]()['search'](_0x8b53db['utAQR'])['toString']()[_0x2094ed(0x185)](_0x5ee5f7)[_0x2094ed(0x1af)](_0x2094ed(0x19f));});_0x8b53db['VLEId'](_0x5ee5f7);let _0x3aab7d=process['argv'][_0x21cd86(0x1e6)](0x2)[_0x21cd86(0x175)]('--detailed'),_0x40d85a=_0x8b53db['Agpci'](R,_0x3aab7d),_0x13ed7d=_0x8b53db[_0x21cd86(0x177)](b,_0x40d85a);_0x8b53db[_0x21cd86(0x1e9)](A,_0x40d85a),_0x8b53db[_0x21cd86(0x17f)](_0x13ed7d[_0x21cd86(0x187)],0x0)||_0x8b53db[_0x21cd86(0x17f)](_0x13ed7d[_0x21cd86(0x13b)],0x3)?process['exit'](0x1):process[_0x21cd86(0x1be)](0x0);}function _0x15b9(){const _0x1c6788=['wdYny','endsWith','CSnez','Total\x20Hooks:\x20\x20\x20\x20','Average:\x20','hqnZd','LrtTW','\x20\x20\x20-\x20Skip\x20validation\x20for\x20non-matching\x20files\x20early','\x20\x20\x20-\x20Exit\x20early\x20for\x20non-matching\x20tool\x20operations','Zqemb','replace','qqPpm','\x1b[32m','reset','forEach','nJCAM','1cKMQMQ','PASS','unit','DcoLr','ShbmX','oafZE','Grep','error','command','VaXoU','UhMZm','map','gIJqp','slice','uPanr','toString','aqeWp','Agent','validate','krWcB','NezQJ','HAoWR','fQbVH','RSHPo','utf8','WriteTest','GjJzd','HhJsv','\x20\x20\x20-\x20Cache\x20active\x20task/plan\x20status','xwjYg','RbwKy','git','\x20\x20\x20-\x20Defer\x20heavy\x20operations\x20to\x20async\x20workers','hrtime','KgwXL','push','slow','HqMbu','zVnyC','qXhaj','XrqYH','file_path','duration','cyan','uCTvl','new_string','ā ļø\x20\x20Slow\x20(ā„','LcXRL','visual','\x20\x20\x20-\x20Optimize\x20regex\x20patterns','PsKbx','.js','pipe','ERROR','195065CxFoPG','nlXqI','xOAVJ','describe(\x22test\x22,\x20()\x20=>\x20{\x20it(\x22works\x22,\x20()\x20=>\x20{\x20expect(true).toBe(true);\x20});\x20});','test.ts','Errors:','message','OccwJ','filter','MWbdj','KqrbG','sort','Ceqza','hooks','SLOW','Bash','fbMTc','Edit','ajGNt','SewIB','BPuZm','.claude','1568520BadUTc','ā
\x20Fast\x20(<','pLtHA','export\x20{}','ā
\x20All\x20hooks\x20meet\x20performance\x20targets.\x20No\x20optimizations\x20needed.\x0a','qxxhg','ZcUxB','tool_input','woBnh','fxNEF','Write','Hhxmg','dirname','8mFzBMC','nmThe','red','\x20\x20\x20-\x20Cache\x20component\x20contracts','wEhyQ','includes','Fastest:\x20','Agpci','HqcWy','DQvTd','58328Hmpmsg','hook','gLkTS','\x1b[36m','riVcC','Qydyf','ckwPE','CIAhz','sjyzQ','log','reduce','constructor','test','errors','ms)','vZmUo','git\x20status','bigint','HLoQn','D\x20(Needs\x20Optimization)','vijxQ','\x1b[0m','Xvino','\x20\x20\x20-\x20Consider\x20caching\x20validation\x20results','OiaOZ','Slow\x20Hooks\x20(>500ms):','A+\x20(Excellent)','content','zzWcs','enforce','yellow','kMGXV','length','tests','status','gDmxQ','118713EhxbyG','(((.+)+)+)+$','egzfu','green','UCUqa','ysvda','toFixed','test.test.ts','KsdeQ','yQlAp','PxKzs','NzhQd','readdirSync','OYPAu','WTvhL','745668QKayQW','nLsdp','search','663694OeGyTd','xKmIM','\x0aš\x20Hook\x20Performance\x20Profiling\x0a','eltHA','Read','onDib','8656830CPcvDw','wVlcm','ijNvp','\x20\x20\x20-\x20Lazy-load\x20dependencies','uXHMH','Target:\x20<','YkRVM','TOsVY','exit','tool_name','join','padEnd','apply','\x22\x20\x27','node\x20\x22','ms\x20per\x20hook\x0a','ms):\x20','kTxGP','hahZX'];_0x15b9=function(){return _0x1c6788;};return _0x15b9();}v();
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var _0x237b66=_0xf5f7;(function(_0x4e05e5,_0x4643ad){var _0x546186=_0xf5f7,_0xb438fa=_0x4e05e5();while(!![]){try{var _0x4e58bb=-parseInt(_0x546186(0x199))/0x1*(parseInt(_0x546186(0x1aa))/0x2)+-parseInt(_0x546186(0x193))/0x3+-parseInt(_0x546186(0x1b2))/0x4+-parseInt(_0x546186(0x1bf))/0x5+parseInt(_0x546186(0x1be))/0x6+-parseInt(_0x546186(0x1a9))/0x7*(-parseInt(_0x546186(0x1a3))/0x8)+parseInt(_0x546186(0x1bd))/0x9;if(_0x4e58bb===_0x4643ad)break;else _0xb438fa['push'](_0xb438fa['shift']());}catch(_0x1ba1a2){_0xb438fa['push'](_0xb438fa['shift']());}}}(_0x2dda,0xf0432));var _0x2d3382=(function(){var _0x53c4b1=_0xf5f7,_0x516126={};_0x516126[_0x53c4b1(0x1c4)]=_0x53c4b1(0x1b7),_0x516126['XwOml']=_0x53c4b1(0x1b4);var _0xda352b=_0x516126,_0x1314fc=!![];return function(_0xf25011,_0x30c1c0){var _0x51615e=_0x53c4b1,_0x52a315={};_0x52a315['iYSSf']=_0xda352b[_0x51615e(0x1c4)],_0x52a315[_0x51615e(0x19c)]=_0xda352b['XwOml'];var _0xd9ca08=_0x52a315,_0x185daa=_0x1314fc?function(){var _0x4f0e1d=_0x51615e;if(_0x4f0e1d(0x198)!==_0xd9ca08[_0x4f0e1d(0x19c)]){if(_0x30c1c0){var _0x5f3500=_0x30c1c0[_0x4f0e1d(0x1b0)](_0xf25011,arguments);return _0x30c1c0=null,_0x5f3500;}}else return _0x5c614e[_0x4f0e1d(0x1af)]()[_0x4f0e1d(0x19b)](_0xd9ca08['iYSSf'])['toString']()[_0x4f0e1d(0x197)](_0x5f03ce)['search'](_0xd9ca08['iYSSf']);}:function(){};return _0x1314fc=![],_0x185daa;};}()),_0x3f4453=_0x2d3382(this,function(){var _0x269a26=_0xf5f7,_0x4ac9a1={};_0x4ac9a1[_0x269a26(0x1c3)]=_0x269a26(0x1b7);var _0x12aaee=_0x4ac9a1;return _0x3f4453[_0x269a26(0x1af)]()['search'](_0x12aaee[_0x269a26(0x1c3)])[_0x269a26(0x1af)]()[_0x269a26(0x197)](_0x3f4453)[_0x269a26(0x19b)](_0x12aaee['rLQuI']);});function _0x2dda(){var _0x3a74b9=['ā ļø\x20\x20','win32','\x22\x20is\x20not\x20supported','Run\x20\x22git\x20init\x22\x20first','toString','apply','š\x20Setting\x20up\x20git\x20hooks...\x0a','2818324zzWQkA','error','fwEOl','\x20\x20commit-msg\x20\x20-\x20Enforces\x20commit\x20message\x20format\x20[TASK-XXX]\x20or\x20feat:/fix:','#!/bin/sh\x0a#\x20Pre-commit\x20hook:\x20Run\x20tests\x20and\x20linting\x20before\x20commit\x0a\x0aecho\x20\x22š\x20Running\x20pre-commit\x20checks...\x22\x0a\x0a#\x20Check\x20if\x20we\x27re\x20on\x20main\x20branch\x0aBRANCH=$(git\x20rev-parse\x20--abbrev-ref\x20HEAD)\x0aif\x20[\x20\x22$BRANCH\x22\x20=\x20\x22main\x22\x20]\x20||\x20[\x20\x22$BRANCH\x22\x20=\x20\x22master\x22\x20];\x20then\x0a\x20\x20echo\x20\x22ā\x20ERROR:\x20Cannot\x20commit\x20directly\x20to\x20$BRANCH\x20branch\x22\x0a\x20\x20echo\x20\x22Create\x20a\x20feature\x20branch\x20first:\x22\x0a\x20\x20echo\x20\x22\x20\x20git\x20checkout\x20-b\x20task/TASK-XXX-description\x22\x0a\x20\x20exit\x201\x0afi\x0a\x0a#\x20Run\x20linter\x20if\x20package.json\x20has\x20lint\x20script\x0aif\x20grep\x20-q\x20\x27\x22lint\x22\x27\x20package.json\x202>/dev/null;\x20then\x0a\x20\x20echo\x20\x22Running\x20linter...\x22\x0a\x20\x20npm\x20run\x20lint\x20--silent\x0a\x20\x20if\x20[\x20$?\x20-ne\x200\x20];\x20then\x0a\x20\x20\x20\x20echo\x20\x22ā\x20Linting\x20failed.\x20Fix\x20errors\x20before\x20committing.\x22\x0a\x20\x20\x20\x20exit\x201\x0a\x20\x20fi\x0afi\x0a\x0a#\x20Run\x20formatter\x20check\x20if\x20available\x0aif\x20grep\x20-q\x20\x27\x22format:check\x22\x27\x20package.json\x202>/dev/null;\x20then\x0a\x20\x20echo\x20\x22Checking\x20formatting...\x22\x0a\x20\x20npm\x20run\x20format:check\x20--silent\x0a\x20\x20if\x20[\x20$?\x20-ne\x200\x20];\x20then\x0a\x20\x20\x20\x20echo\x20\x22ā\x20Formatting\x20check\x20failed.\x20Run\x20\x27npm\x20run\x20format\x27\x20to\x20fix.\x22\x0a\x20\x20\x20\x20exit\x201\x0a\x20\x20fi\x0afi\x0a\x0a#\x20Run\x20tests\x0aif\x20grep\x20-q\x20\x27\x22test\x22\x27\x20package.json\x202>/dev/null;\x20then\x0a\x20\x20echo\x20\x22Running\x20tests...\x22\x0a\x20\x20npm\x20test\x20--silent\x0a\x20\x20if\x20[\x20$?\x20-ne\x200\x20];\x20then\x0a\x20\x20\x20\x20echo\x20\x22ā\x20Tests\x20failed.\x20Fix\x20failing\x20tests\x20before\x20committing.\x22\x0a\x20\x20\x20\x20exit\x201\x0a\x20\x20fi\x0afi\x0a\x0aecho\x20\x22ā
\x20Pre-commit\x20checks\x20passed!\x22\x0aexit\x200\x0a','(((.+)+)+)+$','entries','snXvL','ā\x20Error:\x20Not\x20a\x20git\x20repository','\x20\x20rm\x20.git/hooks/pre-commit\x20.git/hooks/commit-msg\x20.git/hooks/pre-push\x0a','\x0aš\x20Successfully\x20installed\x20','19671201Daajgt','3046854ogaGVx','2178960cguwbO','platform','\x20git\x20hooks!\x0a','mkdirSync','rLQuI','RNUKf','#!/bin/sh\x0a#\x20Pre-push\x20hook:\x20Final\x20validation\x20before\x20push\x0a\x0aecho\x20\x22š\x20Running\x20pre-push\x20checks...\x22\x0a\x0a#\x20Check\x20if\x20we\x27re\x20on\x20main\x20branch\x0aBRANCH=$(git\x20rev-parse\x20--abbrev-ref\x20HEAD)\x0aif\x20[\x20\x22$BRANCH\x22\x20=\x20\x22main\x22\x20]\x20||\x20[\x20\x22$BRANCH\x22\x20=\x20\x22master\x22\x20];\x20then\x0a\x20\x20echo\x20\x22ā\x20ERROR:\x20Cannot\x20push\x20directly\x20to\x20$BRANCH\x20branch\x22\x0a\x20\x20echo\x20\x22Create\x20a\x20feature\x20branch\x20first\x22\x0a\x20\x20exit\x201\x0afi\x0a\x0a#\x20Check\x20for\x20uncommitted\x20changes\x0aif\x20!\x20git\x20diff-index\x20--quiet\x20HEAD\x20--;\x20then\x0a\x20\x20echo\x20\x22ā\x20ERROR:\x20You\x20have\x20uncommitted\x20changes\x22\x0a\x20\x20echo\x20\x22Commit\x20or\x20stash\x20changes\x20before\x20pushing\x22\x0a\x20\x20exit\x201\x0afi\x0a\x0a#\x20Run\x20full\x20test\x20suite\x0aif\x20grep\x20-q\x20\x27\x22test\x22\x27\x20package.json\x202>/dev/null;\x20then\x0a\x20\x20echo\x20\x22Running\x20full\x20test\x20suite...\x22\x0a\x20\x20npm\x20test\x20--silent\x0a\x20\x20if\x20[\x20$?\x20-ne\x200\x20];\x20then\x0a\x20\x20\x20\x20echo\x20\x22ā\x20Tests\x20failed.\x20Fix\x20failing\x20tests\x20before\x20pushing.\x22\x0a\x20\x20\x20\x20exit\x201\x0a\x20\x20fi\x0afi\x0a\x0aecho\x20\x22ā
\x20Pre-push\x20checks\x20passed!\x22\x0aexit\x200\x0a','3840381vgPibT','#!/bin/sh\x0a#\x20Commit-msg\x20hook:\x20Validate\x20commit\x20message\x20format\x0a\x0aCOMMIT_MSG_FILE=$1\x0aCOMMIT_MSG=$(cat\x20\x22$COMMIT_MSG_FILE\x22)\x0a\x0a#\x20Check\x20if\x20commit\x20message\x20follows\x20format:\x20[TASK-XXX]\x20Description\x0a#\x20or\x20starts\x20with\x20common\x20prefixes\x20like\x20feat:,\x20fix:,\x20docs:,\x20etc.\x0aif\x20echo\x20\x22$COMMIT_MSG\x22\x20|\x20grep\x20-qE\x20\x27^\x5c[TASK-[0-9]{3}\x5c]|^(feat|fix|docs|style|refactor|test|chore|perf|ci|build|revert):\x27;\x20then\x0a\x20\x20exit\x200\x0afi\x0a\x0a#\x20Allow\x20merge\x20commits\x0aif\x20echo\x20\x22$COMMIT_MSG\x22\x20|\x20grep\x20-qE\x20\x27^Merge\x27;\x20then\x0a\x20\x20exit\x200\x0afi\x0a\x0aecho\x20\x22ā\x20ERROR:\x20Invalid\x20commit\x20message\x20format\x22\x0aecho\x20\x22\x22\x0aecho\x20\x22Commit\x20message\x20must\x20start\x20with:\x22\x0aecho\x20\x22\x20\x20[TASK-XXX]\x20Description\x20\x20(for\x20task-related\x20commits)\x22\x0aecho\x20\x22\x20\x20feat:\x20Description\x20\x20\x20\x20\x20\x20\x20(for\x20new\x20features)\x22\x0aecho\x20\x22\x20\x20fix:\x20Description\x20\x20\x20\x20\x20\x20\x20\x20(for\x20bug\x20fixes)\x22\x0aecho\x20\x22\x20\x20docs:\x20Description\x20\x20\x20\x20\x20\x20\x20(for\x20documentation)\x22\x0aecho\x20\x22\x22\x0aecho\x20\x22Your\x20message:\x20$COMMIT_MSG\x22\x0aecho\x20\x22\x22\x0aexit\x201\x0a','.git/hooks','ā
\x20Installed\x20','constructor','GGZfH','723NvHwow','To\x20bypass\x20hooks\x20(NOT\x20RECOMMENDED):','search','sriGf','\x20\x20pre-commit\x20\x20-\x20Validates\x20linting,\x20formatting,\x20tests\x20before\x20commit','\x20hook','log','.backup','\x20\x20git\x20commit\x20--no-verify\x0a','recursive','12149656PSOYWC','writeFileSync','CkIvG','copyFileSync','existsSync','exit','7zEGnQd','2234AHnVkj'];_0x2dda=function(){return _0x3a74b9;};return _0x2dda();}function _0xf5f7(_0x349e24,_0x1bae26){_0x349e24=_0x349e24-0x192;var _0x4036a8=_0x2dda();var _0x3f4453=_0x4036a8[_0x349e24];return _0x3f4453;}_0x3f4453();var n=(_0x1e1ffa=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x1e1ffa,{'get':(_0x8aa8bf,_0xb70373)=>(typeof require<'u'?require:_0x8aa8bf)[_0xb70373]}):_0x1e1ffa)(function(_0x2cd138){var _0x563c0c=_0xf5f7,_0x201f8d={'PHpPX':function(_0x61654d,_0xf7b0f8){return _0x61654d<_0xf7b0f8;},'efNBB':function(_0x387343,_0x2a2e0a){return _0x387343(_0x2a2e0a);},'elkRI':function(_0xb61770,_0x46b187){return _0xb61770+_0x46b187;},'CkIvG':function(_0x445c82,_0x1704f3){return _0x445c82+_0x1704f3;},'snXvL':'Dynamic\x20require\x20of\x20\x22','RiTpu':_0x563c0c(0x1ad)};if(_0x201f8d['PHpPX'](typeof require,'u'))return require[_0x563c0c(0x1b0)](this,arguments);throw _0x201f8d['efNBB'](Error,_0x201f8d['elkRI'](_0x201f8d[_0x563c0c(0x1a5)](_0x201f8d[_0x563c0c(0x1b9)],_0x2cd138),_0x201f8d['RiTpu']));}),t=n('fs'),r=n('path'),s=_0x237b66(0x195);t[_0x237b66(0x1a7)]('.git')||(console[_0x237b66(0x1b3)](_0x237b66(0x1ba)),console[_0x237b66(0x1b3)](_0x237b66(0x1ae)),process[_0x237b66(0x1a8)](0x1));var _0xd805c2={};_0xd805c2[_0x237b66(0x1a2)]=!0x0,t[_0x237b66(0x1a7)](s)||t[_0x237b66(0x1c2)](s,_0xd805c2),console[_0x237b66(0x19f)](_0x237b66(0x1b1));var a=_0x237b66(0x1b6),h=_0x237b66(0x194),m=_0x237b66(0x192),f={'pre-commit':a,'commit-msg':h,'pre-push':m},c=0x0;for(let [e,i]of Object[_0x237b66(0x1b8)](f)){let o=r['join'](s,e);var _0x412aac={};_0x412aac['mode']=0x1ed,(t[_0x237b66(0x1a7)](o)&&(console[_0x237b66(0x19f)](_0x237b66(0x1ab)+e+'\x20hook\x20already\x20exists\x20-\x20backing\x20up\x20to\x20'+e+_0x237b66(0x1a0)),t[_0x237b66(0x1a6)](o,o+'.backup')),t[_0x237b66(0x1a4)](o,i,_0x412aac),process[_0x237b66(0x1c0)]!==_0x237b66(0x1ac)&&t['chmodSync'](o,0x1ed),console[_0x237b66(0x19f)](_0x237b66(0x196)+e+_0x237b66(0x19e)),c++);}console[_0x237b66(0x19f)](_0x237b66(0x1bc)+c+_0x237b66(0x1c1)),console[_0x237b66(0x19f)]('Hooks\x20installed:'),console[_0x237b66(0x19f)](_0x237b66(0x19d)),console[_0x237b66(0x19f)](_0x237b66(0x1b5)),console[_0x237b66(0x19f)]('\x20\x20pre-push\x20\x20\x20\x20-\x20Prevents\x20pushing\x20to\x20main,\x20ensures\x20tests\x20pass\x0a'),console[_0x237b66(0x19f)](_0x237b66(0x19a)),console[_0x237b66(0x19f)](_0x237b66(0x1a1)),console[_0x237b66(0x19f)]('To\x20uninstall\x20hooks:'),console[_0x237b66(0x19f)](_0x237b66(0x1bb)),process[_0x237b66(0x1a8)](0x0);
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
function _0x3786(_0x13a1b4,_0xea6927){_0x13a1b4=_0x13a1b4-0x10c;var _0x21e20a=_0x291c();var _0x5259b9=_0x21e20a[_0x13a1b4];return _0x5259b9;}var _0x1dbb58=_0x3786;(function(_0x4b8ea7,_0x394eb5){var _0x3a2c79=_0x3786,_0x4beb1b=_0x4b8ea7();while(!![]){try{var _0x11985f=-parseInt(_0x3a2c79(0x124))/0x1*(parseInt(_0x3a2c79(0x112))/0x2)+parseInt(_0x3a2c79(0x10c))/0x3*(parseInt(_0x3a2c79(0x11b))/0x4)+-parseInt(_0x3a2c79(0x11f))/0x5*(-parseInt(_0x3a2c79(0x131))/0x6)+parseInt(_0x3a2c79(0x127))/0x7+-parseInt(_0x3a2c79(0x11e))/0x8+-parseInt(_0x3a2c79(0x117))/0x9*(parseInt(_0x3a2c79(0x12a))/0xa)+-parseInt(_0x3a2c79(0x119))/0xb;if(_0x11985f===_0x394eb5)break;else _0x4beb1b['push'](_0x4beb1b['shift']());}catch(_0x228406){_0x4beb1b['push'](_0x4beb1b['shift']());}}}(_0x291c,0x71464));var _0x1731ce=(function(){var _0x228448=!![];return function(_0x5bad16,_0x3d2f48){var _0x9fb0aa=_0x228448?function(){if(_0x3d2f48){var _0x550e30=_0x3d2f48['apply'](_0x5bad16,arguments);return _0x3d2f48=null,_0x550e30;}}:function(){};return _0x228448=![],_0x9fb0aa;};}()),_0x5259b9=_0x1731ce(this,function(){var _0x2eeed4=_0x3786,_0x3e6392={};_0x3e6392['qCkKg']='(((.+)+)+)+$';var _0x56a8d5=_0x3e6392;return _0x5259b9[_0x2eeed4(0x10e)]()[_0x2eeed4(0x10d)](_0x56a8d5[_0x2eeed4(0x12c)])[_0x2eeed4(0x10e)]()[_0x2eeed4(0x12d)](_0x5259b9)[_0x2eeed4(0x10d)](_0x56a8d5['qCkKg']);});function _0x291c(){var _0x26d45c=['\x0a\x20\x20-\x20','node\x20\x22','EkbRh','3924lMYWYz','ā
\x20Completing\x20task:\x20','4257495mkRqpG','\x0aš\x20Task\x20','2947916bUNwKP','path','inherit','4336344BuhKAO','2968385qLMuVX','\x22\x20is\x20not\x20supported','argv','\x20marked\x20as\x20completed!','\x20\x20-\x20Start\x20next\x20task:\x20npm\x20run\x20task:start\x20TASK-XXX','603DzIsHh','apply','log','4612902KQoILM','Dynamic\x20require\x20of\x20\x22','hooks','11000EaVSiD','TAlST','qCkKg','constructor','ltkMz','exit','join','6aLrNIV','\x20\x20\x20Or:\x20npm\x20run\x20task:done\x20TASK-001','kymSk','\x20\x20-\x20Check\x20status:\x20npm\x20run\x20task:status','.claude','child_process','ā\x20Error:\x20Task\x20ID\x20is\x20required','3Bkflmt','search','toString','existsSync','\x0aNext\x20steps:','tjiWD','388thYRfX','error'];_0x291c=function(){return _0x26d45c;};return _0x291c();}_0x5259b9();var r=(_0x3aa2a3=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x3aa2a3,{'get':(_0x25e30c,_0x4560bb)=>(typeof require<'u'?require:_0x25e30c)[_0x4560bb]}):_0x3aa2a3)(function(_0x1c185c){var _0x271996=_0x3786,_0x2bf0ea={'EkbRh':function(_0x1ef90a,_0x4cade4){return _0x1ef90a<_0x4cade4;},'ltkMz':function(_0x56da2d,_0x1fcb34){return _0x56da2d(_0x1fcb34);},'tjiWD':function(_0x248da6,_0x576347){return _0x248da6+_0x576347;},'qTtdg':function(_0x2a3fbd,_0x2396dc){return _0x2a3fbd+_0x2396dc;},'kBDPu':_0x271996(0x128),'TAlST':_0x271996(0x120)};if(_0x2bf0ea[_0x271996(0x116)](typeof require,'u'))return require[_0x271996(0x125)](this,arguments);throw _0x2bf0ea[_0x271996(0x12e)](Error,_0x2bf0ea[_0x271996(0x111)](_0x2bf0ea['qTtdg'](_0x2bf0ea['kBDPu'],_0x1c185c),_0x2bf0ea[_0x271996(0x12b)]));}),{execSync:a}=r(_0x1dbb58(0x136)),t=r(_0x1dbb58(0x11c)),c=r('fs'),n=process[_0x1dbb58(0x121)][0x2];n||(console[_0x1dbb58(0x113)](_0x1dbb58(0x137)),console[_0x1dbb58(0x113)]('\x0aUsage:\x20node\x20scripts/task-done.js\x20TASK-001'),console[_0x1dbb58(0x113)](_0x1dbb58(0x132)),process['exit'](0x1));var i=_0x4ef1fb=>{var _0x29b163=_0x1dbb58,_0x1088d9={};_0x1088d9[_0x29b163(0x133)]=_0x29b163(0x129);var _0x1f1b47=_0x1088d9;let _0x4786d2=t[_0x29b163(0x130)](__dirname,'..',_0x1f1b47[_0x29b163(0x133)],_0x4ef1fb);if(c['existsSync'](_0x4786d2))return _0x4786d2;let _0x1c1967=t[_0x29b163(0x130)](__dirname,'..',_0x29b163(0x135),_0x1f1b47['kymSk'],_0x4ef1fb);if(c[_0x29b163(0x10f)](_0x1c1967))return _0x1c1967;throw new Error('Hook\x20not\x20found:\x20'+_0x4ef1fb+'.\x20Checked:\x0a\x20\x20-\x20'+_0x4786d2+_0x29b163(0x114)+_0x1c1967);},l=i('complete-task.js');console['log'](_0x1dbb58(0x118)+n+'\x0a');try{var _0x5bf851={};_0x5bf851['stdio']=_0x1dbb58(0x11d),(a(_0x1dbb58(0x115)+l+'\x22\x20'+n,_0x5bf851),console[_0x1dbb58(0x126)](_0x1dbb58(0x11a)+n+_0x1dbb58(0x122)),console[_0x1dbb58(0x126)](_0x1dbb58(0x110)),console[_0x1dbb58(0x126)](_0x1dbb58(0x134)),console[_0x1dbb58(0x126)](_0x1dbb58(0x123)));}catch{console[_0x1dbb58(0x113)]('\x0aā\x20Failed\x20to\x20complete\x20task\x20'+n),process[_0x1dbb58(0x12f)](0x1);}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const _0x4c28e9=_0x4e19;(function(_0x1375ab,_0x27c69f){const _0x23a7bf=_0x4e19,_0x4c259f=_0x1375ab();while(!![]){try{const _0x5ee660=parseInt(_0x23a7bf(0x167))/0x1+-parseInt(_0x23a7bf(0x121))/0x2*(parseInt(_0x23a7bf(0x168))/0x3)+-parseInt(_0x23a7bf(0x15a))/0x4*(-parseInt(_0x23a7bf(0x14d))/0x5)+-parseInt(_0x23a7bf(0x124))/0x6*(parseInt(_0x23a7bf(0x144))/0x7)+-parseInt(_0x23a7bf(0x11c))/0x8*(-parseInt(_0x23a7bf(0x14f))/0x9)+-parseInt(_0x23a7bf(0x173))/0xa*(-parseInt(_0x23a7bf(0x108))/0xb)+parseInt(_0x23a7bf(0x171))/0xc;if(_0x5ee660===_0x27c69f)break;else _0x4c259f['push'](_0x4c259f['shift']());}catch(_0x20126a){_0x4c259f['push'](_0x4c259f['shift']());}}}(_0x1e2e,0xbf065));const _0x458630=(function(){const _0x981f62=_0x4e19,_0x1d1952={};_0x1d1952['CUsql']=function(_0x5e0ab8,_0x4596b9){return _0x5e0ab8!==_0x4596b9;},_0x1d1952[_0x981f62(0x143)]=_0x981f62(0x105);const _0x581506=_0x1d1952;let _0x9a34f6=!![];return function(_0x2f26d4,_0x3283d6){const _0x96b4d4=_0x9a34f6?function(){const _0x295677=_0x4e19;if(_0x3283d6){if(_0x581506['CUsql'](_0x581506[_0x295677(0x143)],_0x295677(0x165))){const _0xb5bed8=_0x3283d6[_0x295677(0x15b)](_0x2f26d4,arguments);return _0x3283d6=null,_0xb5bed8;}else{const _0x2d6b43=_0x565eea?function(){if(_0x3c44e2){const _0x58fa31=_0x1884bc['apply'](_0x4ab773,arguments);return _0x96e13c=null,_0x58fa31;}}:function(){};return _0x19866c=![],_0x2d6b43;}}}:function(){};return _0x9a34f6=![],_0x96b4d4;};}()),_0x115e98=_0x458630(this,function(){const _0x21977f=_0x4e19,_0x51693d={};_0x51693d[_0x21977f(0x158)]='(((.+)+)+)+$';const _0x3426ae=_0x51693d;return _0x115e98[_0x21977f(0x175)]()[_0x21977f(0x15d)](_0x3426ae[_0x21977f(0x158)])[_0x21977f(0x175)]()[_0x21977f(0x13b)](_0x115e98)[_0x21977f(0x15d)](_0x21977f(0x17d));});_0x115e98();function _0x4e19(_0x65b70b,_0x1d5f52){_0x65b70b=_0x65b70b-0x103;const _0xe8fc79=_0x1e2e();let _0x115e98=_0xe8fc79[_0x65b70b];return _0x115e98;}var u=(_0x564f14=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x564f14,{'get':(_0x8b9842,_0x31fae5)=>(typeof require<'u'?require:_0x8b9842)[_0x31fae5]}):_0x564f14)(function(_0x59cc2c){const _0x16fd95=_0x4e19,_0x33c4d1={'vhlzm':function(_0x1d6379,_0xa883c4){return _0x1d6379<_0xa883c4;},'Fombj':function(_0x38b32d,_0x5d52c3){return _0x38b32d(_0x5d52c3);},'yssqS':function(_0x3742cc,_0x31dbfc){return _0x3742cc+_0x31dbfc;},'Mlkxy':'Dynamic\x20require\x20of\x20\x22'};if(_0x33c4d1[_0x16fd95(0x136)](typeof require,'u'))return require[_0x16fd95(0x15b)](this,arguments);throw _0x33c4d1[_0x16fd95(0x106)](Error,_0x33c4d1[_0x16fd95(0x135)](_0x33c4d1[_0x16fd95(0x135)](_0x33c4d1[_0x16fd95(0x16a)],_0x59cc2c),'\x22\x20is\x20not\x20supported'));}),{execSync:s}=u(_0x4c28e9(0x14c)),c=u('fs'),g=u('path'),l=process['argv'][_0x4c28e9(0x15e)](0x2),p='.claude/ACTIVE-PLAN';c[_0x4c28e9(0x162)](p)||(console['error'](_0x4c28e9(0x11e)),console['error'](_0x4c28e9(0x120)),process[_0x4c28e9(0x118)](0x1));function _0x1e2e(){const _0x29d8f1=['task','5.\x20Pushing\x20to\x20remote...\x0a','stdio','existsSync','git\x20push\x20origin\x20','\x0aš\x20Merge\x20to\x20Main:\x20','JhpWF','main','227803tTOBPO','3766359AhmkKd','ā ļø\x20\x20WARNING:\x20Could\x20not\x20detect\x20main\x20branch,\x20using\x20\x22main\x22\x0a','Mlkxy','\x20\x20ā
\x20','To\x20start\x20next\x20task:\x20npm\x20run\x20task:start\x20TASK-XXX\x0a','taskFiles','forEach','\x20has\x20incomplete\x20tasks:\x0a','ā\x20ERROR:\x20No\x20tasks\x20found\x20in\x20phase:\x20','15401532JInycW','replace','310ICNghD','\x20\x20\x20Merging:\x20','toString','\x20branch...','warn','6.\x20Cleaning\x20up\x20merged\x20branches...\x0a','\x0a4.\x20Merging\x20task\x20branch(es)...\x0a','completed','git\x20push\x20origin\x20--delete\x20','trim','(((.+)+)+)+$','filter','\x20\x202.\x20git\x20add\x20<resolved-files>','map','inherit','qYMkP','Fombj','\x20not\x20found','156486jfuzZC','TASK-TRACKER.json','length','log','encoding','push','\x0aComplete\x20all\x20tasks\x20in\x20phase\x20before\x20merging.\x0a','.json','\x20is\x20not\x20completed\x20(status:\x20','git\x20merge\x20--no-ff\x20','\x0aā\x20ERROR:\x20Phase\x20name\x20required','phase','join','\x20\x20\x20ā ļø\x20\x20WARNING:\x20Branch\x20','Complete\x20task\x20first:\x20npm\x20run\x20task:done\x20','\x0aResolve\x20conflicts\x20manually:','exit','AZcEm','ā\x20ERROR:\x20You\x20have\x20uncommitted\x20changes\x0a','git\x20branch','32QIJnzj','\x0aCommit\x20all\x20changes\x20before\x20merging:','\x0aā\x20ERROR:\x20No\x20active\x20plan\x20found','task/','Set\x20active\x20plan\x20first:\x20npm\x20run\x20plan:manager\x0a','2LomNaG','tasks','--phase','518820RiuKYe','ā\x20ERROR:\x20Task\x20','ā ļø\x20\x20WARNING:\x20Could\x20not\x20pull\x20from\x20remote\x20(continuing\x20anyway)','\x20completed\x20task(s)\x20to\x20merge:\x0a','Current\x20branch:\x20','EUuRa','\x20\x20\x20ā
\x20Merged\x20','\x20not\x20found\x20(may\x20not\x20have\x20been\x20pushed)','includes','Phase','ā\x20ERROR:\x20Task\x20file\x20not\x20found:\x20','utf8','git\x20branch\x20-d\x20','\x0aā\x20ERROR:\x20Could\x20not\x20checkout\x20','git\x20pull\x20origin\x20','error','š\x20Starting\x20merge\x20process...\x0a','yssqS','vhlzm','\x0aā\x20ERROR:\x20Task\x20ID\x20required','toLowerCase','status','\x20\x20\x20šļø\x20\x20Deleted\x20remote\x20branch:\x20','constructor','\x0aā\x20ERROR:\x20Could\x20not\x20push\x20to\x20remote','\x20\x20\x20Or:\x20npm\x20run\x20task:merge\x20--\x20--phase\x20PHASE-NAME\x0a','readFileSync','.claude/plans','\x20not\x20found,\x20skipping','substring','ā ļø\x20\x20WARNING:\x20Could\x20not\x20check\x20git\x20status\x0a','HqbUR','98XQvbmU','master','Task','git\x20branch\x20-a','Push\x20manually:\x20git\x20push\x20origin\x20','\x20\x20\x20ā ļø\x20\x20Could\x20not\x20delete\x20branch\x20','\x0aā
\x20MERGE\x20COMPLETE!\x0a','Plan:\x20','child_process','30QfSocH','Found\x20','476919EYLqwH','\x20\x20\x20ā ļø\x20\x20Remote\x20branch\x20','title','\x20\x201.\x20Fix\x20conflicts\x20in\x20files','git\x20status\x20--porcelain','\x20\x20git\x20commit\x20-m\x20\x22[TASK-XXX]\x20Description\x22\x0a','git\x20checkout\x20','pipe','ā ļø\x20\x20WARNING:\x20Could\x20not\x20fetch\x20from\x20remote\x20(continuing\x20anyway)','igaTR','\x20\x204.\x20Continue\x20with:\x20npm\x20run\x20task:merge\x20','722824GoutZp','apply','\x20task(s)\x20to\x20','search','slice'];_0x1e2e=function(){return _0x29d8f1;};return _0x1e2e();}var f=c[_0x4c28e9(0x13e)](p,_0x4c28e9(0x12f))[_0x4c28e9(0x17c)](),h=g['join'](_0x4c28e9(0x13f),f),R=g[_0x4c28e9(0x114)](h,_0x4c28e9(0x109));c[_0x4c28e9(0x162)](R)||(console[_0x4c28e9(0x133)]('\x0aā\x20ERROR:\x20Task\x20tracker\x20not\x20found'),console[_0x4c28e9(0x133)](_0x4c28e9(0x14b)+f),process['exit'](0x1));var m=JSON['parse'](c[_0x4c28e9(0x13e)](R,'utf8')),d=_0x4c28e9(0x15f),r=null;l[0x0]===_0x4c28e9(0x123)?(d='phase',r=l[0x1],r||(console[_0x4c28e9(0x133)](_0x4c28e9(0x112)),console[_0x4c28e9(0x133)]('Usage:\x20npm\x20run\x20task:merge\x20--\x20--phase\x20PHASE-NAME\x0a'),process['exit'](0x1))):(r=l[0x0],r||(console[_0x4c28e9(0x133)](_0x4c28e9(0x137)),console[_0x4c28e9(0x133)]('Usage:\x20npm\x20run\x20task:merge\x20TASK-001'),console['error'](_0x4c28e9(0x13d)),process[_0x4c28e9(0x118)](0x1))),console[_0x4c28e9(0x10b)](_0x4c28e9(0x164)+(d===_0x4c28e9(0x113)?_0x4c28e9(0x12d):_0x4c28e9(0x146))+'\x20'+r+'\x0a');var i=[];if(d===_0x4c28e9(0x15f)){m[_0x4c28e9(0x16d)]['find'](_0x2d7000=>_0x2d7000['id']===r)||(console['error'](_0x4c28e9(0x125)+r+_0x4c28e9(0x107)),process[_0x4c28e9(0x118)](0x1));let n=g['join'](h,_0x4c28e9(0x122),r+'.json');c[_0x4c28e9(0x162)](n)||(console['error'](_0x4c28e9(0x12e)+n),process[_0x4c28e9(0x118)](0x1));let o=JSON['parse'](c[_0x4c28e9(0x13e)](n,_0x4c28e9(0x12f)));o[_0x4c28e9(0x139)]!==_0x4c28e9(0x17a)&&(console[_0x4c28e9(0x133)]('ā\x20ERROR:\x20Task\x20'+r+_0x4c28e9(0x110)+o[_0x4c28e9(0x139)]+')'),console['error'](_0x4c28e9(0x116)+r),process['exit'](0x1)),i[_0x4c28e9(0x10d)](o);}else{let e=m['taskFiles'][_0x4c28e9(0x103)](_0x51c943=>{const _0x1cb1f9=_0x4c28e9,_0x2a5781={};_0x2a5781[_0x1cb1f9(0x119)]='tasks',_0x2a5781['EUuRa']=_0x1cb1f9(0x12f);const _0x54e925=_0x2a5781;let _0x1fa2fe=g[_0x1cb1f9(0x114)](h,_0x54e925[_0x1cb1f9(0x119)],_0x51c943['id']+_0x1cb1f9(0x10f));return c[_0x1cb1f9(0x162)](_0x1fa2fe)?JSON['parse'](c[_0x1cb1f9(0x13e)](_0x1fa2fe,_0x54e925[_0x1cb1f9(0x129)])):null;})[_0x4c28e9(0x17e)](_0x5240b2=>_0x5240b2!==null&&_0x5240b2[_0x4c28e9(0x113)]===r);e[_0x4c28e9(0x10a)]===0x0&&(console[_0x4c28e9(0x133)](_0x4c28e9(0x170)+r),process[_0x4c28e9(0x118)](0x1));let n=e[_0x4c28e9(0x17e)](_0x4e149b=>_0x4e149b[_0x4c28e9(0x139)]!=='completed');n[_0x4c28e9(0x10a)]>0x0&&(console['error']('ā\x20ERROR:\x20Phase\x20'+r+_0x4c28e9(0x16f)),n['forEach'](_0x2f0b0d=>{const _0x538a56=_0x4c28e9;console[_0x538a56(0x133)]('\x20\x20'+_0x2f0b0d['id']+':\x20'+_0x2f0b0d[_0x538a56(0x151)]+'\x20('+_0x2f0b0d[_0x538a56(0x139)]+')');}),console[_0x4c28e9(0x133)](_0x4c28e9(0x10e)),process[_0x4c28e9(0x118)](0x1)),i=e['filter'](_0x10effa=>_0x10effa[_0x4c28e9(0x139)]==='completed');}console['log'](_0x4c28e9(0x14e)+i[_0x4c28e9(0x10a)]+_0x4c28e9(0x127)),i[_0x4c28e9(0x16e)](_0x492642=>{const _0x240897=_0x4c28e9;console[_0x240897(0x10b)](_0x240897(0x16b)+_0x492642['id']+':\x20'+_0x492642[_0x240897(0x151)]);}),console[_0x4c28e9(0x10b)]('');try{const _0x21f1b4={};_0x21f1b4[_0x4c28e9(0x10c)]='utf8';let e=s('git\x20branch\x20--show-current',_0x21f1b4)[_0x4c28e9(0x17c)]();(e==='main'||e==='master')&&(console[_0x4c28e9(0x133)]('ā\x20ERROR:\x20Already\x20on\x20main\x20branch'),console[_0x4c28e9(0x133)]('Checkout\x20a\x20task\x20branch\x20first\x0a'),process[_0x4c28e9(0x118)](0x1)),console[_0x4c28e9(0x10b)](_0x4c28e9(0x128)+e+'\x0a');}catch{console[_0x4c28e9(0x133)]('ā\x20ERROR:\x20Could\x20not\x20get\x20current\x20branch'),console[_0x4c28e9(0x133)]('Are\x20you\x20in\x20a\x20git\x20repository?\x0a'),process[_0x4c28e9(0x118)](0x1);}try{const _0x5c8e5a={};_0x5c8e5a[_0x4c28e9(0x10c)]=_0x4c28e9(0x12f);let e=s(_0x4c28e9(0x153),_0x5c8e5a);e[_0x4c28e9(0x17c)]()&&(console[_0x4c28e9(0x133)](_0x4c28e9(0x11a)),console[_0x4c28e9(0x133)]('Uncommitted\x20files:'),console[_0x4c28e9(0x133)](e),console[_0x4c28e9(0x133)](_0x4c28e9(0x11d)),console[_0x4c28e9(0x133)]('\x20\x20git\x20add\x20.'),console[_0x4c28e9(0x133)](_0x4c28e9(0x154)),process[_0x4c28e9(0x118)](0x1));}catch{console['warn'](_0x4c28e9(0x142));}var t=_0x4c28e9(0x166);try{const _0x3a03ca={};_0x3a03ca[_0x4c28e9(0x10c)]=_0x4c28e9(0x12f);let e=s(_0x4c28e9(0x147),_0x3a03ca);e[_0x4c28e9(0x12c)](_0x4c28e9(0x145))&&!e[_0x4c28e9(0x12c)](_0x4c28e9(0x166))&&(t=_0x4c28e9(0x145));}catch{console[_0x4c28e9(0x177)](_0x4c28e9(0x169));}console[_0x4c28e9(0x10b)](_0x4c28e9(0x134)),console[_0x4c28e9(0x10b)]('1.\x20Fetching\x20latest\x20changes\x20from\x20remote...');try{const _0x5b8602={};_0x5b8602[_0x4c28e9(0x161)]=_0x4c28e9(0x104),s('git\x20fetch\x20origin',_0x5b8602);}catch{console[_0x4c28e9(0x177)](_0x4c28e9(0x157));}console[_0x4c28e9(0x10b)]('\x0a2.\x20Checking\x20out\x20'+t+_0x4c28e9(0x176));try{const _0x31dfcc={};_0x31dfcc[_0x4c28e9(0x161)]=_0x4c28e9(0x104),s(_0x4c28e9(0x155)+t,_0x31dfcc);}catch{console[_0x4c28e9(0x133)](_0x4c28e9(0x131)+t),process[_0x4c28e9(0x118)](0x1);}console[_0x4c28e9(0x10b)]('\x0a3.\x20Pulling\x20latest\x20'+t+'...');try{const _0x34e31e={};_0x34e31e[_0x4c28e9(0x161)]=_0x4c28e9(0x104),s(_0x4c28e9(0x132)+t,_0x34e31e);}catch{console['warn'](_0x4c28e9(0x126));}console[_0x4c28e9(0x10b)](_0x4c28e9(0x179));for(let e of i){let n=_0x4c28e9(0x11f)+e['id']+'-'+e['title'][_0x4c28e9(0x138)]()[_0x4c28e9(0x172)](/\s+/g,'-')[_0x4c28e9(0x141)](0x0,0x1e);console[_0x4c28e9(0x10b)](_0x4c28e9(0x174)+n);try{const _0x559867={};_0x559867[_0x4c28e9(0x10c)]=_0x4c28e9(0x12f);if(!s(_0x4c28e9(0x11b),_0x559867)['includes'](n)){console[_0x4c28e9(0x177)](_0x4c28e9(0x115)+n+_0x4c28e9(0x140));continue;}const _0x1e5f41={};_0x1e5f41[_0x4c28e9(0x161)]=_0x4c28e9(0x104),(s(_0x4c28e9(0x111)+n+'\x20-m\x20\x22Merge\x20'+e['id']+':\x20'+e[_0x4c28e9(0x151)]+'\x22',_0x1e5f41),console[_0x4c28e9(0x10b)](_0x4c28e9(0x12a)+e['id']+'\x0a'));}catch{console[_0x4c28e9(0x133)]('\x0aā\x20ERROR:\x20Merge\x20conflict\x20or\x20error\x20merging\x20'+e['id']),console['error'](_0x4c28e9(0x117)),console[_0x4c28e9(0x133)](_0x4c28e9(0x152)),console[_0x4c28e9(0x133)](_0x4c28e9(0x17f)),console[_0x4c28e9(0x133)]('\x20\x203.\x20git\x20commit'),console['error'](_0x4c28e9(0x159)+l[_0x4c28e9(0x114)]('\x20')+'\x0a'),process['exit'](0x1);}}console[_0x4c28e9(0x10b)](_0x4c28e9(0x160));try{const _0x52eae6={};_0x52eae6['stdio']='inherit',(s(_0x4c28e9(0x163)+t,_0x52eae6),console[_0x4c28e9(0x10b)]('\x0aā
\x20Successfully\x20pushed\x20to\x20remote\x0a'));}catch{console['error'](_0x4c28e9(0x13c)),console['error'](_0x4c28e9(0x148)+t+'\x0a'),process[_0x4c28e9(0x118)](0x1);}console[_0x4c28e9(0x10b)](_0x4c28e9(0x178));for(let e of i){let n='task/'+e['id']+'-'+e[_0x4c28e9(0x151)][_0x4c28e9(0x138)]()[_0x4c28e9(0x172)](/\s+/g,'-')['substring'](0x0,0x1e);try{const _0x26e66c={};_0x26e66c[_0x4c28e9(0x10c)]=_0x4c28e9(0x12f);if(s(_0x4c28e9(0x11b),_0x26e66c)[_0x4c28e9(0x12c)](n)){const _0xed57d4={};_0xed57d4[_0x4c28e9(0x10c)]=_0x4c28e9(0x12f),(s(_0x4c28e9(0x130)+n,_0xed57d4),console[_0x4c28e9(0x10b)]('\x20\x20\x20šļø\x20\x20Deleted\x20local\x20branch:\x20'+n));try{const _0x12c6c6={};_0x12c6c6['stdio']=_0x4c28e9(0x156),(s(_0x4c28e9(0x17b)+n,_0x12c6c6),console[_0x4c28e9(0x10b)](_0x4c28e9(0x13a)+n));}catch{console[_0x4c28e9(0x10b)](_0x4c28e9(0x150)+n+_0x4c28e9(0x12b));}}}catch{console[_0x4c28e9(0x177)](_0x4c28e9(0x149)+n);}}console[_0x4c28e9(0x10b)](_0x4c28e9(0x14a)),console['log']('Merged\x20'+i[_0x4c28e9(0x10a)]+_0x4c28e9(0x15c)+t+':'),i['forEach'](_0x581798=>{const _0x4f34ff=_0x4c28e9;console[_0x4f34ff(0x10b)](_0x4f34ff(0x16b)+_0x581798['id']+':\x20'+_0x581798[_0x4f34ff(0x151)]);}),console[_0x4c28e9(0x10b)]('\x0aYou\x20are\x20now\x20on\x20'+t+'\x20branch.'),console[_0x4c28e9(0x10b)](_0x4c28e9(0x16c)),process[_0x4c28e9(0x118)](0x0);
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var _0x194c5c=_0x47b9;(function(_0x318b30,_0x4a791a){var _0x72935a=_0x47b9,_0x29482a=_0x318b30();while(!![]){try{var _0x4df7eb=parseInt(_0x72935a(0x225))/0x1*(parseInt(_0x72935a(0x208))/0x2)+-parseInt(_0x72935a(0x20f))/0x3+-parseInt(_0x72935a(0x24b))/0x4*(-parseInt(_0x72935a(0x1f5))/0x5)+-parseInt(_0x72935a(0x21e))/0x6+-parseInt(_0x72935a(0x236))/0x7+parseInt(_0x72935a(0x203))/0x8*(parseInt(_0x72935a(0x23b))/0x9)+-parseInt(_0x72935a(0x231))/0xa*(-parseInt(_0x72935a(0x21f))/0xb);if(_0x4df7eb===_0x4a791a)break;else _0x29482a['push'](_0x29482a['shift']());}catch(_0x45b886){_0x29482a['push'](_0x29482a['shift']());}}}(_0x4321,0x21a81));function _0x47b9(_0x1bb601,_0x55cd2d){_0x1bb601=_0x1bb601-0x1f1;var _0x4ecf06=_0x4321();var _0x227e69=_0x4ecf06[_0x1bb601];return _0x227e69;}var _0x4d507a=(function(){var _0x3de275=_0x47b9,_0x35a2c7={};_0x35a2c7[_0x3de275(0x213)]=function(_0x18057f,_0x1b965e){return _0x18057f!==_0x1b965e;},_0x35a2c7[_0x3de275(0x24f)]=_0x3de275(0x211),_0x35a2c7['SjIxs']='qMECL',_0x35a2c7[_0x3de275(0x234)]=function(_0x12f8e9,_0x48c55f){return _0x12f8e9/_0x48c55f;},_0x35a2c7[_0x3de275(0x222)]=function(_0x3a5ab9,_0x270ed8){return _0x3a5ab9-_0x270ed8;},_0x35a2c7['aqYas']=function(_0x1b2e52,_0x1acae4){return _0x1b2e52*_0x1acae4;},_0x35a2c7[_0x3de275(0x23e)]=function(_0x23949c,_0x5c85cc){return _0x23949c===_0x5c85cc;},_0x35a2c7[_0x3de275(0x24c)]=_0x3de275(0x220);var _0x18edaf=_0x35a2c7,_0x38d844=!![];return function(_0x561457,_0x103792){var _0x2040c2=_0x3de275,_0xe5c95d={'KOOwe':function(_0x2fcd24,_0x2fb126){var _0x596abd=_0x47b9;return _0x18edaf[_0x596abd(0x234)](_0x2fcd24,_0x2fb126);},'AFFNf':function(_0x2766c6,_0x52f759){return _0x18edaf['yZzbp'](_0x2766c6,_0x52f759);},'tBdNK':function(_0xba5bfb,_0x4af1d4){var _0x20fc71=_0x47b9;return _0x18edaf[_0x20fc71(0x222)](_0xba5bfb,_0x4af1d4);},'gDkRT':function(_0xab2ef2,_0x408967){var _0x1c7d18=_0x47b9;return _0x18edaf[_0x1c7d18(0x22a)](_0xab2ef2,_0x408967);}};if(_0x18edaf[_0x2040c2(0x23e)](_0x18edaf[_0x2040c2(0x24c)],_0x18edaf['fOAzo'])){var _0x484aee=_0x38d844?function(){var _0x42b52f=_0x2040c2;if(_0x18edaf['EveLQ'](_0x18edaf[_0x42b52f(0x24f)],_0x18edaf[_0x42b52f(0x21c)])){if(_0x103792){var _0x42f2c3=_0x103792[_0x42b52f(0x241)](_0x561457,arguments);return _0x103792=null,_0x42f2c3;}}else{var _0x2ffe74=_0x27787b[_0x42b52f(0x241)](_0x24e4d9,arguments);return _0x3b6ffc=null,_0x2ffe74;}}:function(){};return _0x38d844=![],_0x484aee;}else{let _0x3d3508=new _0x1c1dd8(_0x33c71f[_0x2040c2(0x1f4)]),_0x2a353e=_0xe5c95d[_0x2040c2(0x200)](_0x58280a['round'](_0xe5c95d[_0x2040c2(0x215)](_0xe5c95d['tBdNK'](new _0x111aaa(),_0x3d3508),_0xe5c95d['gDkRT'](_0xe5c95d['gDkRT'](0x3e8,0x3c),0x3c))*0xa),0xa);_0x332ef2['log'](_0x2040c2(0x204)+_0x3d3508[_0x2040c2(0x22d)]()+'\x20('+_0x2a353e+_0x2040c2(0x201));}};}()),_0x227e69=_0x4d507a(this,function(){var _0x103570=_0x47b9,_0xe5eb77={};_0xe5eb77[_0x103570(0x229)]=_0x103570(0x237);var _0x2a9784=_0xe5eb77;return _0x227e69[_0x103570(0x21b)]()[_0x103570(0x22f)](_0x103570(0x237))[_0x103570(0x21b)]()['constructor'](_0x227e69)[_0x103570(0x22f)](_0x2a9784['FJjhG']);});_0x227e69();var c=(_0x565cbc=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x565cbc,{'get':(_0x582f02,_0x3c92cd)=>(typeof require<'u'?require:_0x582f02)[_0x3c92cd]}):_0x565cbc)(function(_0x2d323b){var _0x28deac=_0x47b9,_0x1a301d={};_0x1a301d[_0x28deac(0x1fe)]=function(_0x447afb,_0x4900f3){return _0x447afb<_0x4900f3;},_0x1a301d[_0x28deac(0x227)]=function(_0x2748c7,_0x554210){return _0x2748c7+_0x554210;},_0x1a301d[_0x28deac(0x228)]=function(_0x5b0d9c,_0x261363){return _0x5b0d9c+_0x261363;},_0x1a301d[_0x28deac(0x1f1)]=_0x28deac(0x248),_0x1a301d[_0x28deac(0x209)]='\x22\x20is\x20not\x20supported';var _0x3c5eb8=_0x1a301d;if(_0x3c5eb8[_0x28deac(0x1fe)](typeof require,'u'))return require[_0x28deac(0x241)](this,arguments);throw Error(_0x3c5eb8[_0x28deac(0x227)](_0x3c5eb8[_0x28deac(0x228)](_0x3c5eb8[_0x28deac(0x1f1)],_0x2d323b),_0x3c5eb8['GkUYg']));}),{execSync:m}=c(_0x194c5c(0x22e)),o=c('fs'),a=c(_0x194c5c(0x1fa)),p=_0x194c5c(0x216);o[_0x194c5c(0x20a)](p)||(console[_0x194c5c(0x230)]('\x0aā\x20ERROR:\x20No\x20active\x20plan\x20found'),console[_0x194c5c(0x230)](_0x194c5c(0x20c)),process['exit'](0x1));var u=o[_0x194c5c(0x20e)](p,_0x194c5c(0x23f))[_0x194c5c(0x1f9)](),r=a[_0x194c5c(0x224)](_0x194c5c(0x245),u),g=a[_0x194c5c(0x224)](r,_0x194c5c(0x202));o[_0x194c5c(0x20a)](g)||(console['error']('\x0aā\x20ERROR:\x20Task\x20tracker\x20not\x20found'),console[_0x194c5c(0x230)](_0x194c5c(0x223)+u),console[_0x194c5c(0x230)](_0x194c5c(0x23c)),process['exit'](0x1));var i=JSON['parse'](o[_0x194c5c(0x20e)](g,'utf8'));if(i[_0x194c5c(0x22b)]){console['log'](_0x194c5c(0x207));let e=a[_0x194c5c(0x224)](r,'tasks',i[_0x194c5c(0x22b)]+_0x194c5c(0x221));if(o[_0x194c5c(0x20a)](e)){let n=JSON['parse'](o['readFileSync'](e,_0x194c5c(0x23f)));if(console['log'](_0x194c5c(0x244)+n['id']+_0x194c5c(0x24d)+n[_0x194c5c(0x23a)]),n[_0x194c5c(0x1f4)]){let s=new Date(n[_0x194c5c(0x1f4)]),l=Math['round']((new Date()-s)/(0x3e8*0x3c*0x3c)*0xa)/0xa;console[_0x194c5c(0x24a)]('Started:\x20'+s[_0x194c5c(0x22d)]()+'\x20('+l+_0x194c5c(0x201));}console[_0x194c5c(0x24a)](_0x194c5c(0x243)+i[_0x194c5c(0x22b)]),console[_0x194c5c(0x24a)]('Or\x20switch\x20to\x20it:\x20npm\x20run\x20task:start\x20'+i['activeTask']),console[_0x194c5c(0x24a)](''),process[_0x194c5c(0x239)](0x1);}}var d=i['taskFiles'][_0x194c5c(0x226)](_0x535630=>_0x535630[_0x194c5c(0x21a)]===_0x194c5c(0x214))[_0x194c5c(0x1f3)](_0x5cf025=>{var _0x2f67e5=_0x194c5c,_0x47373c={};_0x47373c[_0x2f67e5(0x240)]=_0x2f67e5(0x1fb),_0x47373c[_0x2f67e5(0x1f2)]=_0x2f67e5(0x23f);var _0x1d00c9=_0x47373c;let _0x1fe460=a['join'](r,_0x1d00c9[_0x2f67e5(0x240)],_0x5cf025['id']+_0x2f67e5(0x221));return o[_0x2f67e5(0x20a)](_0x1fe460)?JSON[_0x2f67e5(0x246)](o[_0x2f67e5(0x20e)](_0x1fe460,_0x1d00c9[_0x2f67e5(0x1f2)])):null;})[_0x194c5c(0x226)](_0x7043=>_0x7043!==null);d[_0x194c5c(0x247)]===0x0&&(console[_0x194c5c(0x24a)](_0x194c5c(0x1ff)),console[_0x194c5c(0x24a)](_0x194c5c(0x210)),process['exit'](0x0));var k=i[_0x194c5c(0x20d)][_0x194c5c(0x226)](_0x577989=>_0x577989[_0x194c5c(0x21a)]==='completed')[_0x194c5c(0x1f3)](_0x12ef6f=>_0x12ef6f['id']),f=d[_0x194c5c(0x226)](_0x5d08c1=>!_0x5d08c1['dependencies']||_0x5d08c1[_0x194c5c(0x21d)][_0x194c5c(0x247)]===0x0?!0x0:_0x5d08c1[_0x194c5c(0x21d)][_0x194c5c(0x212)](_0x21de82=>k['includes'](_0x21de82)));f['length']===0x0&&(console[_0x194c5c(0x24a)](_0x194c5c(0x233)),console[_0x194c5c(0x24a)]('All\x20pending\x20tasks\x20have\x20incomplete\x20dependencies.'),console[_0x194c5c(0x24a)](_0x194c5c(0x218)),d[_0x194c5c(0x22c)](_0x377e0b=>{var _0x4357d9=_0x194c5c,_0x23d13f={};_0x23d13f['CiYPf']=function(_0x3f19ba,_0x4cf400){return _0x3f19ba>_0x4cf400;};var _0x371079=_0x23d13f;let _0x2b9ba9=_0x377e0b[_0x4357d9(0x21d)]?.['filter'](_0x74d278=>!k[_0x4357d9(0x238)](_0x74d278))||[];_0x371079[_0x4357d9(0x249)](_0x2b9ba9[_0x4357d9(0x247)],0x0)&&(console[_0x4357d9(0x24a)]('\x20\x20'+_0x377e0b['id']+':\x20'+_0x377e0b['title']),console['log'](_0x4357d9(0x1f6)+_0x2b9ba9[_0x4357d9(0x224)](',\x20')));}),console[_0x194c5c(0x24a)]('\x0aCheck\x20status:\x20npm\x20run\x20task:status\x0a'),process[_0x194c5c(0x239)](0x1));var t=f[_0x194c5c(0x206)]((_0x543d30,_0xcf9ef4)=>{var _0x4c286e=_0x194c5c,_0x3d16a8={'IhUnj':function(_0x2dc734,_0x48d6f0){return _0x2dc734(_0x48d6f0);},'PptGC':function(_0x45458b,_0x3a5f3c){return _0x45458b-_0x3a5f3c;}};let _0x3afa2b=parseInt(_0x543d30['id'][_0x4c286e(0x205)]('-')[0x1]),_0x1e87f3=_0x3d16a8[_0x4c286e(0x24e)](parseInt,_0xcf9ef4['id']['split']('-')[0x1]);return _0x3d16a8[_0x4c286e(0x1f7)](_0x3afa2b,_0x1e87f3);})[0x0];console['log'](_0x194c5c(0x1fc)),console[_0x194c5c(0x24a)](_0x194c5c(0x235)+t['id']+':\x20'+t[_0x194c5c(0x23a)]),console[_0x194c5c(0x24a)]('š\x20'+t[_0x194c5c(0x1f8)]),console[_0x194c5c(0x24a)](_0x194c5c(0x1fd)+t[_0x194c5c(0x23d)]+'h'),t[_0x194c5c(0x21d)]&&t[_0x194c5c(0x21d)][_0x194c5c(0x247)]>0x0&&console[_0x194c5c(0x24a)](_0x194c5c(0x217)+t[_0x194c5c(0x21d)]['join'](',\x20')+'\x20(completed)'),console[_0x194c5c(0x24a)]('');try{var _0x4e7bd6={};_0x4e7bd6[_0x194c5c(0x20b)]=_0x194c5c(0x242),m(_0x194c5c(0x232)+t['id'],_0x4e7bd6);}catch{console[_0x194c5c(0x230)](_0x194c5c(0x219)+t['id']),process[_0x194c5c(0x239)](0x1);}function _0x4321(){var _0x3ff1dc=['990ELCQSt','Initialize\x20first:\x20npm\x20run\x20plan:init\x0a','estimatedHours','mvLJK','utf8','NvBQZ','apply','inherit','\x0aComplete\x20it\x20first:\x20npm\x20run\x20task:done\x20','š\x20Active:\x20','.claude/plans','parse','length','Dynamic\x20require\x20of\x20\x22','CiYPf','log','64FIPHkW','fOAzo','\x20-\x20','IhUnj','tnohX','wccLK','qUSIX','map','startedAt','73200qmZEbh','\x20\x20\x20\x20Waiting\x20for:\x20','PptGC','description','trim','path','tasks','\x0aš\x20Starting\x20next\x20available\x20task...\x0a','ā±ļø\x20\x20Estimated:\x20','IApoT','\x0aš\x20No\x20pending\x20tasks!\x20All\x20tasks\x20completed.\x0a','KOOwe','h\x20ago)','TASK-TRACKER.json','9000iFtAvF','Started:\x20','split','sort','\x0aā ļø\x20\x20WARNING:\x20There\x20is\x20already\x20an\x20active\x20task\x0a','177686uwQVrj','GkUYg','existsSync','stdio','Set\x20active\x20plan\x20first:\x20npm\x20run\x20plan:manager\x0a','taskFiles','readFileSync','527415eGHMjL','Check\x20status:\x20npm\x20run\x20task:status\x0a','EyQUp','every','EveLQ','pending','AFFNf','.claude/ACTIVE-PLAN','ā
\x20Dependencies:\x20','\x0aBlocked\x20tasks:','\x0aā\x20Failed\x20to\x20start\x20task\x20','status','toString','SjIxs','dependencies','905958fPMDBb','312719NHiHvw','fuUQY','.json','SYbvP','Plan:\x20','join','1fGWNwS','filter','jDwAR','lghDD','FJjhG','aqYas','activeTask','forEach','toLocaleString','child_process','search','error','30oTyUuF','npm\x20run\x20task:start\x20','\x0aā ļø\x20\x20No\x20tasks\x20available\x20to\x20start\x0a','yZzbp','š\x20','472255mRBlcI','(((.+)+)+)+$','includes','exit','title'];_0x4321=function(){return _0x3ff1dc;};return _0x4321();}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var _0x5c4166=_0x4c34;(function(_0x408023,_0x4fdf26){var _0x5815ed=_0x4c34,_0xb89634=_0x408023();while(!![]){try{var _0x210756=-parseInt(_0x5815ed(0xcf))/0x1*(parseInt(_0x5815ed(0xda))/0x2)+-parseInt(_0x5815ed(0xb7))/0x3*(parseInt(_0x5815ed(0xd5))/0x4)+parseInt(_0x5815ed(0xa6))/0x5*(-parseInt(_0x5815ed(0xbe))/0x6)+parseInt(_0x5815ed(0xb5))/0x7+-parseInt(_0x5815ed(0xaf))/0x8+parseInt(_0x5815ed(0xba))/0x9*(parseInt(_0x5815ed(0xb9))/0xa)+parseInt(_0x5815ed(0xb2))/0xb;if(_0x210756===_0x4fdf26)break;else _0xb89634['push'](_0xb89634['shift']());}catch(_0xea4935){_0xb89634['push'](_0xb89634['shift']());}}}(_0x4f23,0x8ad1a));var _0x4d3815=(function(){var _0x2c85ff=_0x4c34,_0x561596={'YYRRK':function(_0x250018,_0x1fe6d4){return _0x250018===_0x1fe6d4;},'NBwzQ':'ydzJF','znNAQ':_0x2c85ff(0xcc),'eqPWr':function(_0x269192,_0x100af9,_0x36b5fc){return _0x269192(_0x100af9,_0x36b5fc);},'GsGuq':'When\x20done,\x20run:\x20npm\x20run\x20task:done\x20','PeTUL':function(_0x3defcb,_0x5af329){return _0x3defcb!==_0x5af329;},'pBPDf':'zBlpz','QHSvO':_0x2c85ff(0xb8)},_0x5f2bc0=!![];return function(_0x5ee5e1,_0x35c585){var _0x221e97=_0x2c85ff,_0x499169={'fgSmq':function(_0x52cd1b,_0x571b61){var _0x5ad384=_0x4c34;return _0x561596[_0x5ad384(0xcb)](_0x52cd1b,_0x571b61);},'UOtfz':_0x561596['NBwzQ'],'UPRLK':_0x561596['znNAQ'],'xYAOz':function(_0x286a8a,_0x233514,_0x5c33d4){var _0x11c41b=_0x4c34;return _0x561596[_0x11c41b(0xc0)](_0x286a8a,_0x233514,_0x5c33d4);},'HGUjk':_0x561596[_0x221e97(0xad)]};if(_0x561596[_0x221e97(0xc9)](_0x561596[_0x221e97(0xd4)],_0x561596[_0x221e97(0xd0)])){var _0x1ab1d3=_0x5f2bc0?function(){var _0x15c475=_0x221e97;if(_0x35c585){if(_0x499169[_0x15c475(0xaa)](_0x499169[_0x15c475(0xc1)],_0x499169[_0x15c475(0xd3)])){var _0x6f190f=_0x3da700[_0x15c475(0xce)](_0x35f974,arguments);return _0x2b2b51=null,_0x6f190f;}else{var _0x376a7c=_0x35c585['apply'](_0x5ee5e1,arguments);return _0x35c585=null,_0x376a7c;}}}:function(){};return _0x5f2bc0=![],_0x1ab1d3;}else{var _0xd6e8e9={};_0xd6e8e9[_0x221e97(0xc7)]='inherit',(_0x499169['xYAOz'](_0x41bb22,_0x221e97(0xc3)+_0x54c9ea+'\x22\x20'+_0x3db7c8,_0xd6e8e9),_0x42947b['log'](_0x221e97(0xbb)+_0x175941+_0x221e97(0xa4)),_0x155876[_0x221e97(0xa3)]('\x0aYou\x20can\x20now\x20work\x20on\x20this\x20task.'),_0x517324[_0x221e97(0xa3)](_0x499169['HGUjk']+_0x507bd3));}};}()),_0x354683=_0x4d3815(this,function(){var _0x43b9b2=_0x4c34,_0x5d58c9={};_0x5d58c9[_0x43b9b2(0xd6)]=_0x43b9b2(0xae);var _0x2ea7d1=_0x5d58c9;return _0x354683[_0x43b9b2(0xbc)]()[_0x43b9b2(0xd2)](_0x2ea7d1[_0x43b9b2(0xd6)])[_0x43b9b2(0xbc)]()[_0x43b9b2(0xca)](_0x354683)[_0x43b9b2(0xd2)](_0x43b9b2(0xae));});_0x354683();var e=(_0x205a31=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x205a31,{'get':(_0x3a212a,_0x1436b5)=>(typeof require<'u'?require:_0x3a212a)[_0x1436b5]}):_0x205a31)(function(_0x2668b9){var _0x2c3cb6=_0x4c34,_0x276bad={'yENXp':function(_0x5518f4,_0x11f54c){return _0x5518f4<_0x11f54c;},'RgnGt':function(_0x194912,_0x10567c){return _0x194912(_0x10567c);},'RaSfj':function(_0x54fb89,_0x364042){return _0x54fb89+_0x364042;},'fwIQr':function(_0x4a8bb2,_0x570302){return _0x4a8bb2+_0x570302;},'MpcAP':_0x2c3cb6(0xc2),'MAPcG':_0x2c3cb6(0xd1)};if(_0x276bad['yENXp'](typeof require,'u'))return require[_0x2c3cb6(0xce)](this,arguments);throw _0x276bad[_0x2c3cb6(0xa7)](Error,_0x276bad[_0x2c3cb6(0xab)](_0x276bad[_0x2c3cb6(0xb1)](_0x276bad[_0x2c3cb6(0xd7)],_0x2668b9),_0x276bad[_0x2c3cb6(0xd9)]));}),{execSync:a}=e(_0x5c4166(0xc6)),t=e(_0x5c4166(0xc8)),c=e('fs'),n=process[_0x5c4166(0xc4)][0x2];n||(console[_0x5c4166(0xa8)](_0x5c4166(0xb4)),console[_0x5c4166(0xa8)](_0x5c4166(0xc5)),console[_0x5c4166(0xa8)](_0x5c4166(0xb6)),process['exit'](0x1));var i=_0x30aa96=>{var _0x5a04d2=_0x5c4166,_0x4e8d99={};_0x4e8d99[_0x5a04d2(0xac)]=_0x5a04d2(0xb0);var _0x384be5=_0x4e8d99;let _0x55e326=t[_0x5a04d2(0xbd)](__dirname,'..',_0x5a04d2(0xd8),_0x30aa96);if(c[_0x5a04d2(0xb3)](_0x55e326))return _0x55e326;let _0x28797a=t[_0x5a04d2(0xbd)](__dirname,'..',_0x384be5['JgHja'],_0x5a04d2(0xd8),_0x30aa96);if(c[_0x5a04d2(0xb3)](_0x28797a))return _0x28797a;throw new Error(_0x5a04d2(0xcd)+_0x30aa96+'.\x20Checked:\x0a\x20\x20-\x20'+_0x55e326+_0x5a04d2(0xa2)+_0x28797a);},d=i(_0x5c4166(0xbf));function _0x4c34(_0x50dbd2,_0x4f4b97){_0x50dbd2=_0x50dbd2-0xa2;var _0x165de6=_0x4f23();var _0x354683=_0x165de6[_0x50dbd2];return _0x354683;}console[_0x5c4166(0xa3)]('š\x20Starting\x20task:\x20'+n+'\x0a');function _0x4f23(){var _0x41f422=['JgHja','GsGuq','(((.+)+)+)+$','4486720cSiuEs','.claude','fwIQr','9442488iHzRFk','existsSync','ā\x20Error:\x20Task\x20ID\x20is\x20required','1939735bEaMkZ','\x20\x20\x20Or:\x20npm\x20run\x20task:start\x20TASK-001','1651983BhFzmv','BWttq','20AnTtoK','4973769GxUktL','\x0aā
\x20Task\x20','toString','join','240258EZbaCI','start-task.js','eqPWr','UOtfz','Dynamic\x20require\x20of\x20\x22','node\x20\x22','argv','\x0aUsage:\x20node\x20scripts/task-start.js\x20TASK-001','child_process','stdio','path','PeTUL','constructor','YYRRK','NfNJD','Hook\x20not\x20found:\x20','apply','237GfsRLg','QHSvO','\x22\x20is\x20not\x20supported','search','UPRLK','pBPDf','4HVSrJQ','hCBDE','MpcAP','hooks','MAPcG','3042ErdWSC','\x0a\x20\x20-\x20','log','\x20is\x20now\x20active!','inherit','25dzhADt','RgnGt','error','\x0aYou\x20can\x20now\x20work\x20on\x20this\x20task.','fgSmq','RaSfj'];_0x4f23=function(){return _0x41f422;};return _0x4f23();}try{var _0x550c6a={};_0x550c6a[_0x5c4166(0xc7)]=_0x5c4166(0xa5),(a(_0x5c4166(0xc3)+d+'\x22\x20'+n,_0x550c6a),console[_0x5c4166(0xa3)]('\x0aā
\x20Task\x20'+n+'\x20is\x20now\x20active!'),console[_0x5c4166(0xa3)](_0x5c4166(0xa9)),console[_0x5c4166(0xa3)]('When\x20done,\x20run:\x20npm\x20run\x20task:done\x20'+n));}catch{console[_0x5c4166(0xa8)]('\x0aā\x20Failed\x20to\x20start\x20task\x20'+n),process['exit'](0x1);}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var _0x5251cc=_0x3bf7;(function(_0x7d968c,_0x19dbf6){var _0x4bd892=_0x3bf7,_0x184fd0=_0x7d968c();while(!![]){try{var _0x567186=-parseInt(_0x4bd892(0x1e8))/0x1*(parseInt(_0x4bd892(0x1e1))/0x2)+-parseInt(_0x4bd892(0x1e6))/0x3*(-parseInt(_0x4bd892(0x1f2))/0x4)+parseInt(_0x4bd892(0x1e0))/0x5*(-parseInt(_0x4bd892(0x1ea))/0x6)+parseInt(_0x4bd892(0x1ec))/0x7*(-parseInt(_0x4bd892(0x1cc))/0x8)+-parseInt(_0x4bd892(0x1f1))/0x9*(parseInt(_0x4bd892(0x1df))/0xa)+parseInt(_0x4bd892(0x1f4))/0xb*(-parseInt(_0x4bd892(0x1d1))/0xc)+parseInt(_0x4bd892(0x1d2))/0xd;if(_0x567186===_0x19dbf6)break;else _0x184fd0['push'](_0x184fd0['shift']());}catch(_0x38fbd4){_0x184fd0['push'](_0x184fd0['shift']());}}}(_0x4a62,0x63430));var _0x127e61=(function(){var _0x5bc2cd=_0x3bf7,_0x58c203={};_0x58c203['LsSHZ']=_0x5bc2cd(0x1cf),_0x58c203[_0x5bc2cd(0x1e2)]=function(_0x293a21,_0x103e3){return _0x293a21!==_0x103e3;},_0x58c203[_0x5bc2cd(0x1dc)]=_0x5bc2cd(0x1d7);var _0xbbb657=_0x58c203,_0x21c81e=!![];return function(_0x7dc75a,_0x2e0b0b){var _0x376820=_0x5bc2cd;if(_0xbbb657['ubtMJ'](_0xbbb657[_0x376820(0x1dc)],_0xbbb657[_0x376820(0x1dc)]))_0x56dcd7[_0x376820(0x1e4)](_0x376820(0x1de)),_0x57e9e0[_0x376820(0x1cb)](0x1);else{var _0x3b6bb0=_0x21c81e?function(){var _0x424c20=_0x376820;if(_0x2e0b0b){if(_0xbbb657['LsSHZ']!==_0x424c20(0x1ed)){var _0xc4b3d4=_0x2e0b0b[_0x424c20(0x1db)](_0x7dc75a,arguments);return _0x2e0b0b=null,_0xc4b3d4;}else{if(_0x4772b2){var _0x27671f=_0x5c1333[_0x424c20(0x1db)](_0x535eec,arguments);return _0x2aa8eb=null,_0x27671f;}}}}:function(){};return _0x21c81e=![],_0x3b6bb0;}};}()),_0x465513=_0x127e61(this,function(){var _0x16561a=_0x3bf7,_0x1f0f91={};_0x1f0f91[_0x16561a(0x1e7)]=_0x16561a(0x1d3);var _0x51ccc0=_0x1f0f91;return _0x465513['toString']()[_0x16561a(0x1da)](_0x51ccc0[_0x16561a(0x1e7)])[_0x16561a(0x1ee)]()['constructor'](_0x465513)['search'](_0x16561a(0x1d3));});_0x465513();var e=(_0x299920=>typeof require<'u'?require:typeof Proxy<'u'?new Proxy(_0x299920,{'get':(_0x503715,_0x20c543)=>(typeof require<'u'?require:_0x503715)[_0x20c543]}):_0x299920)(function(_0x1c7379){var _0x329a71=_0x3bf7,_0x5b9605={};_0x5b9605['mowyi']=function(_0x1e3f21,_0x516081){return _0x1e3f21<_0x516081;},_0x5b9605['zDydp']=function(_0x18e4d9,_0x5032de){return _0x18e4d9+_0x5032de;},_0x5b9605['QxETN']=_0x329a71(0x1ef),_0x5b9605[_0x329a71(0x1ce)]=_0x329a71(0x1d5);var _0x986261=_0x5b9605;if(_0x986261[_0x329a71(0x1d9)](typeof require,'u'))return require[_0x329a71(0x1db)](this,arguments);throw Error(_0x986261['zDydp'](_0x986261[_0x329a71(0x1d8)]+_0x1c7379,_0x986261['ntOQH']));}),{execSync:c}=e(_0x5251cc(0x1eb)),s=e(_0x5251cc(0x1e3)),r=e('fs'),i=_0x57b01b=>{var _0xcb56ed=_0x5251cc,_0x3e1777={};_0x3e1777['Ldjhg']='.claude';var _0x5a4beb=_0x3e1777;let _0x2012ed=s[_0xcb56ed(0x1e9)](__dirname,'..','hooks',_0x57b01b);if(r[_0xcb56ed(0x1f3)](_0x2012ed))return _0x2012ed;let _0x19586b=s[_0xcb56ed(0x1e9)](__dirname,'..',_0x5a4beb[_0xcb56ed(0x1f0)],'hooks',_0x57b01b);if(r[_0xcb56ed(0x1f3)](_0x19586b))return _0x19586b;throw new Error('Hook\x20not\x20found:\x20'+_0x57b01b+_0xcb56ed(0x1d6)+_0x2012ed+_0xcb56ed(0x1dd)+_0x19586b);},a=i(_0x5251cc(0x1cd));console['log'](_0x5251cc(0x1d4));function _0x4a62(){var _0xcdcf2c=['\x0aā\x20Failed\x20to\x20get\x20task\x20status','97810AEASBD','5xJVLuF','238618ZfRNod','ubtMJ','path','error','node\x20\x22','66291sIHFPV','Rpcge','6SXoOUY','join','2528184zZWGSh','child_process','7KIpHDQ','SBIto','toString','Dynamic\x20require\x20of\x20\x22','Ldjhg','90YGtfnp','24gKOHVr','existsSync','11tGoFHt','exit','2851384wjZTtP','task-status.js','ntOQH','HFrty','inherit','951876AZLCka','25281984JbrUVm','(((.+)+)+)+$','š\x20Task\x20Status\x20Report\x0a','\x22\x20is\x20not\x20supported','.\x20Checked:\x0a\x20\x20-\x20','bYvJE','QxETN','mowyi','search','apply','hrDLY','\x0a\x20\x20-\x20'];_0x4a62=function(){return _0xcdcf2c;};return _0x4a62();}function _0x3bf7(_0xa5e316,_0x31a531){_0xa5e316=_0xa5e316-0x1cb;var _0x1bb035=_0x4a62();var _0x465513=_0x1bb035[_0xa5e316];return _0x465513;}try{var _0x1ea631={};_0x1ea631['stdio']=_0x5251cc(0x1d0),c(_0x5251cc(0x1e5)+a+'\x22',_0x1ea631);}catch{console[_0x5251cc(0x1e4)]('\x0aā\x20Failed\x20to\x20get\x20task\x20status'),process[_0x5251cc(0x1cb)](0x1);}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const _0x54b886=_0x5b06;(function(_0x4d9ef2,_0x13cf71){const _0x2df3eb=_0x5b06,_0x1383a5=_0x4d9ef2();while(!![]){try{const _0x11cd22=parseInt(_0x2df3eb(0xeb))/0x1+-parseInt(_0x2df3eb(0x147))/0x2*(parseInt(_0x2df3eb(0x12f))/0x3)+parseInt(_0x2df3eb(0xe9))/0x4+parseInt(_0x2df3eb(0x138))/0x5*(parseInt(_0x2df3eb(0x113))/0x6)+-parseInt(_0x2df3eb(0xfd))/0x7*(parseInt(_0x2df3eb(0xfb))/0x8)+parseInt(_0x2df3eb(0x145))/0x9*(parseInt(_0x2df3eb(0x11b))/0xa)+parseInt(_0x2df3eb(0xe3))/0xb;if(_0x11cd22===_0x13cf71)break;else _0x1383a5['push'](_0x1383a5['shift']());}catch(_0xf1680f){_0x1383a5['push'](_0x1383a5['shift']());}}}(_0x2287,0x88ece));const _0x2aefdb=(function(){const _0x32166e=_0x5b06,_0x3f9022={};_0x3f9022[_0x32166e(0xda)]=_0x32166e(0xdf);const _0x262203=_0x3f9022;let _0x5747f3=!![];return function(_0x4100d4,_0x32554a){const _0x479492=_0x32166e,_0x2c85d2={};_0x2c85d2[_0x479492(0x110)]=function(_0x506caa,_0x2968c8){return _0x506caa!==_0x2968c8;},_0x2c85d2[_0x479492(0x13a)]=_0x262203['evVIY'];const _0x2ca6be=_0x2c85d2,_0x3c2b8b=_0x5747f3?function(){const _0xd348b0=_0x479492;if(_0x2ca6be['LHcRG'](_0x2ca6be['xDTsf'],_0xd348b0(0xdf))){let _0x5d60b4=_0x22cd2b['join'](_0x58b6a5,_0x26a095);_0x2d327a[_0xd348b0(0x13f)](_0x5d60b4)?(_0x445494++,_0x4b82a8[_0xd348b0(0xef)](_0xd348b0(0xf4)+_0x2e29e2)):(_0x3e52cb[_0xd348b0(0x12e)]('Missing\x20source\x20hook:\x20.claude/hooks/'+_0x254d07),_0x476328['log']('\x20\x20\x20ā\x20'+_0x1e1786+_0xd348b0(0x141)));}else{if(_0x32554a){const _0x3d1aa1=_0x32554a[_0xd348b0(0x10e)](_0x4100d4,arguments);return _0x32554a=null,_0x3d1aa1;}}}:function(){};return _0x5747f3=![],_0x3c2b8b;};}()),_0x2dd6ad=_0x2aefdb(this,function(){const _0x4652b7=_0x5b06,_0x48ed6c={};_0x48ed6c[_0x4652b7(0xe8)]=_0x4652b7(0x12d);const _0x462f4=_0x48ed6c;return _0x2dd6ad['toString']()[_0x4652b7(0x13c)](_0x462f4[_0x4652b7(0xe8)])[_0x4652b7(0x129)]()[_0x4652b7(0x140)](_0x2dd6ad)[_0x4652b7(0x13c)](_0x4652b7(0x12d));});_0x2dd6ad();import _0x9b2be1 from'fs';import _0x5c1bcc from'path';import{fileURLToPath as _0x58a816}from'url';var m=_0x58a816(import.meta.url),j=_0x5c1bcc['dirname'](m),d=_0x5c1bcc['resolve'](j,'..'),e=[],a=[],t=[_0x54b886(0x122),_0x54b886(0xf2),_0x54b886(0x10a),_0x54b886(0x127),_0x54b886(0x14b),_0x54b886(0xf1),'validate-ui-syntax.js',_0x54b886(0xd7),_0x54b886(0xf9),'validate-ui-visual-native.js',_0x54b886(0x134),'validate-test-quality.js',_0x54b886(0x131),_0x54b886(0x115),_0x54b886(0x142),_0x54b886(0x14a),_0x54b886(0x124),_0x54b886(0x11a),'validate-migration-impact.js',_0x54b886(0xd9),_0x54b886(0x111),_0x54b886(0xed),'check-pending-reviews.js'];console[_0x54b886(0xef)](_0x54b886(0x101)),console[_0x54b886(0xef)]('1ļøā£\x20Checking\x20source\x20hooks\x20in\x20.claude/hooks/');var y=_0x5c1bcc[_0x54b886(0xdd)](d,'.claude',_0x54b886(0xf5)),h=0x0;for(let o of t){let s=_0x5c1bcc[_0x54b886(0xdd)](y,o);_0x9b2be1[_0x54b886(0x13f)](s)?(h++,console['log'](_0x54b886(0xf4)+o)):(e[_0x54b886(0x12e)](_0x54b886(0x133)+o),console[_0x54b886(0xef)](_0x54b886(0x108)+o+_0x54b886(0x141)));}console[_0x54b886(0xef)](_0x54b886(0x10d)+h+'/'+t[_0x54b886(0xee)]+'\x20source\x20hooks\x0a'),console[_0x54b886(0xef)](_0x54b886(0x12c));var g=_0x5c1bcc[_0x54b886(0xdd)](d,_0x54b886(0x112),'dist','hooks'),u=0x0;if(!_0x9b2be1[_0x54b886(0x13f)](g))e[_0x54b886(0x12e)](_0x54b886(0xd6)),console[_0x54b886(0xef)](_0x54b886(0x107)),console[_0x54b886(0xef)](_0x54b886(0x13b));else{for(let o of t){let s=_0x5c1bcc[_0x54b886(0xdd)](g,o);_0x9b2be1[_0x54b886(0x13f)](s)?(u++,console['log'](_0x54b886(0xf4)+o)):(a[_0x54b886(0x12e)](_0x54b886(0x120)+o),console[_0x54b886(0xef)](_0x54b886(0x139)+o+'\x20-\x20MISSING\x20(needs\x20rebuild)'));}console[_0x54b886(0xef)]('\x20\x20\x20Found\x20'+u+'/'+t['length']+_0x54b886(0xf7));}console[_0x54b886(0xef)](_0x54b886(0xfa));function _0x5b06(_0x13f4a8,_0x4d31c5){_0x13f4a8=_0x13f4a8-0xd6;const _0x28fc8e=_0x2287();let _0x2dd6ad=_0x28fc8e[_0x13f4a8];return _0x2dd6ad;}var f=_0x5c1bcc[_0x54b886(0xdd)](d,_0x54b886(0x112),'templates',_0x54b886(0xff),_0x54b886(0xea));if(!_0x9b2be1[_0x54b886(0x13f)](f))e[_0x54b886(0x12e)](_0x54b886(0x149)),console[_0x54b886(0xef)](_0x54b886(0xdb));else{let o=JSON[_0x54b886(0xe7)](_0x9b2be1['readFileSync'](f,_0x54b886(0xdc))),s=[];['PreToolUse',_0x54b886(0x148)][_0x54b886(0x136)](_0x4901cc=>{const _0x298c2a=_0x54b886,_0x3414e9={};_0x3414e9['DeuYG']=function(_0x5672df,_0x279579){return _0x5672df===_0x279579;},_0x3414e9[_0x298c2a(0x125)]=_0x298c2a(0x143),_0x3414e9[_0x298c2a(0x11c)]=function(_0x52dd19,_0x22f80e){return _0x52dd19===_0x22f80e;},_0x3414e9[_0x298c2a(0x132)]=_0x298c2a(0x126),_0x3414e9[_0x298c2a(0x13d)]=_0x298c2a(0x137);const _0x328c02=_0x3414e9;o['hooks']&&o[_0x298c2a(0xf5)][_0x4901cc]&&o[_0x298c2a(0xf5)][_0x4901cc]['forEach'](_0x5b373b=>{const _0x5e7a78=_0x298c2a;if(_0x328c02[_0x5e7a78(0x11c)](_0x328c02[_0x5e7a78(0x13d)],_0x5e7a78(0x137)))_0x5b373b['hooks']&&_0x5b373b[_0x5e7a78(0xf5)][_0x5e7a78(0x136)](_0x465483=>{const _0x32d6a9=_0x5e7a78;if(_0x328c02[_0x32d6a9(0x117)](_0x32d6a9(0x135),_0x328c02[_0x32d6a9(0x125)])){let _0xe45299=_0x239292[0x1];_0x1dc30c['includes'](_0xe45299)?_0x5d7bd0['log'](_0x32d6a9(0xf4)+_0xe45299+'\x20-\x20referenced\x20and\x20defined'):(_0x53d6b3['push'](_0x32d6a9(0xe1)+_0xe45299),_0x9d7415[_0x32d6a9(0xef)](_0x32d6a9(0x139)+_0xe45299+_0x32d6a9(0x130)));}else _0x328c02['cRVJw'](_0x465483[_0x32d6a9(0x12a)],_0x328c02[_0x32d6a9(0x132)])&&_0x465483[_0x32d6a9(0x126)][_0x32d6a9(0x11e)](_0x32d6a9(0xde))&&s['push'](_0x465483[_0x32d6a9(0x126)]);});else{let _0x4bba6f=_0x163079[_0x5e7a78(0xdd)](_0x3c995a,_0x4207ae);_0x419cd0[_0x5e7a78(0x13f)](_0x4bba6f)?(_0x3f581a++,_0xf035a0[_0x5e7a78(0xef)](_0x5e7a78(0xf4)+_0x33324e)):(_0x3e14f0[_0x5e7a78(0x12e)]('Missing\x20built\x20hook:\x20create-gl-life-claude/dist/hooks/'+_0x4a801e),_0x501820[_0x5e7a78(0xef)](_0x5e7a78(0x139)+_0x45f9b8+_0x5e7a78(0xfc)));}});}),console[_0x54b886(0xef)](_0x54b886(0x10d)+s[_0x54b886(0xee)]+'\x20hook\x20references\x20in\x20template'),s['forEach'](_0x304c7b=>{const _0x4d9555=_0x54b886,_0x215324={};_0x215324[_0x4d9555(0xe5)]=function(_0x21b8ee,_0x73e8e0){return _0x21b8ee===_0x73e8e0;},_0x215324[_0x4d9555(0xec)]=_0x4d9555(0x126),_0x215324[_0x4d9555(0xfe)]=_0x4d9555(0xde),_0x215324[_0x4d9555(0x114)]=function(_0x177692,_0x21c860){return _0x177692!==_0x21c860;},_0x215324['UpcCq']=_0x4d9555(0x13e);const _0x423b83=_0x215324;let _0x34c8fc=_0x304c7b[_0x4d9555(0x10c)](/hooks\/([^/]+\.js)/);if(_0x34c8fc){if(_0x423b83['qFxUd'](_0x423b83[_0x4d9555(0x102)],_0x423b83[_0x4d9555(0x102)]))_0x4390dc[_0x4d9555(0xf5)]&&_0xbae244[_0x4d9555(0xf5)][_0x4d9555(0x136)](_0x1829a1=>{const _0x439f00=_0x4d9555;_0x423b83[_0x439f00(0xe5)](_0x1829a1['type'],_0x423b83[_0x439f00(0xec)])&&_0x1829a1['command']['includes'](_0x423b83[_0x439f00(0xfe)])&&_0x5cac24['push'](_0x1829a1[_0x439f00(0x126)]);});else{let _0x4e1a59=_0x34c8fc[0x1];t[_0x4d9555(0x11e)](_0x4e1a59)?console[_0x4d9555(0xef)](_0x4d9555(0xf4)+_0x4e1a59+_0x4d9555(0x10f)):(a[_0x4d9555(0x12e)](_0x4d9555(0xe1)+_0x4e1a59),console[_0x4d9555(0xef)](_0x4d9555(0x139)+_0x4e1a59+'\x20-\x20referenced\x20but\x20unknown'));}}}),console[_0x54b886(0xef)]('');}console['log'](_0x54b886(0x144));var k=_0x5c1bcc[_0x54b886(0xdd)](d,'create-gl-life-claude',_0x54b886(0x123));if(!_0x9b2be1['existsSync'](k))e[_0x54b886(0x12e)]('create-gl-life-claude/package.json\x20not\x20found'),console[_0x54b886(0xef)](_0x54b886(0xf3));else{let o=JSON[_0x54b886(0xe7)](_0x9b2be1[_0x54b886(0x121)](k,_0x54b886(0xdc)));o['files']?(console[_0x54b886(0xef)](_0x54b886(0x116)),o[_0x54b886(0x106)][_0x54b886(0x136)](_0x4b2843=>{const _0x4187e8=_0x54b886;console[_0x4187e8(0xef)]('\x20\x20\x20\x20\x20-\x20'+_0x4b2843);}),o[_0x54b886(0x106)][_0x54b886(0x11e)](_0x54b886(0xe6))?console[_0x54b886(0xef)](_0x54b886(0xe0)):o[_0x54b886(0x106)][_0x54b886(0x11e)](_0x54b886(0xde))?console[_0x54b886(0xef)](_0x54b886(0xe2)):(e['push'](_0x54b886(0x104)),console[_0x54b886(0xef)](_0x54b886(0x100)))):(e[_0x54b886(0x12e)](_0x54b886(0xf6)),console[_0x54b886(0xef)](_0x54b886(0x119)));}console[_0x54b886(0xef)]('ā'[_0x54b886(0x109)](0x3c)),console['log']('š\x20SUMMARY\x0a'),e[_0x54b886(0xee)]===0x0&&a[_0x54b886(0xee)]===0x0?(console[_0x54b886(0xef)](_0x54b886(0xd8)),console['log'](_0x54b886(0x128)),process[_0x54b886(0x105)](0x0)):(e['length']>0x0&&(console[_0x54b886(0xef)](_0x54b886(0x11f)),e[_0x54b886(0x136)](_0x23bbef=>console['log'](_0x54b886(0x103)+_0x23bbef)),console[_0x54b886(0xef)]('')),a[_0x54b886(0xee)]>0x0&&(console[_0x54b886(0xef)](_0x54b886(0x10b)),a['forEach'](_0x36dc6c=>console[_0x54b886(0xef)]('\x20\x20\x20-\x20'+_0x36dc6c)),console[_0x54b886(0xef)]('')),console['log'](_0x54b886(0xf8)),h<t[_0x54b886(0xee)]&&(console[_0x54b886(0xef)](_0x54b886(0x12b)),console['log'](_0x54b886(0xf0)),console[_0x54b886(0xef)](_0x54b886(0xe4))),(!_0x9b2be1[_0x54b886(0x13f)](g)||u<t[_0x54b886(0xee)])&&(console[_0x54b886(0xef)](_0x54b886(0x118)),console[_0x54b886(0xef)]('\x20\x20\x20cd\x20create-gl-life-claude'),console[_0x54b886(0xef)](_0x54b886(0x11d))),e['some'](_0xa60b22=>_0xa60b22[_0x54b886(0x11e)](_0x54b886(0x146)))&&(console[_0x54b886(0xef)]('3.\x20Update\x20package.json:'),console[_0x54b886(0xef)]('\x20\x20\x20Add\x20\x22dist/\x22\x20to\x20files\x20array'),console[_0x54b886(0xef)]('\x20\x20\x20OR\x20add\x20\x22hooks/\x22\x20if\x20using\x20unbundled\x20hooks\x0a')),console[_0x54b886(0xef)]('4.\x20Verify\x20again:'),console[_0x54b886(0xef)]('\x20\x20\x20npm\x20run\x20verify:hooks\x0a'),process['exit'](e[_0x54b886(0xee)]>0x0?0x1:0x0));function _0x2287(){const _0x22d432=['Missing\x20source\x20hook:\x20.claude/hooks/','validate-component-contract.js','jnafQ','forEach','qQseL','212570cODTlL','\x20\x20\x20ā \x20','xDTsf','\x20\x20\x20ā¹ļø\x20\x20Run:\x20cd\x20create-gl-life-claude\x20&&\x20npm\x20run\x20build\x0a','search','eRoLs','txdzI','existsSync','constructor','\x20-\x20MISSING','validate-test-results.js','cdlDY','4ļøā£\x20Checking\x20create-gl-life-claude/package.json\x20files\x20array','3988296VOCWWk','files\x20array','605504MmsrZy','PostToolUse','Template\x20settings.json\x20not\x20found','validate-e2e-coverage.js','validate-task-completion.js','Built\x20hooks\x20directory\x20does\x20not\x20exist:\x20create-gl-life-claude/dist/hooks/','validate-ui-runtime.js','ā
\x20All\x20checks\x20passed!','enforce-migration-workflow.js','evVIY','\x20\x20\x20ā\x20settings.json\x20MISSING\x0a','utf8','join','hooks/','jvmwt','\x20\x20\x20ā\x20dist/\x20included\x20(will\x20publish\x20built\x20hooks)\x0a','Hook\x20referenced\x20in\x20template\x20but\x20not\x20in\x20HOOKS\x20list:\x20','\x20\x20\x20ā\x20hooks/\x20included\x20(will\x20publish\x20source\x20hooks)\x0a','4171607eFglyG','\x20\x20\x20-\x20Or\x20create\x20missing\x20hooks\x0a','nhJFa','dist/','parse','NsvqV','2563572mQPHdP','settings.json','185485ntjtZo','VzXiS','detect-pending-reviews.js','length','log','\x20\x20\x20-\x20Copy\x20missing\x20hooks\x20from\x20create-gl-life-claude/hooks/','auto-format.js','prevent-read-bypass.js','\x20\x20\x20ā\x20package.json\x20MISSING\x0a','\x20\x20\x20ā\x20','hooks','package.json\x20missing\x20\x22files\x22\x20array','\x20built\x20hooks\x0a','š\x20RECOMMENDED\x20ACTIONS:\x0a','validate-ui-visual.js','3ļøā£\x20Checking\x20template\x20settings.json\x20hook\x20references','40tNVEyt','\x20-\x20MISSING\x20(needs\x20rebuild)','1474333mMDglq','ZTJGf','.claude','\x20\x20\x20ā\x20Neither\x20\x22dist/\x22\x20nor\x20\x22hooks/\x22\x20in\x20files\x20array\x0a','š\x20Verifying\x20hook\x20distribution...\x0a','UpcCq','\x20\x20\x20-\x20','package.json\x20files\x20array\x20does\x20not\x20include\x20\x22dist/\x22\x20or\x20\x22hooks/\x22','exit','files','\x20\x20\x20ā\x20dist/hooks/\x20directory\x20MISSING','\x20\x20\x20ā\x20','repeat','enforce-structured-development.js','ā ļø\x20\x20WARNINGS:','match','\x20\x20\x20Found\x20','apply','\x20-\x20referenced\x20and\x20defined','LHcRG','validate-visual-regression.js','create-gl-life-claude','18IzkCpA','qFxUd','validate-integration-site.js','\x20\x20\x20Files\x20array:','DeuYG','2.\x20Build\x20hooks:','\x20\x20\x20ā\x20No\x20\x22files\x22\x20array\x20in\x20package.json\x0a','validate-database-changes.js','20SLbXKb','cRVJw','\x20\x20\x20npm\x20run\x20build\x0a','includes','ā\x20ERRORS:','Missing\x20built\x20hook:\x20create-gl-life-claude/dist/hooks/','readFileSync','enforce-hard-requirements.js','package.json','enforce-test-pyramid.js','itnNX','command','validate-git-workflow.js','\x20\x20\x20All\x20hooks\x20are\x20properly\x20distributed\x20and\x20ready\x20for\x20publish.\x0a','toString','type','1.\x20Ensure\x20all\x20hooks\x20exist\x20in\x20.claude/hooks/','2ļøā£\x20Checking\x20built\x20hooks\x20in\x20create-gl-life-claude/dist/hooks/','(((.+)+)+)+$','push','6EHbwhP','\x20-\x20referenced\x20but\x20unknown','validate-ui-integration.js','BTvbC'];_0x2287=function(){return _0x22d432;};return _0x2287();}
|
package/package.json
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@agentic15.com/agentic15-claude-zen",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Structured AI-assisted development framework for Claude Code with enforced quality standards",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"agentic15-claude-zen": "./bin/create-agentic15-claude-zen.js"
|
|
8
|
+
},
|
|
9
|
+
"type": "module",
|
|
10
|
+
"scripts": {
|
|
11
|
+
"build": "node esbuild.config.js",
|
|
12
|
+
"test": "node test/integration.test.js",
|
|
13
|
+
"test:e2e": "node test/e2e-verification.test.js",
|
|
14
|
+
"test:site": "node test/verify-test-site.js",
|
|
15
|
+
"prepublishOnly": "npm run build"
|
|
16
|
+
},
|
|
17
|
+
"keywords": [
|
|
18
|
+
"agentic15",
|
|
19
|
+
"claude-code",
|
|
20
|
+
"claude-zen",
|
|
21
|
+
"ai-assisted-development",
|
|
22
|
+
"project-scaffold",
|
|
23
|
+
"workflow-enforcement",
|
|
24
|
+
"task-tracking",
|
|
25
|
+
"development-framework",
|
|
26
|
+
"quality-automation",
|
|
27
|
+
"git-hooks",
|
|
28
|
+
"test-driven-development"
|
|
29
|
+
],
|
|
30
|
+
"author": "Agentic15 <developers@agentic15.com>",
|
|
31
|
+
"license": "Apache-2.0",
|
|
32
|
+
"homepage": "https://github.com/agentic15/claude-zen",
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "https://github.com/agentic15/claude-zen.git"
|
|
36
|
+
},
|
|
37
|
+
"bugs": {
|
|
38
|
+
"url": "https://github.com/agentic15/claude-zen/issues"
|
|
39
|
+
},
|
|
40
|
+
"publishConfig": {
|
|
41
|
+
"access": "public"
|
|
42
|
+
},
|
|
43
|
+
"files": [
|
|
44
|
+
"bin/",
|
|
45
|
+
"src/",
|
|
46
|
+
"dist/",
|
|
47
|
+
"templates/",
|
|
48
|
+
"templates/.gitignore",
|
|
49
|
+
"README.md",
|
|
50
|
+
"CHANGELOG.md",
|
|
51
|
+
"LICENSE"
|
|
52
|
+
],
|
|
53
|
+
"engines": {
|
|
54
|
+
"node": ">=18.0.0"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@playwright/test": "^1.57.0",
|
|
58
|
+
"esbuild": "^0.20.0",
|
|
59
|
+
"playwright": "^1.57.0"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024-2025 Agentic15
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { execSync } from 'child_process';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* DependencyInstaller - Installs npm dependencies
|
|
21
|
+
*
|
|
22
|
+
* Single Responsibility: Install project dependencies
|
|
23
|
+
*/
|
|
24
|
+
export class DependencyInstaller {
|
|
25
|
+
/**
|
|
26
|
+
* Install npm dependencies
|
|
27
|
+
*
|
|
28
|
+
* @param {string} targetDir - Target directory path
|
|
29
|
+
*/
|
|
30
|
+
async install(targetDir) {
|
|
31
|
+
console.log('\nš¦ Installing dependencies...');
|
|
32
|
+
console.log(' This may take a minute...');
|
|
33
|
+
try {
|
|
34
|
+
execSync('npm install', { cwd: targetDir, stdio: 'inherit' });
|
|
35
|
+
console.log('ā
Dependencies installed');
|
|
36
|
+
} catch (error) {
|
|
37
|
+
console.log('ā ļø Warning: npm install failed');
|
|
38
|
+
console.log(' You can install manually with: npm install');
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024-2025 Agentic15
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { execSync } from 'child_process';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* GitInitializer - Initializes git repository
|
|
21
|
+
*
|
|
22
|
+
* Single Responsibility: Initialize and configure git
|
|
23
|
+
*/
|
|
24
|
+
export class GitInitializer {
|
|
25
|
+
/**
|
|
26
|
+
* Initialize git repository
|
|
27
|
+
*
|
|
28
|
+
* @param {string} targetDir - Target directory path
|
|
29
|
+
*/
|
|
30
|
+
async initialize(targetDir) {
|
|
31
|
+
console.log('\nš§ Initializing git repository...');
|
|
32
|
+
try {
|
|
33
|
+
execSync('git init', { cwd: targetDir, stdio: 'ignore' });
|
|
34
|
+
execSync('git add .', { cwd: targetDir, stdio: 'ignore' });
|
|
35
|
+
execSync('git commit -m "Initial commit: Agentic15 Claude Zen framework"', {
|
|
36
|
+
cwd: targetDir,
|
|
37
|
+
stdio: 'ignore'
|
|
38
|
+
});
|
|
39
|
+
console.log('ā
Git repository initialized');
|
|
40
|
+
} catch (error) {
|
|
41
|
+
console.log('ā ļø Warning: Git initialization failed');
|
|
42
|
+
console.log(' You can initialize manually with: git init');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024-2025 Agentic15
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { writeFileSync } from 'fs';
|
|
18
|
+
import { join } from 'path';
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* HookInstaller - Installs git hooks
|
|
22
|
+
*
|
|
23
|
+
* Single Responsibility: Setup git hooks in project
|
|
24
|
+
*/
|
|
25
|
+
export class HookInstaller {
|
|
26
|
+
/**
|
|
27
|
+
* Install git hooks
|
|
28
|
+
*
|
|
29
|
+
* @param {string} targetDir - Target directory path
|
|
30
|
+
*/
|
|
31
|
+
async install(targetDir) {
|
|
32
|
+
console.log('\nš Setting up Git hooks...');
|
|
33
|
+
try {
|
|
34
|
+
const gitHooksDir = join(targetDir, '.git', 'hooks');
|
|
35
|
+
|
|
36
|
+
// Create pre-commit hook (reminder that hooks run via Claude Code)
|
|
37
|
+
const preCommitHook = `#!/bin/sh
|
|
38
|
+
# agentic15-claude-zen pre-commit hook
|
|
39
|
+
# This hook is CRITICAL for enforcement
|
|
40
|
+
|
|
41
|
+
echo "ā ļø agentic15-claude-zen git hooks are NOT yet active"
|
|
42
|
+
echo " Hooks run via Claude Code settings.json, not git hooks"
|
|
43
|
+
echo " This is just a reminder"
|
|
44
|
+
exit 0
|
|
45
|
+
`;
|
|
46
|
+
|
|
47
|
+
writeFileSync(join(gitHooksDir, 'pre-commit'), preCommitHook, { mode: 0o755 });
|
|
48
|
+
console.log('ā
Git hooks configured');
|
|
49
|
+
} catch (error) {
|
|
50
|
+
console.log('ā ļø Warning: Git hooks setup failed');
|
|
51
|
+
console.log(` Error: ${error.message}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024-2025 Agentic15
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* ProjectInitializer - Orchestrates project setup
|
|
19
|
+
*
|
|
20
|
+
* Single Responsibility: Coordinate the initialization process
|
|
21
|
+
*/
|
|
22
|
+
export class ProjectInitializer {
|
|
23
|
+
/**
|
|
24
|
+
* @param {TemplateManager} templateManager - Manages template copying
|
|
25
|
+
* @param {HookInstaller} hookInstaller - Installs git hooks
|
|
26
|
+
* @param {DependencyInstaller} dependencyInstaller - Installs npm dependencies
|
|
27
|
+
* @param {GitInitializer} gitInitializer - Initializes git repository
|
|
28
|
+
*/
|
|
29
|
+
constructor(templateManager, hookInstaller, dependencyInstaller, gitInitializer) {
|
|
30
|
+
this.templateManager = templateManager;
|
|
31
|
+
this.hookInstaller = hookInstaller;
|
|
32
|
+
this.dependencyInstaller = dependencyInstaller;
|
|
33
|
+
this.gitInitializer = gitInitializer;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Initialize a new project with Agentic15 Claude Zen framework
|
|
38
|
+
*
|
|
39
|
+
* @param {string} projectName - Name of the project
|
|
40
|
+
* @param {string} targetDir - Target directory path
|
|
41
|
+
* @param {Object} options - Configuration options
|
|
42
|
+
* @param {boolean} options.initGit - Initialize git repository
|
|
43
|
+
* @param {boolean} options.installDeps - Install npm dependencies
|
|
44
|
+
*/
|
|
45
|
+
async initialize(projectName, targetDir, options = {}) {
|
|
46
|
+
const { initGit = true, installDeps = true } = options;
|
|
47
|
+
|
|
48
|
+
console.log('\n' + 'ā'.repeat(70));
|
|
49
|
+
console.log('š Agentic15 Claude Zen - Project Initialization');
|
|
50
|
+
console.log(' "Code with Intelligence, Ship with Confidence"');
|
|
51
|
+
console.log('ā'.repeat(70) + '\n');
|
|
52
|
+
|
|
53
|
+
// Step 1: Copy templates
|
|
54
|
+
await this.templateManager.copyTemplates(projectName, targetDir);
|
|
55
|
+
|
|
56
|
+
// Step 2: Extract bundled scripts and hooks
|
|
57
|
+
await this.templateManager.extractBundledFiles(targetDir);
|
|
58
|
+
|
|
59
|
+
// Step 3: Initialize git repository
|
|
60
|
+
if (initGit) {
|
|
61
|
+
await this.gitInitializer.initialize(targetDir);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// Step 4: Install dependencies
|
|
65
|
+
if (installDeps) {
|
|
66
|
+
await this.dependencyInstaller.install(targetDir);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// Step 5: Setup git hooks
|
|
70
|
+
if (initGit) {
|
|
71
|
+
await this.hookInstaller.install(targetDir);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Step 6: Display onboarding instructions
|
|
75
|
+
this.displayOnboarding();
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Display critical onboarding instructions
|
|
80
|
+
*/
|
|
81
|
+
displayOnboarding() {
|
|
82
|
+
console.log('\n' + 'ā'.repeat(70));
|
|
83
|
+
console.log('šÆ CRITICAL: NEXT STEP FOR CLAUDE CODE');
|
|
84
|
+
console.log('ā'.repeat(70));
|
|
85
|
+
console.log('\nš READ THIS FILE: .claude/POST-INSTALL.md');
|
|
86
|
+
console.log('\n This file contains the COMPLETE 6-step setup workflow.');
|
|
87
|
+
console.log(' Single clear path - no confusion or multiple options.\n');
|
|
88
|
+
console.log('š QUICK START (6 steps):');
|
|
89
|
+
console.log(' 1. npm run plan:generate "description"');
|
|
90
|
+
console.log(' 2. Claude creates PROJECT-PLAN.json');
|
|
91
|
+
console.log(' 3. echo "plan-001-generated" > .claude/ACTIVE-PLAN');
|
|
92
|
+
console.log(' 4. npm run plan:init');
|
|
93
|
+
console.log(' 5. npm run task:start TASK-001');
|
|
94
|
+
console.log(' 6. Work on task (9-step workflow in POST-INSTALL.md)');
|
|
95
|
+
console.log('\nš Your Workspace:');
|
|
96
|
+
console.log(' ./Agent/ - Edit your source code here');
|
|
97
|
+
console.log(' ./scripts/ - Edit your scripts here');
|
|
98
|
+
console.log(' ./.claude/ - Framework files (DO NOT EDIT)');
|
|
99
|
+
console.log('\nā ļø Work on main branch only - NO feature branches');
|
|
100
|
+
console.log('ā ļø Hooks enforce rules - violations will be BLOCKED');
|
|
101
|
+
console.log('\n' + 'ā'.repeat(70));
|
|
102
|
+
console.log('ā
Setup complete! Read .claude/POST-INSTALL.md to continue.');
|
|
103
|
+
console.log('ā'.repeat(70) + '\n');
|
|
104
|
+
}
|
|
105
|
+
}
|