token-goat 2.9.26 → 2.9.28

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.
Files changed (57) hide show
  1. package/README.md +28 -88
  2. package/SECURITY.md +14 -0
  3. package/dist/{token-goat-chunk-CQHY4SL7.mjs → token-goat-chunk-4JJBFT7V.mjs} +3 -3
  4. package/dist/token-goat-chunk-4JMWPWCS.mjs +96 -0
  5. package/dist/token-goat-chunk-4RN64ZND.mjs +954 -0
  6. package/dist/{token-goat-chunk-5M3NRJD2.mjs → token-goat-chunk-4STDIGYC.mjs} +2 -2
  7. package/dist/{token-goat-chunk-BH4ZVRB2.mjs → token-goat-chunk-5NNYIUGV.mjs} +2 -2
  8. package/dist/{token-goat-chunk-LHUP4DXZ.mjs → token-goat-chunk-66LODAUT.mjs} +1 -1
  9. package/dist/{token-goat-chunk-M6CVNHTW.mjs → token-goat-chunk-6CCQDAYY.mjs} +69 -566
  10. package/dist/{token-goat-chunk-62IHOU6L.mjs → token-goat-chunk-6DQNNFJ6.mjs} +5 -3
  11. package/dist/{token-goat-chunk-H2CPLEMP.mjs → token-goat-chunk-6SGLIPQB.mjs} +40 -20
  12. package/dist/{token-goat-chunk-MBDJR6HU.mjs → token-goat-chunk-6Z5ULNE5.mjs} +3570 -3970
  13. package/dist/token-goat-chunk-7MAFDRVR.mjs +47 -0
  14. package/dist/{token-goat-chunk-POOI26O6.mjs → token-goat-chunk-7R2XYKC5.mjs} +6 -5
  15. package/dist/{token-goat-chunk-E6B2UFDF.mjs → token-goat-chunk-BCN2YQC6.mjs} +10 -8
  16. package/dist/token-goat-chunk-BJBRGPBX.mjs +244 -0
  17. package/dist/{token-goat-chunk-TG5ZPD6B.mjs → token-goat-chunk-CBMY2FGI.mjs} +479 -544
  18. package/dist/{token-goat-chunk-LRIZ7K3F.mjs → token-goat-chunk-CC2PYJM7.mjs} +2 -1
  19. package/dist/{token-goat-chunk-7EPYB34H.mjs → token-goat-chunk-D5ICEPSB.mjs} +14 -14
  20. package/dist/token-goat-chunk-D7GHQKQD.mjs +30 -0
  21. package/dist/{token-goat-chunk-JALB3KWJ.mjs → token-goat-chunk-EL7M26WP.mjs} +7623 -8462
  22. package/dist/{token-goat-chunk-ZZT6PVB3.mjs → token-goat-chunk-F7QZRIWM.mjs} +69 -20
  23. package/dist/{token-goat-chunk-FLEYOCAS.mjs → token-goat-chunk-FSTWAOW6.mjs} +3 -3
  24. package/dist/token-goat-chunk-GGLEE35R.mjs +564 -0
  25. package/dist/{token-goat-chunk-IKZLSRII.mjs → token-goat-chunk-HUDC5GS5.mjs} +2 -2
  26. package/dist/{token-goat-chunk-43JFN26X.mjs → token-goat-chunk-HXNAC4ZF.mjs} +22 -964
  27. package/dist/token-goat-chunk-I7CB3X4K.mjs +1379 -0
  28. package/dist/{token-goat-chunk-GKZ2US5B.mjs → token-goat-chunk-IFORDBGC.mjs} +32 -27
  29. package/dist/{token-goat-chunk-CXBOFPF4.mjs → token-goat-chunk-IHKZ3QNA.mjs} +26 -15
  30. package/dist/token-goat-chunk-IZXKVT4A.mjs +711 -0
  31. package/dist/{token-goat-chunk-PAV6NNY7.mjs → token-goat-chunk-JXK2HQXS.mjs} +22 -8
  32. package/dist/{token-goat-chunk-6E2IDLHF.mjs → token-goat-chunk-L45ZQRT7.mjs} +1 -1
  33. package/dist/{token-goat-chunk-MDV5VWF4.mjs → token-goat-chunk-L7SDVGBT.mjs} +196 -14
  34. package/dist/token-goat-chunk-LEG3JNJ6.mjs +139 -0
  35. package/dist/{token-goat-chunk-7SXPJOSZ.mjs → token-goat-chunk-M56BWPBN.mjs} +1 -1
  36. package/dist/{token-goat-chunk-G6EYO5CD.mjs → token-goat-chunk-MAMQPC43.mjs} +2 -87
  37. package/dist/{token-goat-chunk-VVROQBQJ.mjs → token-goat-chunk-MMLMALWK.mjs} +5 -3
  38. package/dist/{token-goat-chunk-D2X7XN5M.mjs → token-goat-chunk-MVSWBNMD.mjs} +7 -231
  39. package/dist/{token-goat-chunk-C2PG4K5D.mjs → token-goat-chunk-NILVK7XM.mjs} +4 -4
  40. package/dist/{token-goat-chunk-BAWKGODL.mjs → token-goat-chunk-Q4S3UQGO.mjs} +1 -1
  41. package/dist/{token-goat-chunk-MWID3YOY.mjs → token-goat-chunk-QM76S6YS.mjs} +3 -3
  42. package/dist/{token-goat-chunk-4GEDH2WU.mjs → token-goat-chunk-RJH64KQH.mjs} +81 -70
  43. package/dist/{token-goat-chunk-STYRLQIW.mjs → token-goat-chunk-RSS3TLXU.mjs} +2 -2
  44. package/dist/{token-goat-chunk-5BQ7W7D7.mjs → token-goat-chunk-SJEKA7Y2.mjs} +21 -16
  45. package/dist/{token-goat-chunk-RIB6XY2V.mjs → token-goat-chunk-UBUKHVYW.mjs} +1 -1
  46. package/dist/{token-goat-chunk-7Y6GWTII.mjs → token-goat-chunk-VE27HPIF.mjs} +14 -10
  47. package/dist/{token-goat-chunk-RH27ZSPF.mjs → token-goat-chunk-VWZKZPSR.mjs} +100 -23
  48. package/dist/{token-goat-chunk-L45IWWMC.mjs → token-goat-chunk-XI2VFAV6.mjs} +6 -6
  49. package/dist/{token-goat-chunk-WNBSCSAI.mjs → token-goat-chunk-XKY4VKJ4.mjs} +1 -1
  50. package/dist/{token-goat-chunk-L43RKNHA.mjs → token-goat-chunk-YWSP6IU7.mjs} +1 -1
  51. package/dist/token-goat-hook.mjs +23 -17
  52. package/dist/token-goat.core.mjs +32 -27
  53. package/docs/cli.md +32 -21
  54. package/docs/install.md +2 -0
  55. package/package.json +1 -1
  56. package/dist/token-goat-chunk-ADMR3QVF.mjs +0 -41
  57. package/dist/token-goat-chunk-MZTO4FXH.mjs +0 -26
