@getmarrow/mcp 3.9.49 → 3.9.51

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-contract.js","sourceRoot":"","sources":["../src/hook-contract.ts"],"names":[],"mappings":";;;AAqBA,oDAYC;AAED,4CAQC;AAED,gEAeC;AAYD,gEA6CC;AA4BD,kDAmBC;AA4BD,gFA6BC;AAED,gDAiBC;AAMD,sDAYC;AAED,0DAKC;AAED,0DAEC;AA7QD,6CAAyC;AACzC,qCAAmD;AACnD,yCAA0C;AAE7B,QAAA,mBAAmB,GAAG,QAAQ,CAAC;AAC/B,QAAA,mBAAmB,GAAG,8CAA8C,CAAC;AACrE,QAAA,gBAAgB,GAAG,kBAAkB,2BAAmB,EAAE,CAAC;AAC3D,QAAA,oBAAoB,GAAG,UAAU,wBAAgB,eAAe,CAAC;AACjE,QAAA,uBAAuB,GAAG,UAAU,wBAAgB,kBAAkB,CAAC;AACvE,QAAA,0BAA0B,GAAG,UAAU,wBAAgB,OAAO,CAAC;AAC/D,QAAA,wBAAwB,GAAG,UAAU,wBAAgB,eAAe,CAAC;AACrE,QAAA,qBAAqB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,CAAU,CAAC;AAIvG,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAgB,oBAAoB,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IAC3D,IAAI,GAAG,GAAG,QAAQ,CAAC;IACnB,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACxD,IAAI,IAAA,oBAAU,EAAC,SAAS,CAAC,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QAChF,IAAI,CAAC,QAAQ,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAAE,QAAQ,GAAG,SAAS,CAAC;QACrE,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,IAAI,IAAA,gBAAI,EAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAChE,CAAC;AAED,SAAgB,gBAAgB,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IACvD,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAgB,0BAA0B,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IACjE,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,8BAA8B,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAID,SAAS,oBAAoB,CAAC,OAAgB;IAC5C,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAChC,kGAAkG,CACnG,CAAC;IACF,OAAO,KAAK,EAAE,CAAC,CAAC,CAAqC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,SAAgB,0BAA0B,CACxC,QAAsB,EACtB,SAAiB,EACjB,UAAgC,EAChC,OAAe,EACf,OAAgB;IAEhB,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,IAAI,gBAAgB,GAAmC,IAAI,CAAC;IAC5D,MAAM,QAAQ,GAAc,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAc,EAAE,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,IAAI,QAAQ,EAAE,CAAC;gBAC5C,MAAM,YAAY,GAAG,OAAO,KAAK,SAAS;oBACxC,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;oBAC9B,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC;gBAC/B,IAAI,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC;oBACpG,gBAAgB,GAAG,OAAO,CAAC;gBAC7B,CAAC;gBACD,SAAS;YACX,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,OAAO,GAAG,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAC1E,MAAM,cAAc,GAA4B,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACrE,IAAI,OAAO,KAAK,SAAS;QAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAE9B,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAsB,EACtB,SAAiB,EACjB,UAAiC;IAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,IAAI,QAAQ,KAAK,UAAU,CAAC;gBAAE,OAAO,EAAE,CAAC;YACnG,OAAO,CAAC;oBACN,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;oBACnE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE;oBACvC,OAAO,EAAE,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;wBAC9E,CAAC,CAAC,OAAO,CAAC,OAAO;wBACjB,CAAC,CAAC,IAAI;iBACT,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,mBAAmB,CACjC,QAAsB,EACtB,SAAiB,EACjB,OAAe,EACf,OAAgB;IAEhB,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACnH,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,OAAO,EAAE,IAAI,KAAK,SAAS;mBAC7B,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;mBACnC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAAsB,EACtB,SAAiB,EACjB,OAAe,EACf,OAAgB;IAEhB,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAChH,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO;gBAAE,OAAO,EAAE,CAAC;YACxH,OAAO,CAAC;oBACN,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;oBACnE,OAAO;oBACP,OAAO,EAAE,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;wBAC9E,CAAC,CAAC,OAAO,CAAC,OAAO;wBACjB,CAAC,CAAC,IAAI;iBACT,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,kCAAkC,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IACzE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG;QACf,MAAM,EAAE,+BAA+B;QACvC,eAAe,EAAE,2BAAmB;QACpC,cAAc,EAAE,6BAAqB;QACrC,UAAU,EAAE;YACV,MAAM,EAAE,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,4BAAoB,CAAC;YAC/E,UAAU,EAAE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,+BAAuB,EAAE,2BAAmB,CAAC;YACrG,qBAAqB,EAAE,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,kCAA0B,EAAE,2BAAmB,CAAC;YACpH,qBAAqB,EAAE,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,kCAA0B,EAAE,2BAAmB,CAAC;YAC3H,WAAW,EAAE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,gCAAwB,CAAC;SAC7E;QACD,WAAW,EAAE;YACX,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,4BAAoB,CAAC;YAChF,UAAU,EAAE,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,+BAAuB,EAAE,2BAAmB,CAAC;YACtG,qBAAqB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,kCAA0B,EAAE,2BAAmB,CAAC;YACrH,qBAAqB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,kCAA0B,EAAE,2BAAmB,CAAC;YAC5H,WAAW,EAAE,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,gCAAwB,CAAC;SAC9E;QACD,sBAAsB,EAAE;YACtB,MAAM,EAAE,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC;YAC3D,UAAU,EAAE,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC;YACzD,qBAAqB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC;YACrE,qBAAqB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,CAAC;YAC5E,WAAW,EAAE,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC;SACrD;KACF,CAAC;IACF,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,SAAgB,kBAAkB,CAChC,YAAkD,EAClD,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;IAQxB,OAAO;QACL,eAAe,EAAE,2BAAmB;QACpC,gBAAgB,EAAE,cAAc;QAChC,kBAAkB,EAAE,kCAAkC,CAAC,QAAQ,CAAC;QAChE,cAAc,EAAE,CAAC,GAAG,6BAAqB,CAAC;QAC1C,aAAa,EAAE,YAAY;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,SAAgB,qBAAqB,CAAC,KAKrC;IACC,OAAO,UAAU,CAAC;QAChB,KAAK,CAAC,UAAU,IAAI,EAAE;QACtB,KAAK,CAAC,WAAW,IAAI,EAAE;QACvB,KAAK,CAAC,SAAS,IAAI,MAAM;QACzB,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI;KACpD,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,uBAAuB,CAAC,KAGvC;IACC,OAAO,UAAU,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAgB,uBAAuB,CAAC,SAAkB,EAAE,QAAkB;IAC5E,OAAO,WAAW,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC;AACzF,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { marrowAgentRuntime } from './index';
2
+ export type PreToolUseEvent = {
3
+ session_id?: string;
4
+ hook_event_name?: string;
5
+ tool_use_id?: string;
6
+ tool_name?: string;
7
+ tool_input?: unknown;
8
+ };
9
+ export declare function preActionHookOutput(runtime: Awaited<ReturnType<typeof marrowAgentRuntime>> | null): Record<string, unknown>;
10
+ export declare function installPreActionHook(startDir?: string): {
11
+ settingsPath: string;
12
+ installed: boolean;
13
+ };
14
+ export declare function runPreActionHookCommand(input?: unknown): Promise<void>;
15
+ //# sourceMappingURL=hook-pre-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-pre-action.d.ts","sourceRoot":"","sources":["../src/hook-pre-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAmB,MAAM,SAAS,CAAC;AAiB9D,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAkDF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoB3H;AA0BD,wBAAgB,oBAAoB,CAAC,QAAQ,SAAgB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAgB3G;AAED,wBAAsB,uBAAuB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoD5E"}
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.preActionHookOutput = preActionHookOutput;
4
+ exports.installPreActionHook = installPreActionHook;
5
+ exports.runPreActionHookCommand = runPreActionHookCommand;
6
+ const index_1 = require("./index");
7
+ const env_1 = require("./env");
8
+ const lifecycle_spool_1 = require("./lifecycle-spool");
9
+ const hook_contract_1 = require("./hook-contract");
10
+ const MAX_INPUT_BYTES = 64 * 1024;
11
+ const RUNTIME_TIMEOUT_MS = 900;
12
+ function asRecord(value) {
13
+ return value && typeof value === 'object' && !Array.isArray(value)
14
+ ? value
15
+ : null;
16
+ }
17
+ async function readStdin() {
18
+ const chunks = [];
19
+ let bytes = 0;
20
+ for await (const chunk of process.stdin) {
21
+ const buffer = Buffer.from(chunk);
22
+ bytes += buffer.length;
23
+ if (bytes > MAX_INPUT_BYTES)
24
+ throw new Error('pre-action hook input exceeds byte limit');
25
+ chunks.push(buffer);
26
+ }
27
+ return Buffer.concat(chunks).toString('utf8');
28
+ }
29
+ function classifyTool(event) {
30
+ const tool = String(event.tool_name || 'tool').slice(0, 64);
31
+ const input = JSON.stringify(event.tool_input || {}).toLowerCase();
32
+ let type = 'process';
33
+ if (/\b(?:deploy|release|publish|wrangler)\b/.test(input))
34
+ type = 'deploy';
35
+ else if (/\b(?:merge|pull request|git push)\b/.test(input))
36
+ type = 'review';
37
+ else if (/\b(?:migration|schema|database|d1)\b/.test(input))
38
+ type = 'migration';
39
+ else if (/\b(?:secret|credential|token|key|permission)\b/.test(input))
40
+ type = 'audit';
41
+ const surfaces = [
42
+ /\b(?:deploy|release|production|prod|wrangler)\b/.test(input) ? 'production' : '',
43
+ /\b(?:git|github|merge|pull request|push)\b/.test(input) ? 'github' : '',
44
+ /\b(?:npm|package|publish)\b/.test(input) ? 'npm' : '',
45
+ /\b(?:secret|credential|token|key)\b/.test(input) ? 'secrets' : '',
46
+ ].filter(Boolean);
47
+ const risk = surfaces.includes('production') || surfaces.includes('secrets') ? 'high' : 'medium';
48
+ return {
49
+ action: `classified ${tool} action: ${type} on ${surfaces.join(', ') || 'workspace'}`,
50
+ type,
51
+ role: ['deploy', 'review', 'migration', 'audit'].includes(type) ? type : 'general',
52
+ surfaces: surfaces.length ? surfaces : ['workspace'],
53
+ risk,
54
+ };
55
+ }
56
+ function preActionHookOutput(runtime) {
57
+ if (!runtime?.risk_gate) {
58
+ return {};
59
+ }
60
+ const gate = runtime.risk_gate;
61
+ const reason = runtime.exact_next_action
62
+ || gate.reasons?.[0]?.message
63
+ || 'Marrow requires additional proof or operator review before this action.';
64
+ const permissionDecision = gate.decision === 'review_required'
65
+ ? 'ask'
66
+ : gate.decision === 'block' || gate.allow === false
67
+ ? 'deny'
68
+ : null;
69
+ return {
70
+ hookSpecificOutput: {
71
+ hookEventName: 'PreToolUse',
72
+ ...(permissionDecision ? { permissionDecision, permissionDecisionReason: reason } : {}),
73
+ ...(runtime.before_you_act ? { additionalContext: runtime.before_you_act } : {}),
74
+ },
75
+ };
76
+ }
77
+ function emitDecision(runtime) {
78
+ process.stdout.write(JSON.stringify(preActionHookOutput(runtime)));
79
+ }
80
+ async function withTimeout(operation) {
81
+ const controller = new AbortController();
82
+ let timer;
83
+ try {
84
+ return await Promise.race([
85
+ operation(controller.signal),
86
+ new Promise((resolve) => {
87
+ timer = setTimeout(() => {
88
+ controller.abort();
89
+ resolve(null);
90
+ }, RUNTIME_TIMEOUT_MS);
91
+ }),
92
+ ]);
93
+ }
94
+ catch {
95
+ return null;
96
+ }
97
+ finally {
98
+ if (timer)
99
+ clearTimeout(timer);
100
+ }
101
+ }
102
+ function installPreActionHook(startDir = process.cwd()) {
103
+ const fs = require('node:fs');
104
+ const path = (0, hook_contract_1.findHookSettingsPath)(startDir);
105
+ const settings = (0, hook_contract_1.readHookSettingsForInstall)(startDir);
106
+ const hooks = asRecord(settings.hooks) || {};
107
+ const reconciled = (0, hook_contract_1.reconcileMarrowCommandHook)(settings, 'PreToolUse', 'pre-action-hook', hook_contract_1.PRE_ACTION_HOOK_COMMAND, hook_contract_1.NATIVE_HOOK_MATCHER);
108
+ settings.hooks = { ...hooks, PreToolUse: reconciled.entries };
109
+ fs.mkdirSync(require('node:path').dirname(path), { recursive: true });
110
+ fs.writeFileSync(path, JSON.stringify(settings, null, 2) + '\n');
111
+ return { settingsPath: path, installed: reconciled.changed };
112
+ }
113
+ async function runPreActionHookCommand(input) {
114
+ if (process.env.MARROW_AUTO_HOOK === 'false')
115
+ return;
116
+ let event = input;
117
+ if (event === undefined) {
118
+ try {
119
+ const raw = (await readStdin()).trim();
120
+ event = raw ? JSON.parse(raw) : {};
121
+ }
122
+ catch {
123
+ process.stdout.write('{}');
124
+ return;
125
+ }
126
+ }
127
+ const source = asRecord(event);
128
+ if (!source?.tool_name) {
129
+ process.stdout.write('{}');
130
+ return;
131
+ }
132
+ const resolved = (0, env_1.resolveMarrowEnv)();
133
+ if (!resolved.apiKey) {
134
+ process.stdout.write('{}');
135
+ return;
136
+ }
137
+ const baseUrl = (0, index_1.validateBaseUrl)(resolved.baseUrl || 'https://api.getmarrow.ai');
138
+ const sessionId = resolved.sessionId || source.session_id;
139
+ const agentId = resolved.agentId || undefined;
140
+ const correlation = (0, hook_contract_1.stableToolCorrelation)({ ...source, session_id: sessionId });
141
+ const classified = classifyTool(source);
142
+ const lifecycle = (0, lifecycle_spool_1.recordLifecycleEvent)({
143
+ apiKey: resolved.apiKey,
144
+ baseUrl,
145
+ event: {
146
+ event_id: `pretool-${correlation}`,
147
+ event_type: 'pre_action_checked',
148
+ harness: 'claude-code',
149
+ agent_id: agentId,
150
+ session_id: sessionId,
151
+ workflow_id: (0, hook_contract_1.stableSessionWorkflowId)(sessionId, source.tool_use_id),
152
+ correlation_id: correlation,
153
+ ...(0, hook_contract_1.nativeHookEvidence)('pre_action'),
154
+ action: classified.action,
155
+ risk_level: classified.risk,
156
+ outcome_state: 'pending',
157
+ },
158
+ }).catch(() => null);
159
+ const runtime = (signal) => (0, index_1.marrowAgentRuntime)(resolved.apiKey, baseUrl, {
160
+ action: classified.action,
161
+ type: classified.type,
162
+ role: classified.role,
163
+ surfaces: classified.surfaces,
164
+ }, sessionId, agentId, signal);
165
+ const [result] = await Promise.all([withTimeout(runtime), lifecycle]);
166
+ emitDecision(result);
167
+ }
168
+ //# sourceMappingURL=hook-pre-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-pre-action.js","sourceRoot":"","sources":["../src/hook-pre-action.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const SESSION_HOOK_COMMAND = "npx -y @getmarrow/mcp session-hook";
1
+ export declare const SESSION_HOOK_COMMAND = "npx -y @getmarrow/mcp@3.9.51 session-hook";
2
2
  export declare function installSessionEndHook(startDir?: string): {
3
3
  settingsPath: string;
4
4
  installed: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"hook-session.d.ts","sourceRoot":"","sources":["../src/hook-session.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB,uCAAuC,CAAC;AAkFzE,wBAAgB,qBAAqB,CAAC,QAAQ,SAAgB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAiB5G;AAED,wBAAsB,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B1E"}
1
+ {"version":3,"file":"hook-session.d.ts","sourceRoot":"","sources":["../src/hook-session.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,oBAAoB,8CAA2B,CAAC;AA0D7D,wBAAgB,qBAAqB,CAAC,QAAQ,SAAgB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAa5G;AAED,wBAAsB,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B1E"}
@@ -6,9 +6,9 @@ exports.runSessionHookCommand = runSessionHookCommand;
6
6
  const env_1 = require("./env");
7
7
  const lifecycle_spool_1 = require("./lifecycle-spool");
8
8
  const index_1 = require("./index");
9
- const node_crypto_1 = require("node:crypto");
10
9
  const node_fs_1 = require("node:fs");
11
- exports.SESSION_HOOK_COMMAND = 'npx -y @getmarrow/mcp session-hook';
10
+ const hook_contract_1 = require("./hook-contract");
11
+ exports.SESSION_HOOK_COMMAND = hook_contract_1.SESSION_END_HOOK_COMMAND;
12
12
  const MAX_HOOK_INPUT_BYTES = 64 * 1024;
13
13
  const SESSION_END_TIMEOUT_MS = 900;
14
14
  function readStopHookSource(input) {
@@ -36,15 +36,6 @@ function readStopHookSource(input) {
36
36
  hook_event_name: take('hook_event_name'),
37
37
  };
38
38
  }
39
- function stopCorrelation(source, sessionId) {
40
- const stableSource = sessionId || JSON.stringify([
41
- source.session_id || '',
42
- source.transcript_path || '',
43
- source.cwd || '',
44
- source.hook_event_name || 'Stop',
45
- ]);
46
- return (0, node_crypto_1.createHash)('sha256').update(stableSource).digest('hex').slice(0, 32);
47
- }
48
39
  async function boundedSessionEnd(apiKey, baseUrl, sessionId, agentId) {
49
40
  const controller = new AbortController();
50
41
  let timeout;
@@ -64,39 +55,19 @@ async function boundedSessionEnd(apiKey, baseUrl, sessionId, agentId) {
64
55
  clearTimeout(timeout);
65
56
  }
66
57
  }
67
- function settingsPath(startDir) {
68
- const fs = require('fs');
69
- const path = require('path');
70
- let dir = startDir;
71
- while (true) {
72
- const candidate = path.join(dir, '.claude', 'settings.json');
73
- if (fs.existsSync(candidate) || fs.existsSync(path.join(dir, '.git')))
74
- return candidate;
75
- const parent = path.dirname(dir);
76
- if (parent === dir)
77
- break;
78
- dir = parent;
79
- }
80
- return path.join(startDir, '.claude', 'settings.json');
81
- }
82
58
  function installSessionEndHook(startDir = process.cwd()) {
83
59
  const fs = require('fs');
84
60
  const path = require('path');
85
- const target = settingsPath(startDir);
86
- const settings = fs.existsSync(target) && fs.readFileSync(target, 'utf8').trim()
87
- ? JSON.parse(fs.readFileSync(target, 'utf8'))
88
- : {};
61
+ const target = (0, hook_contract_1.findHookSettingsPath)(startDir);
62
+ const settings = (0, hook_contract_1.readHookSettingsForInstall)(startDir);
89
63
  const hooks = settings.hooks && typeof settings.hooks === 'object' && !Array.isArray(settings.hooks)
90
64
  ? settings.hooks
91
65
  : {};
92
- const stop = Array.isArray(hooks.Stop) ? [...hooks.Stop] : [];
93
- const installed = stop.some((entry) => JSON.stringify(entry).includes(exports.SESSION_HOOK_COMMAND));
94
- if (!installed)
95
- stop.push({ hooks: [{ type: 'command', command: exports.SESSION_HOOK_COMMAND }] });
96
- settings.hooks = { ...hooks, Stop: stop };
66
+ const reconciled = (0, hook_contract_1.reconcileMarrowCommandHook)(settings, 'Stop', 'session-hook', exports.SESSION_HOOK_COMMAND);
67
+ settings.hooks = { ...hooks, Stop: reconciled.entries };
97
68
  fs.mkdirSync(path.dirname(target), { recursive: true });
98
69
  fs.writeFileSync(target, JSON.stringify(settings, null, 2) + '\n');
99
- return { settingsPath: target, installed: !installed };
70
+ return { settingsPath: target, installed: reconciled.changed };
100
71
  }
101
72
  async function runSessionHookCommand(input) {
102
73
  if (process.env.MARROW_AUTO_HOOK === 'false')
@@ -108,7 +79,8 @@ async function runSessionHookCommand(input) {
108
79
  const source = readStopHookSource(input);
109
80
  const sessionId = resolved.sessionId || source.session_id || undefined;
110
81
  const agentId = resolved.agentId || undefined;
111
- const correlation = stopCorrelation(source, sessionId);
82
+ const workflowId = (0, hook_contract_1.stableSessionWorkflowId)(sessionId, [source.transcript_path, source.cwd]);
83
+ const correlation = workflowId.slice('session-'.length);
112
84
  await (0, lifecycle_spool_1.recordLifecycleEvent)({
113
85
  apiKey: resolved.apiKey,
114
86
  baseUrl,
@@ -118,7 +90,9 @@ async function runSessionHookCommand(input) {
118
90
  harness: 'claude-code',
119
91
  agent_id: agentId,
120
92
  session_id: sessionId,
121
- workflow_id: `session-${correlation}`,
93
+ workflow_id: workflowId,
94
+ correlation_id: correlation,
95
+ ...(0, hook_contract_1.nativeHookEvidence)('session_end'),
122
96
  action: 'agent session ended',
123
97
  outcome_state: 'pending',
124
98
  },
@@ -1 +1 @@
1
- {"version":3,"file":"hook-session.js","sourceRoot":"","sources":["../src/hook-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-session.js","sourceRoot":"","sources":["../src/hook-session.ts"],"names":[],"mappings":"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"}
package/dist/hook.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const AUTO_HOOK_COMMAND = "npx -y @getmarrow/mcp hook";
1
+ export declare const AUTO_HOOK_COMMAND = "npx -y @getmarrow/mcp@3.9.51 hook";
2
2
  export declare const AUTO_HOOK_MATCHER = "Bash|Edit|Write|MultiEdit|mcp__(?!marrow_).*";
3
3
  interface HookEvent {
4
4
  session_id?: string;
@@ -8,6 +8,8 @@ interface HookEvent {
8
8
  tool_input?: unknown;
9
9
  tool_response?: unknown;
10
10
  tool_result?: unknown;
11
+ error?: unknown;
12
+ is_interrupt?: boolean;
11
13
  }
12
14
  interface HookInstallResult {
13
15
  settingsPath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAgDA,eAAO,MAAM,iBAAiB,+BAA+B,CAAC;AAC9D,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAOhF,UAAU,SAAS;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,iBAAiB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB;AAkFD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAqB3D;AA2ID,wBAAgB,sBAAsB,CAAC,QAAQ,GAAE,MAAsB,GAAG,iBAAiB,CAkD1F;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA0EpD"}
1
+ {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAyDA,eAAO,MAAM,iBAAiB,sCAA6B,CAAC;AAC5D,eAAO,MAAM,iBAAiB,iDAAsB,CAAC;AAOrD,UAAU,SAAS;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,iBAAiB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB;AA0ED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAqB3D;AA2ED,wBAAgB,sBAAsB,CAAC,QAAQ,GAAE,MAAsB,GAAG,iBAAiB,CAwB1F;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA4EpD"}
package/dist/hook.js CHANGED
@@ -7,7 +7,7 @@ exports.runHookCommand = runHookCommand;
7
7
  const index_1 = require("./index");
8
8
  const env_1 = require("./env");
9
9
  const lifecycle_spool_1 = require("./lifecycle-spool");
10
- const node_crypto_1 = require("node:crypto");
10
+ const hook_contract_1 = require("./hook-contract");
11
11
  const SKIP_TOOLS = new Set([
12
12
  'read',
13
13
  'grep',
@@ -49,8 +49,8 @@ const READ_ONLY_BASH_COMMANDS = new Set([
49
49
  'whoami',
50
50
  'uname',
51
51
  ]);
52
- exports.AUTO_HOOK_COMMAND = 'npx -y @getmarrow/mcp hook';
53
- exports.AUTO_HOOK_MATCHER = 'Bash|Edit|Write|MultiEdit|mcp__(?!marrow_).*';
52
+ exports.AUTO_HOOK_COMMAND = hook_contract_1.ACTION_RESULT_HOOK_COMMAND;
53
+ exports.AUTO_HOOK_MATCHER = hook_contract_1.NATIVE_HOOK_MATCHER;
54
54
  const HOOK_DEBUG = process.env.MARROW_HOOK_DEBUG === 'true';
55
55
  function debug(msg) {
56
56
  if (HOOK_DEBUG)
@@ -83,14 +83,6 @@ function safeStringify(value, max) {
83
83
  return truncate(String(value), max);
84
84
  }
85
85
  }
86
- function extractFilePath(toolInput) {
87
- for (const key of ['file_path', 'path', 'target_file', 'filename']) {
88
- const value = getString(toolInput[key]);
89
- if (value)
90
- return value;
91
- }
92
- return undefined;
93
- }
94
86
  function extractDescription(toolInput) {
95
87
  return getString(toolInput.description);
96
88
  }
@@ -175,19 +167,6 @@ function extractFirstArg(toolInput) {
175
167
  }
176
168
  return safeStringify(record, 120);
177
169
  }
178
- function buildMcpArgsSummary(toolInput) {
179
- const record = asRecord(toolInput);
180
- if (!record) {
181
- const first = extractFirstArg(toolInput);
182
- return first ? truncate(normalizeWhitespace(first), 120) : undefined;
183
- }
184
- const clone = { ...record };
185
- delete clone.description;
186
- const keys = Object.keys(clone);
187
- if (keys.length === 0)
188
- return undefined;
189
- return safeStringify(clone, 120);
190
- }
191
170
  function deriveAction(event) {
192
171
  const toolName = getString(event.tool_name);
193
172
  if (!toolName || shouldSkipAutoLog(event))
@@ -212,23 +191,15 @@ function deriveToolSuccess(event) {
212
191
  const response = event.tool_response ?? event.tool_result;
213
192
  const responseRecord = asRecord(response);
214
193
  const errorValue = responseRecord?.error;
215
- const failed = errorValue !== undefined && errorValue !== null
194
+ const failed = event.hook_event_name === 'PostToolUseFailure'
195
+ || event.error != null
196
+ || errorValue !== undefined && errorValue !== null
216
197
  || responseRecord?.is_error === true
217
198
  || responseRecord?.success === false
218
199
  || (typeof responseRecord?.exit_code === 'number' && responseRecord.exit_code !== 0)
219
200
  || /^(?:failed|error|blocked)$/i.test(String(responseRecord?.status || ''));
220
201
  return !failed;
221
202
  }
222
- function stableHookCorrelation(event) {
223
- const source = getString(event.tool_use_id)
224
- || JSON.stringify([
225
- getString(event.session_id) || '',
226
- getString(event.hook_event_name) || 'PostToolUse',
227
- getString(event.tool_name) || 'tool',
228
- event.tool_input || null,
229
- ]);
230
- return (0, node_crypto_1.createHash)('sha256').update(source).digest('hex').slice(0, 32);
231
- }
232
203
  async function readStdin() {
233
204
  const chunks = [];
234
205
  process.stdin.setEncoding('utf8');
@@ -237,80 +208,24 @@ async function readStdin() {
237
208
  }
238
209
  return chunks.join('');
239
210
  }
240
- function getHomeDir() {
241
- return process.env.HOME || process.env.USERPROFILE || process.cwd();
242
- }
243
- function looksLikeProjectRoot(dir) {
244
- const fs = require('fs');
245
- const path = require('path');
246
- return ['.git', 'package.json', 'CLAUDE.md'].some((name) => fs.existsSync(path.join(dir, name)));
247
- }
248
- function findSettingsPath(startDir) {
249
- const fs = require('fs');
250
- const path = require('path');
251
- let dir = startDir;
252
- let fallbackProjectDir = null;
253
- while (true) {
254
- const claudeDir = path.join(dir, '.claude');
255
- const settingsPath = path.join(claudeDir, 'settings.json');
256
- if (fs.existsSync(settingsPath) || fs.existsSync(claudeDir)) {
257
- return settingsPath;
258
- }
259
- if (!fallbackProjectDir && looksLikeProjectRoot(dir)) {
260
- fallbackProjectDir = dir;
261
- }
262
- const parent = path.dirname(dir);
263
- if (parent === dir)
264
- break;
265
- dir = parent;
266
- }
267
- if (fallbackProjectDir) {
268
- return path.join(fallbackProjectDir, '.claude', 'settings.json');
269
- }
270
- return path.join(getHomeDir(), '.claude', 'settings.json');
271
- }
272
211
  function installPostToolUseHook(startDir = process.cwd()) {
273
212
  const fs = require('fs');
274
213
  const path = require('path');
275
- const settingsPath = findSettingsPath(startDir);
276
- let settings = {};
277
- if (fs.existsSync(settingsPath)) {
278
- const raw = fs.readFileSync(settingsPath, 'utf8').trim();
279
- if (raw) {
280
- const parsed = JSON.parse(raw);
281
- const record = asRecord(parsed);
282
- if (!record) {
283
- throw new Error(`Existing settings file is not a JSON object: ${settingsPath}`);
284
- }
285
- settings = record;
286
- }
287
- }
214
+ const settingsPath = (0, hook_contract_1.findHookSettingsPath)(startDir);
215
+ const settings = (0, hook_contract_1.readHookSettingsForInstall)(startDir);
288
216
  const hooks = asRecord(settings.hooks) || {};
289
- const postToolUse = Array.isArray(hooks.PostToolUse) ? [...hooks.PostToolUse] : [];
290
- const alreadyInstalled = postToolUse.some((entry) => {
291
- const record = asRecord(entry);
292
- if (!record || !Array.isArray(record.hooks))
293
- return false;
294
- return record.hooks.some((hook) => {
295
- const hookRecord = asRecord(hook);
296
- return !!(hookRecord && typeof hookRecord.command === 'string' && hookRecord.command.includes(exports.AUTO_HOOK_COMMAND));
297
- });
298
- });
299
- if (!alreadyInstalled) {
300
- postToolUse.push({
301
- matcher: exports.AUTO_HOOK_MATCHER,
302
- hooks: [{ type: 'command', command: exports.AUTO_HOOK_COMMAND }],
303
- });
304
- }
217
+ const success = (0, hook_contract_1.reconcileMarrowCommandHook)(settings, 'PostToolUse', 'hook', exports.AUTO_HOOK_COMMAND, exports.AUTO_HOOK_MATCHER);
218
+ const failure = (0, hook_contract_1.reconcileMarrowCommandHook)(settings, 'PostToolUseFailure', 'hook', exports.AUTO_HOOK_COMMAND, exports.AUTO_HOOK_MATCHER);
305
219
  settings.hooks = {
306
220
  ...hooks,
307
- PostToolUse: postToolUse,
221
+ PostToolUse: success.entries,
222
+ PostToolUseFailure: failure.entries,
308
223
  };
309
224
  fs.mkdirSync(path.dirname(settingsPath), { recursive: true });
310
225
  fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n');
311
226
  return {
312
227
  settingsPath,
313
- installed: !alreadyInstalled,
228
+ installed: success.changed || failure.changed,
314
229
  };
315
230
  }
316
231
  async function runHookCommand() {
@@ -358,7 +273,7 @@ async function runHookCommand() {
358
273
  const eventType = toolName === 'bash'
359
274
  ? success ? 'command_completed' : 'command_failed'
360
275
  : success ? 'tool_completed' : 'tool_failed';
361
- const lifecycleCorrelation = stableHookCorrelation(event);
276
+ const lifecycleCorrelation = (0, hook_contract_1.stableToolCorrelation)({ ...event, session_id: sessionId });
362
277
  await (0, lifecycle_spool_1.recordLifecycleEvent)({
363
278
  apiKey,
364
279
  baseUrl,
@@ -368,7 +283,9 @@ async function runHookCommand() {
368
283
  harness: 'claude-code',
369
284
  agent_id: agentId,
370
285
  session_id: sessionId,
371
- workflow_id: `workflow-${lifecycleCorrelation}`,
286
+ workflow_id: (0, hook_contract_1.stableSessionWorkflowId)(sessionId, event.tool_use_id),
287
+ correlation_id: lifecycleCorrelation,
288
+ ...(0, hook_contract_1.nativeHookEvidence)('action_result'),
372
289
  action,
373
290
  success,
374
291
  outcome_state: 'pending',
package/dist/hook.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -154,7 +154,7 @@ export declare function marrowValueReport(apiKey: string, baseUrl: string, perio
154
154
  */
155
155
  export declare function marrowDecisionBrief(apiKey: string, baseUrl: string, input: MarrowDecisionBriefRequest, sessionId?: string, agentId?: string): Promise<MarrowDecisionBriefResult>;
156
156
  export declare function marrowWorkflowGate(apiKey: string, baseUrl: string, input: MarrowWorkflowGateRequest, sessionId?: string, agentId?: string): Promise<MarrowWorkflowGateResult>;
157
- export declare function marrowAgentRuntime(apiKey: string, baseUrl: string, input: MarrowAgentRuntimeRequest, sessionId?: string, agentId?: string): Promise<MarrowAgentRuntimeResult>;
157
+ export declare function marrowAgentRuntime(apiKey: string, baseUrl: string, input: MarrowAgentRuntimeRequest, sessionId?: string, agentId?: string, signal?: AbortSignal): Promise<MarrowAgentRuntimeResult>;
158
158
  /**
159
159
  * Resolve conflicting agent proposals through the existing runtime control
160
160
  * plane. This is a client convenience, not a separate backend API.