@miller-tech/uap 1.126.0 → 1.128.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/README.md +1 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/bin/cli.js +1 -0
- package/dist/bin/cli.js.map +1 -1
- package/dist/cli/deliver.d.ts +4 -0
- package/dist/cli/deliver.d.ts.map +1 -1
- package/dist/cli/deliver.js +3 -0
- package/dist/cli/deliver.js.map +1 -1
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +48 -5
- package/dist/dashboard/server.js.map +1 -1
- package/dist/delivery/agentic-executor.d.ts +11 -0
- package/dist/delivery/agentic-executor.d.ts.map +1 -1
- package/dist/delivery/agentic-executor.js +16 -3
- package/dist/delivery/agentic-executor.js.map +1 -1
- package/docs/INDEX.md +7 -1
- package/docs/architecture/OVERVIEW.md +6 -1
- package/docs/guides/SANDBOX.md +99 -0
- package/package.json +3 -1
- package/src/policies/enforcers/__pycache__/_common.cpython-312.pyc +0 -0
- package/templates/hooks/uap-policy-gate.sh +62 -3
- package/tools/agents/scripts/__pycache__/toolcall_path_normalizer.cpython-312.pyc +0 -0
- package/tools/agents/scripts/anthropic_proxy.py +50 -1
- package/web/dashboard.html +9 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentic-executor.js","sourceRoot":"","sources":["../../src/delivery/agentic-executor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agentic-executor.js","sourceRoot":"","sources":["../../src/delivery/agentic-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAC3H,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAsElD,MAAM,KAAK,GAAG;IACZ;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,sDAAsD;YACnE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACxC,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,yDAAyD;YACtE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACxC,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,8EAA8E;YAC3F,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC3C,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,oFAAoF;YACjG,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACrE,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAC9B;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8EAA8E;YAC3F,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC3C,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF;CACO,CAAC;AAEX,+EAA+E;AAC/E,SAAS,QAAQ,CAAC,WAAmB,EAAE,CAAS;IAC9C,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,YAAY,CAAC,WAAmB,EAAE,GAAW;IAC3D,OAAO,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AAC3E,CAAC;AAED,+DAA+D;AAC/D,SAAS,iBAAiB,CACxB,WAAmB,EACnB,cAAmC;IAEnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACtC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,uBAAuB;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAC/E,SAAS,gBAAgB,CAAC,IAAyB;IACjD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,OAAO,EAAE,CAAC;gBAC/D,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,OAAO,CACd,WAAmB,EACnB,IAAY,EACZ,IAA6B,EAC7B,aAAqB,EACrB,cAAmC,EACnC,kBAA2B,EAC3B,SAAkB;IAElB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,+EAA+E;IAC/E,6EAA6E;IAC7E,4EAA4E;IAC5E,oDAAoD;IACpD,IACE,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,YAAY,CAAC;QACtE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAC7B,CAAC;QACD,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC,CAAC;QAC5F,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,QAAQ,GAAG,qBAAqB,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC;YAC7D,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,0BAA0B,IAAI,CAAC,IAAI,EAAE,CAAC;YACnE,OAAO,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9D,OAAO,WAAW,CAAC,GAAG,CAAC;iBACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC;iBACV,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;gBACvD,OAAO,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,oGAAoG,CAAC;YACzI,CAAC;YACD,yEAAyE;YACzE,uEAAuE;YACvE,kEAAkE;YAClE,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAClE,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,4CAA4C,CAAC;YAC7F,CAAC;YACD,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO,aAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,UAAU,QAAQ,EAAE,CAAC;QAClG,CAAC;QACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,0EAA0E;YAC1E,uEAAuE;YACvE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CACL,6EAA6E;oBAC7E,0EAA0E;oBAC1E,uEAAuE;oBACvE,0CAA0C,CAC3C,CAAC;YACJ,CAAC;YACD,oEAAoE;YACpE,sCAAsC;YACtC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;YAClG,yEAAyE;YACzE,oEAAoE;YACpE,oEAAoE;YACpE,wDAAwD;YACxD,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE;gBACxD,GAAG,EAAE,WAAW;gBAChB,OAAO,EAAE,aAAa;gBACtB,QAAQ,EAAE,OAAO;gBACjB,GAAG,EAAE,YAAY,EAAE;aACpB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChE,MAAM,IAAI,GACR,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACjB,CAAC,CAAC,wBAAwB,QAAQ,CAAC,MAAM,2CAA2C;gBACpF,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,QAAQ,CAAC,CAAC,MAAM,IAAI,MAAM,KAAK,GAAG,GAAG,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,uBAAuB,IAAI,EAAE,CAAC;IACvC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,UAAU,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,SAAS,4BAA4B,CAAC,WAAmB;IACvD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACzF,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAID;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAkB,EAClB,WAAmB,EACnB,QAAiB;IAEjB,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,QAAQ,IAAI,4BAA4B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;AACrF,CAAC;AAED,KAAK,UAAU,IAAI,CACjB,QAAgB,EAChB,KAAkB,EAClB,QAAuB,EACvB,WAAoB;IAEpB,0EAA0E;IAC1E,0EAA0E;IAC1E,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC9F,OAAO,aAAa,CAAC,WAAW,KAAK,CAAC,QAAQ,IAAI,SAAS,EAAE,EAAE,KAAK,IAAI,EAAE;QACxE,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC9D,MAAM,kBAAkB,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACpD,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,iBAAiB,CAAC,GAAG,CAAC;gBAAE,MAAM,qBAAqB,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACnF,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,KAAK,CAClB,QAAgB,EAChB,KAAkB,EAClB,QAAuB,EACvB,WAAoB;IAEpB,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC;IAC9D,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,sEAAsE;IACtE,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE;QACzC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QACzG,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,KAAK,CAAC,QAAQ;YACrB,QAAQ;YACR,KAAK,EAAE,KAAK;YACZ,WAAW,EAAE,MAAM;YACnB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACzG,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAkD,CAAC;IACjF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IACvC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAClE,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAkB,EAClB,IAA4B;IAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;IAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC;IACnD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,GAAG,EAAU,CAAC;IAChE,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC;IAC3D,iEAAiE;IACjE,uEAAuE;IACvE,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,IAAI;QACvB,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,GAAG;QACtC,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,GAAG,CAAC;IAE7C,OAAO,KAAK,EAAE,MAAc,EAAmB,EAAE;QAC/C,MAAM,QAAQ,GAAkB;YAC9B;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EACL,yEAAyE;oBACzE,4EAA4E;oBAC5E,6EAA6E;oBAC7E,gCAAgC;aACnC;YACD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;SAClC,CAAC;QAEF,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;YAChD,oEAAoE;YACpE,sEAAsE;YACtE,qEAAqE;YACrE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;gBAC7C,IAAI,GAAG,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACnC,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,KAAK;wBACL,IAAI,EAAE,OAAO;wBACb,MAAM,EAAE,4BAA4B,GAAG,IAAI,IAAI,CAAC,kBAAkB,cAAc;qBACjF,CAAC,CAAC;oBACH,OAAO,CACL,GAAG,qBAAqB,qBAAqB,GAAG,OAAO,IAAI,CAAC,kBAAkB,oBAAoB;wBAClG,SAAS,KAAK,GAAG,CAAC,uEAAuE;wBACzF,0BAA0B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CACrE,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,GAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,2BAA2B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YAChE,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,wEAAwE;gBACxE,yEAAyE;gBACzE,kEAAkE;gBAClE,oEAAoE;gBACpE,uEAAuE;gBACvE,yCAAyC;gBACzC,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBACrD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;wBAC9B,MAAM,MAAM,GAAG,OAAO,CACpB,IAAI,CAAC,WAAW,EAChB,YAAY,EACZ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAC5C,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,SAAS,CACV,CAAC;wBACF,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,KAAK;4BACL,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE,uBAAuB,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;yBACtE,CAAC,CAAC;wBACH,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC;4BAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACvD,SAAS,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,IAAI,yBAAyB,CAAC,CAAC;oBACpE,CAAC;oBACD,mEAAmE;oBACnE,4CAA4C;oBAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC;oBACnE,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,MAAM;wBACZ,OAAO,EACL,sBAAsB,OAAO,CAAC,MAAM,8BAA8B;4BAClE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uBAAuB,IAAI;4BACpD,kFAAkF;4BAClF,mBAAmB;qBACtB,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpF,OAAO,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,8BAA8B,CAAC;YAC/E,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;YAEtF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,GAA4B,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;gBACrD,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACpC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC7F,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;gBAClE,CAAC;gBACD,MAAM,MAAM,GAAG,OAAO,CACpB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAClB,IAAI,EACJ,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,SAAS,CACV,CAAC;gBACF,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,KAAK;oBACL,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;oBACxB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;iBACzE,CAAC,CAAC;gBACH,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC9E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QACD,OAAO,aAAa,SAAS,2BAA2B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC3F,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,4EAA4E;IAC5E,mEAAmE;IACnE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC5C,CAAC"}
|
package/docs/INDEX.md
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
# UAP Documentation
|
|
2
2
|
|
|
3
|
-
The complete documentation for the **Universal Agent Protocol** (`@miller-tech/uap` v1.
|
|
3
|
+
The complete documentation for the **Universal Agent Protocol** (`@miller-tech/uap` v1.124.1) — the discipline layer that turns a talented-but-unreliable AI coding agent into a dependable member of your software delivery line.
|
|
4
|
+
|
|
5
|
+
> **Reviewing the system?** The reverse-engineered, code-verified reference set lives in
|
|
6
|
+
> [`documentation/`](../documentation/architecture.md): architecture, flows, permissions
|
|
7
|
+
> (incl. trust boundaries and enforcement gaps), variables/secrets, scheduled work, and
|
|
8
|
+
> embedded automation. Start there for an honest map of what's enforced vs. documented.
|
|
4
9
|
|
|
5
10
|
New here? The friendliest way in is the **[Delivery Pipeline tour](guides/DELIVERY_PIPELINE.md)** — it walks the whole factory floor, station by station, showing where agents normally break and what UAP puts in place to catch it. Then grab the [Quickstart](getting-started/QUICKSTART.md).
|
|
6
11
|
|
|
@@ -45,6 +50,7 @@ Full map: **[The UAP Delivery Pipeline](guides/DELIVERY_PIPELINE.md)**.
|
|
|
45
50
|
| [Memory](guides/MEMORY.md) | The 4-tier memory system, write-gates, semantic recall |
|
|
46
51
|
| [MCP Router](guides/MCP_ROUTER.md) | Token-optimizing tool proxy + FTS5 output compression |
|
|
47
52
|
| [Worktree Workflow](guides/WORKTREE_WORKFLOW.md) | Branch-per-feature isolation, auto-PR, enforcement |
|
|
53
|
+
| [Sandbox](guides/SANDBOX.md) | Kernel-level (bubblewrap) write isolation — the boundary that survives `--dangerously-skip-permissions` |
|
|
48
54
|
| [Policies](guides/POLICIES.md) | Executable policy gates that block non-compliant tool calls |
|
|
49
55
|
| [Multi-Model Routing](guides/MULTI_MODEL.md) | Plan → route → execute across 7 model profiles |
|
|
50
56
|
| [Droids & Skills](guides/DROIDS_AND_SKILLS.md) | 38 expert droids, 32 skills, the expert router |
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
# UAP Architecture Overview
|
|
2
2
|
|
|
3
|
-
`v1.
|
|
3
|
+
`v1.124.1` · ~223 TypeScript modules across 18 `src/` subsystems · 200+ test suites
|
|
4
|
+
|
|
5
|
+
> **Code-verified reference:** this narrative overview is the intent-level floor plan. For
|
|
6
|
+
> the reverse-engineered, implementation-accurate map — including trust boundaries,
|
|
7
|
+
> enforcement planes, and where enforcement diverges from the prose — see
|
|
8
|
+
> [`documentation/architecture.md`](../../documentation/architecture.md).
|
|
4
9
|
|
|
5
10
|
> **🏭 Where this fits:** Whole pipeline — this is the factory-floor map. A bare
|
|
6
11
|
> agent walks work from an idea to a shipped change with no stations in between,
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# The Sandbox — kernel-level isolation for skip-permissions sessions
|
|
2
|
+
|
|
3
|
+
> **🏭 Where this fits:** Isolation station. The hook-based worktree/workdir guards
|
|
4
|
+
> (`PreToolUse`) are the everyday boundary, but a harness launched with
|
|
5
|
+
> `--dangerously-skip-permissions` ignores hook denials entirely. The sandbox is the
|
|
6
|
+
> compensating control that *can't* be skipped — because it's enforced by the Linux
|
|
7
|
+
> kernel, not by a hook the agent's flags can wave away.
|
|
8
|
+
> **What it delivers:** an agent that can read your whole machine but can only *write*
|
|
9
|
+
> inside the job's workdir (plus a few caches), so a mis-fired `rm -rf` or an errant Write
|
|
10
|
+
> to `~/.ssh` fails at the kernel with `EROFS`.
|
|
11
|
+
|
|
12
|
+
## What it is
|
|
13
|
+
|
|
14
|
+
`uap sandbox -- <command>` runs `<command>` inside a **bubblewrap (`bwrap`)** mount
|
|
15
|
+
namespace: the whole filesystem is bind-mounted **read-only**, with a small set of
|
|
16
|
+
**writable holes** punched through. This binds Write/Edit tools, `Bash`, and every
|
|
17
|
+
subprocess they spawn equally — nothing that runs inside can write outside the holes.
|
|
18
|
+
|
|
19
|
+
It is *not* a container, *not* a VM, and *not* env-variable restriction. It is a Linux
|
|
20
|
+
namespace, so it has near-zero startup cost and shares the host network (deliberately — the
|
|
21
|
+
agent still needs to reach the local proxy at `127.0.0.1:4000`).
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Typical wiring: sandbox wraps the whole harness invocation
|
|
25
|
+
uap sandbox -- env … claude --dangerously-skip-permissions …
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## What's writable (and nothing else)
|
|
29
|
+
|
|
30
|
+
`src/cli/sandbox.ts:86-105` binds these as read-write; everything else is read-only:
|
|
31
|
+
|
|
32
|
+
- the **resolved workdir** (the job's project directory)
|
|
33
|
+
- `/tmp`, a fresh tmpfs `/var/tmp`, and `/run`
|
|
34
|
+
- `~/.claude`, `~/.cache`, `~/.npm` (if present) — so the harness and package tooling work
|
|
35
|
+
- anything listed in **`UAP_SANDBOX_ALLOW`** (colon-separated extra prefixes)
|
|
36
|
+
|
|
37
|
+
Plus `--unshare-pid --die-with-parent --new-session` so the sandboxed process tree can't
|
|
38
|
+
outlive or escape its parent.
|
|
39
|
+
|
|
40
|
+
**Guardrail:** it refuses to sandbox an over-broad workdir — `$HOME`, `/`, and `/home` are
|
|
41
|
+
rejected (`sandbox.ts:81-83`), because a writable hole that big would defeat the point.
|
|
42
|
+
|
|
43
|
+
**Requires bwrap:** if `bwrap` isn't installed, `uap sandbox` fails with exit 127 rather
|
|
44
|
+
than silently running your command unsandboxed. There is no unsafe fallback.
|
|
45
|
+
|
|
46
|
+
## Why hooks aren't enough
|
|
47
|
+
|
|
48
|
+
The `workdir-scope` and `worktree_required` `PreToolUse` enforcers return an exit-2 deny to
|
|
49
|
+
block an out-of-bounds edit — but a harness run with `--dangerously-skip-permissions`
|
|
50
|
+
**does not consult PreToolUse hooks at all**, so those denials never fire. The sandbox is
|
|
51
|
+
the answer: the kernel doesn't care what flags the harness was launched with. This is the
|
|
52
|
+
one boundary that survives skip-permissions (see also `documentation/permissions.md`, which
|
|
53
|
+
maps every enforcement plane and where each one holds or fails).
|
|
54
|
+
|
|
55
|
+
## Browser MCP tool stripping (why it's here)
|
|
56
|
+
|
|
57
|
+
A subtlety worth knowing: when a session runs under `uap sandbox`, the Chrome extension
|
|
58
|
+
socket that the `mcp__claude-in-chrome__*` browser tools rely on is **not** bound into the
|
|
59
|
+
namespace — so those tools would connect to nothing and the model loops on a dead end.
|
|
60
|
+
|
|
61
|
+
The sandbox handles this without changing the tool list itself. `sandboxCustomHeaders()`
|
|
62
|
+
(`sandbox.ts:30-39`) appends a marker header `X-Uap-Sandbox: 1` to
|
|
63
|
+
`ANTHROPIC_CUSTOM_HEADERS`, which the harness forwards on every request. The **proxy** reads
|
|
64
|
+
it and calls `_strip_sandbox_unreachable_tools` (`anthropic_proxy.py:4393`), removing any
|
|
65
|
+
tool whose name starts with a prefix in `PROXY_SANDBOX_UNREACHABLE_PREFIXES` (default
|
|
66
|
+
`mcp__claude-in-chrome__`). The model never sees the unreachable browser tools and falls
|
|
67
|
+
back to `WebFetch` / local reads instead. (This is the "strip unreachable browser MCP tools
|
|
68
|
+
from sandboxed sessions" change from v1.63.0.)
|
|
69
|
+
|
|
70
|
+
## Escape hatches (operator-only)
|
|
71
|
+
|
|
72
|
+
| Variable | Effect |
|
|
73
|
+
|---|---|
|
|
74
|
+
| `UAP_SANDBOX_OFF=1` | Run the command as-is, no sandbox (for debugging). |
|
|
75
|
+
| `UAP_SANDBOX_ALLOW=/path:/other` | Extra writable prefixes. |
|
|
76
|
+
| `UAP_SANDBOX_WORKDIR=/path` | Override the resolved workdir. |
|
|
77
|
+
| `PROXY_SANDBOX_UNREACHABLE_PREFIXES` | Change which tool prefixes are stripped (proxy side). |
|
|
78
|
+
|
|
79
|
+
Treat all of these as trusted-launch-environment settings — they widen the boundary, and
|
|
80
|
+
the model should never be able to set them for itself.
|
|
81
|
+
|
|
82
|
+
## Limits (be honest about them)
|
|
83
|
+
|
|
84
|
+
- **Network is not restricted.** A sandboxed agent can still make outbound network calls;
|
|
85
|
+
the sandbox is a *filesystem* boundary. Egress control is the proxy's job
|
|
86
|
+
(`ANTHROPIC_PASSTHROUGH_MODELS=__local_only__` for the cloud path).
|
|
87
|
+
- **The writable holes are real writable areas.** Anything under the workdir, `/tmp`, or
|
|
88
|
+
`~/.cache`/`~/.claude`/`~/.npm` can be modified — including caches that persist across
|
|
89
|
+
runs.
|
|
90
|
+
- **It only helps if you actually launch under it.** The workdir boundary is only real for
|
|
91
|
+
sessions started with `uap sandbox`; a plain skip-permissions session has no filesystem
|
|
92
|
+
boundary at all.
|
|
93
|
+
|
|
94
|
+
## Related
|
|
95
|
+
|
|
96
|
+
- `documentation/permissions.md` — all enforcement planes, the resource matrix, and the
|
|
97
|
+
findings (including why the hook plane doesn't survive skip-permissions)
|
|
98
|
+
- [Worktree Workflow](WORKTREE_WORKFLOW.md) — the everyday (hook-based) isolation boundary
|
|
99
|
+
- [Policies](POLICIES.md) — the PreToolUse gate the sandbox backstops
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@miller-tech/uap",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.128.0",
|
|
4
4
|
"description": "Autonomous AI agent memory system with CLAUDE.md protocol enforcement",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
"dev": "tsc --watch",
|
|
21
21
|
"start": "node dist/bin/cli.js",
|
|
22
22
|
"test": "vitest",
|
|
23
|
+
"test:ci": "vitest run",
|
|
24
|
+
"test:enforcers": "python3 -m unittest tools.agents.tests.test_enforcement_self_protect tools.agents.tests.test_workdir_scope_enforcer tools.agents.tests.test_path_containment tools.agents.tests.test_path_normalizer_hardened tools.agents.tests.test_sandbox_tool_strip tools.agents.tests.test_proxy_env_loader tools.agents.tests.test_stream_required_tool tools.agents.tests.test_tool_call_wrapper_profiles tools.agents.tests.test_tool_convert_cache",
|
|
23
25
|
"test:coverage": "vitest --coverage",
|
|
24
26
|
"bench": "vitest --config vitest.bench.config.ts",
|
|
25
27
|
"lint": "eslint src --ext .ts",
|
|
Binary file
|
|
@@ -42,18 +42,73 @@ ARGS="$(printf '%s' "$PAYLOAD" | python3 -c 'import json,sys; d=json.load(sys.st
|
|
|
42
42
|
|
|
43
43
|
[[ -z "$TOOL" ]] && exit 0
|
|
44
44
|
|
|
45
|
+
# FAIL-CLOSED for the enforcement control surface. The gate is fail-SOFT by
|
|
46
|
+
# design (a broken/absent enforcer must not wedge ALL work) — but that same
|
|
47
|
+
# fail-open makes anything that BREAKS the enforcer a silent bypass of the
|
|
48
|
+
# self-protect control. So: if THIS operation touches the enforcement surface
|
|
49
|
+
# (policy DB/enforcers, .uap.json, proxy env, hook scripts) or sets a
|
|
50
|
+
# bypass/relax flag, the gate fails CLOSED (exit 2) whenever the self-protect
|
|
51
|
+
# enforcer cannot actually run and make the call. Normal ops keep failing open.
|
|
52
|
+
SEC_SENSITIVE="$(printf '%s' "$ARGS" | TOOL="$TOOL" python3 -c '
|
|
53
|
+
import json, os, re, sys
|
|
54
|
+
try: a = json.loads(sys.stdin.read() or "{}")
|
|
55
|
+
except Exception: a = {}
|
|
56
|
+
markers = ("/.policy-tools/", "/src/policies/", "/policies/", "/.uap.json",
|
|
57
|
+
".uap.json", "/.uap/", "anthropic-proxy.env", "uap-policy-gate.sh",
|
|
58
|
+
"uap-reactor-prompt.sh", "pre-tool-use")
|
|
59
|
+
target = a.get("file_path") or a.get("path") or a.get("target") or ""
|
|
60
|
+
cmd = a.get("command") or ""
|
|
61
|
+
low = ("/" + str(target)).lower()
|
|
62
|
+
hit = any(m in low for m in markers)
|
|
63
|
+
bypass = re.search(
|
|
64
|
+
r"UAP_DELIVER_BYPASS\s*=\s*[\x27\"]?1|UAP_ENFORCE_DELIVERY\s*=\s*[\x27\"]?(advisory|off|0|false|no)"
|
|
65
|
+
r"|UAP_SELF_PROTECT_OFF\s*=\s*[\x27\"]?1|UAP_NO_WORKTREE\s*=\s*[\x27\"]?1|UAP_WORKDIR_SCOPE_OFF\s*=\s*[\x27\"]?1",
|
|
66
|
+
cmd, re.I)
|
|
67
|
+
print("1" if (hit or bypass) else "0")
|
|
68
|
+
' 2>/dev/null || echo 1)"
|
|
69
|
+
|
|
70
|
+
# Operator out-of-band override disables the fail-closed guard too.
|
|
71
|
+
[[ "${UAP_SELF_PROTECT_OFF:-}" == "1" ]] && SEC_SENSITIVE=0
|
|
72
|
+
|
|
73
|
+
fail_closed() {
|
|
74
|
+
echo "[UAP policy gate] FAIL-CLOSED: this operation touches the enforcement control surface but the self-protect enforcer could not run (${1:-machinery unavailable}). Blocked so a broken/absent gate can't become a bypass. (Operator override: UAP_SELF_PROTECT_OFF=1.)" >&2
|
|
75
|
+
exit 2
|
|
76
|
+
}
|
|
77
|
+
|
|
45
78
|
DB="$MAIN_ROOT/agents/data/memory/policies.db"
|
|
46
|
-
[[ ! -f "$DB" ]]
|
|
79
|
+
if [[ ! -f "$DB" ]]; then
|
|
80
|
+
[[ "$SEC_SENSITIVE" == "1" ]] && fail_closed "policies.db not found"
|
|
81
|
+
exit 0
|
|
82
|
+
fi
|
|
83
|
+
if ! command -v sqlite3 >/dev/null 2>&1; then
|
|
84
|
+
[[ "$SEC_SENSITIVE" == "1" ]] && fail_closed "sqlite3 not on PATH"
|
|
85
|
+
exit 0
|
|
86
|
+
fi
|
|
87
|
+
|
|
88
|
+
# Did the self-protect enforcer actually run and make a decision this call?
|
|
89
|
+
sec_enforcer_ran=0
|
|
47
90
|
|
|
48
91
|
# Iterate active policies with attached executable tools
|
|
49
92
|
while IFS='|' read -r pid pname tool; do
|
|
50
93
|
[[ -z "$pid" ]] && continue
|
|
51
94
|
enforcer="$MAIN_ROOT/.policy-tools/${pid}_${tool}.py"
|
|
52
|
-
[[ ! -f "$enforcer" ]]
|
|
95
|
+
if [[ ! -f "$enforcer" ]]; then
|
|
96
|
+
# A missing self-protect enforcer on a sensitive op = fail closed.
|
|
97
|
+
[[ "$SEC_SENSITIVE" == "1" && "$tool" == "enforcement_self_protect" ]] && fail_closed "enforcer file missing"
|
|
98
|
+
continue
|
|
99
|
+
fi
|
|
53
100
|
out="$(python3 "$enforcer" --operation "$TOOL" --args "$ARGS" 2>/dev/null || true)"
|
|
54
101
|
allowed="$(printf '%s' "$out" | python3 -c 'import json,sys;
|
|
55
102
|
try: d=json.loads(sys.stdin.read()); print("1" if d.get("allowed",True) else "0")
|
|
56
|
-
except: print("
|
|
103
|
+
except: print("2")' 2>/dev/null || echo 2)"
|
|
104
|
+
# allowed=2 => enforcer errored / emitted unparseable output. For a sensitive
|
|
105
|
+
# op via the self-protect enforcer, that error must NOT default to allow.
|
|
106
|
+
if [[ "$tool" == "enforcement_self_protect" ]]; then
|
|
107
|
+
[[ "$SEC_SENSITIVE" == "1" && "$allowed" == "2" ]] && fail_closed "enforcer errored"
|
|
108
|
+
sec_enforcer_ran=1
|
|
109
|
+
fi
|
|
110
|
+
# For all other enforcers, an error still fails open (unchanged behavior).
|
|
111
|
+
[[ "$allowed" == "2" ]] && allowed=1
|
|
57
112
|
if [[ "$allowed" == "0" ]]; then
|
|
58
113
|
# R1: consume the enforcer's route:deliver signal (log intent, opt-in
|
|
59
114
|
# background auto-route to `uap deliver`). Falls back to the plain reason if
|
|
@@ -73,4 +128,8 @@ except: print("")' 2>/dev/null || echo "")"
|
|
|
73
128
|
fi
|
|
74
129
|
done < <(sqlite3 "$DB" "SELECT p.id, p.name, t.toolName FROM policies p JOIN executable_tools t ON t.policyId=p.id WHERE p.isActive=1;")
|
|
75
130
|
|
|
131
|
+
# A sensitive op that no self-protect enforcer ever evaluated = the control
|
|
132
|
+
# surface is unguarded (self-protect not registered/active). Fail closed.
|
|
133
|
+
[[ "$SEC_SENSITIVE" == "1" && "$sec_enforcer_ran" == "0" ]] && fail_closed "self-protect not registered/active"
|
|
134
|
+
|
|
76
135
|
exit 0
|
|
Binary file
|
|
@@ -155,7 +155,16 @@ ANTHROPIC_API_BASE = os.environ.get(
|
|
|
155
155
|
ANTHROPIC_API_KEY = os.environ.get("ANTHROPIC_API_KEY", "")
|
|
156
156
|
ANTHROPIC_PASSTHROUGH_MODELS = os.environ.get("ANTHROPIC_PASSTHROUGH_MODELS", "")
|
|
157
157
|
PROXY_PORT = int(os.environ.get("PROXY_PORT", "4000"))
|
|
158
|
-
|
|
158
|
+
# Bind loopback by DEFAULT (security audit: an unauthenticated 0.0.0.0 listener
|
|
159
|
+
# let any LAN host drive the local model and reach cloud passthrough). To run
|
|
160
|
+
# the proxy as a shared LAN service, set PROXY_HOST=0.0.0.0 AND set
|
|
161
|
+
# PROXY_AUTH_TOKEN so the exposure is credential-gated.
|
|
162
|
+
PROXY_HOST = os.environ.get("PROXY_HOST", "127.0.0.1")
|
|
163
|
+
# Optional shared secret. When set, every request to a model route must present
|
|
164
|
+
# it as `Authorization: Bearer <token>` or `X-Uap-Proxy-Token: <token>`. Unset
|
|
165
|
+
# (default) = no check, which is safe only because the default bind is loopback.
|
|
166
|
+
# The health probe stays open so liveness checks don't need the secret.
|
|
167
|
+
PROXY_AUTH_TOKEN = os.environ.get("PROXY_AUTH_TOKEN", "").strip()
|
|
159
168
|
PROXY_LOG_LEVEL = os.environ.get("PROXY_LOG_LEVEL", "INFO").upper()
|
|
160
169
|
PROXY_READ_TIMEOUT = float(os.environ.get("PROXY_READ_TIMEOUT", "180"))
|
|
161
170
|
PROXY_GENERATION_TIMEOUT = float(os.environ.get("PROXY_GENERATION_TIMEOUT", "300"))
|
|
@@ -3051,6 +3060,46 @@ app = FastAPI(
|
|
|
3051
3060
|
lifespan=lifespan,
|
|
3052
3061
|
)
|
|
3053
3062
|
|
|
3063
|
+
|
|
3064
|
+
# Open paths that never require the shared secret (liveness / discovery), so a
|
|
3065
|
+
# LAN health check or an SDK model-list probe works without the token.
|
|
3066
|
+
_PROXY_AUTH_OPEN_PATHS = frozenset({"/health", "/", "/v1/models"})
|
|
3067
|
+
|
|
3068
|
+
|
|
3069
|
+
@app.middleware("http")
|
|
3070
|
+
async def _shared_secret_auth(request: Request, call_next):
|
|
3071
|
+
"""Gate every request behind PROXY_AUTH_TOKEN when it is set.
|
|
3072
|
+
|
|
3073
|
+
No-op when the token is unset (the default; safe only because the default
|
|
3074
|
+
bind is loopback). When set — the intended posture for a shared LAN service
|
|
3075
|
+
(PROXY_HOST=0.0.0.0) — a request must present the token as
|
|
3076
|
+
`Authorization: Bearer <token>` or `X-Uap-Proxy-Token: <token>`; otherwise
|
|
3077
|
+
401. Uses a constant-time compare to avoid a timing oracle.
|
|
3078
|
+
"""
|
|
3079
|
+
if PROXY_AUTH_TOKEN and request.url.path not in _PROXY_AUTH_OPEN_PATHS and request.method != "OPTIONS":
|
|
3080
|
+
provided = request.headers.get("x-uap-proxy-token", "")
|
|
3081
|
+
if not provided:
|
|
3082
|
+
auth = request.headers.get("authorization", "")
|
|
3083
|
+
if auth.lower().startswith("bearer "):
|
|
3084
|
+
provided = auth[7:].strip()
|
|
3085
|
+
import hmac as _hmac
|
|
3086
|
+
|
|
3087
|
+
if not (provided and _hmac.compare_digest(provided, PROXY_AUTH_TOKEN)):
|
|
3088
|
+
return Response(
|
|
3089
|
+
content=json.dumps(
|
|
3090
|
+
{
|
|
3091
|
+
"type": "error",
|
|
3092
|
+
"error": {
|
|
3093
|
+
"type": "authentication_error",
|
|
3094
|
+
"message": "missing or invalid proxy token (set X-Uap-Proxy-Token or Authorization: Bearer)",
|
|
3095
|
+
},
|
|
3096
|
+
}
|
|
3097
|
+
),
|
|
3098
|
+
status_code=401,
|
|
3099
|
+
media_type="application/json",
|
|
3100
|
+
)
|
|
3101
|
+
return await call_next(request)
|
|
3102
|
+
|
|
3054
3103
|
# NOTE: Concurrency control is enforced by _acquire_upstream_slot() inside
|
|
3055
3104
|
# _post_with_retry (the single point where we hit llama.cpp). An earlier
|
|
3056
3105
|
# implementation also added an HTTP middleware that acquired the same
|
package/web/dashboard.html
CHANGED
|
@@ -623,6 +623,12 @@
|
|
|
623
623
|
<script>
|
|
624
624
|
const WS_URL = `ws://${location.host}`;
|
|
625
625
|
const API_URL = `http://${location.host}`;
|
|
626
|
+
// Per-session token for policy mutations (security audit D1). The server
|
|
627
|
+
// injects it into this page (same-origin only); it is sent as a custom
|
|
628
|
+
// header so a cross-site request can't forge it. Falls back to '' when the
|
|
629
|
+
// page is opened without the server substitution (mutations then 401).
|
|
630
|
+
const DASHBOARD_TOKEN = '__UAP_DASHBOARD_TOKEN__'.startsWith('__UAP') ? '' : '__UAP_DASHBOARD_TOKEN__';
|
|
631
|
+
const MUTATION_HEADERS = { 'X-Uap-Dashboard-Token': DASHBOARD_TOKEN };
|
|
626
632
|
let ws = null;
|
|
627
633
|
let reconnectTimer = null;
|
|
628
634
|
let reconnectDelay = 1000;
|
|
@@ -1166,9 +1172,9 @@
|
|
|
1166
1172
|
}
|
|
1167
1173
|
|
|
1168
1174
|
// ── API Actions ──
|
|
1169
|
-
async function togglePolicy(id) { try { const r=await fetch(`${API_URL}/api/policy/${id}/toggle`,{method:'POST'}); if(!r.ok)throw new Error(); const d=await r.json(); showToast(`Policy ${d.isActive?'enabled':'disabled'}`,'success'); } catch { showToast('Failed to toggle policy','error'); } }
|
|
1170
|
-
async function setStage(id,stage) { try { const r=await fetch(`${API_URL}/api/policy/${id}/stage`,{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({stage})}); if(!r.ok)throw new Error(); showToast(`Stage: ${stage}`,'success'); } catch { showToast('Failed to set stage','error'); } }
|
|
1171
|
-
async function setLevel(id,level) { try { const r=await fetch(`${API_URL}/api/policy/${id}/level`,{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({level})}); if(!r.ok)throw new Error(); showToast(`Level: ${level}`,'success'); } catch { showToast('Failed to set level','error'); } }
|
|
1175
|
+
async function togglePolicy(id) { try { const r=await fetch(`${API_URL}/api/policy/${id}/toggle`,{method:'POST',headers:MUTATION_HEADERS}); if(!r.ok)throw new Error(); const d=await r.json(); showToast(`Policy ${d.isActive?'enabled':'disabled'}`,'success'); } catch { showToast('Failed to toggle policy','error'); } }
|
|
1176
|
+
async function setStage(id,stage) { try { const r=await fetch(`${API_URL}/api/policy/${id}/stage`,{method:'POST',headers:{'Content-Type':'application/json',...MUTATION_HEADERS},body:JSON.stringify({stage})}); if(!r.ok)throw new Error(); showToast(`Stage: ${stage}`,'success'); } catch { showToast('Failed to set stage','error'); } }
|
|
1177
|
+
async function setLevel(id,level) { try { const r=await fetch(`${API_URL}/api/policy/${id}/level`,{method:'POST',headers:{'Content-Type':'application/json',...MUTATION_HEADERS},body:JSON.stringify({level})}); if(!r.ok)throw new Error(); showToast(`Level: ${level}`,'success'); } catch { showToast('Failed to set level','error'); } }
|
|
1172
1178
|
|
|
1173
1179
|
// ── Kanban ──
|
|
1174
1180
|
const TYPE_ICONS = {task:'\u25C6',bug:'\uD83D\uDC1B',feature:'\u2728',epic:'\uD83C\uDFAF',chore:'\uD83D\uDD27',story:'\uD83D\uDCD6'};
|