@runyarddev/hw-mcp 1.0.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.
@@ -0,0 +1,3 @@
1
+ import type { DetectResult } from './types.js';
2
+ export declare function detectHardware(): Promise<DetectResult>;
3
+ //# sourceMappingURL=detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,YAAY,CAAC;AA2GxD,wBAAsB,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAiD5D"}
package/dist/detect.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r=e(t),i=0;i<r.length;i++)"default"!==r[i]&&__createBinding(n,t,r[i]);return __setModuleDefault(n,t),n}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.detectHardware=detectHardware;const child_process_1=require("child_process"),os=__importStar(require("os")),gpu_list_js_1=require("./gpu-list.js");function run(e){try{return(0,child_process_1.execSync)(e,{timeout:8e3,encoding:"utf8",stdio:["pipe","pipe","pipe"]})}catch{return""}}function platform(){const e=os.platform();return"win32"===e?"windows":"darwin"===e?"mac":"linux"}function detectNvidia(){const e=run("nvidia-smi --query-gpu=name,memory.total --format=csv,noheader,nounits");if(!e.trim())return null;const t=e.trim().split("\n"),[n,r]=t[0].split(",").map(e=>e.trim());return n?{name:n,vram:r?Math.round(parseInt(r)/1024):0}:null}function detectWindowsGpu(){const e=run("wmic path win32_VideoController get Name,AdapterRAM /format:csv");if(!e.trim())return null;for(const t of e.split("\n")){const e=t.split(",");if(e.length<3)continue;const n=e[2]?.trim(),r=e[1]?.trim();if(n&&"Name"!==n)return{name:n,vram:r?Math.round(parseInt(r)/1024**3):0}}return null}function detectMacGpu(){const e=run("system_profiler SPDisplaysDataType");if(!e.trim())return null;const t=/apple m\d/i.test(os.cpus()[0]?.model??""),n=e.match(/Chipset Model:\s*(.+)/i),r=n?n[1].trim():"Unknown GPU",i=e.match(/VRAM[^:]*:\s*(\d+)\s*(MB|GB)/i);let a=0;return i&&(a=parseInt(i[1]),"MB"===i[2].toUpperCase()&&(a=Math.round(a/1024))),t&&0===a&&(a=Math.round(os.totalmem()/1024**3)),{name:r,vram:a,isAppleSilicon:t}}function detectLinuxGpu(){const e=run('glxinfo -B 2>/dev/null | grep "OpenGL renderer"');if(e){const t=e.match(/OpenGL renderer string:\s*(.+)/i);if(t)return{name:t[1].trim(),vram:0}}const t=run("lspci | grep -i vga");if(t){const e=t.match(/VGA[^:]*:\s*(.+)/i);if(e)return{name:e[1].trim(),vram:0}}return null}function detectCpu(){const e=os.cpus().length;return{cpu:(os.cpus()[0]?.model?.trim()??"Unknown CPU").replace(/\s+/g," ").substring(0,50),cores:e}}function classifyBackend(e,t){const n=e.toLowerCase();return t||/apple m\d|m1|m2|m3|m4|m5/.test(n)?"Metal":/rtx|gtx|nvidia|geforce|quadro|tesla|a100|h100/.test(n)?"CUDA":/radeon|rx \d|vega|polaris|navi/.test(n)?"ROCm":/arc a\d/.test(n)?"SYCL":/arm|aarch|mali|adreno/.test(n)?"CPU ARM":"CPU x86"}async function detectHardware(){const e=[],t=platform(),n=Math.round(os.totalmem()/1024**3),{cpu:r,cores:i}=detectCpu();let a="Unknown GPU",o=0,s=!1;const c=detectNvidia();if(c)a=c.name,o=c.vram;else if("windows"===t){const t=detectWindowsGpu();t?(a=t.name,o=t.vram):e.push("wmic GPU detection failed — ensure you are running as Administrator")}else if("mac"===t){const t=detectMacGpu();t?(a=t.name,o=t.vram,s=t.isAppleSilicon):e.push("system_profiler failed — GPU info unavailable")}else{const t=detectLinuxGpu();t?(a=t.name,o=t.vram):e.push("GPU detection failed on Linux — try installing nvidia-smi or glxinfo")}const u=(0,gpu_list_js_1.matchGpu)(a);return u&&(a=u.name,u.vram>0&&(o=u.vram)),s&&0===o&&(o=n),{hw:{cpu:r,cores:i,ram:n,gpu:a,vram:o,backend:classifyBackend(a,s)},method:"system-commands",warnings:e}}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.js","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export interface GpuEntry {
2
+ name: string;
3
+ vram: number;
4
+ }
5
+ export interface GpuGroup {
6
+ label: string;
7
+ options: GpuEntry[];
8
+ }
9
+ export declare const GPU_GROUPS: GpuGroup[];
10
+ export declare const ALL_GPUS: GpuEntry[];
11
+ /** Find the best GPU match from a raw string (e.g. from nvidia-smi or system_profiler) */
12
+ export declare function matchGpu(raw: string): GpuEntry | null;
13
+ //# sourceMappingURL=gpu-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-list.d.ts","sourceRoot":"","sources":["../src/gpu-list.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,QAAQ;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACxD,MAAM,WAAW,QAAQ;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,QAAQ,EAAE,CAAA;CAAE;AAEhE,eAAO,MAAM,UAAU,EAAE,QAAQ,EA+EhC,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,QAAQ,EAAuC,CAAC;AAEvE,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAMrD"}
@@ -0,0 +1 @@
1
+ "use strict";function matchGpu(a){const m=a.toLowerCase();return exports.ALL_GPUS.find(a=>m.includes(a.name.toLowerCase()))||null}Object.defineProperty(exports,"__esModule",{value:!0}),exports.ALL_GPUS=exports.GPU_GROUPS=void 0,exports.matchGpu=matchGpu,exports.GPU_GROUPS=[{label:"Apple Silicon",options:[{name:"M5 Max",vram:36},{name:"M5 Pro",vram:24},{name:"M5",vram:16},{name:"M4 Max",vram:36},{name:"M4 Pro",vram:24},{name:"M4",vram:16},{name:"M3 Ultra",vram:96},{name:"M3 Max",vram:36},{name:"M3 Pro",vram:18},{name:"M3",vram:8},{name:"M2 Ultra",vram:64},{name:"M2 Max",vram:32},{name:"M2 Pro",vram:16},{name:"M2",vram:8},{name:"M1 Ultra",vram:64},{name:"M1 Max",vram:32},{name:"M1 Pro",vram:16},{name:"M1",vram:8}]},{label:"NVIDIA RTX 50",options:[{name:"RTX 5090",vram:32},{name:"RTX 5080",vram:16},{name:"RTX 5070 Ti",vram:16},{name:"RTX 5070",vram:12},{name:"RTX 5060 Ti 16GB",vram:16},{name:"RTX 5060 Ti",vram:8},{name:"RTX 5060",vram:8},{name:"RTX 5050",vram:8},{name:"RTX 5090 Laptop",vram:24},{name:"RTX 5080 Laptop",vram:16},{name:"RTX 5070 Ti Laptop",vram:12},{name:"RTX 5070 Laptop",vram:8},{name:"RTX 5060 Laptop",vram:8},{name:"RTX 5050 Laptop",vram:8}]},{label:"NVIDIA RTX 40",options:[{name:"RTX 4090",vram:24},{name:"RTX 4080 SUPER",vram:16},{name:"RTX 4080",vram:16},{name:"RTX 4070 Ti SUPER",vram:16},{name:"RTX 4070 Ti",vram:12},{name:"RTX 4070 SUPER",vram:12},{name:"RTX 4070",vram:12},{name:"RTX 4060 Ti 16GB",vram:16},{name:"RTX 4060 Ti",vram:8},{name:"RTX 4060",vram:8},{name:"RTX 4090 Laptop",vram:16},{name:"RTX 4080 Laptop",vram:12},{name:"RTX 4070 Laptop",vram:8},{name:"RTX 4060 Laptop",vram:8},{name:"RTX 4050 Laptop",vram:6}]},{label:"NVIDIA RTX 30",options:[{name:"RTX 3090 Ti",vram:24},{name:"RTX 3090",vram:24},{name:"RTX 3080 Ti",vram:12},{name:"RTX 3080 12GB",vram:12},{name:"RTX 3080",vram:10},{name:"RTX 3070 Ti",vram:8},{name:"RTX 3070",vram:8},{name:"RTX 3060 Ti",vram:8},{name:"RTX 3060",vram:12},{name:"RTX 3050",vram:8},{name:"RTX 3080 Ti Laptop",vram:16},{name:"RTX 3080 Laptop",vram:16},{name:"RTX 3070 Ti Laptop",vram:8},{name:"RTX 3070 Laptop",vram:8},{name:"RTX 3060 Laptop",vram:6},{name:"RTX 3050 Ti Laptop",vram:4},{name:"RTX 3050 Laptop",vram:4},{name:"RTX 3050 6GB",vram:6}]},{label:"NVIDIA RTX 20",options:[{name:"RTX 2080 Ti",vram:11},{name:"RTX 2080 SUPER",vram:8},{name:"RTX 2080",vram:8},{name:"RTX 2070 SUPER",vram:8},{name:"RTX 2070",vram:8},{name:"RTX 2060 SUPER",vram:8},{name:"RTX 2060",vram:6},{name:"RTX 2060 12GB",vram:12}]},{label:"NVIDIA GTX 16",options:[{name:"GTX 1660 Ti",vram:6},{name:"GTX 1660 SUPER",vram:6},{name:"GTX 1660",vram:6},{name:"GTX 1650 SUPER",vram:4},{name:"GTX 1650 Ti",vram:4},{name:"GTX 1650",vram:4},{name:"GTX 1630",vram:4}]},{label:"NVIDIA GTX 10",options:[{name:"GTX 1080 Ti",vram:11},{name:"GTX 1080",vram:8},{name:"GTX 1070 Ti",vram:8},{name:"GTX 1070",vram:8},{name:"GTX 1060 6GB",vram:6},{name:"GTX 1060 3GB",vram:3},{name:"GTX 1050 Ti",vram:4},{name:"GTX 1050",vram:2}]},{label:"NVIDIA Pro / Datacenter",options:[{name:"RTX PRO 6000",vram:96},{name:"RTX 6000 Ada",vram:48},{name:"RTX 5000 Ada",vram:32},{name:"RTX A6000",vram:48},{name:"RTX A5000",vram:24},{name:"RTX A4000",vram:16},{name:"A100",vram:80},{name:"H100",vram:80},{name:"GH200",vram:96},{name:"L40S",vram:48},{name:"L4",vram:24},{name:"T4",vram:16}]},{label:"AMD RX 9000",options:[{name:"RX 9070 XT",vram:16},{name:"RX 9070",vram:16}]},{label:"AMD RX 7000",options:[{name:"RX 7900 XTX",vram:24},{name:"RX 7900 XT",vram:20},{name:"RX 7800 XT",vram:16},{name:"RX 7700 XT",vram:12},{name:"RX 7600 XT",vram:16},{name:"RX 7600",vram:8}]},{label:"AMD RX 6000",options:[{name:"RX 6900 XT",vram:16},{name:"RX 6800 XT",vram:16},{name:"RX 6800",vram:16},{name:"RX 6700 XT",vram:12},{name:"RX 6600 XT",vram:8},{name:"RX 6600",vram:8}]},{label:"AMD RX 5000 / Older",options:[{name:"RX 5700 XT",vram:8},{name:"RX 5700",vram:8},{name:"RX 5600 XT",vram:6},{name:"RX 580",vram:8},{name:"RX 570",vram:4},{name:"Radeon VII",vram:16}]},{label:"AMD Integrated",options:[{name:"Ryzen AI MAX+ 395",vram:96},{name:"Radeon 890M",vram:0},{name:"Radeon 780M",vram:0},{name:"Vega 8",vram:0}]},{label:"Intel Arc",options:[{name:"Arc A770",vram:16},{name:"Arc A750",vram:8},{name:"Arc A580",vram:8},{name:"Arc A380",vram:6}]},{label:"Intel Integrated",options:[{name:"Iris Xe",vram:0},{name:"Iris Plus",vram:0},{name:"UHD 770",vram:0},{name:"UHD Graphics 630",vram:0}]}],exports.ALL_GPUS=exports.GPU_GROUPS.flatMap(a=>a.options);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-list.js","sourceRoot":"","sources":["../src/gpu-list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index_js_1=require("@modelcontextprotocol/sdk/server/index.js"),stdio_js_1=require("@modelcontextprotocol/sdk/server/stdio.js"),types_js_1=require("@modelcontextprotocol/sdk/types.js"),zod_1=require("zod"),detect_js_1=require("./detect.js"),score_js_1=require("./score.js"),models_js_1=require("./models.js"),HWSpecsSchema=zod_1.z.object({cpu:zod_1.z.string(),cores:zod_1.z.number(),ram:zod_1.z.number(),gpu:zod_1.z.string(),vram:zod_1.z.number(),backend:zod_1.z.string()}),USE_CASES=Object.keys(score_js_1.UC_WEIGHTS),TOOLS=[{name:"detect_hardware",description:["Auto-detect the current machine's GPU, VRAM, RAM, CPU, core count, and compute backend","(CUDA / Metal / ROCm / SYCL / CPU). Uses nvidia-smi, wmic, system_profiler, or","lspci depending on platform. Returns a HWSpecs object ready to pass to score_models."].join(" "),inputSchema:{type:"object",properties:{},required:[]}},{name:"score_models",description:["Score and rank all 900+ LLMs from the Runyard catalog against the provided hardware specs.","Returns models sorted by composite score (0-100). Includes quantization used, estimated","tokens/sec, memory footprint, fit level (Perfect/Good/Marginal/TooTight), and run mode.","Optionally filter by use_case and limit the result count."].join(" "),inputSchema:{type:"object",properties:{hw:{type:"object",description:"HWSpecs from detect_hardware or parse_hardware_text",properties:{cpu:{type:"string"},cores:{type:"number"},ram:{type:"number",description:"System RAM in GB"},gpu:{type:"string"},vram:{type:"number",description:"VRAM in GB (0 = no discrete GPU)"},backend:{type:"string",enum:["CUDA","Metal","ROCm","SYCL","CPU ARM","CPU x86"]}},required:["cpu","cores","ram","gpu","vram","backend"]},use_case:{type:"string",description:"Filter models by use case",enum:USE_CASES},fit_filter:{type:"string",description:"Only return models with this fit level or better",enum:["all","Perfect","Good","Marginal"]},limit:{type:"number",description:"Maximum number of models to return (default 20, max 100)"}},required:["hw"]}},{name:"recommend_model",description:["Given hardware specs and a target use case, return the single best LLM recommendation","with a plain-English explanation of why it was chosen, the ollama pull command,",'and alternatives. Ideal for agents that need a direct answer: "what should I run?"'].join(" "),inputSchema:{type:"object",properties:{hw:{type:"object",description:"HWSpecs from detect_hardware or parse_hardware_text",properties:{cpu:{type:"string"},cores:{type:"number"},ram:{type:"number"},gpu:{type:"string"},vram:{type:"number"},backend:{type:"string"}},required:["cpu","cores","ram","gpu","vram","backend"]},use_case:{type:"string",description:"What will this model be used for?",enum:USE_CASES},priority:{type:"string",description:"What to optimise for",enum:["balanced","quality","speed","memory"]}},required:["hw","use_case"]}},{name:"parse_hardware_text",description:["Parse raw terminal output (nvidia-smi, wmic, /proc/cpuinfo, system_profiler, lspci, etc.)","into a structured HWSpecs object. Use this when the agent already has system output","as text and wants to avoid running additional commands."].join(" "),inputSchema:{type:"object",properties:{text:{type:"string",description:"Raw text output from nvidia-smi, wmic, /proc/cpuinfo, or similar"}},required:["text"]}}];function scoreAll(e,t,r,o=20){let s=models_js_1.ALL_MODELS.map(t=>(0,score_js_1.scoreModel)(t,e));if(t&&(s=s.filter(e=>e.use===t)),r&&"all"!==r){const e=["Perfect","Good","Marginal","TooTight"],t=e.indexOf(r);s=s.filter(r=>e.indexOf(r.fitLevel)<=t)}return s.sort((e,t)=>t.composite-e.composite).slice(0,Math.min(o,100))}function buildRecommendation(e,t,r="balanced"){let o=models_js_1.ALL_MODELS.filter(e=>e.use===t||"General"===t).map(t=>{const o=(0,score_js_1.scoreModel)(t,e);return"quality"===r&&(o.composite=Math.round(.7*o.qualScore+.2*o.fitScore+.1*o.speedScore)),"speed"===r&&(o.composite=Math.round(.6*o.speedScore+.3*o.fitScore+.1*o.qualScore)),"memory"===r&&(o.composite=Math.round(.6*o.fitScore+.3*o.qualScore+.1*o.speedScore)),o}).filter(e=>"TooTight"!==e.fitLevel).sort((e,t)=>t.composite-e.composite);0===o.length&&(o=models_js_1.ALL_MODELS.map(t=>(0,score_js_1.scoreModel)(t,e)).sort((e,t)=>t.composite-e.composite));const s=o[0],n=o.slice(1,4),a=e.vram>0?`${s.memGB}GB of your ${e.vram}GB VRAM (${s.memPct}%)`:`${s.memGB}GB of your ${e.ram}GB RAM (${s.memPct}%)`,i=[`**${s.name}** (${s.provider}) is the best match for ${t} on your ${e.gpu}.`,`It runs at ${s.quant.name} quantization using ${a}, `,`delivering ~${s.tokS} tokens/sec via ${s.runMode} on ${e.backend}.`,"Perfect"===s.fitLevel?"Memory fit is Perfect — plenty of headroom.":"Good"===s.fitLevel?"Memory fit is Good — comfortable headroom.":"Memory fit is Marginal — may need to close other apps."].join("");return{recommendation:{name:s.name,provider:s.provider,params:s.params,use:s.use,quant:s.quant.name,runMode:s.runMode,fitLevel:s.fitLevel,tokS:s.tokS,memGB:s.memGB,memPct:s.memPct,composite:s.composite,ollamaCmd:s.ollamaTag?`ollama run ${s.ollamaTag}`:null,hfRepo:s.hfRepo??null},explanation:i,alternatives:n.map(e=>({name:e.name,provider:e.provider,quant:e.quant.name,tokS:e.tokS,memGB:e.memGB,fitLevel:e.fitLevel,composite:e.composite,ollamaCmd:e.ollamaTag?`ollama run ${e.ollamaTag}`:null})),hardware_summary:{gpu:e.gpu,vram:e.vram,ram:e.ram,backend:e.backend}}}const server=new index_js_1.Server({name:"runyard-hw-mcp",version:"1.0.0"},{capabilities:{tools:{}}});async function main(){const e=new stdio_js_1.StdioServerTransport;await server.connect(e),process.stderr.write("Runyard Hardware MCP server running on stdio\n")}server.setRequestHandler(types_js_1.ListToolsRequestSchema,async()=>({tools:TOOLS})),server.setRequestHandler(types_js_1.CallToolRequestSchema,async e=>{const{name:t,arguments:r}=e.params;try{if("detect_hardware"===t){const e=await(0,detect_js_1.detectHardware)();return{content:[{type:"text",text:JSON.stringify(e,null,2)}]}}if("score_models"===t){const{hw:e,use_case:t,fit_filter:o,limit:s}=r,n=HWSpecsSchema.parse(e),a=scoreAll(n,t,o,s??20);return{content:[{type:"text",text:JSON.stringify({count:a.length,hardware:n,models:a},null,2)}]}}if("recommend_model"===t){const{hw:e,use_case:t,priority:o}=r,s=buildRecommendation(HWSpecsSchema.parse(e),t,o);return{content:[{type:"text",text:JSON.stringify(s,null,2)}]}}if("parse_hardware_text"===t){const{text:e}=r;if(!e||"string"!=typeof e)throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams,"`text` is required");const t=(0,score_js_1.parseHardwareText)(e);return{content:[{type:"text",text:JSON.stringify({hw:t,note:"Pass this hw object to score_models or recommend_model"},null,2)}]}}throw new types_js_1.McpError(types_js_1.ErrorCode.MethodNotFound,`Unknown tool: ${t}`)}catch(e){if(e instanceof types_js_1.McpError)throw e;if(e instanceof zod_1.z.ZodError)throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams,`Invalid params: ${e.message}`);throw new types_js_1.McpError(types_js_1.ErrorCode.InternalError,`Tool error: ${e.message}`)}}),main().catch(e=>{process.stderr.write(`Fatal: ${e.message}\n`),process.exit(1)});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { LLMModel } from './types.js';
2
+ export declare const CURATED_MODELS: LLMModel[];
3
+ export declare const ALL_MODELS: LLMModel[];
4
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C,eAAO,MAAM,cAAc,EAAE,QAAQ,EAqDpC,CAAC;AA0DF,eAAO,MAAM,UAAU,EAAE,QAAQ,EAAqC,CAAC"}
package/dist/models.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,a,r,t){void 0===t&&(t=r);var o=Object.getOwnPropertyDescriptor(a,r);o&&!("get"in o?!a.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return a[r]}}),Object.defineProperty(e,t,o)}:function(e,a,r,t){void 0===t&&(t=r),e[t]=a[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,a){Object.defineProperty(e,"default",{enumerable:!0,value:a})}:function(e,a){e.default=a}),__importStar=this&&this.__importStar||function(){var e=function(a){return e=Object.getOwnPropertyNames||function(e){var a=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(a[a.length]=r);return a},e(a)};return function(a){if(a&&a.__esModule)return a;var r={};if(null!=a)for(var t=e(a),o=0;o<t.length;o++)"default"!==t[o]&&__createBinding(r,a,t[o]);return __setModuleDefault(r,a),r}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.ALL_MODELS=exports.CURATED_MODELS=void 0;const path=__importStar(require("path")),fs=__importStar(require("fs"));exports.CURATED_MODELS=[{name:"Llama-3.1-8B-Instruct",provider:"Meta",params:8,ctx:128e3,use:"Chat",moe:!1,hfRepo:"bartowski/Meta-Llama-3.1-8B-Instruct-GGUF",ollamaTag:"llama3.1:8b"},{name:"Llama-3.1-70B-Instruct",provider:"Meta",params:70,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/Meta-Llama-3.1-70B-Instruct-GGUF",ollamaTag:"llama3.1:70b"},{name:"Llama-3.1-405B-Instruct",provider:"Meta",params:405,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/Meta-Llama-3.1-405B-Instruct-GGUF",ollamaTag:"llama3.1:405b"},{name:"Llama-3.2-1B-Instruct",provider:"Meta",params:1,ctx:128e3,use:"Chat",moe:!1,hfRepo:"bartowski/Llama-3.2-1B-Instruct-GGUF",ollamaTag:"llama3.2:1b"},{name:"Llama-3.2-3B-Instruct",provider:"Meta",params:3,ctx:128e3,use:"Chat",moe:!1,hfRepo:"bartowski/Llama-3.2-3B-Instruct-GGUF",ollamaTag:"llama3.2:3b"},{name:"Llama-3.2-11B-Vision",provider:"Meta",params:11,ctx:128e3,use:"Multimodal",moe:!1,hfRepo:"bartowski/Llama-3.2-11B-Vision-Instruct-GGUF",ollamaTag:"llama3.2-vision:11b"},{name:"Llama-3.2-90B-Vision",provider:"Meta",params:90,ctx:128e3,use:"Multimodal",moe:!1,hfRepo:"bartowski/Llama-3.2-90B-Vision-Instruct-GGUF",ollamaTag:"llama3.2-vision:90b"},{name:"Llama-4-Scout",provider:"Meta",params:17,ctx:1e7,use:"General",moe:!0,expertParams:3,hfRepo:"bartowski/Llama-4-Scout-17B-16E-Instruct-GGUF",ollamaTag:"llama4:scout"},{name:"Llama-4-Maverick",provider:"Meta",params:400,ctx:1e6,use:"General",moe:!0,expertParams:17,hfRepo:"bartowski/Llama-4-Maverick-17B-128E-Instruct-GGUF",ollamaTag:"llama4:maverick"},{name:"Mistral-7B-Instruct",provider:"Mistral AI",params:7,ctx:32e3,use:"Chat",moe:!1,hfRepo:"bartowski/Mistral-7B-Instruct-v0.3-GGUF",ollamaTag:"mistral:7b"},{name:"Mistral-Nemo-12B",provider:"Mistral AI",params:12,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/Mistral-Nemo-Instruct-2407-GGUF",ollamaTag:"mistral-nemo"},{name:"Mixtral-8x7B-Instruct",provider:"Mistral AI",params:46.7,ctx:32e3,use:"General",moe:!0,expertParams:12.9,hfRepo:"bartowski/Mixtral-8x7B-Instruct-v0.1-GGUF",ollamaTag:"mixtral:8x7b"},{name:"Mixtral-8x22B-Instruct",provider:"Mistral AI",params:141,ctx:65e3,use:"General",moe:!0,expertParams:39,ollamaTag:"mixtral:8x22b"},{name:"Mistral-Small-24B",provider:"Mistral AI",params:24,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/Mistral-Small-24B-Instruct-2501-GGUF",ollamaTag:"mistral-small"},{name:"Qwen2.5-0.5B-Instruct",provider:"Alibaba",params:.5,ctx:128e3,use:"Chat",moe:!1,hfRepo:"Qwen/Qwen2.5-0.5B-Instruct-GGUF",ollamaTag:"qwen2.5:0.5b"},{name:"Qwen2.5-7B-Instruct",provider:"Alibaba",params:7,ctx:128e3,use:"General",moe:!1,hfRepo:"Qwen/Qwen2.5-7B-Instruct-GGUF",ollamaTag:"qwen2.5:7b"},{name:"Qwen2.5-14B-Instruct",provider:"Alibaba",params:14,ctx:128e3,use:"General",moe:!1,hfRepo:"Qwen/Qwen2.5-14B-Instruct-GGUF",ollamaTag:"qwen2.5:14b"},{name:"Qwen2.5-32B-Instruct",provider:"Alibaba",params:32,ctx:128e3,use:"General",moe:!1,hfRepo:"Qwen/Qwen2.5-32B-Instruct-GGUF",ollamaTag:"qwen2.5:32b"},{name:"Qwen2.5-72B-Instruct",provider:"Alibaba",params:72,ctx:128e3,use:"General",moe:!1,hfRepo:"Qwen/Qwen2.5-72B-Instruct-GGUF",ollamaTag:"qwen2.5:72b"},{name:"Qwen2.5-Coder-7B",provider:"Alibaba",params:7,ctx:128e3,use:"Coding",moe:!1,hfRepo:"Qwen/Qwen2.5-Coder-7B-Instruct-GGUF",ollamaTag:"qwen2.5-coder:7b"},{name:"Qwen2.5-Coder-32B",provider:"Alibaba",params:32,ctx:128e3,use:"Coding",moe:!1,hfRepo:"Qwen/Qwen2.5-Coder-32B-Instruct-GGUF",ollamaTag:"qwen2.5-coder:32b"},{name:"Qwen3-8B",provider:"Alibaba",params:8,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"Qwen/Qwen3-8B-GGUF",ollamaTag:"qwen3:8b"},{name:"Qwen3-14B",provider:"Alibaba",params:14,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"Qwen/Qwen3-14B-GGUF",ollamaTag:"qwen3:14b"},{name:"Qwen3-32B",provider:"Alibaba",params:32,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"Qwen/Qwen3-32B-GGUF",ollamaTag:"qwen3:32b"},{name:"Qwen3-235B-A22B",provider:"Alibaba",params:235,ctx:128e3,use:"Reasoning",moe:!0,expertParams:22,hfRepo:"Qwen/Qwen3-235B-A22B-GGUF"},{name:"gemma-2-2b-it",provider:"Google",params:2,ctx:8192,use:"Chat",moe:!1,hfRepo:"bartowski/gemma-2-2b-it-GGUF",ollamaTag:"gemma2:2b"},{name:"gemma-2-9b-it",provider:"Google",params:9,ctx:8192,use:"General",moe:!1,hfRepo:"bartowski/gemma-2-9b-it-GGUF",ollamaTag:"gemma2:9b"},{name:"gemma-2-27b-it",provider:"Google",params:27,ctx:8192,use:"General",moe:!1,hfRepo:"bartowski/gemma-2-27b-it-GGUF",ollamaTag:"gemma2:27b"},{name:"gemma-3-4b-it",provider:"Google",params:4,ctx:128e3,use:"Chat",moe:!1,hfRepo:"bartowski/gemma-3-4b-it-GGUF",ollamaTag:"gemma3:4b"},{name:"gemma-3-12b-it",provider:"Google",params:12,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/gemma-3-12b-it-GGUF",ollamaTag:"gemma3:12b"},{name:"gemma-3-27b-it",provider:"Google",params:27,ctx:128e3,use:"General",moe:!1,hfRepo:"bartowski/gemma-3-27b-it-GGUF",ollamaTag:"gemma3:27b"},{name:"Phi-3-mini-4k",provider:"Microsoft",params:3.8,ctx:4096,use:"Chat",moe:!1,hfRepo:"bartowski/Phi-3-mini-4k-instruct-GGUF",ollamaTag:"phi3:mini"},{name:"Phi-3-medium-128k",provider:"Microsoft",params:14,ctx:128e3,use:"General",moe:!1,ollamaTag:"phi3:medium"},{name:"Phi-4",provider:"Microsoft",params:14,ctx:16384,use:"Reasoning",moe:!1,hfRepo:"bartowski/phi-4-GGUF",ollamaTag:"phi4"},{name:"Phi-4-mini-instruct",provider:"Microsoft",params:3.8,ctx:128e3,use:"Chat",moe:!1,hfRepo:"bartowski/Phi-4-mini-instruct-GGUF",ollamaTag:"phi4-mini"},{name:"DeepSeek-R1-Distill-Qwen-7B",provider:"DeepSeek",params:7,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"bartowski/DeepSeek-R1-Distill-Qwen-7B-GGUF",ollamaTag:"deepseek-r1:7b"},{name:"DeepSeek-R1-Distill-Llama-8B",provider:"DeepSeek",params:8,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"bartowski/DeepSeek-R1-Distill-Llama-8B-GGUF",ollamaTag:"deepseek-r1:8b"},{name:"DeepSeek-R1-Distill-Qwen-14B",provider:"DeepSeek",params:14,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"bartowski/DeepSeek-R1-Distill-Qwen-14B-GGUF",ollamaTag:"deepseek-r1:14b"},{name:"DeepSeek-R1-Distill-Qwen-32B",provider:"DeepSeek",params:32,ctx:128e3,use:"Reasoning",moe:!1,hfRepo:"bartowski/DeepSeek-R1-Distill-Qwen-32B-GGUF",ollamaTag:"deepseek-r1:32b"},{name:"DeepSeek-R1",provider:"DeepSeek",params:671,ctx:128e3,use:"Reasoning",moe:!0,expertParams:37,hfRepo:"bartowski/DeepSeek-R1-GGUF",ollamaTag:"deepseek-r1:671b"},{name:"DeepSeek-V3",provider:"DeepSeek",params:671,ctx:128e3,use:"General",moe:!0,expertParams:37,ollamaTag:"deepseek-v3"},{name:"Codestral-22B",provider:"Mistral AI",params:22,ctx:32768,use:"Coding",moe:!1,hfRepo:"bartowski/Codestral-22B-v0.1-GGUF",ollamaTag:"codestral:22b"},{name:"CodeLlama-7B-Instruct",provider:"Meta",params:7,ctx:1e5,use:"Coding",moe:!1,ollamaTag:"codellama:7b"},{name:"CodeLlama-13B-Instruct",provider:"Meta",params:13,ctx:1e5,use:"Coding",moe:!1,ollamaTag:"codellama:13b"},{name:"CodeLlama-34B-Instruct",provider:"Meta",params:34,ctx:1e5,use:"Coding",moe:!1,ollamaTag:"codellama:34b"}];const USE_MAP={"Advanced reasoning, chain-of-thought":"Reasoning","Advanced reasoning, math and code":"Reasoning","Latest flagship with enhanced reasoning and coding":"Reasoning","Lightweight reasoning":"Reasoning","Code generation and completion":"Coding","General purpose":"General","General purpose text generation":"General","Balanced performance and size":"General","Lightweight, edge deployment":"Chat","Lightweight, long context":"General","Multimodal (vision + text)":"Multimodal","Chat and conversation":"Chat","Instruction following":"Chat","Image generation":"ImageGen","Video generation":"VideoGen","Text embeddings":"Embedding"};function loadHfModels(){try{const e=path.join(__dirname,"..","data","hf_models.json");return JSON.parse(fs.readFileSync(e,"utf8")).map(e=>({name:e.name,provider:e.provider??"Community",params:e.params,ctx:e.ctx,use:USE_MAP[e.use_case]??"General",moe:e.moe??!1,expertParams:e.expert_params,hfRepo:e.hf_repo,ollamaTag:e.ollama_tag}))}catch{return[]}}const CURATED_NAMES=new Set(exports.CURATED_MODELS.map(e=>e.name)),HF_EXTRA=loadHfModels().filter(e=>!CURATED_NAMES.has(e.name));exports.ALL_MODELS=[...exports.CURATED_MODELS,...HF_EXTRA];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { HWSpecs, LLMModel, ScoredModel, QuantOption } from './types.js';
2
+ export declare const QUANTS: QuantOption[];
3
+ export declare const BACKEND_CONST: Record<string, number>;
4
+ export declare const UC_WEIGHTS: Record<string, number[]>;
5
+ export declare function scoreModel(model: LLMModel, hw: HWSpecs): ScoredModel;
6
+ /** Parse raw terminal/system output into HWSpecs */
7
+ export declare function parseHardwareText(text: string): HWSpecs;
8
+ //# sourceMappingURL=score.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.d.ts","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9E,eAAO,MAAM,MAAM,EAAE,WAAW,EAO/B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOhD,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAS/C,CAAC;AAOF,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,GAAG,WAAW,CA4DpE;AAED,oDAAoD;AACpD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CA8EvD"}
package/dist/score.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";function vramForModel(e,t){return(e.moe&&e.expertParams?e.expertParams:e.params)*t.bpw/8}function scoreModel(e,t){const a=t.vram>0?t.vram:t.ram,r=t.vram>0;let o=null,n="Too Tight",m="TooTight";for(const s of exports.QUANTS){const i=vramForModel(e,s),d=e.params*s.bpw/8;if(r&&i<=.95*a){n=e.moe?"MoE":"GPU",m=i/a<.5?"Good":i/a<.85?"Perfect":"Good",o=s;break}if(r&&i<=1.5*a&&d<=.95*t.ram){n="CPU+GPU",m="Marginal",o=s;break}if(!r&&d<=.9*t.ram){n="CPU",m="Marginal",o=s;break}}o||(o=exports.QUANTS[exports.QUANTS.length-1],m="TooTight",n="Too Tight");const s=exports.BACKEND_CONST[t.backend]??70,i=o.mult*("CPU+GPU"===n?.5:"CPU"===n?.3:1)*(e.moe?.8:1),d=Math.round(s/Math.max(e.params,.1)*i*10)/10,p=Math.min(100,35*Math.log10(e.params+1)+40*o.mult-(e.params>200?10:0)),c=Math.min(100,d/200*100),l=vramForModel(e,o),h=l/a,u="TooTight"===m?0:h<.5?100*h:h<.85?100:200*(1-h),M=Math.min(100,25*Math.log10(e.ctx+1)),x=exports.UC_WEIGHTS[e.use]??exports.UC_WEIGHTS.General,[T,g,b,f]=x,C=Math.round(p*T+c*g+Math.max(0,u)*b+M*f);return{...e,quant:o,runMode:n,fitLevel:m,tokS:d,memGB:Math.round(10*l)/10,memPct:Math.round(100*h),composite:"TooTight"===m?Math.max(0,C-50):C,qualScore:Math.round(p),speedScore:Math.round(c),fitScore:Math.round(Math.max(0,u)),ctxScore:Math.round(M)}}function parseHardwareText(e){let t=8,a=0,r="Unknown",o="Unknown",n=4,m="CPU x86";const s=e.match(/totalphysicalmemory[^0-9]*(\d{9,})/i);if(s)t=Math.round(parseInt(s[1])/1024**3);else for(const a of[/(\d+[.,]?\d*)\s*gi?b?\s*(ram|memory)/i,/mem(?:ory)?[:\s]+(\d+[.,]?\d*)\s*[GT]/i,/(\d+[.,]\d+)\s*gib/i]){const r=e.match(a);if(r){t=parseFloat(r[1].replace(",","."));break}}const i=e.match(/Mem:\s+[\d.]+[GT]?\s+([\d.]+)([GT])/i);i&&(t=parseFloat(i[1])*("t"===i[2].toLowerCase()?1024:1));for(const t of[/nvidia[^,\n]*(rtx|gtx|titan|a\d{3,4}|h\d{3})[^,\n]*/i,/geforce[^,\n]*/i,/radeon[^,\n]*/i,/apple m\d[^,\n]*/i,/intel arc[^,\n]*/i]){const a=e.match(t);if(a){r=a[0].trim().replace(/\s+/g," ");break}}const d=e.match(/nvidia[^,\n]+,\s*(\d+)\s*MiB/i);if(d)a=Math.round(parseInt(d[1])/1024),r=e.match(/nvidia[^,]+/i)[0].trim();else for(const t of[/(\d+[.,]?\d*)\s*gi?b?\s*(?:vram|gddr|gpu\s*mem)/i,/(\d+)\s*mi?b[^a-z]*(?:vram|video)/i,/adapterram[^0-9]*(\d{7,})/i]){const r=e.match(t);if(r){let t=parseFloat(r[1].replace(",","."));r[1].length>7&&(t=parseInt(r[1])/1024**3),t>100&&e.match(/mib|mb/i)&&(t/=1024),a=Math.round(t);break}}/apple\s+m\d|m1|m2|m3|m4|m5/i.test(e)?(a=t,m="Metal"):/radeon|rocm/i.test(e)&&a>0?m="ROCm":/nvidia|cuda|rtx|gtx/i.test(e)&&a>0?m="CUDA":/intel arc/i.test(e)?m="SYCL":/apple|arm|aarch/i.test(e)&&(m="CPU ARM");for(const t of[/model name[^\n:]*:\s*([^\n]+)/i,/brand_string[^\n:]*:\s*([^\n]+)/i,/intel\(r\) core[^\n]*/i,/amd ryzen[^\n]*/i,/apple m\d[^\n]*/i]){const a=e.match(t);if(a){o=(a[1]??a[0]).trim().replace(/\s+/g," ").substring(0,50);break}}const p=e.match(/cpu\(s\)[:\s]+(\d+)/i)??e.match(/numberofcores[:\s]+(\d+)/i);return p&&parseInt(p[1])>1&&parseInt(p[1])<512&&(n=parseInt(p[1])),{ram:t,vram:a,gpu:r,cpu:o,cores:n,backend:m}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.UC_WEIGHTS=exports.BACKEND_CONST=exports.QUANTS=void 0,exports.scoreModel=scoreModel,exports.parseHardwareText=parseHardwareText,exports.QUANTS=[{name:"Q8_0",bpw:8.5,mult:1},{name:"Q6_K",bpw:6.6,mult:.97},{name:"Q5_K",bpw:5.7,mult:.94},{name:"Q4_K",bpw:4.8,mult:.9},{name:"Q3_K",bpw:3.9,mult:.85},{name:"Q2_K",bpw:2.6,mult:.78}],exports.BACKEND_CONST={CUDA:220,Metal:160,ROCm:180,SYCL:100,"CPU ARM":90,"CPU x86":70},exports.UC_WEIGHTS={General:[.35,.25,.25,.15],Coding:[.4,.25,.25,.1],Reasoning:[.55,.15,.2,.1],Chat:[.25,.35,.25,.15],Multimodal:[.35,.2,.3,.15],Embedding:[.3,.3,.3,.1],ImageGen:[.4,.2,.3,.1],VideoGen:[.4,.2,.3,.1]};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../src/score.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ export interface HWSpecs {
2
+ cpu: string;
3
+ cores: number;
4
+ ram: number;
5
+ gpu: string;
6
+ vram: number;
7
+ backend: string;
8
+ }
9
+ export interface LLMModel {
10
+ name: string;
11
+ provider: string;
12
+ params: number;
13
+ ctx: number;
14
+ use: string;
15
+ moe: boolean;
16
+ expertParams?: number;
17
+ hfRepo?: string;
18
+ ollamaTag?: string;
19
+ }
20
+ export interface QuantOption {
21
+ name: string;
22
+ bpw: number;
23
+ mult: number;
24
+ }
25
+ export interface ScoredModel extends LLMModel {
26
+ quant: QuantOption;
27
+ runMode: string;
28
+ fitLevel: string;
29
+ tokS: number;
30
+ memGB: number;
31
+ memPct: number;
32
+ composite: number;
33
+ qualScore: number;
34
+ speedScore: number;
35
+ fitScore: number;
36
+ ctxScore: number;
37
+ }
38
+ export interface DetectResult {
39
+ hw: HWSpecs;
40
+ method: string;
41
+ warnings: string[];
42
+ }
43
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,OAAO,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,iFAAiF"}
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "@runyarddev/hw-mcp",
3
+ "version": "1.0.0",
4
+ "description": "Hardware-aware LLM model scoring MCP server — detects GPU/RAM/CPU and ranks 900+ AI models by hardware fit",
5
+ "main": "dist/index.js",
6
+ "bin": {
7
+ "runyard-hw-mcp": "dist/index.js"
8
+ },
9
+ "scripts": {
10
+ "build": "tsc",
11
+ "minify": "node minify.js",
12
+ "prepublishOnly": "npm run build && npm run minify",
13
+ "start": "node dist/index.js",
14
+ "dev": "tsc --watch"
15
+ },
16
+ "keywords": [
17
+ "mcp",
18
+ "llm",
19
+ "hardware",
20
+ "gpu",
21
+ "local-ai",
22
+ "model-selection",
23
+ "runyard"
24
+ ],
25
+ "author": "Runyard <team@runyard.dev>",
26
+ "license": "MIT",
27
+ "dependencies": {
28
+ "@modelcontextprotocol/sdk": "^1.10.1",
29
+ "zod": "^3.24.2"
30
+ },
31
+ "devDependencies": {
32
+ "@types/node": "^22.13.10",
33
+ "terser": "^5.46.1",
34
+ "typescript": "^5.7.3"
35
+ },
36
+ "engines": {
37
+ "node": ">=18.0.0"
38
+ },
39
+ "files": [
40
+ "dist",
41
+ "data"
42
+ ]
43
+ }