@@ -70,43 +70,48 @@ import {
70
70
  requirePositiveInt,
71
71
  run,
72
72
  visualStudioManualSteps
73
- } from "./token-goat-chunk-TG5ZPD6B.mjs";
74
- import "./token-goat-chunk-BH4ZVRB2.mjs";
75
- import "./token-goat-chunk-PAV6NNY7.mjs";
76
- import "./token-goat-chunk-L45IWWMC.mjs";
77
- import "./token-goat-chunk-RH27ZSPF.mjs";
78
- import "./token-goat-chunk-5M3NRJD2.mjs";
73
+ } from "./token-goat-chunk-CBMY2FGI.mjs";
74
+ import "./token-goat-chunk-VWZKZPSR.mjs";
75
+ import "./token-goat-chunk-4STDIGYC.mjs";
76
+ import "./token-goat-chunk-5NNYIUGV.mjs";
79
77
  import "./token-goat-chunk-DA43OE7L.mjs";
78
+ import "./token-goat-chunk-JXK2HQXS.mjs";
79
+ import "./token-goat-chunk-XI2VFAV6.mjs";
80
80
  import {
81
81
  cmdDescribe,
82
82
  cmdSessionSchema
83
- } from "./token-goat-chunk-7Y6GWTII.mjs";
84
- import "./token-goat-chunk-62IHOU6L.mjs";
85
- import "./token-goat-chunk-MDV5VWF4.mjs";
86
- import "./token-goat-chunk-MBDJR6HU.mjs";
87
- import "./token-goat-chunk-4GEDH2WU.mjs";
88
- import "./token-goat-chunk-VVROQBQJ.mjs";
89
- import "./token-goat-chunk-M6CVNHTW.mjs";
90
- import "./token-goat-chunk-G6EYO5CD.mjs";
91
- import "./token-goat-chunk-43JFN26X.mjs";
92
- import "./token-goat-chunk-D2X7XN5M.mjs";
83
+ } from "./token-goat-chunk-VE27HPIF.mjs";
84
+ import "./token-goat-chunk-6Z5ULNE5.mjs";
85
+ import "./token-goat-chunk-IZXKVT4A.mjs";
86
+ import "./token-goat-chunk-RJH64KQH.mjs";
87
+ import "./token-goat-chunk-6DQNNFJ6.mjs";
88
+ import "./token-goat-chunk-MMLMALWK.mjs";
89
+ import "./token-goat-chunk-L7SDVGBT.mjs";
90
+ import "./token-goat-chunk-6CCQDAYY.mjs";
91
+ import "./token-goat-chunk-GGLEE35R.mjs";
92
+ import "./token-goat-chunk-MAMQPC43.mjs";
93
+ import "./token-goat-chunk-HXNAC4ZF.mjs";
94
+ import "./token-goat-chunk-BJBRGPBX.mjs";
95
+ import "./token-goat-chunk-4JMWPWCS.mjs";
96
+ import "./token-goat-chunk-4RN64ZND.mjs";
97
+ import "./token-goat-chunk-MVSWBNMD.mjs";
93
98
  import "./token-goat-chunk-LKSXAMJB.mjs";
