aicodeman 1.16.0 → 1.16.2
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/dist/ai-checker-base.d.ts +12 -0
- package/dist/ai-checker-base.d.ts.map +1 -1
- package/dist/ai-checker-base.js +4 -2
- package/dist/ai-checker-base.js.map +1 -1
- package/dist/git-clone.d.ts +220 -0
- package/dist/git-clone.d.ts.map +1 -0
- package/dist/git-clone.js +717 -0
- package/dist/git-clone.js.map +1 -0
- package/dist/hooks-config.d.ts +15 -0
- package/dist/hooks-config.d.ts.map +1 -1
- package/dist/hooks-config.js +67 -21
- package/dist/hooks-config.js.map +1 -1
- package/dist/intent-store.d.ts +73 -0
- package/dist/intent-store.d.ts.map +1 -0
- package/dist/intent-store.js +208 -0
- package/dist/intent-store.js.map +1 -0
- package/dist/readmymind-collectors.d.ts +42 -0
- package/dist/readmymind-collectors.d.ts.map +1 -0
- package/dist/readmymind-collectors.js +170 -0
- package/dist/readmymind-collectors.js.map +1 -0
- package/dist/readmymind-context.d.ts +106 -0
- package/dist/readmymind-context.d.ts.map +1 -0
- package/dist/readmymind-context.js +241 -0
- package/dist/readmymind-context.js.map +1 -0
- package/dist/readmymind-predictor.d.ts +60 -0
- package/dist/readmymind-predictor.d.ts.map +1 -0
- package/dist/readmymind-predictor.js +208 -0
- package/dist/readmymind-predictor.js.map +1 -0
- package/dist/session.d.ts +5 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +8 -2
- package/dist/session.js.map +1 -1
- package/dist/transcript-watcher.d.ts +7 -0
- package/dist/transcript-watcher.d.ts.map +1 -1
- package/dist/transcript-watcher.js +23 -0
- package/dist/transcript-watcher.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/intent.d.ts +30 -0
- package/dist/types/intent.d.ts.map +1 -0
- package/dist/types/intent.js +9 -0
- package/dist/types/intent.js.map +1 -0
- package/dist/web/ports/config-port.d.ts +8 -0
- package/dist/web/ports/config-port.d.ts.map +1 -1
- package/dist/web/public/admin-ui.js.gz +0 -0
- package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
- package/dist/web/public/{app.c8e6e44e.js → app.4d006245.js} +1 -1
- package/dist/web/public/{app.c8e6e44e.js.br → app.4d006245.js.br} +0 -0
- package/dist/web/public/{app.c8e6e44e.js.gz → app.4d006245.js.gz} +0 -0
- package/dist/web/public/approvals-ui.js.gz +0 -0
- package/dist/web/public/constants.7d0f4047.js.gz +0 -0
- package/dist/web/public/cron-ui.js.gz +0 -0
- package/dist/web/public/entrance-animations.js.gz +0 -0
- package/dist/web/public/home-sessions.js +335 -0
- package/dist/web/public/home-sessions.js.br +0 -0
- package/dist/web/public/home-sessions.js.gz +0 -0
- package/dist/web/public/i18n.ef50083f.js +1 -0
- package/dist/web/public/i18n.ef50083f.js.br +0 -0
- package/dist/web/public/i18n.ef50083f.js.gz +0 -0
- package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
- package/dist/web/public/index.html +101 -9
- package/dist/web/public/index.html.br +0 -0
- package/dist/web/public/index.html.gz +0 -0
- package/dist/web/public/input-cjk.63794d0b.js.gz +0 -0
- package/dist/web/public/{keyboard-accessory.d6c3ad11.js → keyboard-accessory.1f35b482.js} +24 -5
- package/dist/web/public/keyboard-accessory.1f35b482.js.br +0 -0
- package/dist/web/public/keyboard-accessory.1f35b482.js.gz +0 -0
- package/dist/web/public/mobile-handlers.32fdd57f.js.gz +0 -0
- package/dist/web/public/mobile-overview.js.gz +0 -0
- package/dist/web/public/mobile.5d8c896c.css +1 -0
- package/dist/web/public/mobile.5d8c896c.css.br +0 -0
- package/dist/web/public/mobile.5d8c896c.css.gz +0 -0
- package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
- package/dist/web/public/orchestrator-panel.js.gz +0 -0
- package/dist/web/public/panels-ui.3df9cd95.js.gz +0 -0
- package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
- package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
- package/dist/web/public/readmymind-ui.js +135 -0
- package/dist/web/public/readmymind-ui.js.br +0 -0
- package/dist/web/public/readmymind-ui.js.gz +0 -0
- package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
- package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
- package/dist/web/public/{session-ui.1356a4f4.js → session-ui.f4fed187.js} +2 -2
- package/dist/web/public/session-ui.f4fed187.js.br +0 -0
- package/dist/web/public/session-ui.f4fed187.js.gz +0 -0
- package/dist/web/public/settings-ui.1c15649c.js +67 -0
- package/dist/web/public/settings-ui.1c15649c.js.br +0 -0
- package/dist/web/public/settings-ui.1c15649c.js.gz +0 -0
- package/dist/web/public/styles.0024c22e.css +1 -0
- package/dist/web/public/styles.0024c22e.css.br +0 -0
- package/dist/web/public/styles.0024c22e.css.gz +0 -0
- package/dist/web/public/subagent-windows.4cc8b005.js.gz +0 -0
- package/dist/web/public/sw.js.gz +0 -0
- package/dist/web/public/{terminal-ui.430395be.js → terminal-ui.e7c5d233.js} +1 -1
- package/dist/web/public/terminal-ui.e7c5d233.js.br +0 -0
- package/dist/web/public/terminal-ui.e7c5d233.js.gz +0 -0
- package/dist/web/public/ultracode-panel.js.gz +0 -0
- package/dist/web/public/ultracode-windows.js.gz +0 -0
- package/dist/web/public/upload.html.gz +0 -0
- package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
- package/dist/web/public/vendor/marked.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-predictive-echo.6cec0fba.js.gz +0 -0
- package/dist/web/public/vendor/xterm-zerolag-input.137ad9f0.js.gz +0 -0
- package/dist/web/public/vendor/xterm.css.gz +0 -0
- package/dist/web/public/vendor/xterm.min.js.gz +0 -0
- package/dist/web/public/voice-input.e5461859.js.gz +0 -0
- package/dist/web/public/webview-tabs.js.gz +0 -0
- package/dist/web/routes/case-routes.d.ts +3 -1
- package/dist/web/routes/case-routes.d.ts.map +1 -1
- package/dist/web/routes/case-routes.js +195 -4
- package/dist/web/routes/case-routes.js.map +1 -1
- package/dist/web/routes/index.d.ts +1 -0
- package/dist/web/routes/index.d.ts.map +1 -1
- package/dist/web/routes/index.js +1 -0
- package/dist/web/routes/index.js.map +1 -1
- package/dist/web/routes/readmymind-routes.d.ts +37 -0
- package/dist/web/routes/readmymind-routes.d.ts.map +1 -0
- package/dist/web/routes/readmymind-routes.js +127 -0
- package/dist/web/routes/readmymind-routes.js.map +1 -0
- package/dist/web/schemas.d.ts +38 -0
- package/dist/web/schemas.d.ts.map +1 -1
- package/dist/web/schemas.js +67 -1
- package/dist/web/schemas.js.map +1 -1
- package/dist/web/server.d.ts +14 -0
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +46 -3
- package/dist/web/server.js.map +1 -1
- package/package.json +1 -1
- package/skills/codeman/SKILL.md +34 -0
- package/skills/codeman/reference/endpoints.md +4 -0
- package/dist/web/public/i18n.75cf29d4.js +0 -1
- package/dist/web/public/i18n.75cf29d4.js.br +0 -0
- package/dist/web/public/i18n.75cf29d4.js.gz +0 -0
- package/dist/web/public/keyboard-accessory.d6c3ad11.js.br +0 -0
- package/dist/web/public/keyboard-accessory.d6c3ad11.js.gz +0 -0
- package/dist/web/public/mobile.8a2651ba.css +0 -1
- package/dist/web/public/mobile.8a2651ba.css.br +0 -0
- package/dist/web/public/mobile.8a2651ba.css.gz +0 -0
- package/dist/web/public/session-ui.1356a4f4.js.br +0 -0
- package/dist/web/public/session-ui.1356a4f4.js.gz +0 -0
- package/dist/web/public/settings-ui.20f9c723.js +0 -67
- package/dist/web/public/settings-ui.20f9c723.js.br +0 -0
- package/dist/web/public/settings-ui.20f9c723.js.gz +0 -0
- package/dist/web/public/styles.e33fc754.css +0 -1
- package/dist/web/public/styles.e33fc754.css.br +0 -0
- package/dist/web/public/styles.e33fc754.css.gz +0 -0
- package/dist/web/public/terminal-ui.430395be.js.br +0 -0
- package/dist/web/public/terminal-ui.430395be.js.gz +0 -0
|
@@ -23,6 +23,18 @@
|
|
|
23
23
|
* @module ai-checker-base
|
|
24
24
|
*/
|
|
25
25
|
import { EventEmitter } from 'node:events';
|
|
26
|
+
/**
|
|
27
|
+
* Validates that a model name is safe for shell use.
|
|
28
|
+
* Model names should only contain alphanumeric characters, hyphens, underscores, and dots.
|
|
29
|
+
* Exported for the Read My Mind predictor, which reuses these spawn mechanics standalone.
|
|
30
|
+
*/
|
|
31
|
+
export declare function isValidModelName(model: string): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Validates that a mux session name is safe for shell use.
|
|
34
|
+
* Names should only contain alphanumeric characters, hyphens, and underscores.
|
|
35
|
+
* Exported for the Read My Mind predictor (see isValidModelName).
|
|
36
|
+
*/
|
|
37
|
+
export declare function isValidMuxName(muxName: string): boolean;
|
|
26
38
|
/** Base configuration shared by all AI checkers */
|
|
27
39
|
export interface AiCheckerConfigBase {
|
|
28
40
|
/** Whether the checker is enabled */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-checker-base.d.ts","sourceRoot":"","sources":["../src/ai-checker-base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-checker-base.d.ts","sourceRoot":"","sources":["../src/ai-checker-base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKvD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGvD;AAID,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAClC,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,8CAA8C;AAC9C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AAEvF,gDAAgD;AAChD,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,MAAM;IACnD,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,+CAA+C;AAC/C,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM;IAClD,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AASD;;;;;;;;GAQG;AACH,8BAAsB,aAAa,CACjC,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,mBAAmB,EAC7B,CAAC,SAAS,mBAAmB,CAAC,CAAC,CAAC,EAChC,CAAC,SAAS,kBAAkB,CAAC,CAAC,CAAC,CAC/B,SAAQ,YAAY;IACpB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACpB,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAG5B,SAAS,CAAC,OAAO,EAAE,eAAe,CAAW;IAC7C,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAQ;IACvC,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9C,SAAS,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpD,SAAS,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC/C,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAQ;IACtD,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAK;IACxC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAK;IAClC,SAAS,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG/C,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7C,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9C,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChD,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChD,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAQ;IACvD,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,cAAc,EAAE,MAAM,CAAK;IACrC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAS;IAC1C,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAQ;IAI5D,8DAA8D;IAC9D,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAElD,yDAAyD;IACzD,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE/C,sDAAsD;IACtD,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEnD,wDAAwD;IACxD,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE9C,4EAA4E;IAC5E,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAIrD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAE9D;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAEzF;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC;IAE1C;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC;IAE1C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;IAE9E;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;gBAEzE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,GAAE,OAAO,CAAC,CAAC,CAAM;IAQxE,6BAA6B;IAC7B,IAAI,MAAM,IAAI,eAAe,CAE5B;IAED,6CAA6C;IAC7C,QAAQ,IAAI,CAAC;IAab,0CAA0C;IAC1C,YAAY,IAAI,OAAO;IAKvB,wCAAwC;IACxC,sBAAsB,IAAI,MAAM;IAKhC;;;;;;OAMG;IACG,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAwD/C;;;OAGG;IACH,MAAM,IAAI,IAAI;IAmBd,sCAAsC;IACtC,KAAK,IAAI,IAAI;IAUb,sCAAsC;IACtC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAYtC,yBAAyB;IACzB,SAAS,IAAI,CAAC;YAMA,QAAQ;IAoGtB,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,YAAY;IA2DpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,GAAG;CAGZ"}
|
package/dist/ai-checker-base.js
CHANGED
|
@@ -34,8 +34,9 @@ import { getErrorMessage } from './types.js';
|
|
|
34
34
|
/**
|
|
35
35
|
* Validates that a model name is safe for shell use.
|
|
36
36
|
* Model names should only contain alphanumeric characters, hyphens, underscores, and dots.
|
|
37
|
+
* Exported for the Read My Mind predictor, which reuses these spawn mechanics standalone.
|
|
37
38
|
*/
|
|
38
|
-
function isValidModelName(model) {
|
|
39
|
+
export function isValidModelName(model) {
|
|
39
40
|
if (!model || typeof model !== 'string')
|
|
40
41
|
return false;
|
|
41
42
|
// Allow: alphanumeric, hyphens, underscores, dots, slashes (for model paths like claude/opus-4.5)
|
|
@@ -45,8 +46,9 @@ function isValidModelName(model) {
|
|
|
45
46
|
/**
|
|
46
47
|
* Validates that a mux session name is safe for shell use.
|
|
47
48
|
* Names should only contain alphanumeric characters, hyphens, and underscores.
|
|
49
|
+
* Exported for the Read My Mind predictor (see isValidModelName).
|
|
48
50
|
*/
|
|
49
|
-
function isValidMuxName(muxName) {
|
|
51
|
+
export function isValidMuxName(muxName) {
|
|
50
52
|
if (!muxName || typeof muxName !== 'string')
|
|
51
53
|
return false;
|
|
52
54
|
return /^[a-zA-Z0-9_-]+$/.test(muxName) && muxName.length <= 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-checker-base.js","sourceRoot":"","sources":["../src/ai-checker-base.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-checker-base.js","sourceRoot":"","sources":["../src/ai-checker-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Clone a Git repository into a case (issue #236).
|
|
3
|
+
*
|
|
4
|
+
* Split deliberately into a PURE half (URL parsing, argv/env construction,
|
|
5
|
+
* `ls-remote` output parsing, git-stderr classification) and a thin IO half
|
|
6
|
+
* (`probeGitRemote`, `cloneRepository`). The pure half is where every security
|
|
7
|
+
* decision lives, so it is unit-testable without spawning anything.
|
|
8
|
+
*
|
|
9
|
+
* ## Why the URL is parsed rather than passed through
|
|
10
|
+
*
|
|
11
|
+
* `git clone` accepts far more than "a URL". Two families are dangerous:
|
|
12
|
+
*
|
|
13
|
+
* - **Transport helpers** — `ext::sh -c <cmd>` makes git execute an arbitrary
|
|
14
|
+
* command as the transport. `fd::`, and any other `<name>::<payload>` form,
|
|
15
|
+
* dispatch to a `git-remote-<name>` helper. A clone endpoint that forwards
|
|
16
|
+
* these is remote code execution, so `::` forms are rejected outright.
|
|
17
|
+
* - **Option-shaped operands** — a repository starting with `-` is read by git
|
|
18
|
+
* as a flag (`--upload-pack=...`). We reject leading `-` AND pass `--` before
|
|
19
|
+
* the operands, because either alone is one typo away from being a hole.
|
|
20
|
+
*
|
|
21
|
+
* Everything is spawned with an argv array and NEVER through a shell, so quoting
|
|
22
|
+
* is not part of the threat model here (unlike the ssh path in remote-hosts.ts,
|
|
23
|
+
* which genuinely does build a shell line and must `shellescape`).
|
|
24
|
+
*
|
|
25
|
+
* ## Credentials are deliberately absent
|
|
26
|
+
*
|
|
27
|
+
* Codeman collects no tokens, and a URL carrying `user:password@` is rejected —
|
|
28
|
+
* it would end up in error text, logs and (via the case name suggestion) the UI.
|
|
29
|
+
* `GIT_TERMINAL_PROMPT=0` plus the askpass/BatchMode env below guarantees a
|
|
30
|
+
* private repo fails FAST instead of hanging the open HTTP request on an
|
|
31
|
+
* invisible username prompt. If the host's own git config (a credential helper,
|
|
32
|
+
* an ssh agent, `insteadOf` rules) happens to authenticate, that is the user's
|
|
33
|
+
* existing setup working — Codeman neither supplies nor stores anything.
|
|
34
|
+
*
|
|
35
|
+
* ## Bounded by construction
|
|
36
|
+
*
|
|
37
|
+
* Every git spawn has a timeout, a hard kill escalation, captured-output caps,
|
|
38
|
+
* and shares a small global concurrency pool (same reasoning as
|
|
39
|
+
* `document-conversion-limiter.ts`: N simultaneous clones of large repos is a
|
|
40
|
+
* localhost resource-exhaustion vector). The pool's waiter queue is itself
|
|
41
|
+
* bounded (overflow answers BUSY immediately), and time spent queued counts
|
|
42
|
+
* against the operation's own deadline, so a caller's timeout bounds the whole
|
|
43
|
+
* call rather than starting when a slot happens to free up. Cloning is
|
|
44
|
+
* otherwise unbounded in disk and time, which is exactly why the caller must
|
|
45
|
+
* treat the timeout as normal.
|
|
46
|
+
*
|
|
47
|
+
* @module git-clone
|
|
48
|
+
*/
|
|
49
|
+
/**
|
|
50
|
+
* Wall-clock budget for one `git clone`. Deliberately generous (a real repo over
|
|
51
|
+
* a slow link legitimately takes minutes) but always finite: the HTTP request is
|
|
52
|
+
* held open for the duration, so an unbounded clone would be an unbounded
|
|
53
|
+
* request. Override with CODEMAN_GIT_CLONE_TIMEOUT_MS.
|
|
54
|
+
*/
|
|
55
|
+
export declare const GIT_CLONE_TIMEOUT_MS: number;
|
|
56
|
+
/**
|
|
57
|
+
* Budget for the `ls-remote` preflight. Short on purpose — it exists to answer
|
|
58
|
+
* "can this be cloned without credentials?" while the user is still typing.
|
|
59
|
+
* Override with CODEMAN_GIT_LS_REMOTE_TIMEOUT_MS.
|
|
60
|
+
*/
|
|
61
|
+
export declare const GIT_LS_REMOTE_TIMEOUT_MS: number;
|
|
62
|
+
/** Transports Codeman is willing to hand to git. */
|
|
63
|
+
export type GitTransport = 'https' | 'http' | 'ssh' | 'git' | 'local';
|
|
64
|
+
export type GitUrlRejectionCode = 'EMPTY' | 'TOO_LONG' | 'CONTROL_CHARS' | 'OPTION_LIKE' | 'TRANSPORT_HELPER' | 'UNSUPPORTED_TRANSPORT' | 'CREDENTIALS_IN_URL' | 'NO_REPOSITORY_NAME' | 'BAD_SYNTAX';
|
|
65
|
+
/** A repository operand Codeman is willing to clone. */
|
|
66
|
+
export interface GitUrlAccepted {
|
|
67
|
+
cloneable: true;
|
|
68
|
+
/** The exact operand handed to git, after `--`. Never shell-interpolated. */
|
|
69
|
+
repository: string;
|
|
70
|
+
transport: GitTransport;
|
|
71
|
+
/** Hostname (empty for `local`). */
|
|
72
|
+
host: string;
|
|
73
|
+
/** Owner/org path prefix, `/`-joined; empty when the URL has none. */
|
|
74
|
+
owner: string;
|
|
75
|
+
/** Final path segment with any `.git` suffix removed. */
|
|
76
|
+
repo: string;
|
|
77
|
+
/** Display label for the host, e.g. `GitHub`. Falls back to the bare host. */
|
|
78
|
+
provider: string;
|
|
79
|
+
/** Case-name suggestion derived from `repo`; `''` when nothing usable survives. */
|
|
80
|
+
suggestedName: string;
|
|
81
|
+
/** Non-blocking advisories to show next to the input. */
|
|
82
|
+
warnings: string[];
|
|
83
|
+
}
|
|
84
|
+
/** A repository operand Codeman refuses, with the reason to show the user. */
|
|
85
|
+
export interface GitUrlRejected {
|
|
86
|
+
cloneable: false;
|
|
87
|
+
code: GitUrlRejectionCode;
|
|
88
|
+
/** User-facing, safe to render as text. */
|
|
89
|
+
message: string;
|
|
90
|
+
}
|
|
91
|
+
export type GitUrlParse = GitUrlAccepted | GitUrlRejected;
|
|
92
|
+
/** What `ls-remote` told us about a remote. */
|
|
93
|
+
export interface GitRemoteProbe {
|
|
94
|
+
reachable: boolean;
|
|
95
|
+
/** Branch `HEAD` points at, when the remote advertises a symref. */
|
|
96
|
+
defaultBranch?: string;
|
|
97
|
+
branches: string[];
|
|
98
|
+
tags: string[];
|
|
99
|
+
/** Set when `reachable` is false. */
|
|
100
|
+
failure?: GitFailure;
|
|
101
|
+
/** True when refs were dropped to stay under the surfaced-refs cap. */
|
|
102
|
+
truncated?: boolean;
|
|
103
|
+
}
|
|
104
|
+
export type GitFailureCode = 'GIT_MISSING' | 'TIMEOUT' | 'AUTH_REQUIRED' | 'NOT_FOUND' | 'REF_NOT_FOUND' | 'HOST_UNREACHABLE' | 'DESTINATION_EXISTS' | 'BUSY' | 'FAILED';
|
|
105
|
+
export interface GitFailure {
|
|
106
|
+
code: GitFailureCode;
|
|
107
|
+
/** User-facing summary. */
|
|
108
|
+
message: string;
|
|
109
|
+
/** Tail of git's own stderr, control-stripped and credential-redacted. */
|
|
110
|
+
stderr: string;
|
|
111
|
+
}
|
|
112
|
+
export interface CloneOptions {
|
|
113
|
+
/** Pre-validated operand from `parseGitRepositoryUrl`. */
|
|
114
|
+
repository: string;
|
|
115
|
+
/** Absolute destination directory. Must NOT exist; created by git. */
|
|
116
|
+
destination: string;
|
|
117
|
+
/** Optional branch or tag (`--branch <ref> --single-branch`). */
|
|
118
|
+
ref?: string;
|
|
119
|
+
/** `--depth 1`: history-less but much faster on large repos. */
|
|
120
|
+
shallow?: boolean;
|
|
121
|
+
timeoutMs?: number;
|
|
122
|
+
}
|
|
123
|
+
export type CloneResult = {
|
|
124
|
+
ok: true;
|
|
125
|
+
stderr: string;
|
|
126
|
+
} | {
|
|
127
|
+
ok: false;
|
|
128
|
+
failure: GitFailure;
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Turn a repository name into a Codeman case name.
|
|
132
|
+
*
|
|
133
|
+
* Case names are `[a-zA-Z0-9_-]+` everywhere else in the app (`SAFE_CASE_NAME`
|
|
134
|
+
* in case-routes.ts, `CreateCaseSchema`), so anything else collapses to `-`.
|
|
135
|
+
* Returns `''` when nothing usable survives, which the UI treats as "the user
|
|
136
|
+
* must type a name" rather than silently inventing one.
|
|
137
|
+
*/
|
|
138
|
+
export declare function suggestCaseNameFromRepo(repo: string): string;
|
|
139
|
+
/**
|
|
140
|
+
* Decide whether `input` is something Codeman will hand to `git clone`, and pull
|
|
141
|
+
* the pieces the UI needs (provider, owner/repo, suggested case name) out of it.
|
|
142
|
+
*
|
|
143
|
+
* This is the security boundary for the clone endpoint. Read the module header
|
|
144
|
+
* before loosening any branch here — `ext::`-style transports and
|
|
145
|
+
* option-shaped operands are the two that turn a clone into arbitrary code
|
|
146
|
+
* execution.
|
|
147
|
+
*
|
|
148
|
+
* Accepting a URL says nothing about whether the remote EXISTS or is public;
|
|
149
|
+
* only `probeGitRemote` can answer that.
|
|
150
|
+
*/
|
|
151
|
+
export declare function parseGitRepositoryUrl(input: string): GitUrlParse;
|
|
152
|
+
/** Is `ref` safe to pass as `--branch <ref>`? Rejects flags, spaces and `..`. */
|
|
153
|
+
export declare function isSafeGitRef(ref: string): boolean;
|
|
154
|
+
/**
|
|
155
|
+
* argv for the clone. `--` separates flags from operands so neither the
|
|
156
|
+
* repository nor the destination can ever be read as an option.
|
|
157
|
+
*/
|
|
158
|
+
export declare function buildCloneArgs(opts: CloneOptions): string[];
|
|
159
|
+
/** argv for the preflight. `--symref` is what reveals the remote's default branch. */
|
|
160
|
+
export declare function buildLsRemoteArgs(repository: string): string[];
|
|
161
|
+
/**
|
|
162
|
+
* Environment that makes git fail instead of blocking on a prompt.
|
|
163
|
+
*
|
|
164
|
+
* Every entry closes one way an interactive git can hang a request that has no
|
|
165
|
+
* terminal attached: the built-in prompt, a GUI/askpass helper, an ssh
|
|
166
|
+
* host-key or passphrase prompt, and Git Credential Manager. `HOME` and `PATH`
|
|
167
|
+
* are inherited on purpose — a user whose own ssh agent or credential helper
|
|
168
|
+
* already works should keep working.
|
|
169
|
+
*/
|
|
170
|
+
export declare function gitNonInteractiveEnv(base?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
171
|
+
/**
|
|
172
|
+
* Make git's stderr safe to show in the browser: strip ANSI/control bytes,
|
|
173
|
+
* redact any `scheme://user:secret@host` that a credential helper echoed back,
|
|
174
|
+
* and keep only the tail (the last lines are the ones that say why it failed).
|
|
175
|
+
*/
|
|
176
|
+
export declare function sanitizeGitOutput(text: string, maxBytes?: number): string;
|
|
177
|
+
/** Parse `git ls-remote --symref` output into a default branch plus ref lists. */
|
|
178
|
+
export declare function parseLsRemoteOutput(stdout: string): {
|
|
179
|
+
defaultBranch?: string;
|
|
180
|
+
branches: string[];
|
|
181
|
+
tags: string[];
|
|
182
|
+
truncated: boolean;
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* Turn a git failure into something actionable.
|
|
186
|
+
*
|
|
187
|
+
* The AUTH_REQUIRED wording matters: GitHub answers "Repository not found" for a
|
|
188
|
+
* private repo AND for a typo when unauthenticated, so a bare "not found" would
|
|
189
|
+
* send people hunting for a spelling mistake that isn't there.
|
|
190
|
+
*/
|
|
191
|
+
export declare function classifyGitFailure(stderr: string, timedOut: boolean, spawnError?: string): GitFailure;
|
|
192
|
+
/** Test/diagnostic hook: git operations currently holding a slot. */
|
|
193
|
+
export declare function getActiveGitOperationCount(): number;
|
|
194
|
+
/** Test/diagnostic hook: git operations currently queued behind the pool. */
|
|
195
|
+
export declare function getQueuedGitOperationCount(): number;
|
|
196
|
+
export declare function isGitAvailable(): boolean;
|
|
197
|
+
/**
|
|
198
|
+
* Ask the remote what it has, without cloning: reachability, whether it can be
|
|
199
|
+
* read anonymously, its default branch, and its branch/tag lists (which the UI
|
|
200
|
+
* turns into a ref picker instead of a free-text field).
|
|
201
|
+
*
|
|
202
|
+
* Never throws — an unreachable remote is a normal answer here, not an error.
|
|
203
|
+
*/
|
|
204
|
+
export declare function probeGitRemote(repository: string, timeoutMs?: number): Promise<GitRemoteProbe>;
|
|
205
|
+
/**
|
|
206
|
+
* Clone `repository` into `destination`.
|
|
207
|
+
*
|
|
208
|
+
* git clones into an ATTEMPT-OWNED temp sibling (`.<name>.cloning-<random>`,
|
|
209
|
+
* dot-prefixed so an orphan from a crash never shows up as a case), which is
|
|
210
|
+
* atomically renamed into place on success. Two concurrent requests for the
|
|
211
|
+
* same destination used to both pass the existence check, and the loser's
|
|
212
|
+
* failure cleanup then deleted the WINNER's freshly cloned tree; now each
|
|
213
|
+
* attempt only ever creates and removes its own directory, the rename decides
|
|
214
|
+
* the winner, and the loser reports DESTINATION_EXISTS. The upfront existence
|
|
215
|
+
* check stays as the fast path for the common non-racing case.
|
|
216
|
+
*
|
|
217
|
+
* Never throws; every outcome is a `CloneResult`.
|
|
218
|
+
*/
|
|
219
|
+
export declare function cloneRepository(opts: CloneOptions): Promise<CloneResult>;
|
|
220
|
+
//# sourceMappingURL=git-clone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-clone.d.ts","sourceRoot":"","sources":["../src/git-clone.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAkBH;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,QAAoE,CAAC;AAEtG;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAoE,CAAC;AAiC1G,oDAAoD;AACpD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;AAEtE,MAAM,MAAM,mBAAmB,GAC3B,OAAO,GACP,UAAU,GACV,eAAe,GACf,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,oBAAoB,GACpB,oBAAoB,GACpB,YAAY,CAAC;AAEjB,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,YAAY,CAAC;IACxB,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,8EAA8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,KAAK,CAAC;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,cAAc,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,qCAAqC;IACrC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,uEAAuE;IACvE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,SAAS,GACT,eAAe,GACf,WAAW,GACX,eAAe,GACf,kBAAkB,GAClB,oBAAoB,GACpB,MAAM,GACN,QAAQ,CAAC;AAEb,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,CAAC;AA+B5F;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAS5D;AA8BD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CA4GhE;AAgCD,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAIjD;AAID;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAO3D;AAED,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAY7F;AAID;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAmB,GAAG,MAAM,CAOnF;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB,CA4BA;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CA4DrG;AAiBD,qEAAqE;AACrE,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAED,6EAA6E;AAC7E,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAwID,wBAAgB,cAAc,IAAI,OAAO,CAaxC;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,SAAS,SAA2B,GACnC,OAAO,CAAC,cAAc,CAAC,CA0BzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAyD9E"}
|