@sriinnu/kosha-discovery 0.5.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.
Files changed (208) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +286 -0
  3. package/dist/aliases.d.ts +51 -0
  4. package/dist/aliases.d.ts.map +1 -0
  5. package/dist/aliases.js +115 -0
  6. package/dist/aliases.js.map +1 -0
  7. package/dist/cache.d.ts +57 -0
  8. package/dist/cache.d.ts.map +1 -0
  9. package/dist/cache.js +123 -0
  10. package/dist/cache.js.map +1 -0
  11. package/dist/cli-commands.d.ts +142 -0
  12. package/dist/cli-commands.d.ts.map +1 -0
  13. package/dist/cli-commands.js +746 -0
  14. package/dist/cli-commands.js.map +1 -0
  15. package/dist/cli-format.d.ts +119 -0
  16. package/dist/cli-format.d.ts.map +1 -0
  17. package/dist/cli-format.js +171 -0
  18. package/dist/cli-format.js.map +1 -0
  19. package/dist/cli.d.ts +15 -0
  20. package/dist/cli.d.ts.map +1 -0
  21. package/dist/cli.js +143 -0
  22. package/dist/cli.js.map +1 -0
  23. package/dist/credentials/index.d.ts +2 -0
  24. package/dist/credentials/index.d.ts.map +1 -0
  25. package/dist/credentials/index.js +2 -0
  26. package/dist/credentials/index.js.map +1 -0
  27. package/dist/credentials/resolver.d.ts +170 -0
  28. package/dist/credentials/resolver.d.ts.map +1 -0
  29. package/dist/credentials/resolver.js +597 -0
  30. package/dist/credentials/resolver.js.map +1 -0
  31. package/dist/discovery/anthropic.d.ts +49 -0
  32. package/dist/discovery/anthropic.d.ts.map +1 -0
  33. package/dist/discovery/anthropic.js +101 -0
  34. package/dist/discovery/anthropic.js.map +1 -0
  35. package/dist/discovery/base.d.ts +59 -0
  36. package/dist/discovery/base.d.ts.map +1 -0
  37. package/dist/discovery/base.js +123 -0
  38. package/dist/discovery/base.js.map +1 -0
  39. package/dist/discovery/bedrock.d.ts +122 -0
  40. package/dist/discovery/bedrock.d.ts.map +1 -0
  41. package/dist/discovery/bedrock.js +356 -0
  42. package/dist/discovery/bedrock.js.map +1 -0
  43. package/dist/discovery/cerebras.d.ts +43 -0
  44. package/dist/discovery/cerebras.d.ts.map +1 -0
  45. package/dist/discovery/cerebras.js +65 -0
  46. package/dist/discovery/cerebras.js.map +1 -0
  47. package/dist/discovery/cohere.d.ts +57 -0
  48. package/dist/discovery/cohere.d.ts.map +1 -0
  49. package/dist/discovery/cohere.js +82 -0
  50. package/dist/discovery/cohere.js.map +1 -0
  51. package/dist/discovery/deepinfra.d.ts +41 -0
  52. package/dist/discovery/deepinfra.d.ts.map +1 -0
  53. package/dist/discovery/deepinfra.js +86 -0
  54. package/dist/discovery/deepinfra.js.map +1 -0
  55. package/dist/discovery/deepseek.d.ts +17 -0
  56. package/dist/discovery/deepseek.d.ts.map +1 -0
  57. package/dist/discovery/deepseek.js +45 -0
  58. package/dist/discovery/deepseek.js.map +1 -0
  59. package/dist/discovery/fireworks.d.ts +48 -0
  60. package/dist/discovery/fireworks.d.ts.map +1 -0
  61. package/dist/discovery/fireworks.js +101 -0
  62. package/dist/discovery/fireworks.js.map +1 -0
  63. package/dist/discovery/glm.d.ts +17 -0
  64. package/dist/discovery/glm.d.ts.map +1 -0
  65. package/dist/discovery/glm.js +52 -0
  66. package/dist/discovery/glm.js.map +1 -0
  67. package/dist/discovery/google.d.ts +53 -0
  68. package/dist/discovery/google.d.ts.map +1 -0
  69. package/dist/discovery/google.js +122 -0
  70. package/dist/discovery/google.js.map +1 -0
  71. package/dist/discovery/groq.d.ts +44 -0
  72. package/dist/discovery/groq.d.ts.map +1 -0
  73. package/dist/discovery/groq.js +89 -0
  74. package/dist/discovery/groq.js.map +1 -0
  75. package/dist/discovery/index.d.ts +48 -0
  76. package/dist/discovery/index.d.ts.map +1 -0
  77. package/dist/discovery/index.js +116 -0
  78. package/dist/discovery/index.js.map +1 -0
  79. package/dist/discovery/llama-cpp.d.ts +45 -0
  80. package/dist/discovery/llama-cpp.d.ts.map +1 -0
  81. package/dist/discovery/llama-cpp.js +137 -0
  82. package/dist/discovery/llama-cpp.js.map +1 -0
  83. package/dist/discovery/minimax.d.ts +16 -0
  84. package/dist/discovery/minimax.d.ts.map +1 -0
  85. package/dist/discovery/minimax.js +56 -0
  86. package/dist/discovery/minimax.js.map +1 -0
  87. package/dist/discovery/mistral.d.ts +45 -0
  88. package/dist/discovery/mistral.d.ts.map +1 -0
  89. package/dist/discovery/mistral.js +82 -0
  90. package/dist/discovery/mistral.js.map +1 -0
  91. package/dist/discovery/moonshot.d.ts +16 -0
  92. package/dist/discovery/moonshot.d.ts.map +1 -0
  93. package/dist/discovery/moonshot.js +46 -0
  94. package/dist/discovery/moonshot.js.map +1 -0
  95. package/dist/discovery/nvidia.d.ts +60 -0
  96. package/dist/discovery/nvidia.d.ts.map +1 -0
  97. package/dist/discovery/nvidia.js +145 -0
  98. package/dist/discovery/nvidia.js.map +1 -0
  99. package/dist/discovery/ollama.d.ts +57 -0
  100. package/dist/discovery/ollama.d.ts.map +1 -0
  101. package/dist/discovery/ollama.js +151 -0
  102. package/dist/discovery/ollama.js.map +1 -0
  103. package/dist/discovery/openai-compatible.d.ts +126 -0
  104. package/dist/discovery/openai-compatible.d.ts.map +1 -0
  105. package/dist/discovery/openai-compatible.js +161 -0
  106. package/dist/discovery/openai-compatible.js.map +1 -0
  107. package/dist/discovery/openai.d.ts +62 -0
  108. package/dist/discovery/openai.d.ts.map +1 -0
  109. package/dist/discovery/openai.js +157 -0
  110. package/dist/discovery/openai.js.map +1 -0
  111. package/dist/discovery/openrouter.d.ts +78 -0
  112. package/dist/discovery/openrouter.d.ts.map +1 -0
  113. package/dist/discovery/openrouter.js +184 -0
  114. package/dist/discovery/openrouter.js.map +1 -0
  115. package/dist/discovery/perplexity.d.ts +66 -0
  116. package/dist/discovery/perplexity.d.ts.map +1 -0
  117. package/dist/discovery/perplexity.js +86 -0
  118. package/dist/discovery/perplexity.js.map +1 -0
  119. package/dist/discovery/together.d.ts +41 -0
  120. package/dist/discovery/together.d.ts.map +1 -0
  121. package/dist/discovery/together.js +88 -0
  122. package/dist/discovery/together.js.map +1 -0
  123. package/dist/discovery/vertex.d.ts +146 -0
  124. package/dist/discovery/vertex.d.ts.map +1 -0
  125. package/dist/discovery/vertex.js +371 -0
  126. package/dist/discovery/vertex.js.map +1 -0
  127. package/dist/discovery/zai.d.ts +17 -0
  128. package/dist/discovery/zai.d.ts.map +1 -0
  129. package/dist/discovery/zai.js +51 -0
  130. package/dist/discovery/zai.js.map +1 -0
  131. package/dist/discovery-contract.d.ts +186 -0
  132. package/dist/discovery-contract.d.ts.map +1 -0
  133. package/dist/discovery-contract.js +115 -0
  134. package/dist/discovery-contract.js.map +1 -0
  135. package/dist/discovery-routes.d.ts +14 -0
  136. package/dist/discovery-routes.d.ts.map +1 -0
  137. package/dist/discovery-routes.js +98 -0
  138. package/dist/discovery-routes.js.map +1 -0
  139. package/dist/enrichment/index.d.ts +2 -0
  140. package/dist/enrichment/index.d.ts.map +1 -0
  141. package/dist/enrichment/index.js +2 -0
  142. package/dist/enrichment/index.js.map +1 -0
  143. package/dist/enrichment/litellm.d.ts +52 -0
  144. package/dist/enrichment/litellm.d.ts.map +1 -0
  145. package/dist/enrichment/litellm.js +205 -0
  146. package/dist/enrichment/litellm.js.map +1 -0
  147. package/dist/index.d.ts +30 -0
  148. package/dist/index.d.ts.map +1 -0
  149. package/dist/index.js +33 -0
  150. package/dist/index.js.map +1 -0
  151. package/dist/normalize.d.ts +64 -0
  152. package/dist/normalize.d.ts.map +1 -0
  153. package/dist/normalize.js +166 -0
  154. package/dist/normalize.js.map +1 -0
  155. package/dist/provider-catalog.d.ts +62 -0
  156. package/dist/provider-catalog.d.ts.map +1 -0
  157. package/dist/provider-catalog.js +331 -0
  158. package/dist/provider-catalog.js.map +1 -0
  159. package/dist/registry-delta.d.ts +17 -0
  160. package/dist/registry-delta.d.ts.map +1 -0
  161. package/dist/registry-delta.js +74 -0
  162. package/dist/registry-delta.js.map +1 -0
  163. package/dist/registry-discovery.d.ts +66 -0
  164. package/dist/registry-discovery.d.ts.map +1 -0
  165. package/dist/registry-discovery.js +339 -0
  166. package/dist/registry-discovery.js.map +1 -0
  167. package/dist/registry-query.d.ts +74 -0
  168. package/dist/registry-query.d.ts.map +1 -0
  169. package/dist/registry-query.js +310 -0
  170. package/dist/registry-query.js.map +1 -0
  171. package/dist/registry-runtime.d.ts +48 -0
  172. package/dist/registry-runtime.d.ts.map +1 -0
  173. package/dist/registry-runtime.js +255 -0
  174. package/dist/registry-runtime.js.map +1 -0
  175. package/dist/registry-selection.d.ts +31 -0
  176. package/dist/registry-selection.d.ts.map +1 -0
  177. package/dist/registry-selection.js +167 -0
  178. package/dist/registry-selection.js.map +1 -0
  179. package/dist/registry-state.d.ts +92 -0
  180. package/dist/registry-state.d.ts.map +1 -0
  181. package/dist/registry-state.js +35 -0
  182. package/dist/registry-state.js.map +1 -0
  183. package/dist/registry.d.ts +127 -0
  184. package/dist/registry.d.ts.map +1 -0
  185. package/dist/registry.js +248 -0
  186. package/dist/registry.js.map +1 -0
  187. package/dist/resilience.d.ts +212 -0
  188. package/dist/resilience.d.ts.map +1 -0
  189. package/dist/resilience.js +292 -0
  190. package/dist/resilience.js.map +1 -0
  191. package/dist/security.d.ts +44 -0
  192. package/dist/security.d.ts.map +1 -0
  193. package/dist/security.js +184 -0
  194. package/dist/security.js.map +1 -0
  195. package/dist/server.d.ts +41 -0
  196. package/dist/server.d.ts.map +1 -0
  197. package/dist/server.js +320 -0
  198. package/dist/server.js.map +1 -0
  199. package/dist/shell-safe.d.ts +15 -0
  200. package/dist/shell-safe.d.ts.map +1 -0
  201. package/dist/shell-safe.js +20 -0
  202. package/dist/shell-safe.js.map +1 -0
  203. package/dist/types.d.ts +365 -0
  204. package/dist/types.d.ts.map +1 -0
  205. package/dist/types.js +10 -0
  206. package/dist/types.js.map +1 -0
  207. package/logo.svg +81 -0
  208. package/package.json +85 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-commands.js","sourceRoot":"","sources":["../src/cli-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * cli-format.ts — ANSI color helpers, number/token formatting, and table rendering.