94
- import "./token-goat-chunk-WNBSCSAI.mjs";
95
- import "./token-goat-chunk-BAWKGODL.mjs";
96
- import "./token-goat-chunk-STYRLQIW.mjs";
97
- import "./token-goat-chunk-L43RKNHA.mjs";
99
+ import "./token-goat-chunk-XKY4VKJ4.mjs";
100
+ import "./token-goat-chunk-Q4S3UQGO.mjs";
101
+ import "./token-goat-chunk-RSS3TLXU.mjs";
102
+ import "./token-goat-chunk-YWSP6IU7.mjs";
98
103
  import "./token-goat-chunk-3BTK54F3.mjs";
99
- import "./token-goat-chunk-RIB6XY2V.mjs";
104
+ import "./token-goat-chunk-UBUKHVYW.mjs";
100
105
  import "./token-goat-chunk-XTQAOTSO.mjs";
101
106
  import "./token-goat-chunk-AH6QILZM.mjs";
102
- import "./token-goat-chunk-LHUP4DXZ.mjs";
103
- import "./token-goat-chunk-7EPYB34H.mjs";
104
- import "./token-goat-chunk-IKZLSRII.mjs";
105
- import "./token-goat-chunk-7SXPJOSZ.mjs";
106
- import "./token-goat-chunk-LRIZ7K3F.mjs";
107
+ import "./token-goat-chunk-66LODAUT.mjs";
108
+ import "./token-goat-chunk-D5ICEPSB.mjs";
109
+ import "./token-goat-chunk-HUDC5GS5.mjs";
110
+ import "./token-goat-chunk-M56BWPBN.mjs";
111
+ import "./token-goat-chunk-CC2PYJM7.mjs";
107
112
  import "./token-goat-chunk-EEIDFMEM.mjs";
108
113
  import "./token-goat-chunk-OSUFN2FV.mjs";
109
- import "./token-goat-chunk-6E2IDLHF.mjs";
114
+ import "./token-goat-chunk-L45ZQRT7.mjs";
110
115
  import "./token-goat-chunk-NMTKNYGF.mjs";
111
116
  import "./token-goat-chunk-Y4AFKTHK.mjs";
112
117
  import "./token-goat-chunk-GMOUBOX4.mjs";
