@specship/specship-win32-arm64 0.21.0 → 0.21.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/lib/dist/bin/specship.js +169 -101
- package/lib/dist/bin/specship.js.map +1 -1
- package/lib/dist/claudemd/audit.d.ts +41 -0
- package/lib/dist/claudemd/audit.d.ts.map +1 -0
- package/lib/dist/claudemd/audit.js +291 -0
- package/lib/dist/claudemd/audit.js.map +1 -0
- package/lib/dist/commands/specship/check.md +21 -2
- package/lib/dist/commands/specship/day.md +35 -0
- package/lib/dist/index.d.ts.map +1 -1
- package/lib/dist/index.js +10 -0
- package/lib/dist/index.js.map +1 -1
- package/lib/dist/installer/index.d.ts.map +1 -1
- package/lib/dist/installer/index.js +36 -0
- package/lib/dist/installer/index.js.map +1 -1
- package/lib/dist/installer/integration-setup.d.ts +73 -0
- package/lib/dist/installer/integration-setup.d.ts.map +1 -0
- package/lib/dist/installer/integration-setup.js +108 -0
- package/lib/dist/installer/integration-setup.js.map +1 -0
- package/lib/dist/installer/targets/claude.d.ts.map +1 -1
- package/lib/dist/installer/targets/claude.js +1 -0
- package/lib/dist/installer/targets/claude.js.map +1 -1
- package/lib/dist/jira/client.d.ts +3 -0
- package/lib/dist/jira/client.d.ts.map +1 -1
- package/lib/dist/jira/client.js +9 -0
- package/lib/dist/jira/client.js.map +1 -1
- package/lib/dist/mcp/jira-tools.d.ts +37 -0
- package/lib/dist/mcp/jira-tools.d.ts.map +1 -1
- package/lib/dist/mcp/jira-tools.js +145 -2
- package/lib/dist/mcp/jira-tools.js.map +1 -1
- package/lib/dist/mcp/model-context.d.ts +11 -0
- package/lib/dist/mcp/model-context.d.ts.map +1 -1
- package/lib/dist/mcp/model-context.js +31 -0
- package/lib/dist/mcp/model-context.js.map +1 -1
- package/lib/dist/mcp/server-instructions.d.ts +1 -1
- package/lib/dist/mcp/server-instructions.d.ts.map +1 -1
- package/lib/dist/mcp/server-instructions.js +1 -0
- package/lib/dist/mcp/server-instructions.js.map +1 -1
- package/lib/dist/mcp/tools.d.ts +7 -0
- package/lib/dist/mcp/tools.d.ts.map +1 -1
- package/lib/dist/mcp/tools.js +60 -0
- package/lib/dist/mcp/tools.js.map +1 -1
- package/lib/dist/statusline/index.d.ts.map +1 -1
- package/lib/dist/statusline/index.js +25 -1
- package/lib/dist/statusline/index.js.map +1 -1
- package/lib/dist/statusline/render.d.ts +15 -0
- package/lib/dist/statusline/render.d.ts.map +1 -1
- package/lib/dist/statusline/render.js +19 -5
- package/lib/dist/statusline/render.js.map +1 -1
- package/lib/dist/statusline/tips.d.ts +32 -0
- package/lib/dist/statusline/tips.d.ts.map +1 -0
- package/lib/dist/statusline/tips.js +49 -0
- package/lib/dist/statusline/tips.js.map +1 -0
- package/lib/dist/taskship/detect.d.ts +35 -0
- package/lib/dist/taskship/detect.d.ts.map +1 -0
- package/lib/dist/taskship/detect.js +112 -0
- package/lib/dist/taskship/detect.js.map +1 -0
- package/lib/dist/update/updater.d.ts +7 -0
- package/lib/dist/update/updater.d.ts.map +1 -1
- package/lib/dist/update/updater.js +11 -0
- package/lib/dist/update/updater.js.map +1 -1
- package/lib/node_modules/.package-lock.json +1 -1
- package/lib/package.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/statusline/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/statusline/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDH,8CAYC;AAuBD,sCAqCC;AASD,oCA0EC;AAlND,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAC7B,4CAA4C;AAC5C,mCAA8C;AAC9C,qDAAqD;AACrD,6CAA6C;AAC7C,iDAA0H;AAC1H,wDAA2E;AAC3E,qCAAyC;AACzC,iCAA6C;AAE7C,0CAAwB;AACxB,iCAA+C;AAAtC,6GAAA,oBAAoB,OAAA;AAE7B,mDAA8E;AAArE,6GAAA,WAAW,OAAA;AAAE,4GAAA,UAAU,OAAA;AAAE,mHAAA,iBAAiB,OAAA;AACnD,2CAA6E;AAApE,4GAAA,cAAc,OAAA;AAAE,4GAAA,cAAc,OAAA;AAAE,2GAAA,aAAa,OAAA;AACtD,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AAEtB;;;;;GAKG;AACH,SAAS,uBAAuB,CAAC,QAAgB;IAC/C,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IACtC,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAY,CAAC,CAAC;gBAAE,OAAO,OAAO,CAAC;QACtE,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QACD,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAClC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2D,CAAC;QACvF,OAAO,IAAI,CAAC,SAAS,EAAE,WAAW,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,GAAW;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAG1B,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC;QACjE,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACvF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;AACH,CAAC;AAED,sFAAsF;AACtF,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9D,OAAO,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC5C,IAAI,CAAC;QACH,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QAClC,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACzC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,QAAQ,GAAG,SAAS,CAAC;gBACrB,MAAM;YACR,CAAC;YACD,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAC9B,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,0EAA0E;QAC1E,6EAA6E;QAC7E,IAAI,MAAc,CAAC;QACnB,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,MAAM,GAAG,QAAQ,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1D,MAAM,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACxE,MAAM,GAAG,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB;QAC7E,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,QAAgB,EAAE,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ;IAC7E,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,CAAC;QACH,IAAI,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,GAAG,IAAI,CAAC;IACd,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,oFAAoF;IACpF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,MAAM,GACV,KAAK,IAAI,OAAO;QACd,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE;QACxF,CAAC,CAAC,IAAI,CAAC;IAEX,0EAA0E;IAC1E,0EAA0E;IAC1E,mCAAmC;IACnC,IAAI,IAAI,IAAI,KAAK;QAAE,IAAA,kCAAkB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEnD,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,yEAAyE;IACzE,IAAI,OAAO,GAA8B,IAAI,CAAC;IAC9C,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAA,+BAAe,EAAC,IAAI,CAAC,CAAC;YACnC,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,GAAG,IAAI,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,yEAAyE;IACzE,+EAA+E;IAC/E,wEAAwE;IACxE,qCAAqC;IACrC,MAAM,KAAK,GAAG,IAAA,uCAAwB,EAAC,QAAQ,CAAC,IAAI,IAAA,8BAAe,GAAE,CAAC;IACtE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,oEAAoE;IACpE,MAAM,OAAO,GAAG,IAAA,yCAA0B,EAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,IAAA,gCAAiB,GAAE,CAAC;IAEvC,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAA,0BAAmB,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEjG,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,2EAA2E;QAC3E,6CAA6C;QAC7C,OAAO,IAAA,sBAAa,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACxH,CAAC;IAED,OAAO,IAAA,sBAAa,EAAC;QACnB,KAAK,EAAE,IAAA,2BAAmB,EAAC,IAAI,CAAC;QAChC,MAAM,EAAE,IAAA,kCAAiB,EAAC,IAAI,CAAC;QAC/B,GAAG,EAAE,IAAA,0BAAa,EAAC,IAAI,CAAC;QACxB,KAAK;QACL,GAAG;QACH,OAAO;QACP,UAAU;QACV,OAAO;QACP,MAAM;QACN,GAAG;QACH,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -56,6 +56,21 @@ export interface RenderInput {
|
|
|
56
56
|
context?: number | null;
|
|
57
57
|
/** Context-usage warning threshold (percent); CTX escalates at/above it. */
|
|
58
58
|
ctxWarnPct?: number;
|
|
59
|
+
/**
|
|
60
|
+
* Resolved rotating usage-tip text (REQ-STATUSLINE-013), or null/undefined to
|
|
61
|
+
* omit the tip line. The caller selects which tip by time bucket and honors the
|
|
62
|
+
* `SPECSHIP_NO_STATUSLINE_TIPS` opt-out, so this module stays pure (no clock,
|
|
63
|
+
* no env). Rendered dim as the LAST line, below telemetry.
|
|
64
|
+
*/
|
|
65
|
+
tip?: string | null;
|
|
66
|
+
/**
|
|
67
|
+
* Active model-compaction tier (REQ-MODCTX-005), or null/undefined to omit
|
|
68
|
+
* the indicator. The caller resolves the tier through the same chain the MCP
|
|
69
|
+
* server uses (`detectModelTier` — marker, `SPECSHIP_MODEL`, `SPECSHIP_COMPACT`),
|
|
70
|
+
* so this module stays pure and the element is only ever shown when
|
|
71
|
+
* compaction is actually active. Never `'full'` — the caller maps full → null.
|
|
72
|
+
*/
|
|
73
|
+
compact?: 'haiku' | 'sonnet' | null;
|
|
59
74
|
/** When true, emit no ANSI escapes. */
|
|
60
75
|
noColor: boolean;
|
|
61
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/statusline/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;CAClB;AA0ED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/statusline/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;IACpC,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;CAClB;AA0ED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAuGxD"}
|
|
@@ -86,7 +86,7 @@ function paint(noColor, code, s) {
|
|
|
86
86
|
* a minimal `◈ specship … ◈` when caches are absent rather than erroring.
|
|
87
87
|
*/
|
|
88
88
|
function renderSegment(input) {
|
|
89
|
-
const { cache, marker, run, usage, now, context, ctxWarnPct, noColor, header } = input;
|
|
89
|
+
const { cache, marker, run, usage, now, context, ctxWarnPct, noColor, header, tip, compact } = input;
|
|
90
90
|
const c = (code, s) => paint(noColor, code, s);
|
|
91
91
|
const orn = c(COLOR.orn, '◈');
|
|
92
92
|
const sep = c(COLOR.frame, ' ◆ ');
|
|
@@ -137,6 +137,13 @@ function renderSegment(input) {
|
|
|
137
137
|
const label = run.specId ? `${run.specId}·${run.status}` : run.status;
|
|
138
138
|
parts.push(c(COLOR.run, `${label}${etaSuffix(run)}`));
|
|
139
139
|
}
|
|
140
|
+
// Model-compaction indicator (REQ-MODCTX-005) — tells the USER the
|
|
141
|
+
// auto-switch happened; the agent already sees it inside tool results.
|
|
142
|
+
// Wording asserts optimization, never reduction, and the caller only sets
|
|
143
|
+
// `compact` when compaction is actually active (honesty rule).
|
|
144
|
+
if (compact) {
|
|
145
|
+
parts.push(c(COLOR.dim, `⛁ optimizing for ${compact === 'haiku' ? 'Haiku' : 'Sonnet'}`));
|
|
146
|
+
}
|
|
140
147
|
// Telemetry elements render on their own SECOND line (REQ-STATUSLINE-010):
|
|
141
148
|
// the SpecShip identity stays scannable while capacity bars get room.
|
|
142
149
|
const telemetry = [];
|
|
@@ -163,10 +170,17 @@ function renderSegment(input) {
|
|
|
163
170
|
}
|
|
164
171
|
const identityLine = `${orn} ${brand}${sep}${parts.join(sep)} ${orn}`;
|
|
165
172
|
const telemetryLine = telemetry.length > 0 ? `${orn} ${telemetry.join(sep)} ${orn}` : null;
|
|
166
|
-
//
|
|
167
|
-
//
|
|
168
|
-
//
|
|
169
|
-
|
|
173
|
+
// Rotating usage tip (REQ-STATUSLINE-013) — a dim capability reminder on its
|
|
174
|
+
// own LAST line, below telemetry. The caller has already resolved which tip
|
|
175
|
+
// (time bucket) and honored the opt-out; null here means no tip line. It never
|
|
176
|
+
// alters the lines above it, and the dim styling strips to plain text under
|
|
177
|
+
// NO_COLOR (REQ-STATUSLINE-013.A6).
|
|
178
|
+
const tipLine = tip ? c(COLOR.dim, `💡 ${tip}`) : null;
|
|
179
|
+
// Fixed stack order: header, identity, telemetry, tip (REQ-STATUSLINE-010,
|
|
180
|
+
// extended by REQ-STATUSLINE-013). The identity line is always present; the
|
|
181
|
+
// optional lines collapse out so there is never a leading/trailing/interior
|
|
182
|
+
// blank line.
|
|
183
|
+
const lines = [headerLine, identityLine, telemetryLine, tipLine].filter((l) => l !== null);
|
|
170
184
|
return lines.join('\n');
|
|
171
185
|
}
|
|
172
186
|
//# sourceMappingURL=render.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/statusline/render.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/statusline/render.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rotating status-line usage tips (REQ-STATUSLINE-013).
|
|
3
|
+
*
|
|
4
|
+
* SpecShip's supported stand-in for Claude Code's built-in spinner tips — which
|
|
5
|
+
* are hardcoded in the host and cannot be customized by a third party. A single
|
|
6
|
+
* short, dimmed capability reminder is appended below the telemetry line and
|
|
7
|
+
* advances on a fixed time interval.
|
|
8
|
+
*
|
|
9
|
+
* Pure by construction (REQ-STATUSLINE-013.A7): this module reads no clock, no
|
|
10
|
+
* env, no filesystem, opens no database, and spawns nothing. The caller supplies
|
|
11
|
+
* `now`; the renderer applies the dim styling. Selecting a tip is a table lookup.
|
|
12
|
+
*
|
|
13
|
+
* Honesty (REQ-STATUSLINE-013.A3): no tip states a tokens-, cost-, or
|
|
14
|
+
* time-"saved" figure — the same fabrication ban as the identity line. Tips are
|
|
15
|
+
* capability reminders, not benchmark claims.
|
|
16
|
+
*/
|
|
17
|
+
/** How long each tip stays on screen before the next rotates in (REQ-STATUSLINE-013.A2). */
|
|
18
|
+
export declare const STATUSLINE_TIP_INTERVAL_MS = 30000;
|
|
19
|
+
/**
|
|
20
|
+
* Curated one-line capability reminders, in rotation order. Each is short enough
|
|
21
|
+
* for a single status-line row and free of any saved-figure claim (A3). At least
|
|
22
|
+
* four distinct entries so the rotation is meaningful.
|
|
23
|
+
*/
|
|
24
|
+
export declare const STATUSLINE_TIPS: readonly string[];
|
|
25
|
+
/**
|
|
26
|
+
* The tip to show at `nowMs`, chosen by a fixed time bucket so it is stable
|
|
27
|
+
* within an interval and never flickers on sub-second repaints
|
|
28
|
+
* (REQ-STATUSLINE-013.A2): `floor(now / interval) mod count`, wrapping to the
|
|
29
|
+
* first tip after the last. Pure — the clock is supplied by the caller.
|
|
30
|
+
*/
|
|
31
|
+
export declare function selectStatuslineTip(nowMs: number): string;
|
|
32
|
+
//# sourceMappingURL=tips.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tips.d.ts","sourceRoot":"","sources":["../../src/statusline/tips.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,4FAA4F;AAC5F,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAO5C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMzD"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Rotating status-line usage tips (REQ-STATUSLINE-013).
|
|
4
|
+
*
|
|
5
|
+
* SpecShip's supported stand-in for Claude Code's built-in spinner tips — which
|
|
6
|
+
* are hardcoded in the host and cannot be customized by a third party. A single
|
|
7
|
+
* short, dimmed capability reminder is appended below the telemetry line and
|
|
8
|
+
* advances on a fixed time interval.
|
|
9
|
+
*
|
|
10
|
+
* Pure by construction (REQ-STATUSLINE-013.A7): this module reads no clock, no
|
|
11
|
+
* env, no filesystem, opens no database, and spawns nothing. The caller supplies
|
|
12
|
+
* `now`; the renderer applies the dim styling. Selecting a tip is a table lookup.
|
|
13
|
+
*
|
|
14
|
+
* Honesty (REQ-STATUSLINE-013.A3): no tip states a tokens-, cost-, or
|
|
15
|
+
* time-"saved" figure — the same fabrication ban as the identity line. Tips are
|
|
16
|
+
* capability reminders, not benchmark claims.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.STATUSLINE_TIPS = exports.STATUSLINE_TIP_INTERVAL_MS = void 0;
|
|
20
|
+
exports.selectStatuslineTip = selectStatuslineTip;
|
|
21
|
+
/** How long each tip stays on screen before the next rotates in (REQ-STATUSLINE-013.A2). */
|
|
22
|
+
exports.STATUSLINE_TIP_INTERVAL_MS = 30_000;
|
|
23
|
+
/**
|
|
24
|
+
* Curated one-line capability reminders, in rotation order. Each is short enough
|
|
25
|
+
* for a single status-line row and free of any saved-figure claim (A3). At least
|
|
26
|
+
* four distinct entries so the rotation is meaningful.
|
|
27
|
+
*/
|
|
28
|
+
exports.STATUSLINE_TIPS = [
|
|
29
|
+
'specship_explore answers "how does X reach Y" in one call — no Read/Grep',
|
|
30
|
+
'Name the symbols spanning a flow in specship_explore to trace the path between them',
|
|
31
|
+
'specship_impact shows what a change would break before you make it',
|
|
32
|
+
"specship_node returns a symbol's full body plus its caller/callee trail",
|
|
33
|
+
'Ask specship_callers / specship_callees instead of grepping for usages',
|
|
34
|
+
'Capture intent with /specship:spec, then /specship:spec implement it',
|
|
35
|
+
];
|
|
36
|
+
/**
|
|
37
|
+
* The tip to show at `nowMs`, chosen by a fixed time bucket so it is stable
|
|
38
|
+
* within an interval and never flickers on sub-second repaints
|
|
39
|
+
* (REQ-STATUSLINE-013.A2): `floor(now / interval) mod count`, wrapping to the
|
|
40
|
+
* first tip after the last. Pure — the clock is supplied by the caller.
|
|
41
|
+
*/
|
|
42
|
+
function selectStatuslineTip(nowMs) {
|
|
43
|
+
const n = exports.STATUSLINE_TIPS.length;
|
|
44
|
+
const bucket = Math.floor(nowMs / exports.STATUSLINE_TIP_INTERVAL_MS);
|
|
45
|
+
// Guard against a negative `now` (pre-epoch clock) so the index stays in range.
|
|
46
|
+
const idx = ((bucket % n) + n) % n;
|
|
47
|
+
return exports.STATUSLINE_TIPS[idx];
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=tips.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tips.js","sourceRoot":"","sources":["../../src/statusline/tips.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAyBH,kDAMC;AA7BD,4FAA4F;AAC/E,QAAA,0BAA0B,GAAG,MAAM,CAAC;AAEjD;;;;GAIG;AACU,QAAA,eAAe,GAAsB;IAChD,0EAA0E;IAC1E,qFAAqF;IACrF,oEAAoE;IACpE,yEAAyE;IACzE,wEAAwE;IACxE,sEAAsE;CACvE,CAAC;AAEF;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAa;IAC/C,MAAM,CAAC,GAAG,uBAAe,CAAC,MAAM,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,kCAA0B,CAAC,CAAC;IAC9D,gFAAgF;IAChF,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,uBAAe,CAAC,GAAG,CAAE,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* taskship availability detection (TASKSHIP-BRIDGE-DOC, REQ-TASKSHIP-002).
|
|
3
|
+
*
|
|
4
|
+
* taskship is a sibling PM tool. When it's present, SpecShip routes newly
|
|
5
|
+
* discovered tasks through it so its `plan.yaml` stays the single source of
|
|
6
|
+
* truth; when absent, SpecShip writes JIRA directly. This module answers only
|
|
7
|
+
* one question — "is taskship available here?" — from injected probes, so the
|
|
8
|
+
* routing decision (REQ-TASKSHIP-003) is deterministic and unit-testable
|
|
9
|
+
* without a live taskship.
|
|
10
|
+
*/
|
|
11
|
+
export interface TaskshipAvailability {
|
|
12
|
+
available: boolean;
|
|
13
|
+
/** How it was found — for the caller's user-facing note. Null when absent. */
|
|
14
|
+
via: 'cli' | 'mcp' | null;
|
|
15
|
+
}
|
|
16
|
+
/** Injected signals — no I/O of the detector's own (REQ-TASKSHIP-002.A2). */
|
|
17
|
+
export interface TaskshipProbes {
|
|
18
|
+
/** Whether the `taskship` command resolves on PATH. */
|
|
19
|
+
commandOnPath: (cmd: string) => boolean;
|
|
20
|
+
/** Whether a `taskship` MCP server is configured for the project. */
|
|
21
|
+
mcpConfigured: () => boolean;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Decide taskship availability from the probes (REQ-TASKSHIP-002). Pure: the
|
|
25
|
+
* only inputs are the injected probes, and it never throws. CLI wins the
|
|
26
|
+
* `via` label because a spawnable binary is what the router actually uses.
|
|
27
|
+
*/
|
|
28
|
+
export declare function detectTaskship(probes: TaskshipProbes): TaskshipAvailability;
|
|
29
|
+
/** Default PATH probe: `command -v` / `where`, exit code only. */
|
|
30
|
+
export declare function commandOnPath(cmd: string): boolean;
|
|
31
|
+
/** Default MCP probe: a `taskship` server in the project's `.mcp.json`. */
|
|
32
|
+
export declare function mcpConfiguredIn(projectRoot: string): boolean;
|
|
33
|
+
/** Default probes bound to a project root (used by the MCP tool). */
|
|
34
|
+
export declare function defaultTaskshipProbes(projectRoot: string): TaskshipProbes;
|
|
35
|
+
//# sourceMappingURL=detect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/taskship/detect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,GAAG,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;CAC3B;AAED,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,qEAAqE;IACrE,aAAa,EAAE,MAAM,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,oBAAoB,CAQ3E;AAED,kEAAkE;AAClE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAYlD;AAED,2EAA2E;AAC3E,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAQ5D;AAED,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAKzE"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* taskship availability detection (TASKSHIP-BRIDGE-DOC, REQ-TASKSHIP-002).
|
|
4
|
+
*
|
|
5
|
+
* taskship is a sibling PM tool. When it's present, SpecShip routes newly
|
|
6
|
+
* discovered tasks through it so its `plan.yaml` stays the single source of
|
|
7
|
+
* truth; when absent, SpecShip writes JIRA directly. This module answers only
|
|
8
|
+
* one question — "is taskship available here?" — from injected probes, so the
|
|
9
|
+
* routing decision (REQ-TASKSHIP-003) is deterministic and unit-testable
|
|
10
|
+
* without a live taskship.
|
|
11
|
+
*/
|
|
12
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
15
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
16
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
17
|
+
}
|
|
18
|
+
Object.defineProperty(o, k2, desc);
|
|
19
|
+
}) : (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
o[k2] = m[k];
|
|
22
|
+
}));
|
|
23
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
24
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
25
|
+
}) : function(o, v) {
|
|
26
|
+
o["default"] = v;
|
|
27
|
+
});
|
|
28
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
29
|
+
var ownKeys = function(o) {
|
|
30
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
31
|
+
var ar = [];
|
|
32
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
33
|
+
return ar;
|
|
34
|
+
};
|
|
35
|
+
return ownKeys(o);
|
|
36
|
+
};
|
|
37
|
+
return function (mod) {
|
|
38
|
+
if (mod && mod.__esModule) return mod;
|
|
39
|
+
var result = {};
|
|
40
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
41
|
+
__setModuleDefault(result, mod);
|
|
42
|
+
return result;
|
|
43
|
+
};
|
|
44
|
+
})();
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.detectTaskship = detectTaskship;
|
|
47
|
+
exports.commandOnPath = commandOnPath;
|
|
48
|
+
exports.mcpConfiguredIn = mcpConfiguredIn;
|
|
49
|
+
exports.defaultTaskshipProbes = defaultTaskshipProbes;
|
|
50
|
+
const child_process_1 = require("child_process");
|
|
51
|
+
const fs = __importStar(require("fs"));
|
|
52
|
+
const path = __importStar(require("path"));
|
|
53
|
+
/**
|
|
54
|
+
* Decide taskship availability from the probes (REQ-TASKSHIP-002). Pure: the
|
|
55
|
+
* only inputs are the injected probes, and it never throws. CLI wins the
|
|
56
|
+
* `via` label because a spawnable binary is what the router actually uses.
|
|
57
|
+
*/
|
|
58
|
+
function detectTaskship(probes) {
|
|
59
|
+
let cli = false;
|
|
60
|
+
let mcp = false;
|
|
61
|
+
try {
|
|
62
|
+
cli = probes.commandOnPath('taskship');
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
cli = false;
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
mcp = probes.mcpConfigured();
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
mcp = false;
|
|
72
|
+
}
|
|
73
|
+
if (cli)
|
|
74
|
+
return { available: true, via: 'cli' };
|
|
75
|
+
if (mcp)
|
|
76
|
+
return { available: true, via: 'mcp' };
|
|
77
|
+
return { available: false, via: null };
|
|
78
|
+
}
|
|
79
|
+
/** Default PATH probe: `command -v` / `where`, exit code only. */
|
|
80
|
+
function commandOnPath(cmd) {
|
|
81
|
+
try {
|
|
82
|
+
const probe = process.platform === 'win32' ? `where ${cmd}` : `command -v ${cmd}`;
|
|
83
|
+
(0, child_process_1.execSync)(probe, {
|
|
84
|
+
stdio: 'ignore',
|
|
85
|
+
windowsHide: true,
|
|
86
|
+
shell: process.platform === 'win32' ? undefined : '/bin/sh',
|
|
87
|
+
});
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** Default MCP probe: a `taskship` server in the project's `.mcp.json`. */
|
|
95
|
+
function mcpConfiguredIn(projectRoot) {
|
|
96
|
+
try {
|
|
97
|
+
const raw = fs.readFileSync(path.join(projectRoot, '.mcp.json'), 'utf-8');
|
|
98
|
+
const cfg = JSON.parse(raw);
|
|
99
|
+
return Boolean(cfg.mcpServers && cfg.mcpServers['taskship']);
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/** Default probes bound to a project root (used by the MCP tool). */
|
|
106
|
+
function defaultTaskshipProbes(projectRoot) {
|
|
107
|
+
return {
|
|
108
|
+
commandOnPath,
|
|
109
|
+
mcpConfigured: () => mcpConfiguredIn(projectRoot),
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=detect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/taskship/detect.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBH,wCAQC;AAGD,sCAYC;AAGD,0CAQC;AAGD,sDAKC;AAjED,iDAAyC;AACzC,uCAAyB;AACzB,2CAA6B;AAgB7B;;;;GAIG;AACH,SAAgB,cAAc,CAAC,MAAsB;IACnD,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC;QAAC,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,GAAG,GAAG,KAAK,CAAC;IAAC,CAAC;IACtE,IAAI,CAAC;QAAC,GAAG,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,GAAG,GAAG,KAAK,CAAC;IAAC,CAAC;IAC5D,IAAI,GAAG;QAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChD,IAAI,GAAG;QAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AACzC,CAAC;AAED,kEAAkE;AAClE,SAAgB,aAAa,CAAC,GAAW;IACvC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC;QAClF,IAAA,wBAAQ,EAAC,KAAK,EAAE;YACd,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SAC5D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAgB,eAAe,CAAC,WAAmB;IACjD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;QAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA6C,CAAC;QACxE,OAAO,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,SAAgB,qBAAqB,CAAC,WAAmB;IACvD,OAAO;QACL,aAAa;QACb,aAAa,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC;KAClD,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve the bundle install dir the CLI uses to classify a running binary
|
|
3
|
+
* (`~/.specship`, overridable via `SPECSHIP_INSTALL_DIR`). Extracted so
|
|
4
|
+
* `specship_version` and the update command feed `detectInstallMethod` from
|
|
5
|
+
* one place.
|
|
6
|
+
*/
|
|
7
|
+
export declare function resolveInstallDir(env?: NodeJS.ProcessEnv): string;
|
|
1
8
|
export type InstallMethod = 'bundle' | 'npm' | 'unknown';
|
|
2
9
|
/** Exit code from `--check` when a newer version is available (distinct from
|
|
3
10
|
* the `1` used for real errors, so scripts/hooks can gate on it). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/update/updater.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/update/updater.ts"],"names":[],"mappings":"AAcA;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAE9E;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAEzD;sEACsE;AACtE,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,8FAC8D,CAAC;AAC9F,eAAO,MAAM,eAAe,uCAAuC,CAAC;AAEpE,MAAM,WAAW,UAAU;IACzB,4DAA4D;IAC5D,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,aAAa,CAAC;IAC5B;yCACqC;IACrC,aAAa,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D;mDAC+C;IAC/C,YAAY,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,iDAAiD;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,OAAO,EAAE,OAAO,CAAC;IACjB,uDAAuD;IACvD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAMzF;AAED,mFAAmF;AACnF,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAahE;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAE1E;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAmGjG"}
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.NPM_INSTALL_CMD = exports.BUNDLE_INSTALL_CMD = exports.CHECK_UPDATE_AVAILABLE = void 0;
|
|
7
|
+
exports.resolveInstallDir = resolveInstallDir;
|
|
7
8
|
exports.detectInstallMethod = detectInstallMethod;
|
|
8
9
|
exports.compareVersions = compareVersions;
|
|
9
10
|
exports.isUpdateAvailable = isUpdateAvailable;
|
|
@@ -20,6 +21,16 @@ exports.runUpdate = runUpdate;
|
|
|
20
21
|
* without mutating the machine's real install.
|
|
21
22
|
*/
|
|
22
23
|
const node_path_1 = __importDefault(require("node:path"));
|
|
24
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
25
|
+
/**
|
|
26
|
+
* Resolve the bundle install dir the CLI uses to classify a running binary
|
|
27
|
+
* (`~/.specship`, overridable via `SPECSHIP_INSTALL_DIR`). Extracted so
|
|
28
|
+
* `specship_version` and the update command feed `detectInstallMethod` from
|
|
29
|
+
* one place.
|
|
30
|
+
*/
|
|
31
|
+
function resolveInstallDir(env = process.env) {
|
|
32
|
+
return env.SPECSHIP_INSTALL_DIR || node_path_1.default.join(node_os_1.default.homedir(), '.specship');
|
|
33
|
+
}
|
|
23
34
|
/** Exit code from `--check` when a newer version is available (distinct from
|
|
24
35
|
* the `1` used for real errors, so scripts/hooks can gate on it). */
|
|
25
36
|
exports.CHECK_UPDATE_AVAILABLE = 10;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updater.js","sourceRoot":"","sources":["../../src/update/updater.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"updater.js","sourceRoot":"","sources":["../../src/update/updater.ts"],"names":[],"mappings":"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"}
|
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@specship/specship",
|
|
3
|
-
"version": "0.21.
|
|
3
|
+
"version": "0.21.2",
|
|
4
4
|
"description": "Supercharge Claude Code with semantic code intelligence. 94% fewer tool calls • 77% faster exploration • 100% local.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|