3
+ *
4
+ * This module is consumed by `cli-commands.ts` and provides every
5
+ * presentation-layer utility the CLI needs. It has **zero** side-effects
6
+ * (no I/O, no process manipulation) so it is safe to import anywhere.
7
+ *
8
+ * @module cli-format
9
+ */
10
+ /** Whether colour output is globally suppressed via the `NO_COLOR` env var. */
11
+ export declare const NO_COLOR: boolean;
12
+ /** ANSI SGR — bold text. */
13
+ export declare const BOLD = "\u001B[1m";
14
+ /** ANSI SGR — dim / faint text. */
15
+ export declare const DIM = "\u001B[2m";
16
+ /** ANSI SGR — reset all attributes. */
17
+ export declare const RESET = "\u001B[0m";
18
+ /** ANSI SGR — green foreground. */
19
+ export declare const GREEN = "\u001B[32m";
20
+ /** ANSI SGR — red foreground. */
21
+ export declare const RED = "\u001B[31m";
22
+ /** ANSI SGR — yellow foreground. */
23
+ export declare const YELLOW = "\u001B[33m";
24
+ /** ANSI SGR — cyan foreground. */
25
+ export declare const CYAN = "\u001B[36m";
26
+ /** ANSI SGR — magenta foreground (used for branding). */
27
+ export declare const MAGENTA = "\u001B[35m";
28
+ /**
29
+ * Wrap `text` with the given ANSI `code` and a trailing RESET.
30
+ *
31
+ * When the `NO_COLOR` environment variable is set the original text is
32
+ * returned unmodified, ensuring accessible output in minimal terminals.
33
+ *
34
+ * @param code An ANSI SGR escape sequence (e.g. `BOLD`, `GREEN`).
35
+ * @param text The plain-text string to be coloured.
36
+ * @returns The styled string, or the original string if colour is off.
37
+ */
38
+ export declare function c(code: string, text: string): string;
39
+ /**
40
+ * Format a context-window token count into a human-readable short form.
41
+ *
42
+ * - Values >= 1 000 000 are rendered as e.g. `1M` or `1.5M`.
43
+ * - Values >= 1 000 are rendered as e.g. `128K`.
44
+ * - Zero or falsy values produce an em-dash (`—`).
45
+ *
46
+ * @param tokens The raw token count.
47
+ * @returns A compact string representation.
48
+ */
49
+ export declare function formatContextWindow(tokens: number): string;
50
+ /**
51
+ * Format a per-million-token price for display.
52
+ *
53
+ * - `undefined` / `null` → em-dash (`—`).
54
+ * - `0` → the literal string `"free"`.
55
+ * - Anything else → e.g. `"$3.00"`.
56
+ *
57
+ * @param price The dollar price per million tokens, or `undefined`.
58
+ * @returns A display-ready string.
59
+ */
60
+ export declare function formatPrice(price: number | undefined): string;
61
+ /**
62
+ * Format an integer with locale-aware thousand separators.
63
+ *
64
+ * @param n The number to format.
65
+ * @returns e.g. `"1,000,000"` for `1000000`.
66
+ */
67
+ export declare function formatNumber(n: number): string;
68
+ /**
69
+ * Convert a Unix-epoch millisecond timestamp to an ISO-8601 string.
70
+ *
71
+ * @param ts Epoch timestamp in milliseconds.
72
+ * @returns An ISO-8601 date-time string.
73
+ */
74
+ export declare function formatTimestamp(ts: number): string;
75
+ /**
76
+ * Right-pad `str` to `len` visible characters.
77
+ *
78
+ * ANSI escape sequences are stripped before measuring so that styled
79
+ * strings are padded to the correct *visual* width.
80
+ *
81
+ * @param str The (possibly ANSI-styled) string.
82
+ * @param len Desired visible width.
83
+ * @returns The padded string.
84
+ */
85
+ export declare function padRight(str: string, len: number): string;
86
+ /**
87
+ * Repeat a single character `len` times to produce a horizontal rule.
88
+ *
89
+ * @param char The character to repeat (e.g. `"─"`).
90
+ * @param len How many times to repeat it.
91
+ * @returns A string of length `len`.
92
+ */
93
+ export declare function line(char: string, len: number): string;
94
+ /**
95
+ * Describes a single column in a CLI table rendered by {@link renderTable}.
96
+ */
97
+ export interface Column {
98
+ /** Column heading text. */
99
+ header: string;
100
+ /** Fixed visible width in characters. */
101
+ width: number;
102
+ /** Text alignment — defaults to `"left"`. */
103
+ align?: "left" | "right";
104
+ }
105
+ /**
106
+ * Render a fixed-width ASCII table string from column definitions and row data.
107
+ *
108
+ * The table consists of three sections:
109
+ * 1. A **bold header** row.
110
+ * 2. A dim `─` separator line.
111
+ * 3. Data rows with each cell padded / aligned according to its column spec.
112
+ *
113
+ * @param columns Ordered column definitions.
114
+ * @param rows An array of rows, where each row is an array of cell strings
115
+ * whose indices correspond to `columns`.
116
+ * @returns The fully-rendered table as a single multi-line string.
117
+ */
118
+ export declare function renderTable(columns: Column[], rows: string[][]): string;
119
+ //# sourceMappingURL=cli-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-format.d.ts","sourceRoot":"","sources":["../src/cli-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAYH,+EAA+E;AAC/E,eAAO,MAAM,QAAQ,SAAyB,CAAC;AAE/C,4BAA4B;AAC5B,eAAO,MAAM,IAAI,cAAY,CAAC;AAE9B,mCAAmC;AACnC,eAAO,MAAM,GAAG,cAAY,CAAC;AAE7B,uCAAuC;AACvC,eAAO,MAAM,KAAK,cAAY,CAAC;AAE/B,mCAAmC;AACnC,eAAO,MAAM,KAAK,eAAa,CAAC;AAEhC,iCAAiC;AACjC,eAAO,MAAM,GAAG,eAAa,CAAC;AAE9B,oCAAoC;AACpC,eAAO,MAAM,MAAM,eAAa,CAAC;AAEjC,kCAAkC;AAClC,eAAO,MAAM,IAAI,eAAa,CAAC;AAE/B,yDAAyD;AACzD,eAAO,MAAM,OAAO,eAAa,CAAC;AAMlC;;;;;;;;;GASG;AACH,wBAAgB,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAMD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAK1D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAI7D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAElD;AAMD;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAKzD;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAMD;;GAEG;AACH,MAAM,WAAW,MAAM;IACtB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAuBvE"}
@@ -0,0 +1,171 @@
1
+ /**
2
+ * cli-format.ts — ANSI color helpers, number/token formatting, and table rendering.
3
+ *
4
+ * This module is consumed by `cli-commands.ts` and provides every
5
+ * presentation-layer utility the CLI needs. It has **zero** side-effects
6
+ * (no I/O, no process manipulation) so it is safe to import anywhere.
7
+ *
8
+ * @module cli-format
9
+ */
10
+ // ---------------------------------------------------------------------------
11
+ // ANSI escape-code constants
12
+ //
13
+ // Each constant holds a raw ANSI SGR sequence. They are intentionally
14
+ // exported so that command modules can compose ad-hoc styled strings
15
+ // without pulling in a third-party chalk-like dependency.
16
+ //
17
+ // Respect the `NO_COLOR` environment variable (https://no-color.org/).
18
+ // ---------------------------------------------------------------------------
19
+ /** Whether colour output is globally suppressed via the `NO_COLOR` env var. */
20
+ export const NO_COLOR = !!process.env.NO_COLOR;
21
+ /** ANSI SGR — bold text. */
22
+ export const BOLD = "\x1b[1m";
23
+ /** ANSI SGR — dim / faint text. */
24
+ export const DIM = "\x1b[2m";
25
+ /** ANSI SGR — reset all attributes. */
26
+ export const RESET = "\x1b[0m";
27
+ /** ANSI SGR — green foreground. */
28
+ export const GREEN = "\x1b[32m";
29
+ /** ANSI SGR — red foreground. */
30
+ export const RED = "\x1b[31m";
31
+ /** ANSI SGR — yellow foreground. */
32
+ export const YELLOW = "\x1b[33m";
33
+ /** ANSI SGR — cyan foreground. */
34
+ export const CYAN = "\x1b[36m";
35
+ /** ANSI SGR — magenta foreground (used for branding). */
36
+ export const MAGENTA = "\x1b[35m";
37
+ // ---------------------------------------------------------------------------
38
+ // Colour helper
39
+ // ---------------------------------------------------------------------------
40
+ /**
41
+ * Wrap `text` with the given ANSI `code` and a trailing RESET.
42
+ *
43
+ * When the `NO_COLOR` environment variable is set the original text is
44
+ * returned unmodified, ensuring accessible output in minimal terminals.
45
+ *
46
+ * @param code An ANSI SGR escape sequence (e.g. `BOLD`, `GREEN`).
47
+ * @param text The plain-text string to be coloured.
48
+ * @returns The styled string, or the original string if colour is off.
49
+ */
50
+ export function c(code, text) {
51
+ return NO_COLOR ? text : code + text + RESET;
52
+ }
53
+ // ---------------------------------------------------------------------------
54
+ // Numeric / token-count formatters
55
+ // ---------------------------------------------------------------------------
56
+ /**
57
+ * Format a context-window token count into a human-readable short form.
58
+ *
59
+ * - Values >= 1 000 000 are rendered as e.g. `1M` or `1.5M`.
60
+ * - Values >= 1 000 are rendered as e.g. `128K`.
61
+ * - Zero or falsy values produce an em-dash (`—`).
62
+ *
63
+ * @param tokens The raw token count.
64
+ * @returns A compact string representation.
65
+ */
66
+ export function formatContextWindow(tokens) {
67
+ if (!tokens || tokens === 0)
68
+ return "\u2014";
69
+ if (tokens >= 1_000_000)
70
+ return `${(tokens / 1_000_000).toFixed(tokens % 1_000_000 === 0 ? 0 : 1)}M`;
71
+ if (tokens >= 1_000)
72
+ return `${(tokens / 1_000).toFixed(tokens % 1_000 === 0 ? 0 : 1)}K`;
73
+ return String(tokens);
74
+ }
75
+ /**
76
+ * Format a per-million-token price for display.
77
+ *
78
+ * - `undefined` / `null` → em-dash (`—`).
79
+ * - `0` → the literal string `"free"`.
80
+ * - Anything else → e.g. `"$3.00"`.
81
+ *
82
+ * @param price The dollar price per million tokens, or `undefined`.
83
+ * @returns A display-ready string.
84
+ */
85
+ export function formatPrice(price) {
86
+ if (price === undefined || price === null)
87
+ return "\u2014";
88
+ if (price === 0)
89
+ return "free";
90
+ return `$${price.toFixed(2)}`;
91
+ }
92
+ /**
93
+ * Format an integer with locale-aware thousand separators.
94
+ *
95
+ * @param n The number to format.
96
+ * @returns e.g. `"1,000,000"` for `1000000`.
97
+ */
98
+ export function formatNumber(n) {
99
+ return n.toLocaleString("en-US");
100
+ }
101
+ /**
102
+ * Convert a Unix-epoch millisecond timestamp to an ISO-8601 string.
103
+ *
104
+ * @param ts Epoch timestamp in milliseconds.
105
+ * @returns An ISO-8601 date-time string.
106
+ */
107
+ export function formatTimestamp(ts) {
108
+ return new Date(ts).toISOString();
109
+ }
110
+ // ---------------------------------------------------------------------------
111
+ // String-padding helpers
112
+ // ---------------------------------------------------------------------------
113
+ /**
114
+ * Right-pad `str` to `len` visible characters.
115
+ *
116
+ * ANSI escape sequences are stripped before measuring so that styled
117
+ * strings are padded to the correct *visual* width.
118
+ *
119
+ * @param str The (possibly ANSI-styled) string.
120
+ * @param len Desired visible width.
121
+ * @returns The padded string.
122
+ */
123
+ export function padRight(str, len) {
124
+ // Strip ANSI codes for length calculation
125
+ const plainLen = str.replace(/\x1b\[[0-9;]*m/g, "").length;
126
+ if (plainLen >= len)
127
+ return str;
128
+ return str + " ".repeat(len - plainLen);
129
+ }
130
+ /**
131
+ * Repeat a single character `len` times to produce a horizontal rule.
132
+ *
133
+ * @param char The character to repeat (e.g. `"─"`).
134
+ * @param len How many times to repeat it.
135
+ * @returns A string of length `len`.
136
+ */
137
+ export function line(char, len) {
138
+ return char.repeat(len);
139
+ }
140
+ /**
141
+ * Render a fixed-width ASCII table string from column definitions and row data.
142
+ *
143
+ * The table consists of three sections:
144
+ * 1. A **bold header** row.
145
+ * 2. A dim `─` separator line.
146
+ * 3. Data rows with each cell padded / aligned according to its column spec.
147
+ *
148
+ * @param columns Ordered column definitions.
149
+ * @param rows An array of rows, where each row is an array of cell strings
150
+ * whose indices correspond to `columns`.
151
+ * @returns The fully-rendered table as a single multi-line string.
152
+ */
153
+ export function renderTable(columns, rows) {
154
+ const lines = [];
155
+ // Header row — bold, aligned per column spec
156
+ const headerParts = columns.map((col) => col.align === "right" ? col.header.padStart(col.width) : padRight(c(BOLD, col.header), col.width));
157
+ lines.push(headerParts.join(" "));
158
+ // Separator row — dim horizontal rules matching each column width
159
+ const sepParts = columns.map((col) => line("\u2500", col.width));
160
+ lines.push(c(DIM, sepParts.join(" ")));
161
+ // Data rows
162
+ for (const row of rows) {
163
+ const parts = columns.map((col, i) => {
164
+ const cell = row[i] ?? "";
165
+ return col.align === "right" ? cell.padStart(col.width) : padRight(cell, col.width);
166
+ });
167
+ lines.push(parts.join(" "));
168
+ }
169
+ return lines.join("\n");
170
+ }
171
+ //# sourceMappingURL=cli-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-format.js","sourceRoot":"","sources":["../src/cli-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,8EAA8E;AAC9E,8BAA8B;AAC9B,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,2DAA2D;AAC3D,EAAE;AACF,wEAAwE;AACxE,8EAA8E;AAE9E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE/C,4BAA4B;AAC5B,MAAM,CAAC,MAAM,IAAI,GAAG,SAAS,CAAC;AAE9B,mCAAmC;AACnC,MAAM,CAAC,MAAM,GAAG,GAAG,SAAS,CAAC;AAE7B,uCAAuC;AACvC,MAAM,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC;AAE/B,mCAAmC;AACnC,MAAM,CAAC,MAAM,KAAK,GAAG,UAAU,CAAC;AAEhC,iCAAiC;AACjC,MAAM,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC;AAE9B,oCAAoC;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;AAEjC,kCAAkC;AAClC,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC;AAE/B,yDAAyD;AACzD,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC;AAElC,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,CAAC,CAAC,IAAY,EAAE,IAAY;IAC3C,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAC9C,CAAC;AAED,8EAA8E;AAC9E,oCAAoC;AACpC,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IACjD,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7C,IAAI,MAAM,IAAI,SAAS;QAAE,OAAO,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACrG,IAAI,MAAM,IAAI,KAAK;QAAE,OAAO,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACzF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,KAAyB;IACpD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3D,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS;IACrC,OAAO,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,EAAU;IACzC,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AACnC,CAAC;AAED,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,GAAW;IAChD,0CAA0C;IAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IAC3D,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IAChC,OAAO,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,GAAW;IAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAkBD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CAAC,OAAiB,EAAE,IAAgB;IAC9D,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,6CAA6C;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACvC,GAAG,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CACjG,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAElC,kEAAkE;IAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEvC,YAAY;IACZ,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC"}
package/dist/cli.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * cli.ts — Entry point for the kosha CLI.
4
+ *
5
+ * This module is intentionally minimal: it parses raw `process.argv`,
6
+ * routes to the appropriate command handler in `./cli-commands.js`, and
7
+ * handles top-level errors.
8
+ *
9
+ * TypeScript 5.7+ preserves the shebang comment in compiled output, so
10
+ * the built `.js` file can be executed directly as `./cli.js` on Unix.
11
+ *
12
+ * @module cli
13
+ */
14
+ export {};
15
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG"}
package/dist/cli.js ADDED
@@ -0,0 +1,143 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * cli.ts — Entry point for the kosha CLI.
4
+ *
5
+ * This module is intentionally minimal: it parses raw `process.argv`,
6
+ * routes to the appropriate command handler in `./cli-commands.js`, and
7
+ * handles top-level errors.
8
+ *
9
+ * TypeScript 5.7+ preserves the shebang comment in compiled output, so
10
+ * the built `.js` file can be executed directly as `./cli.js` on Unix.
11
+ *
12
+ * @module cli
13
+ */
14
+ import { ModelRegistry } from "./registry.js";
15
+ import { DIM, RED, c } from "./cli-format.js";
16
+ import { cmdCapabilities, cmdCapable, cmdCheapest, cmdDiscover, cmdLatest, cmdList, cmdModel, cmdProviders, cmdRefresh, cmdResolve, cmdRoles, cmdRoutes, cmdSearch, cmdServe, showHelp, showSplash, showVersion, } from "./cli-commands.js";
17
+ /**
18
+ * Parse a raw argv slice into positional tokens and named flags.
19
+ *
20
+ * Flags are identified by the `--` prefix. If the token immediately
21
+ * following a flag does **not** start with `--`, it is consumed as the
22
+ * flag's value; otherwise the flag is treated as a boolean `true`.
23
+ *
24
+ * @param argv The argument array, typically `process.argv.slice(2)`.
25
+ * @returns A {@link ParsedArgs} object.
26
+ */
27
+ function parseArgs(argv) {
28
+ const positional = [];
29
+ const flags = {};
30
+ let i = 0;
31
+ while (i < argv.length) {
32
+ const arg = argv[i];
33
+ if (arg.startsWith("--")) {
34
+ const key = arg.slice(2);
35
+ const next = argv[i + 1];
36
+ // If the next token exists and is not itself a flag, treat it as
37
+ // the value for this flag; otherwise mark the flag as boolean true.
38
+ if (next && !next.startsWith("--")) {
39
+ flags[key] = next;
40
+ i += 2;
41
+ }
42
+ else {
43
+ flags[key] = true;
44
+ i += 1;
45
+ }
46
+ }
47
+ else {
48
+ positional.push(arg);
49
+ i += 1;
50
+ }
51
+ }
52
+ return { positional, flags };
53
+ }
54
+ // ---------------------------------------------------------------------------
55
+ // Main entry point
56
+ // ---------------------------------------------------------------------------
57
+ /**
58
+ * Top-level CLI dispatcher.
59
+ *
60
+ * Parses arguments, checks for global flags (`--help`, `--version`),
61
+ * then routes to the matching command handler. Commands that need the
62
+ * registry create a shared {@link ModelRegistry} instance.
63
+ */
64
+ async function main() {
65
+ const { positional, flags } = parseArgs(process.argv.slice(2));
66
+ const command = positional[0];
67
+ // Global flags — handled before any command
68
+ if (flags.help || command === "help") {
69
+ showHelp();
70
+ return;
71
+ }
72
+ if (flags.version) {
73
+ showVersion();
74
+ return;
75
+ }
76
+ if (!command) {
77
+ showSplash();
78
+ return;
79
+ }
80
+ // The serve command does not need the registry pre-loaded
81
+ if (command === "serve") {
82
+ await cmdServe(flags);
83
+ return;
84
+ }
85
+ // All remaining commands operate on a shared registry instance
86
+ const registry = new ModelRegistry();
87
+ switch (command) {
88
+ case "discover":
89
+ await cmdDiscover(registry, flags);
90
+ break;
91
+ case "latest":
92
+ await cmdLatest(registry, flags);
93
+ break;
94
+ case "list":
95
+ case "ls":
96
+ await cmdList(registry, flags);
97
+ break;
98
+ case "search":
99
+ case "find":
100
+ await cmdSearch(registry, positional[1] ?? "", flags);
101
+ break;
102
+ case "roles":
103
+ await cmdRoles(registry, flags);
104
+ break;
105
+ case "capabilities":
106
+ case "caps":
107
+ await cmdCapabilities(registry, flags);
108
+ break;
109
+ case "capable":
110
+ await cmdCapable(registry, positional[1] ?? "", flags);
111
+ break;
112
+ case "cheapest":
113
+ await cmdCheapest(registry, flags);
114
+ break;
115
+ case "model":
116
+ case "info":
117
+ case "show":
118
+ await cmdModel(registry, positional[1] ?? "", flags);
119
+ break;
120
+ case "providers":
121
+ await cmdProviders(registry, flags);
122
+ break;
123
+ case "routes":
124
+ await cmdRoutes(registry, positional[1] ?? "", flags);
125
+ break;
126
+ case "resolve":
127
+ await cmdResolve(registry, positional[1] ?? "", flags);
128
+ break;
129
+ case "refresh":
130
+ await cmdRefresh(registry, flags);
131
+ break;
132
+ default:
133
+ console.error(c(RED, `Unknown command: "${command}"`));
134
+ console.error(c(DIM, 'Run "kosha --help" for usage information.'));
135
+ process.exit(1);
136
+ }
137
+ }
138
+ // Kick off and handle unhandled rejections with a clean error message
139
+ main().catch((err) => {
140
+ console.error(c(RED, `Error: ${err.message}`));
141
+ process.exit(1);
142
+ });
143
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { CredentialResolver } from "./resolver.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/credentials/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { CredentialResolver } from "./resolver.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/credentials/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}