@@ -1,25 +1,30 @@
1
1
  import { createRequire as __cjsRequire } from 'node:module';
2
2
  const require = __cjsRequire(import.meta.url);
3
3
  import {
4
+ MCP_DISABLE_NOTE,
4
5
  buildCopilotWasteReport,
5
6
  findProjectSession,
6
- isCopilotTranscript
7
- } from "./token-goat-chunk-PAV6NNY7.mjs";
7
+ isCopilotTranscript,
8
+ unusedMcpServers
9
+ } from "./token-goat-chunk-JXK2HQXS.mjs";
8
10
  import {
9
11
  buildWasteReport
10
- } from "./token-goat-chunk-62IHOU6L.mjs";
11
- import "./token-goat-chunk-VVROQBQJ.mjs";
12
- import "./token-goat-chunk-G6EYO5CD.mjs";
13
- import "./token-goat-chunk-43JFN26X.mjs";
14
- import "./token-goat-chunk-D2X7XN5M.mjs";
15
- import "./token-goat-chunk-IKZLSRII.mjs";
16
- import "./token-goat-chunk-7SXPJOSZ.mjs";
12
+ } from "./token-goat-chunk-6DQNNFJ6.mjs";
13
+ import "./token-goat-chunk-MMLMALWK.mjs";
14
+ import "./token-goat-chunk-MAMQPC43.mjs";
15
+ import "./token-goat-chunk-HXNAC4ZF.mjs";
16
+ import "./token-goat-chunk-BJBRGPBX.mjs";
17
+ import "./token-goat-chunk-4JMWPWCS.mjs";
18
+ import "./token-goat-chunk-4RN64ZND.mjs";
19
+ import "./token-goat-chunk-MVSWBNMD.mjs";
20
+ import "./token-goat-chunk-HUDC5GS5.mjs";
21
+ import "./token-goat-chunk-M56BWPBN.mjs";
17
22
  import {
18
23
  resolveProjectRoot
19
- } from "./token-goat-chunk-LRIZ7K3F.mjs";
24
+ } from "./token-goat-chunk-CC2PYJM7.mjs";
20
25
  import "./token-goat-chunk-EEIDFMEM.mjs";
21
26
  import "./token-goat-chunk-OSUFN2FV.mjs";
22
- import "./token-goat-chunk-6E2IDLHF.mjs";
27
+ import "./token-goat-chunk-L45ZQRT7.mjs";
23
28
  import {
24
29
  displaySafeJson
25
30
  } from "./token-goat-chunk-NMTKNYGF.mjs";
@@ -77,10 +82,16 @@ function buildFeedbackCardFromCopilot(report) {
77
82
  preAudit.push(
78
83
  `High fixed MCP tool definition overhead: ${details}; total ~${totalMcpTokens.toLocaleString()} tok/turn re-sent across ${turns} turn(s) (~${cumulative.toLocaleString()} cumulative tokens).`
79
84
  );
80
- const heavyNames = (heavy.length > 0 ? heavy : report.mcpTools.servers).map((s) => s.serverName).join(", ");
81
- fixes.push(
82
- `Disable unused MCP server(s) (${heavyNames}) via 'copilot mcp disable <name>' or exclude individual tools with '--excluded-tools'.`
83
- );
85
+ const unused = unusedMcpServers(report);
86
+ if (unused === null) {
87
+ const heavyNames = (heavy.length > 0 ? heavy : report.mcpTools.servers).map((s) => s.serverName).join(", ");
88
+ fixes.push(
89
+ `Disable the MCP server(s) you do not use among ${heavyNames} with 'copilot mcp disable <name>', or exclude individual tools with '--excluded-tools'. This session's log records no tool calls, so it cannot say which went unused.`
90
+ );
91
+ } else if (unused.length > 0) {
92
+ const commands = unused.map((s) => `'copilot mcp disable ${s.serverName}' (~${s.estimatedTokens.toLocaleString()} tok/turn)`).join(", ");
93
+ fixes.push(`Disable the MCP server(s) this session never called: ${commands}. ${MCP_DISABLE_NOTE}`);
94
+ }
84
95
  }
85
96
  }
86
97
  if (preAudit.length === 0) {