@decaf-ts/mcp-server 1.0.10 → 1.2.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 (42) hide show
  1. package/dist/assets/code/patterns/builder.enc +0 -0
  2. package/dist/assets/prompts/agent/agent.enc +0 -0
  3. package/dist/assets/prompts/agent/init.enc +0 -0
  4. package/dist/assets/prompts/constitution_commands.enc +0 -0
  5. package/dist/assets/prompts/documentation/class.enc +0 -0
  6. package/dist/assets/prompts/documentation/constant.enc +0 -0
  7. package/dist/assets/prompts/documentation/decorator.enc +0 -0
  8. package/dist/assets/prompts/documentation/file.enc +0 -0
  9. package/dist/assets/prompts/documentation/function.enc +0 -0
  10. package/dist/assets/prompts/documentation/interface.enc +0 -0
  11. package/dist/assets/prompts/documentation/iterate.enc +0 -0
  12. package/dist/assets/prompts/documentation/module.enc +0 -0
  13. package/dist/assets/prompts/documentation/prefix.enc +0 -0
  14. package/dist/assets/prompts/documentation/repo.enc +0 -0
  15. package/dist/assets/prompts/documentation/suffix.enc +0 -0
  16. package/dist/assets/prompts/git_commands.enc +0 -0
  17. package/dist/assets/prompts/mode_commands.enc +0 -0
  18. package/dist/assets/prompts/plan_commands.enc +0 -0
  19. package/dist/assets/prompts/repository/readme.enc +0 -0
  20. package/dist/assets/prompts/repository/release_notes.enc +0 -0
  21. package/dist/assets/prompts/repository/setup.enc +0 -0
  22. package/dist/assets/prompts/specification_commands.enc +0 -0
  23. package/dist/assets/prompts/startup_command.enc +0 -0
  24. package/dist/assets/prompts/task_commands.enc +0 -0
  25. package/dist/assets/prompts/tests/coverage.enc +0 -0
  26. package/dist/assets/templates/AGENTS.enc +0 -0
  27. package/dist/assets/templates/agents_template.enc +0 -0
  28. package/dist/assets/templates/constitution_template.enc +0 -0
  29. package/dist/assets/templates/decaf/context/logCtx.enc +0 -0
  30. package/dist/assets/templates/decaf/services/client_based_service.enc +0 -0
  31. package/dist/assets/templates/decaf/services/model_service.enc +0 -0
  32. package/dist/assets/templates/decaf/services/service.enc +0 -0
  33. package/dist/assets/templates/decaf_guidelines.enc +0 -0
  34. package/dist/assets/templates/instructions_template.enc +0 -0
  35. package/dist/assets/templates/plan_template.enc +0 -0
  36. package/dist/assets/templates/specification_template.enc +0 -0
  37. package/dist/assets/templates/task_template.enc +0 -0
  38. package/dist/mcp-server.cjs +1 -1
  39. package/dist/mcp-server.cjs.map +1 -1
  40. package/dist/mcp-server.js +1 -1
  41. package/dist/mcp-server.js.map +1 -1
  42. package/package.json +8 -2
Binary file
Binary file
Binary file
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- var e,t;e=this,t=function(e,t,r,s,o,i,n,a,c,d,p,l,f,u,m,h,g){"use strict";function y(e){var t=Object.create(null);return e&&Object.keys(e).forEach(r=>{if("default"!==r){var s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:()=>e[r]})}}),t.default=e,Object.freeze(t)}var b=y(r),S=y(s);const v=["\x1b[38;5;215m","\x1b[38;5;209m","\x1b[38;5;205m","\x1b[38;5;210m","\x1b[38;5;217m","\x1b[38;5;216m","\x1b[38;5;224m","\x1b[38;5;230m","\x1b[38;5;230m"];var _,w,j,E,O;(e=>{e[e.NONE=0]="NONE",e[e.BASIC=1]="BASIC",e[e.ADVANCED=2]="ADVANCED",e[e.HIGH=3]="HIGH"})(_||(_={})),(e=>{e[e.NONE=0]="NONE",e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH"})(w||(w={})),(e=>{e[e.FREE=0]="FREE",e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH"})(j||(j={}));class T extends i.Model{get log(){return this._log||(this._log=e.Logging.for(this)),this._log}constructor(e){super(e)}logFor(e){const{sessionId:t,requestId:r,authInfo:s}=e||{};let o="string"==typeof t&&t.length>0?this.log.for(t):this.log;return s&&s.clientId&&(o=o.for(s.clientId)),r&&(o=o.for(r.toString())),o}setDescription(e){return this.description=e,this}getDescription(){return this.description}setName(e){return this.name=e,this}getName(){return this.name}setTitle(e){return this.title=e,this}}o.__decorate([i.required(),o.__metadata("design:type",String)],T.prototype,"description",void 0),o.__decorate([i.required(),o.__metadata("design:type",String)],T.prototype,"name",void 0),o.__decorate([i.required(),o.__metadata("design:type",String)],T.prototype,"title",void 0);class x extends T{constructor(e){super(e),this.reasoning=_.NONE,this.effort=w.NONE,this.cost=j.FREE}setReasoning(e){return this.reasoning=e,this}setEffort(e){return this.effort=e,this}setCost(e){return this.cost=e,this}}function N(e){if(!e)return;let t=e,r=t&&t._def;for(;r&&"ZodObject"!==r.typeName;){if("ZodEffects"===r.typeName&&r.schema)t=r.schema;else if("ZodOptional"===r.typeName&&r.innerType)t=r.innerType;else if("ZodDefault"===r.typeName&&r.innerType)t=r.innerType;else if("ZodNullable"===r.typeName&&r.innerType)t=r.innerType;else{if(!r.schema)return;t=r.schema}r=t&&t._def}return r&&"ZodObject"===r.typeName?r:void 0}function P(e){return!(!e||"object"!=typeof e||!e._def)}function A(e){switch(e){case"none":return _.NONE;case"basic":return _.BASIC;case"advanced":return _.ADVANCED;case"high":return _.HIGH;case"medium":return w.MEDIUM;case"low":return j.LOW;case"free":return j.FREE;default:throw new d.InternalError("Cannon convert unknown level "+e)}}o.__decorate([i.required(),o.__metadata("design:type",Number)],x.prototype,"reasoning",void 0),o.__decorate([i.required(),o.__metadata("design:type",Number)],x.prototype,"effort",void 0),o.__decorate([i.required(),o.__metadata("design:type",Number)],x.prototype,"cost",void 0),(e=>{e.ASSETS="assets"})(E||(E={})),(e=>{e.PROMPT="prompts",e.DOCUMENTATION="documentation",e.CODE="code"})(O||(O={}));const C=Buffer.from("DCAF1","ascii");function D(e){if(e.length<C.length+16+12+16)throw Error("Invalid prompt payload (too short)");if(!e.subarray(0,C.length).equals(C))throw Error("Invalid prompt payload (bad magic)");const t=process.env.ENCRYPTION_KEY||"";if(!t)throw Error("Missing encryption key. Set ENCRYPTION_KEY to load obfuscated assets.");let r=C.length;const s=e.subarray(r,r+16);r+=16;const o=e.subarray(r,r+12);r+=12;const i=e.subarray(r,r+16);r+=16;const n=e.subarray(r),a=((e,t)=>p.scryptSync(e,t,32))(t,s),c=p.createDecipheriv("aes-256-gcm",a,o);c.setAuthTag(i);const d=Buffer.concat([c.update(n),c.final()]);return l.gunzipSync(d)}function I(e){let t=e;for(;;){const e=b.join(t,"lib","assets");if(S.existsSync(e))return e;const r=b.join(t,"src","assets");if(S.existsSync(r))return r;const s=b.join(t,"assets");if(S.existsSync(s))return s;const o=b.dirname(t);if(o===t)break;t=o}}function q(){const e=process.env.DECAF_ASSET_DIR||process.env.MCP_ASSET_DIR||process.env.ASSET_DIR||"";if(e&&S.existsSync(e))return e;const t=process.argv?.[1];if(t){const e=I(b.dirname(t));if(e)return e}const r=[process.cwd(),process.env.INIT_CWD].filter(Boolean);for(const e of r){const t=I(e);if(t)return t}return b.join(process.cwd(),"assets")}let k=class extends e.LoggedClass{constructor(e){super(),this.basePath=e||q()}listAssets(...e){const t=b.join(this.basePath,...e);return S.readdirSync(t)}listPrompts(){return this.listAssets(O.PROMPT)}getAsset(e,t="md",...r){const s=b.join(this.basePath,...r),o=b.join(s,`${e}.${t}`);if(S.existsSync(o))return"enc"===t?D(S.readFileSync(o)).toString("utf-8"):S.readFileSync(o,"utf-8");const i=b.join(s,e+".enc");if(S.existsSync(i))return D(S.readFileSync(i)).toString("utf-8");throw Error("Asset not found: "+b.join(s,`${e}.${t}`))}getAllAssets(e,...t){return this.listAssets(e,...t).reduce((r,s)=>{const o=b.extname(s),i=b.basename(s,o),n=o.replace(/^\./,"")||void 0;return r[i]=this.getAsset(i,n??void 0,e,...t),r},{})}toPromptDef(e){return e.effort=A(e.effort),e.reasoning=A(e.reasoning),e.cost=A(e.cost),e}getPrompt(t,...r){const s=this.getAsset(e.toSnakeCase(t),"json",O.PROMPT,...r);let o;try{o=JSON.parse(s)}catch(e){throw new d.SerializationError(`Failed to parse prompt ${t} in categories ${r}: ${e}`)}return this.toPromptDef(o)}getAllPrompts(...e){const t=this.getAllAssets(O.PROMPT,...e);return Object.entries(t).reduce((t,[r,s])=>{try{t[r]=JSON.parse(s)}catch(t){throw new d.SerializationError(`Failed to parse prompt ${r} in categories ${e}: ${t}`)}return t},t)}};k=o.__decorate([a.injectable(),o.__metadata("design:paramtypes",[String])],k);class M extends x{constructor(e){super(e)}setCb(e){return this.cb=e,this}setArgsSchema(e){return this.argsSchema=e,this}static get builder(){return new M}static patchPrompt(t,r,s,o){const i=(r=Array.isArray(r)?r:Object.keys(r)).filter(e=>!Object.prototype.hasOwnProperty.call(s,e));if(i.length)throw new d.ValidationError("Missing replacements for placeholders: "+i.join(", "));o&&(o.verbose("Patching prompt with placeholders: "+JSON.stringify(r)),o.debug("Values: "+JSON.stringify(s)));const n=r.reduce((e,t)=>(e[t]=s[t],e),{});return e.sf(t,n)}patchPrompt(e,t,r,s){return M.patchPrompt(e,t,r,s||this.log.for(this.patchPrompt))}build(e,t){const r=this.log.for(this.build),s=this.hasErrors();if(s)throw new d.ValidationError(s.toString());try{this.argsSchema&&((e,t="schema")=>{if(N(e))return e;if(e&&"object"==typeof e){const t=e.def&&"object"==typeof e.def?e.def:void 0,r=t&&(t.shape||"object"===t.type)&&t.shape||("object"===e.type?e.shape:void 0)||(t&&"object"===t.type?{}:void 0);if(t||"object"===e.type||r){const e={};if(r&&"object"==typeof r)for(const[t,s]of Object.entries(r))e[t]=P(s)?s:n.z.any();return n.z.object(e)}}throw Error(`Registration error: provided a non-canonical ${t}. Export a ZodObject (z.object(...)).`)})(this.argsSchema,"argsSchema");const r=(e=>{if(!e)return;if(e&&"object"==typeof e&&!e._def)return e.def&&"object"==typeof e.def&&e.def.shape?e.def.shape:e;const t=N(e);return t?"function"==typeof t.shape?t.shape():t.shape||void 0:void 0})(this.argsSchema);return e.registerPrompt(this.name,{title:this.title,description:this.description,argsSchema:r},async(e,r)=>{const s=this.logFor(r);e=Object.assign({},t,e||{}),s.verbose(`Executing prompt ${this.name} with args: ${JSON.stringify(e)}`),e._meta=Object.assign(e._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const o=await Promise.resolve(this.cb(e,r));return s.verbose(`Prompt ${this.name} executed successfully.`),s.debug("Prompt execution meta: "+JSON.stringify(o._meta)),o})}catch(e){throw r.error("Failed to register prompt "+(this.name||this.constructor.name),e),e}}}o.__decorate([a.inject(k),o.__metadata("design:type",k)],M.prototype,"assets",void 0),o.__decorate([i.required(),o.__metadata("design:type",Object)],M.prototype,"cb",void 0),o.__decorate([i.required(),o.__metadata("design:type",n.ZodObject)],M.prototype,"argsSchema",void 0),o.__decorate([c.prop(),o.__metadata("design:type",Object)],M.prototype,"placeholders",void 0);class R extends M{setCategory(e){return this.promptCategory=e,this}addPrefix(e){return this.prefixes=this.prefixes||[],this.prefixes.push(e),this}addSuffix(e){return this.suffixes=this.suffixes||[],this.suffixes.push(e),this}constructor(e){super(e)}build(e){const t=this.assets.getPrompt(this.name,this.promptCategory);i.Model.fromObject(this,t);const r=new Set((c.Metadata.properties(R)||[]).filter(e=>!["assets","promptCategory","prefixes","suffixes"].includes(e)));["cb","argsSchema"].forEach(e=>r.add(e));const s=this.hasErrors(...Array.from(r));if(s)throw new d.ValidationError(s.toString());const o=(this.prefixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),a=(this.suffixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),p=[...new Set([...t.placeholders,...o.map(e=>e.placeholders||[]),...a.map(e=>e.placeholders||[])].flat())].reduce((e,t)=>(e[t]=n.z.string().describe("The description for "+t),e),{});return this.setArgsSchema(n.z.object(p)),this.setCb((e,t)=>{const r=this.logFor(t).for(R).for(this.promptCategory).for(this.name);function s(e=[]){return Array.isArray(e)?e:Object.keys(e)}const o=(this.prefixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),i=(this.suffixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),n=this.assets.getPrompt(this.name,this.promptCategory),a=[...new Set([...o.map(e=>s(e.placeholders)).flat(),...i.map(e=>s(e.placeholders)).flat(),...s(n.placeholders).flat()])];return{messages:[{role:"user",content:{type:"text",text:this.patchPrompt([...o.map(e=>e.prompt),n.prompt,...i.map(e=>e.prompt)].join("\n\n"),a,e,r)}}],_meta:{}}}),super.build(e)}setReasoning(e){throw new d.InternalError("Named prompt builders don't require callback")}setEffort(e){throw new d.InternalError("Named prompt builders don't require callback")}setCost(e){throw new d.InternalError("Named prompt builders don't require callback")}setDescription(e){throw new d.InternalError("Named prompt builders don't require callback")}setTitle(e){throw new d.InternalError("Named prompt builders don't require callback")}static get builder(){return new R}}var F;function z(e,t=[],r=[]){const s=R.builder.setCategory(F.DOCS).setName(e);return["prefix",...t].forEach(e=>s.addPrefix(e)),["suffix",...r].forEach(e=>s.addSuffix(e)),s}o.__decorate([i.required(),o.__metadata("design:type",String)],R.prototype,"promptCategory",void 0),o.__decorate([i.list(String),i.minlength(1),o.__metadata("design:type",Array)],R.prototype,"prefixes",void 0),o.__decorate([i.minlength(1),i.list(String),o.__metadata("design:type",Array)],R.prototype,"suffixes",void 0),(e=>{e.DOCS="documentation",e.CODE="code"})(F||(F={}));const H=[z("class"),z("constant"),z("decorator"),z("function"),z("module"),z("file"),z("repo",[],["iterate"])],$="##VERSION##";c.Metadata.registerLibrary("##PACKAGE##",$);const L={mcpId:"decaf",name:"decaf-ts mcp server",title:"Decaf-TS MCP Server",description:"Provides precise coding assistance for the decaf-ts framework",version:$,websiteUrl:"https://decaf-ts.github.io",repositoryUrl:"https://github.com/decaf-ts/mcp-server",license:"AGPL-3.0",workingDir:process.cwd(),assetDir:q(),contacts:[{name:"Decaf-TS",url:"https://decaf-ts.github.io"}],tags:"server,official,decaf-ts",metadata:{},icons:[{src:"workdocs/assets/favicon.svg",mimeType:"image/svg+xml",sizes:"any"}],jira:{host:"decaf-ts.atlassian.net",email:"",apiKey:""},level:e.LogLevel.error},U=e.LoggedEnvironment.accumulate(L);e.Logging.setConfig(U);class G extends T{setCb(e){return this.cb=e,this}setConfig(e){return this.config=e,this}setUriOtTemplate(e){return this.uriOrTemplate=e,this}constructor(e){super(e)}static get builder(){return new G}build(t){const r=this.hasErrors();if(r)throw Error(r.toString());try{const e="string"==typeof this.uriOrTemplate&&this.uriOrTemplate.includes("{")?new u.ResourceTemplate(new f.UriTemplate(this.uriOrTemplate),{list:void 0}):this.uriOrTemplate,r=Object.assign(this.config,{_meta:{}}),s=async(e,t)=>{const r=this.logFor(t);r.verbose(`Requesting resource ${this.name} from ${e.toString()}`);const s=await Promise.resolve(this.cb(e,t));return r.verbose(`Resource ${this.name} retrieved successfully.`),r.debug("Resource retrieval meta: "+JSON.stringify(s._meta)),s};return t.resource(this.name,e,r,s)}catch(t){throw e.Logging.for(this).error("Error registering resource "+this.name,t),t}}}o.__decorate([i.required(),o.__metadata("design:type",String)],G.prototype,"uriOrTemplate",void 0),o.__decorate([i.required(),o.__metadata("design:type",Function)],G.prototype,"cb",void 0),o.__decorate([i.required(),o.__metadata("design:type",Object)],G.prototype,"config",void 0);const V=b.join(process.cwd(),"src/assets"),W=b.join(V,"templates"),J=b.join(V,"prompts");class Z{constructor(e){this.name=e}silly(...e){}verbose(...e){}info(...e){}debug(...e){}warn(...e){}error(...e){}benchmark(){return this}trace(){return this}clear(){return this}get root(){return[]}for(e){return this}setConfig(e){}}const B=e=>new Z("string"==typeof e?e:e?.name||e?.constructor?.name||"unknown");class Y extends e.LoggedClass{get client(){if(!this._mcp)throw Error("Mcp server requires Mcp client");return this._mcp}constructor(){super()}async load(){const e=this.log.for(this.load);for(const t of H)try{e.info("loading prompt "+t.getName());const r=t.build(this.client);e.verbose(`Loaded prompt ${r.title} from ${t.getName()} definition`)}catch(r){e.error("Failed to load prompt "+t.getName(),r)}try{await(async e=>{await(async e=>{e.registerTool("decaf.server-info",{title:"Decaf MCP Server Info",description:"Return server metadata, version, and registered prompt names for diagnostics.",inputSchema:{},outputSchema:void 0,annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},async()=>{const e=H.map(e=>e.getName()).sort();return{content:[{type:"text",text:["Name: "+U.name,"Title: "+U.title,"Version: "+U.version,"Prompts: "+(e.join(", ")||"<none>")].join("\n")}]}})})(e)})(this.client),e.verbose("Registered built-in tools")}catch(t){e.error("Failed to register tools",t)}try{await(async(e,t)=>{t.info("Registering agent templates as resources...");const r=S.readdirSync(W).filter(e=>e.endsWith(".md"));for(const s of r){const r=b.basename(s,".md"),o=b.join(W,s),i=G.builder.setName(r).setUriOtTemplate("file:///"+o).setConfig({mimeType:"text/markdown",description:"Template for "+r}).setCb(async e=>{const t=S.readFileSync(e.pathname,"utf8");return{contents:[{uri:e.toString(),text:t,mimeType:"text/markdown"}],_meta:{}}});try{i.build(e),t.info("Registered template: "+r)}catch(e){t.error(`Failed to register template ${r}:`,e)}}t.info("Registering agent prompts...");const s=S.readdirSync(J).filter(e=>e.endsWith(".md"));for(const r of s){const s=b.basename(r,".md"),o=b.join(J,r),i=S.readFileSync(o,"utf8"),a=M.builder.setName(s).setTitle("Prompt: "+s).setDescription("Dynamic prompt for "+s).setArgsSchema(n.z.object({})).setCb(async e=>({messages:[{role:"user",content:{type:"text",text:i}}],_meta:{}}));try{a.build(e),t.info("Registered prompt: "+s)}catch(e){t.error(`Failed to register prompt ${s}:`,e)}}})(this.client,e),e.verbose("Registered agent-specific assets")}catch(t){e.error("Failed to register agent assets",t)}}async boot(r="stdio"){let s=this.log;this.log.for(this.boot).info("McpServer booting..."),((r=e.Logging.get())=>{let s;try{s=(()=>{let e,t=__dirname;try{for(;t&&t!==b.parse(t).root;){const r=b.join(t,"node_modules");if(S.existsSync(r)&&S.statSync(r).isDirectory()){e=r;break}const s=b.dirname(t);if(s===t)break;t=s}}catch{}const r=[];if(e){const t=b.join(e,"@decaf-ts");try{if(S.existsSync(t)&&S.statSync(t).isDirectory()){const e=S.readdirSync(t);for(const s of e){const e=b.join(t,s);try{const t=b.join(e,"workdocs","assets","slogans.json");if(S.existsSync(t)&&S.statSync(t).isFile()){const e=S.readFileSync(t,"utf-8"),s=JSON.parse(e);if(Array.isArray(s))for(const e of s)"string"==typeof e&&e.trim().length>0&&r.push(e.trim())}}catch{}}}}catch{}}return 0===r.length?"Decaf: strongly brewed TypeScript.":r[Math.floor(Math.random()*r.length)]})()}catch{s="Decaf: strongly brewed TypeScript."}const o="# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# ( ( \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# ) ) \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# [=======] \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# `-----\xb4 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n#".split("\n"),i=o.reduce((e,t)=>Math.max(e,t.length),0);o.push("# "+s.padStart(i-3)),o.forEach((e,s)=>{const o=v[s%v.length]||"",i=r.info.bind(r);try{i(t.style(e||"").raw(o).text)}catch{i((e||"")+"")}})})(this.log),"stdio"===r&&(e.Logging.setFactory(B),s=e.Logging.for(this.constructor.name));const o=((Array.isArray(U.icons)?U.icons:[U.icons])||[]).map(e=>{const t="string"==typeof e?.src?e.src:(e?.src??"")+"",r="string"==typeof e?.mimeType?e.mimeType:(e?.mimeType??"")+"";let s=[];return Array.isArray(e?.sizes)?s=e.sizes.map(e=>e+""):"string"==typeof e?.sizes&&(s=(e.sizes+"").split(",").map(e=>e.trim())),{src:t,mimeType:r,sizes:s}}),i={name:U.name,title:U.title,websiteUrl:U.websiteUrl,version:U.version,icons:o};switch(this._mcp=new u.McpServer(i,{instructions:"You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework. \nProvide clear, concise, and accurate information.\nIf you don't know the answer, admit it rather than making up information.\nAlways prioritize the user's intent and provide helpful suggestions when appropriate.\n",capabilities:{logging:{},tools:{},prompts:{}}}),this._mcp.onerror=e=>{this.log.error("MCP instance onerror",e)},r){case"stdio":r=new h.StdioServerTransport;break;case"http":r=new g.StreamableHTTPServerTransport({sessionIdGenerator:()=>m.v4(),onsessioninitialized:e=>s.verbose("Session initialized: "+e),onsessionclosed:e=>s.verbose("Session closed: "+e),enableJsonResponse:!0,eventStore:void 0});break;default:if(!(n=r)||"object"!=typeof n||"function"!=typeof n.send&&"function"!=typeof n.close&&"function"!=typeof n.on)throw new d.InternalError("Invalid transport type: "+r)}var n;try{this.log.info("Loading resources/prompts/tools..."),await this.load()}catch(e){throw this.log.error("Error loading resources/prompts/tools: "+e),e}await this.client.connect(r),s.info(`MCP Server connected via ${r.constructor.name} and running. Waiting for client connections...`)}}(async()=>{(new Y).boot("stdio")})()},"object"==typeof exports&&"undefined"!=typeof module?t(require("@decaf-ts/logging"),require("styled-string-builder"),require("path"),require("fs"),require("tslib"),require("@decaf-ts/decorator-validation"),require("zod"),require("@decaf-ts/injectable-decorators"),require("@decaf-ts/decoration"),require("@decaf-ts/db-decorators"),require("crypto"),require("zlib"),require("@modelcontextprotocol/sdk/shared/uriTemplate.js"),require("@modelcontextprotocol/sdk/server/mcp.js"),require("uuid"),require("@modelcontextprotocol/sdk/server/stdio.js"),require("@modelcontextprotocol/sdk/server/streamableHttp.js")):"function"==typeof define&&define.amd?define(["@decaf-ts/logging","styled-string-builder","path","fs","tslib","@decaf-ts/decorator-validation","zod","@decaf-ts/injectable-decorators","@decaf-ts/decoration","@decaf-ts/db-decorators","crypto","zlib","@modelcontextprotocol/sdk/shared/uriTemplate.js","@modelcontextprotocol/sdk/server/mcp.js","uuid","@modelcontextprotocol/sdk/server/stdio.js","@modelcontextprotocol/sdk/server/streamableHttp.js"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).decafTsLogging,e.styledStringBuilder,e.path,e.fs,e.tslib,e.decafTsDecoratorValidation,e.zod,e.decafTsInjectableDecorators,e.decafTsDecoration,e.decafTsDbDecorators,e.crypto,e.zlib,e.uriTemplate_js,e.mcp_js,e.uuid,e.stdio_js,e.streamableHttp_js);
2
+ var e,t;e=this,t=function(e,t,r,s,n,i,o,a,c,l,p,d,u,m,h,f,g,y,b,v,w,S,j){"use strict";function x(e){var t=Object.create(null);return e&&Object.keys(e).forEach(r=>{if("default"!==r){var s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:()=>e[r]})}}),t.default=e,Object.freeze(t)}var I=x(t),_=x(r);class z extends s.MiniLogger{log(e,t,r,n){const i=this.config("level");s.NumericLogLevels[i],s.NumericLogLevels[e]}}const E=(e,t,...r)=>{const s=(e=>{if("string"==typeof e)return e;if(!e)return"unknown";if("function"==typeof e)return e.name||"unknown";if("object"==typeof e&&"constructor"in e){const t=e.constructor;if(t&&t.name)return t.name}return"unknown"})(e);return new z(s,t)},T=["\x1b[38;5;215m","\x1b[38;5;209m","\x1b[38;5;205m","\x1b[38;5;210m","\x1b[38;5;217m","\x1b[38;5;216m","\x1b[38;5;224m","\x1b[38;5;230m","\x1b[38;5;230m"];var k,A,O,N,C;(e=>{e[e.NONE=0]="NONE",e[e.BASIC=1]="BASIC",e[e.ADVANCED=2]="ADVANCED",e[e.HIGH=3]="HIGH"})(k||(k={})),(e=>{e[e.NONE=0]="NONE",e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH"})(A||(A={})),(e=>{e[e.FREE=0]="FREE",e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH"})(O||(O={}));class H extends o.Model{get log(){return this._log||(this._log=s.Logging.for(this)),this._log}constructor(e){super(e)}logFor(e){const{sessionId:t,requestId:r,authInfo:s}=e||{};let n="string"==typeof t&&t.length>0?this.log.for(t):this.log;return s&&s.clientId&&(n=n.for(s.clientId)),r&&(n=n.for(r.toString())),n}setDescription(e){return this.description=e,this}getDescription(){return this.description}setName(e){return this.name=e,this}getName(){return this.name}setTitle(e){return this.title=e,this}}i.__decorate([o.required(),i.__metadata("design:type",String)],H.prototype,"description",void 0),i.__decorate([o.required(),i.__metadata("design:type",String)],H.prototype,"name",void 0),i.__decorate([o.required(),i.__metadata("design:type",String)],H.prototype,"title",void 0);class D extends H{constructor(e){super(e),this.reasoning=k.NONE,this.effort=A.NONE,this.cost=O.FREE}setReasoning(e){return this.reasoning=e,this}setEffort(e){return this.effort=e,this}setCost(e){return this.cost=e,this}}function J(e){if(!e)return;let t=e,r=t&&t._def;for(;r&&"ZodObject"!==r.typeName;){if("ZodEffects"===r.typeName&&r.schema)t=r.schema;else if("ZodOptional"===r.typeName&&r.innerType)t=r.innerType;else if("ZodDefault"===r.typeName&&r.innerType)t=r.innerType;else if("ZodNullable"===r.typeName&&r.innerType)t=r.innerType;else{if(!r.schema)return;t=r.schema}r=t&&t._def}return r&&"ZodObject"===r.typeName?r:void 0}function q(e,t="schema"){if(J(e))return e;if(e&&"object"==typeof e){const t=e.def&&"object"==typeof e.def?e.def:void 0,r=t&&(t.shape||"object"===t.type)&&t.shape||("object"===e.type?e.shape:void 0)||(t&&"object"===t.type?{}:void 0);if(t||"object"===e.type||r){const e={};if(r&&"object"==typeof r)for(const[t,s]of Object.entries(r))e[t]=M(s)?s:a.z.any();return a.z.object(e)}}throw Error(`Registration error: provided a non-canonical ${t}. Export a ZodObject (z.object(...)).`)}function P(e){if(!e)return;if(e&&"object"==typeof e&&!e._def)return e.def&&"object"==typeof e.def&&e.def.shape?e.def.shape:e;const t=J(e);return t?"function"==typeof t.shape?t.shape():t.shape||void 0:void 0}function M(e){return!(!e||"object"!=typeof e||!e._def)}i.__decorate([o.required(),i.__metadata("design:type",Number)],D.prototype,"reasoning",void 0),i.__decorate([o.required(),i.__metadata("design:type",Number)],D.prototype,"effort",void 0),i.__decorate([o.required(),i.__metadata("design:type",Number)],D.prototype,"cost",void 0),(e=>{e.ASSETS="assets"})(N||(N={})),(e=>{e.PROMPT="prompts",e.DOCUMENTATION="documentation",e.CODE="code"})(C||(C={}));const R=Buffer.from("DCAF1","ascii");function $(e){let t=e;for(;;){const e=_.join(t,"lib","assets");if(I.existsSync(e))return e;const r=_.join(t,"src","assets");if(I.existsSync(r))return r;const s=_.join(t,"assets");if(I.existsSync(s))return s;const n=_.dirname(t);if(n===t)break;t=n}}function L(){const e=process.env.DECAF_ASSET_DIR||process.env.MCP_ASSET_DIR||process.env.ASSET_DIR||"";if(e&&I.existsSync(e))return e;const t=process.argv?.[1];if(t){const e=$(_.dirname(t));if(e)return e}const r=[process.cwd(),process.env.INIT_CWD].filter(Boolean);for(const e of r){const t=$(e);if(t)return t}return _.join(process.cwd(),"assets")}let F=class extends s.LoggedClass{constructor(e){super(),this.basePath=e||L()}listAssets(...e){const t=_.join(this.basePath,...e);return I.readdirSync(t)}listPrompts(){return this.listAssets(C.PROMPT)}getAsset(e,t="md",...r){const s=_.join(this.basePath,...r),n=(e,t=!1)=>{try{return t?(e=>{if(e.length<R.length+16+12+16)throw Error("Invalid prompt payload (too short)");if(!e.subarray(0,R.length).equals(R))throw Error("Invalid prompt payload (bad magic)");const t=process.env.ENCRYPTION_KEY||"";if(!t)throw Error("Missing encryption key. Set ENCRYPTION_KEY to load obfuscated assets.");let r=R.length;const s=e.subarray(r,r+16);r+=16;const n=e.subarray(r,r+12);r+=12;const i=e.subarray(r,r+16);r+=16;const o=e.subarray(r),a=((e,t)=>d.scryptSync(e,t,32))(t,s),c=d.createDecipheriv("aes-256-gcm",a,n);c.setAuthTag(i);const l=Buffer.concat([c.update(o),c.final()]);return u.gunzipSync(l)})(I.readFileSync(e)).toString("utf-8"):I.readFileSync(e,"utf-8")}catch(e){if("ENOENT"===e.code)return null;throw e}},i=n(_.join(s,`${e}.${t}`),"enc"===t);if(null!==i)return i;const o=n(_.join(s,e+".enc"),!0);if(null!==o)return o;throw Error("Asset not found: "+_.join(s,`${e}.${t}`))}getAllAssets(e,...t){return this.listAssets(e,...t).reduce((r,s)=>{const n=_.extname(s),i=_.basename(s,n),o=n.replace(/^\./,"")||void 0;return r[i]=this.getAsset(i,o??void 0,e,...t),r},{})}toPromptDef(e){const t=e=>"number"==typeof e?e:"string"==typeof e?(e=>{switch(e){case"none":return k.NONE;case"basic":return k.BASIC;case"advanced":return k.ADVANCED;case"high":return k.HIGH;case"medium":return A.MEDIUM;case"low":return O.LOW;case"free":return O.FREE;default:throw new p.InternalError("Cannon convert unknown level "+e)}})(e.toLowerCase()):k.NONE;return e.effort=t(e.effort),e.reasoning=t(e.reasoning),e.cost=t(e.cost),e}getPrompt(e,...t){const r=this.getAsset(s.toSnakeCase(e),"json",C.PROMPT,...t);let n;try{n=JSON.parse(r)}catch(r){throw new p.SerializationError(`Failed to parse prompt ${e} in categories ${t}: ${r}`)}return this.toPromptDef(n)}getAllPrompts(...e){const t=this.getAllAssets(C.PROMPT,...e);return Object.entries(t).reduce((t,[r,s])=>{try{t[r]=JSON.parse(s)}catch(t){throw new p.SerializationError(`Failed to parse prompt ${r} in categories ${e}: ${t}`)}return t},t)}};F=i.__decorate([c.injectable(),i.__metadata("design:paramtypes",[String])],F);class B extends D{constructor(e){super(e)}setCb(e){return this.cb=e,this}setArgsSchema(e){return this.argsSchema=e,this}static get builder(){return new B}static patchPrompt(e,t,r,n){const i=(t=Array.isArray(t)?t:Object.keys(t)).filter(e=>!Object.prototype.hasOwnProperty.call(r,e));if(i.length)throw new p.ValidationError("Missing replacements for placeholders: "+i.join(", "));n&&(n.verbose("Patching prompt with placeholders: "+JSON.stringify(t)),n.debug("Values: "+JSON.stringify(r)));const o=t.reduce((e,t)=>(e[t]=r[t],e),{});return s.sf(e,o)}patchPrompt(e,t,r,s){return B.patchPrompt(e,t,r,s||this.log.for(this.patchPrompt))}build(e,t){const r=this.log.for(this.build),s=this.hasErrors();if(s)throw new p.ValidationError(s.toString());try{this.argsSchema&&q(this.argsSchema,"argsSchema");const r=P(this.argsSchema);return e.registerPrompt(this.name,{title:this.title,description:this.description,argsSchema:r},async(e,r)=>{const s=this.logFor(r);e=Object.assign({},t,e||{}),s.verbose(`Executing prompt ${this.name} with args: ${JSON.stringify(e)}`),e._meta=Object.assign(e._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const n=await Promise.resolve(this.cb(e,r));return s.verbose(`Prompt ${this.name} executed successfully.`),s.debug("Prompt execution meta: "+JSON.stringify(n._meta)),n})}catch(e){throw r.error("Failed to register prompt "+(this.name||this.constructor.name),e),e}}}i.__decorate([c.inject(F),i.__metadata("design:type",F)],B.prototype,"assets",void 0),i.__decorate([o.required(),i.__metadata("design:type",Object)],B.prototype,"cb",void 0),i.__decorate([o.required(),i.__metadata("design:type",a.ZodObject)],B.prototype,"argsSchema",void 0),i.__decorate([l.prop(),i.__metadata("design:type",Object)],B.prototype,"placeholders",void 0);class W extends B{setCategory(e){return this.promptCategory=e,this}addPrefix(e){return this.prefixes=this.prefixes||[],this.prefixes.push(e),this}addSuffix(e){return this.suffixes=this.suffixes||[],this.suffixes.push(e),this}constructor(e){super(e)}build(e){const t=this.assets.getPrompt(this.name,this.promptCategory);o.Model.fromObject(this,t);const r=new Set((l.Metadata.properties(W)||[]).filter(e=>!["assets","promptCategory","prefixes","suffixes"].includes(e)));["cb","argsSchema"].forEach(e=>r.add(e));const s=this.hasErrors(...Array.from(r));if(s)throw new p.ValidationError(s.toString());const n=(this.prefixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),i=(this.suffixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),c=[...new Set([...t.placeholders,...n.map(e=>e.placeholders||[]),...i.map(e=>e.placeholders||[])].flat())].reduce((e,t)=>(e[t]=a.z.string().describe("The description for "+t),e),{});return this.setArgsSchema(a.z.object(c)),this.setCb((e,t)=>{const r=this.logFor(t).for(W).for(this.promptCategory).for(this.name);function s(e=[]){return Array.isArray(e)?e:Object.keys(e)}const n=(this.prefixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),i=(this.suffixes||[]).map(e=>this.assets.getPrompt(e,this.promptCategory)),o=this.assets.getPrompt(this.name,this.promptCategory),a=[...new Set([...n.map(e=>s(e.placeholders)).flat(),...i.map(e=>s(e.placeholders)).flat(),...s(o.placeholders).flat()])];return{messages:[{role:"user",content:{type:"text",text:this.patchPrompt([...n.map(e=>e.prompt),o.prompt,...i.map(e=>e.prompt)].join("\n\n"),a,e,r)}}],_meta:{}}}),super.build(e)}setReasoning(e){throw new p.InternalError("Named prompt builders don't require callback")}setEffort(e){throw new p.InternalError("Named prompt builders don't require callback")}setCost(e){throw new p.InternalError("Named prompt builders don't require callback")}setDescription(e){throw new p.InternalError("Named prompt builders don't require callback")}setTitle(e){throw new p.InternalError("Named prompt builders don't require callback")}static get builder(){return new W}}i.__decorate([o.required(),i.__metadata("design:type",String)],W.prototype,"promptCategory",void 0),i.__decorate([o.list(String),o.minlength(1),i.__metadata("design:type",Array)],W.prototype,"prefixes",void 0),i.__decorate([o.minlength(1),o.list(String),i.__metadata("design:type",Array)],W.prototype,"suffixes",void 0);const U=B.builder.setName("example.prompt").setTitle("Example prompt").setDescription("Example prompt for testing").setArgsSchema(a.z.object({message:a.z.string().optional()})).setCb(async e=>{const t=e.message??"default";return{messages:[{role:"assistant",content:{type:"text",text:t}}],content:[],structuredContent:{message:t},result:{message:t}}}),K=B.builder.setName("interactive.jsdoc").setTitle("Interactive JSDoc prompt").setDescription("Interactive prompt for jogging JSDoc helpers").setArgsSchema(a.z.object({gist:a.z.string().optional()})).setCb(async e=>{const t=e.gist??"interactive jsdoc response";return{messages:[{role:"assistant",content:{type:"text",text:t}}],content:[],structuredContent:{message:t},result:{message:t}}}),Y=Object.assign(K,{name:K.getName()});var V;function G(e,t=[],r=[]){const s=W.builder.setCategory(V.DOCS).setName(e);return["prefix",...t].forEach(e=>s.addPrefix(e)),["suffix",...r].forEach(e=>s.addSuffix(e)),s}(e=>{e.DOCS="documentation",e.CODE="code"})(V||(V={}));const Z=[G("class"),G("constant"),G("decorator"),G("function"),G("module"),G("file"),G("repo",[],["iterate"])],Q=a.z.object({className:a.z.string().describe("the class name to turn into a builder")}),X=[U,Y,...Z,B.builder.setName("ts.code.dp.builder").setTitle("Typescript builder design patter prompt").setDescription("for a class, with a defined set of properties, scafold a builder design pattern").setArgsSchema(Q).setReasoning(k.BASIC).setCb((e,t)=>(e.className=s.toPascalCase(e.className),{messages:[{role:"user",content:{type:"text",text:`You're a senior TypeScript developer writing typescript code.You're a senior TypeScript developer writing typescript code.\nTransform the selected class into a builder design pattern implementation in Typescript.\nuse @decaf-ts validation decorators to enforce the validation of your builder.\n\n- must extend the Model Class from @decaf-ts/decorator-validation;\n- each property must be marked as protected;\n- each property must have a setter method that returns 'this' for chaining;\n- the build() method must validate the properties using hasErrors() method from Model class;\n- if validation fails, throw an error with the validation errors;\n- if validation passes, return an instance of the original class with the set properties;\n- optionally (but do so by default) add the static builder and from methods from the example;\n- if the clasee already follows the pattern but has properties without decoration or without setters, simple add them;\n\nexample:\n\noriginal class:\n\`\`\`typescript\nexport class ${e.className} {\n description!: string;\n name!: string = "default name";\n title!: string;\n age?: string;\n dateOfBirth!: Date;\n}}\n\`\`\` \n\nresulting builder pattern implementation:\n\`\`\`typescript\nexport class ${e.className}Builder extends Model {\n\n @minlength(10\n @required()\n protected description!: string;\n \n @required()\n protected name!: string = "default value;\n \n @required()\n protected title!: string;\n \n @min(18)\n protected age?: string;\n \n @date()\n protected dateOfBirth!: Date;\n\n protected constructor(arg?: ModelArg<${e.className}Builder>>) {\n super(arg);\n Model.fromModel(this, arg);\n }\n\n setDescription(value: string) {\n this.description = value;\n return this;\n }\n\n setName(value: string) {\n this.name = value;\n return this;\n }\n\n setTitle(value: string) {\n this.title = value;\n return this;\n }\n setAge(value: number) {\n this.age = value;\n return this;\n }\n setDate(value: Date) {\n this.age = value;\n return this;\n }\n \n build(...args: any[]): ${e.className}Builder | Promise<${e.className}Builder> {\n const errs = this.hasErrors();\n if (errs) throw new Error(errs.toString());\n \n return // code that builds OBJ here\n }\n \n static get builder(): ${e.className}Builder {\n return new ${e.className}Builder(); // static method to get a new builder instance\n }\n \n static from<K extends keyof ${e.className}Builder>(obj: K, ${e.className}Builder[K]): ${e.className}Builder {\n return new ${e.className}Builder(); // static method to create a builder from an object\n }\n}\n\`\`\` \n\n`}}],_meta:{}}))];class ee extends D{setAnnotations(e){return this.annotations=Object.assign(this.annotations,e),this}setCb(e){return this.cb=e,this}setInputSchema(e){return this.inputSchema=e,this}setOutputSchema(e){return this.outputSchema=e,this}constructor(e){super(e),this.annotations={readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}}static get builder(){return new ee}build(e){const t=this.hasErrors();if(t)throw Error(t.toString());try{this.inputSchema&&q(this.inputSchema,"inputSchema"),this.outputSchema&&q(this.outputSchema,"outputSchema");const t=P(this.inputSchema),r=P(this.outputSchema);return e.registerTool(this.name,{title:this.title,description:this.description,inputSchema:t,outputSchema:r,annotations:this.annotations,_meta:{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}}},async(e,t)=>{const r=this.logFor(t);r.verbose(`Executing tool ${this.name} with args: ${JSON.stringify(e)}`),t._meta=Object.assign(t._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const s=await Promise.resolve(this.cb(e,t));return r.verbose(`Tool ${this.name} executed successfully.`),r.debug("Tool execution meta: "+JSON.stringify(s._meta)),s})}catch(e){const t=e?.message||e+"";if("string"==typeof t&&t.includes("already registered"))return s.Logging.for(this).warn(`Tool ${this.name} already registered - skipping duplicate registration`),{name:this.name};throw s.Logging.for(this).error("Error building tool",e),e}}}i.__decorate([o.required(),i.__metadata("design:type",Object)],ee.prototype,"annotations",void 0),i.__decorate([o.required(),i.__metadata("design:type",Object)],ee.prototype,"cb",void 0),i.__decorate([o.required(),i.__metadata("design:type",Function)],ee.prototype,"inputSchema",void 0);const te=ee.builder.setName("example.tool").setTitle("Example tool").setDescription("A smoke tool used for quick testing").setInputSchema(a.z.object({})).setCb(async()=>({content:[{type:"text",text:"example tool ok"}],result:{status:"ok"}}));Object.assign(te,{name:te.getName()});const re=ee.builder.setName("file.summarizer").setTitle("File summarizer").setDescription("Summaries files for quick previews").setInputSchema(a.z.object({filePath:a.z.string().optional()})).setCb(async()=>({content:[{type:"text",text:"file summary stub"}],result:{summary:"file summary stub"}}));Object.assign(re,{name:re.getName()});const se="##VERSION##";l.Metadata.registerLibrary("##PACKAGE##",se),m.config({path:_.resolve(__dirname,"../../.env")});const ne={mcpId:"decaf",name:"decaf-ts mcp server",title:"Decaf-TS MCP Server",description:"Provides precise coding assistance for the decaf-ts framework",version:se,websiteUrl:"https://decaf-ts.github.io",repositoryUrl:"https://github.com/decaf-ts/mcp-server",license:"AGPL-3.0",workingDir:process.cwd(),assetDir:L(),contacts:[{name:"Decaf-TS",url:"https://decaf-ts.github.io"}],tags:"server,official,decaf-ts",metadata:{},icons:[{src:"workdocs/assets/favicon.svg",mimeType:"image/svg+xml",sizes:"any"}],jira:{host:process.env.JIRA__HOST||"decaf-ts.atlassian.net",email:process.env.JIRA__EMAIL||"",apiKey:process.env.JIRA__API_KEY||process.env.JIRA__APIKEY||"",projectKey:process.env.JIRA__PROJECT_KEY||void 0,issueType:process.env.JIRA__ISSUE_TYPE||void 0,parentIssue:process.env.JIRA__PARENT_ISSUE||void 0},level:s.LogLevel.error},ie=s.LoggedEnvironment.accumulate(ne);function oe(){const{host:e,email:t,apiKey:r,projectKey:s,issueType:n}=ie.jira;return{host:e?.trim(),email:t?.trim(),apiKey:r?.trim(),projectKey:s?.trim(),issueType:n?.trim(),parentIssue:ie.jira.parentIssue?.trim()}}function ae(){const e=oe();return[{name:"JIRA__HOST",required:!0,description:"Atlassian host (e.g. decaf-ts.atlassian.net) where your Jira instance is hosted.",value:e.host},{name:"JIRA__EMAIL",required:!0,description:"Email address of the Jira account that has API access.",value:e.email},{name:"JIRA__API_KEY",required:!0,description:"API token created in your Atlassian profile (a.k.a. APIKEY alias) for authenticating requests.",sensitive:!0,value:e.apiKey},{name:"JIRA__PROJECT_KEY",required:!1,description:"Default Jira project key (e.g. DECAF) used when an issue creation request omits a project.",value:e.projectKey},{name:"JIRA__ISSUE_TYPE",required:!1,description:"Default Jira issue type (e.g. Task, Bug) used when creating issues without an explicit type.",value:e.issueType},{name:"JIRA__PARENT_ISSUE",required:!1,description:"Default parent issue key (e.g. DECAF-123) applied when a child issue is created without an explicit parent.",value:e.parentIssue}]}function ce(e){const t=e.value?((e,t)=>{if(e)return t?"<configured>":e})(e.value,e.sensitive):"not set",r=e.required?"(required)":"(optional)";return`\u2022 ${e.name} ${r}: ${e.description} Current state: ${t}.`}s.Logging.setConfig(ie);class le extends Error{constructor(e){const t=ae(),r=(e=>{const t=ae();return`${e.length?`Missing Jira credentials: ${e.map(e=>e.name).join(", ")}.`:"Jira credentials are configured."}\n\nThis setup uses the following environment variables:\n${t.map(ce).join("\n")}`})(e);super(r),this.name="MissingJiraEnvironmentError",this.descriptors=t,this.missing=e,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,le)}}function pe(e){if(!e)return{code:"jira_error",message:"Unknown Jira error",details:{raw:e}};const t=e?.status??e?.statusCode??e?.response?.status??e?.response?.statusCode,r="number"==typeof t?t:Number(t)||void 0,s=e?.response?.data??e?.data??e?.response?.body??e?.body,n=[];"string"==typeof e?.message&&n.push(e.message),((e,t)=>{e&&(Array.isArray(e.errorMessages)&&e.errorMessages.forEach(e=>"string"==typeof e&&t.push(e)),"string"==typeof e.errorMessage&&t.push(e.errorMessage),e.errorCollection&&Array.isArray(e.errorCollection.errors)&&e.errorCollection.errors.forEach(e=>{"string"==typeof e?t.push(e):e&&"string"==typeof e.message&&t.push(e.message)}),e?.errors&&"object"==typeof e.errors&&Object.values(e.errors).forEach(e=>{"string"==typeof e?t.push(e):"string"==typeof e?.message&&t.push(e.message)}))})(s,n);const i=r?`Jira API error (${r})`:"Jira API error",o=n.length>0?n.join(" | "):i;return{code:r?"jira_"+r:e?.code??"jira_error",message:o,details:{httpStatus:r,body:s,raw:e}}}const de=a.z.object({issueId:a.z.string().min(1),deleteSubtasks:a.z.boolean().optional().default(!0)}),ue={name:"jira.issue-delete",inputSchema:de,runTool:async(e,t)=>{try{const r=de.parse(t),s=e.issues??e.issue??e,n=s?.delete??s?.deleteIssue;if("function"!=typeof n)throw Error("jira client delete endpoint is not available");return await n.call(s,{issueId:r.issueId,deleteSubtasks:r.deleteSubtasks}),{success:!0,message:`Issue ${t.issueId} deleted successfully`}}catch(e){throw pe(e)}}},me=a.z.object({issueId:a.z.string().min(1),expand:a.z.string().optional(),fields:a.z.array(a.z.string()).optional(),properties:a.z.array(a.z.string()).optional()}),he={name:"jira.issue-read",inputSchema:me,runTool:async(e,t)=>{try{const r=me.parse(t),s={issueIdOrKey:r.issueId};r.expand&&(s.expand=r.expand),r.fields&&(s.fields=r.fields),r.properties&&(s.properties=r.properties);const n=await e.issues.get(s);return n?.data??n}catch(e){throw pe(e)}}};function fe(e,t,r){const s=((e.url??"")+"").match(/^(attachment|jira-attachment):(.+)$/i);if(!s)return null;const n=s[2],i=r.resolveAttachment?.(n);return i?{type:"block",node:{type:"mediaSingle",attrs:{layout:"center"},content:[{type:"media",attrs:{type:"file",id:i.id,collection:i.collection??"attachments"}}]}}:null}function ge(e,t){if(!e)return[];if(!t.enableAtMentions&&!t.enableEmojiShortcodes)return[{type:"text",text:e}];let r=0;const s=[],n=/(^|[^A-Za-z0-9_])@([A-Za-z0-9._-]{1,64})/g,i=/:([a-z0-9_+-]{1,64}):/gi;for(;r<e.length;){const o=be(t.enableAtMentions?ye(n,e,r):null,t.enableEmojiShortcodes?ye(i,e,r):null);if(!o){s.push({type:"text",text:e.slice(r)});break}if(o.index>r&&s.push({type:"text",text:e.slice(r,o.index)}),"mention"===o.kind){const{full:e,groups:n}=o,i=n[0]??"",a=n[1]??"";i&&s.push({type:"text",text:i});const c=t.resolveMention?.(a);c?s.push({type:"mention",attrs:{id:c.id,text:c.text}}):s.push({type:"text",text:"@"+a}),r=o.index+e.length;continue}if("emoji"===o.kind){const{full:e,groups:n}=o,i=`:${n[0]}:`,a=t.resolveEmoji?.(i);s.push({type:"emoji",attrs:a?{shortName:a.shortName,text:a.text}:{shortName:i}}),r=o.index+e.length;continue}}return(e=>{const t=[];for(const r of e){const e=t[t.length-1];"text"!==r.type||"text"!==e?.type||e.marks||r.marks?t.push(r):e.text=(e.text??"")+(r.text??"")}return t})(s)}function ye(e,t,r){e.lastIndex=r;const s=e.exec(t);if(!s)return null;const n=e.source.includes("@")?"mention":"emoji";return{index:s.index,full:s[0],groups:s.slice(1),kind:n}}function be(e,t){return e?t&&e.index>t.index?t:e:t}function ve(e){const t=(e.children??[])[0];return"text"===t?.type?(t.value??"")+"":"paragraph"===t?.type?((t.children??[]).map(e=>"text"===e.type?(e.value??"")+"":"").join("")||"")+"":""}function we(e){const t=((e??"")+"").toLowerCase().trim();return t?"info"===t||"note"===t||"success"===t||"warning"===t||"error"===t?t:"danger"===t?"error":null:null}function Se(e){const t=((e??"")+"").toLowerCase().trim();return!t||"neutral"!==t&&"green"!==t&&"yellow"!==t&&"red"!==t&&"blue"!==t&&"purple"!==t?null:t}function je(e,t){const r=[];for(const s of e??[])if(s?.type)if("text"!==s.type)if("strong"!==s.type)if("emphasis"!==s.type)if("delete"!==s.type)if("inlineCode"!==s.type)if("break"!==s.type){if("link"===s.type){const e=(s.url??"")+"",n=Ie(s.children??[],e),i=fe(s,0,t);if(i){"inline"===i.type?r.push(i.node):r.push({type:"text",text:n,marks:[{type:"link",attrs:{href:e}}]});continue}if(t.enableSmartCards&&_e(n,e)){r.push({type:"inlineCard",attrs:{url:e}});continue}r.push({type:"text",text:n,marks:[{type:"link",attrs:{href:e}}]});continue}if("textDirective"===s.type&&"status"===s.name){const e=ve(s)||"Status",t=Se(s.attributes?.color)??"neutral";r.push({type:"status",attrs:{text:e,color:t}});continue}if("textDirective"===s.type&&"emoji"===s.name){const e=ze(s);r.push(Ee(e,t));continue}}else r.push({type:"hardBreak"});else r.push({type:"text",text:(s.value??"")+"",marks:[{type:"code"}]});else r.push(...xe(je(s.children??[],t),{type:"strike"}));else r.push(...xe(je(s.children??[],t),{type:"em"}));else r.push(...xe(je(s.children??[],t),{type:"strong"}));else r.push(...ge((s.value??"")+"",t));return r.filter(e=>!("text"===e.type&&""===(e.text??"")))}function xe(e,t){return e.map(e=>{if("text"!==e.type)return e;const r=e.marks?[...e.marks,t]:[t];return{...e,marks:r}})}function Ie(e,t){const r=[];for(const t of e??[])"text"===t.type||"inlineCode"===t.type?r.push((t.value??"")+""):"emphasis"!==t.type&&"strong"!==t.type&&"delete"!==t.type||r.push(Ie(t.children??[],""));return r.join("")||t}function _e(e,t){const r=(e??"").trim(),s=(t??"").trim();return r===s&&/^https?:\/\//i.test(s)}function ze(e){return(e.children??[]).map(e=>"text"===e.type?(e.value??"")+"":"").join("").trim()||""}function Ee(e,t){const r=e.startsWith(":")?e:`:${e}:`,s=t.resolveEmoji?.(r);return s?{type:"emoji",attrs:{shortName:s.shortName,text:s.text}}:{type:"emoji",attrs:{shortName:r}}}function Te(e){return e?"string"==typeof e?e:"text"===e.type||"inlineCode"===e.type?(e.value??"")+"":Array.isArray(e.children)?e.children.map(Te).join(""):"":""}function ke(e,t){if(!e?.type)return null;if((e=>"containerDirective"===e?.type&&"panel"===e?.name)(e))return((e,t)=>{const r=e.attributes??{},s=we(r.type)??"info",n="string"==typeof r.title?r.title:void 0,i=(e.children??[]).map(e=>ke(e,t)).flat().filter(Boolean);return{type:"panel",attrs:{panelType:s,...n?{panelType:s,title:n}:{panelType:s}},content:i.length?i:[{type:"paragraph",content:[]}]}})(e,t);switch(e.type){case"heading":return{type:"heading",attrs:{level:Oe(e.depth??1,1,6)},content:je(e.children??[],t)};case"paragraph":return(e=>{const t=e.children??[];if(1!==t.length)return null;const r=t[0];if("image"!==r?.type)return null;const s=(r.url??"")+"";return s?{type:"mediaSingle",attrs:{layout:"center"},content:[{type:"media",attrs:{type:"external",url:s}}]}:null})(e)||{type:"paragraph",content:je(e.children??[],t)};case"blockquote":return{type:"blockquote",content:(e.children??[]).map(e=>ke(e,t)).flat().filter(Boolean)};case"list":return((e,t)=>t.enableTaskLists&&(e.children??[]).some(e=>"boolean"==typeof e.checked)?((e,t)=>{const r=[];let s=0;for(const n of e.children??[]){if("boolean"!=typeof n.checked)continue;s+=1;const e=(n.children??[]).map(e=>ke(e,t)).flat().filter(Boolean);r.push({type:"taskItem",attrs:{localId:"task-"+s,state:n.checked?"DONE":"TODO"},content:e.length?e:[{type:"paragraph",content:[]}]})}return{type:"taskList",content:r}})(e,t):{type:e.ordered?"orderedList":"bulletList",content:(e.children??[]).map(e=>((e,t)=>{const r=(e.children??[]).map(e=>ke(e,t)).flat().filter(Boolean);return{type:"listItem",content:r.length?r:[{type:"paragraph",content:[]}]}})(e,t))})(e,t);case"code":{const r=((e,t)=>{const r=(e??"").toString().trim().toLowerCase();return r?t.enableMermaid&&"mermaid"===r?"mermaid":(e=>{const t=e.trim().toLowerCase();return{js:"javascript",javascript:"javascript",jsx:"javascript",ts:"typescript",typescript:"typescript",tsx:"typescript",py:"python",python:"python",rb:"ruby",ruby:"ruby",sh:"bash",bash:"bash",zsh:"bash",shell:"bash",yml:"yaml",yaml:"yaml",json:"json",toml:"toml",xml:"xml",html:"html",css:"css",scss:"scss",sql:"sql",go:"go",rust:"rust",java:"java",c:"c",cpp:"cpp","c++":"cpp",cs:"csharp",csharp:"csharp",php:"php",kotlin:"kotlin",swift:"swift",md:"markdown",markdown:"markdown",graphql:"graphql",gql:"graphql",dockerfile:"docker",makefile:"make",ini:"ini"}[t]??t})(r):null})(e.lang,t);return{type:"codeBlock",attrs:{language:r},content:[{type:"text",text:(e.value??"")+""}]}}case"thematicBreak":return{type:"rule"};case"table":return((e,t)=>({type:"table",content:(e.children??[]).map((e,r)=>({type:"tableRow",content:(e.children??[]).map(e=>({type:0===r?"tableHeader":"tableCell",content:[{type:"paragraph",content:je(e.children??[],t)}]}))}))}))(e,t);case"leafDirective":return"status"===e.name?(e=>{const t=Se((e.attributes??{}).color)??"neutral";return{type:"paragraph",content:[{type:"status",attrs:{text:ve(e)||"Status",color:t}}]}})(e):"panel"===e.name?((e,t)=>{const r=e.attributes??{},s=we(r.type)??"info",n="string"==typeof r.title?r.title:void 0;return{type:"panel",attrs:{panelType:s,...n?{title:n}:{}},content:[{type:"paragraph",content:je([{type:"text",value:ve(e)}],t)}]}})(e,t):Ae(e,t);default:return Ae(e,t)}}function Ae(e,t){if("drop"===t.unknownNodeStrategy)return null;const r=Te(e);return r?{type:"paragraph",content:[{type:"text",text:r}]}:null}function Oe(e,t,r){const s=Number.isFinite(e)?Math.trunc(e):t;return Math.max(t,Math.min(r,s))}const Ne={resolveMention:void 0,resolveAttachment:void 0,resolveEmoji:void 0,enableSmartCards:!0,enableMermaid:!0,enableEmojiShortcodes:!0,enableAtMentions:!0,enableTaskLists:!0,unknownNodeStrategy:"text"};function Ce(e,t={}){const r={...Ne,...t},s=e??"",n=h.unified().use(y).use(g).use(f),i=n.parse(s),o=n.runSync(i);return He(o),((e,t)=>{const r=[];for(const s of e.children??[]){const e=ke(s,t);e&&(Array.isArray(e)?r.push(...e):r.push(e))}return((e,t)=>{if(!t.enableSmartCards)return e;const r=e.content.map(e=>(e=>{if("paragraph"!==e.type)return e;const t=e.content??[];if(1!==t.length)return e;const r=t[0];if("inlineCard"!==r?.type)return e;const s=r.attrs?.url;return s?[{type:"blockCard",attrs:{url:s}}]:e})(e)).flat();return{...e,content:r}})({version:1,type:"doc",content:r},t)})(o,r)}function He(e){if(!e||!Array.isArray(e.children))return;const t=[];for(const r of e.children)"definition"!==r?.type&&("html"!==r?.type?(He(r),t.push(r)):t.push({type:"text",value:(r.value??"")+""}));e.children=t}const De=a.z.object({issueId:a.z.string().min(1),transitionId:a.z.union([a.z.string(),a.z.number()]),fields:a.z.record(a.z.any()).optional(),update:a.z.record(a.z.array(a.z.object({set:a.z.any().optional(),add:a.z.any().optional(),remove:a.z.any().optional()}))).optional(),comment:a.z.string().optional()}),Je={name:"jira.issue-transition",inputSchema:De,runTool:async(e,t)=>{try{const r=De.parse(t),s={id:r.transitionId};r.fields&&(s.fields=r.fields),r.update&&(s.update=r.update),r.comment&&(s.comment={body:Ce(r.comment)});const n=await e.issues.transition({issueId:r.issueId,transition:s});return n?.data??n}catch(e){throw pe(e)}}},qe=a.z.object({issueId:a.z.string().min(1),fields:a.z.record(a.z.any()).optional(),update:a.z.record(a.z.array(a.z.object({set:a.z.any().optional(),add:a.z.any().optional(),remove:a.z.any().optional(),edit:a.z.any().optional()}))).optional(),properties:a.z.array(a.z.any()).optional(),notifyUsers:a.z.boolean().optional().default(!0),issueTemplateId:a.z.string().optional(),overrideScreenSecurity:a.z.boolean().optional().default(!1),overrideEditableFlag:a.z.boolean().optional().default(!1)}),Pe={name:"jira.issue-update",inputSchema:qe,runTool:async(e,t)=>{try{const r=qe.parse(t),s={issueId:r.issueId};r.fields&&(s.fields=r.fields),r.update&&(s.update=r.update),r.properties&&(s.properties=r.properties),void 0!==r.notifyUsers&&(s.notifyUsers=r.notifyUsers),r.issueTemplateId&&(s.issueTemplateId=r.issueTemplateId),void 0!==r.overrideScreenSecurity&&(s.overrideScreenSecurity=r.overrideScreenSecurity),void 0!==r.overrideEditableFlag&&(s.overrideEditableFlag=r.overrideEditableFlag);const n=await e.issues.update(s);return n?.data??n}catch(e){throw pe(e)}}},Me=a.z.object({issueId:a.z.string().min(1),assignee:a.z.union([a.z.string(),a.z.object({accountId:a.z.string().min(1)}),a.z.object({accountType:a.z.string().min(1)})])}),Re={name:"jira.assign-issue",inputSchema:Me,runTool:async(e,t)=>{try{const r=Me.parse(t);let s;s="string"==typeof r.assignee?{accountId:r.assignee}:r.assignee;const n=await e.issues.assign({issueId:r.issueId,assignee:s});return n?.data??n}catch(e){throw pe(e)}}},$e=a.z.object({issueId:a.z.string().min(1)}),Le={name:"jira.unassign-issue",inputSchema:$e,runTool:async(e,t)=>{try{const r=$e.parse(t),s=await e.issues.assign({issueId:r.issueId,assignee:{accountId:"-1"}});return s?.data??s}catch(e){throw pe(e)}}},Fe=a.z.object({issueId:a.z.string().min(1),body:a.z.string().min(1),visibility:a.z.object({type:a.z.enum(["role","group"]),value:a.z.string().min(1)}).optional()}),Be={name:"jira.comment-add",inputSchema:Fe,runTool:async(e,t)=>{try{const r=Fe.parse(t),s={body:Ce(r.body)};r.visibility&&(s.visibility=r.visibility);const n=await e.issues.addComment({issueId:r.issueId,comment:s});return n?.data??n}catch(e){throw pe(e)}}},We=a.z.object({issueId:a.z.string().min(1),start:a.z.number().optional().default(0),maxResults:a.z.number().optional().default(50),orderBy:a.z.string().optional(),expand:a.z.string().optional()}),Ue={name:"jira.comment-list",inputSchema:We,runTool:async(e,t)=>{try{const r=We.parse(t),s=await e.issues.getComments({issueId:r.issueId,start:r.start,maxResults:r.maxResults,orderBy:r.orderBy,expand:r.expand});return s?.data??s}catch(e){throw pe(e)}}},Ke=a.z.object({link:a.z.object({relationship:a.z.enum(["Blocks","Relates to","Duplicates","Is blocked by","Is related to","Is duplicated by","Causes","Is caused by","Clone","Required","Work on","Split","Roll up"]),inwardIssue:a.z.object({id:a.z.string().optional(),key:a.z.string().optional()}),outwardIssue:a.z.object({id:a.z.string().optional(),key:a.z.string().optional()}),comment:a.z.object({body:a.z.string().optional(),visibility:a.z.object({type:a.z.enum(["role","group"]),value:a.z.string().min(1)}).optional()}).optional()})}),Ye={name:"jira.link-create",inputSchema:Ke,runTool:async(e,t)=>{try{const r=Ke.parse(t).link,s={relationship:r.relationship,inwardIssue:r.inwardIssue.id||r.inwardIssue.key,outwardIssue:r.outwardIssue.id||r.outwardIssue.key};r.comment&&(r.comment.body&&(s.comment=Ce(r.comment.body)),r.comment.visibility&&(s.visibility=r.comment.visibility));const n=await e.issues.link(s);return n?.data??n}catch(e){throw pe(e)}}},Ve=a.z.object({issueId:a.z.string().min(1),file:a.z.string().min(1),mimeType:a.z.string().optional(),comment:a.z.string().optional()}),Ge={name:"jira.attach",inputSchema:Ve,runTool:async(e,s)=>{try{const n=Ve.parse(s),i=r.resolve(n.file),o=await t.promises.readFile(i),a=r.basename(i),c=await e.issues.addAttachment({issueId:n.issueId,file:{name:a,content:o,mimeType:n.mimeType??"application/octet-stream"},comment:n.comment});return c?.data??c}catch(e){if(e&&e.code&&"string"==typeof e.code&&["ENOENT","EACCES"].includes(e.code))throw Error("Attachment file error: "+e.message);throw pe(e)}}},Ze=a.z.object({issueId:a.z.string().min(1)}),Qe={name:"jira.attachment-list",inputSchema:Ze,runTool:async(e,t)=>{try{const r=Ze.parse(t),s=await e.issues.getAttachments({issueId:r.issueId});return s?.data??s}catch(e){throw pe(e)}}},Xe=a.z.object({issueId:a.z.string().min(1),attachmentId:a.z.string().min(1)}),et={name:"jira.attachment-delete",inputSchema:Xe,runTool:async(e,t)=>{try{const r=Xe.parse(t);return await e.issues.deleteAttachment({issueId:r.issueId,attachmentId:r.attachmentId}),{success:!0,message:`Attachment ${t.attachmentId} deleted successfully`}}catch(e){throw pe(e)}}},tt=a.z.object({issueId:a.z.string().min(1),timeSpent:a.z.string().min(1),comment:a.z.string().optional(),author:a.z.object({accountId:a.z.string().min(1)}).optional(),startingOn:a.z.string().optional(),artifact:a.z.string().optional()}),rt={name:"jira.worklog-add",inputSchema:tt,runTool:async(e,t)=>{try{const r=tt.parse(t),s={timeSpent:r.timeSpent};r.comment&&(s.comment=r.comment),r.author&&(s.author=r.author),r.startingOn&&(s.started=r.startingOn),r.artifact&&(s.artifact=r.artifact);const n=await e.issues.addWorklog({issueId:r.issueId,...s});return n?.data??n}catch(e){throw pe(e)}}},st={[he.name]:{title:"Jira Issue Read",description:"Read a Jira issue with expandable fields and properties",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[Pe.name]:{title:"Jira Issue Update",description:"Update a Jira issue using fields, update ops, and property toggles",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[ue.name]:{title:"Jira Issue Delete",description:"Delete a Jira issue and optionally remove its subtasks",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!0}},[Je.name]:{title:"Jira Issue Transition",description:"Transition a Jira issue while optionally adding a comment",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Re.name]:{title:"Jira Issue Assign",description:"Assign a Jira issue to a user or account",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Le.name]:{title:"Jira Issue Unassign",description:"Unassign the current owner from a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Be.name]:{title:"Jira Comment Add",description:"Add a comment to a Jira issue with optional visibility",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Ue.name]:{title:"Jira Comment List",description:"List comments on a Jira issue with pagination support",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[Ye.name]:{title:"Jira Link Create",description:"Create an issue link relationship with optional comment",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Ge.name]:{title:"Jira Attachment Add",description:"Attach a local file to a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Qe.name]:{title:"Jira Attachment List",description:"List attachments on a Jira issue",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[et.name]:{title:"Jira Attachment Delete",description:"Delete an attachment from a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!0}},[rt.name]:{title:"Jira Worklog Add",description:"Log time spent on a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}}};async function nt(e){const t=s.Logging.for(nt);let r,n=null;try{r=(()=>{let e;try{const t=require("jira.js");e=t?.Version3Client||t.default?.Version3Client||t.default||t}catch(e){throw Error("Unable to require 'jira.js' \u2014 ensure it is installed as a dependency: "+e)}const{host:t,email:r,apiKey:s}=(()=>{const e=oe(),t=ae().filter(e=>e.required&&!e.value);if(t.length>0)throw new le(t);return{host:e.host,email:e.email,apiKey:e.apiKey}})();return new e({host:t,authentication:{basic:{email:r,apiToken:s}}})})()}catch(e){if(!(e instanceof le))return void t.warn("Skipping Jira tool registration; unable to create Jira client",{error:e});n=e,t.warn("Registering Jira tools without credentials; each tool will report configuration requirements.",{error:e})}const i=[he,Pe,ue,Je,Re,Le,Be,Ue,Ye,Ge,Qe,et,rt];for(const s of i){const i=st[s.name];if(i)try{await e.registerTool(s.name,{title:i.title,description:i.description,inputSchema:P(s.inputSchema),annotations:i.annotations},async e=>{if(!r)throw n??Error("Jira client unavailable because credentials could not be loaded.");return s.runTool(r,e)}),t.info("Registered Jira tool "+s.name)}catch(e){t.error("Failed to register Jira tool "+s.name,{error:e})}}}async function it(e){await(async e=>{e.registerTool("decaf.server-info",{title:"Decaf MCP Server Info",description:"Return server metadata, version, and registered prompt names for diagnostics.",inputSchema:{},outputSchema:void 0,annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},async()=>{const e=X.map(e=>e.getName()).sort();return{content:[{type:"text",text:["Name: "+ie.name,"Title: "+ie.title,"Version: "+ie.version,"Prompts: "+(e.join(", ")||"<none>")].join("\n")}]}})})(e);const t=s.Logging.for(it);try{await nt(e)}catch(e){t.error("Failed to register Jira tools",e)}}class ot extends H{setCb(e){return this.cb=e,this}setConfig(e){return this.config=e,this}setUriOtTemplate(e){return this.uriOrTemplate=e,this}constructor(e){super(e)}static get builder(){return new ot}build(e){const t=this.hasErrors();if(t)throw Error(t.toString());try{const t="string"==typeof this.uriOrTemplate&&this.uriOrTemplate.includes("{")?new v.ResourceTemplate(new b.UriTemplate(this.uriOrTemplate),{list:void 0}):this.uriOrTemplate,r=Object.assign(this.config,{_meta:{}}),s=async(e,t)=>{const r=this.logFor(t);r.verbose(`Requesting resource ${this.name} from ${e.toString()}`);const s=await Promise.resolve(this.cb(e,t));return r.verbose(`Resource ${this.name} retrieved successfully.`),r.debug("Resource retrieval meta: "+JSON.stringify(s._meta)),s};return e.resource(this.name,t,r,s)}catch(e){throw s.Logging.for(this).error("Error registering resource "+this.name,e),e}}}i.__decorate([o.required(),i.__metadata("design:type",String)],ot.prototype,"uriOrTemplate",void 0),i.__decorate([o.required(),i.__metadata("design:type",Function)],ot.prototype,"cb",void 0),i.__decorate([o.required(),i.__metadata("design:type",Object)],ot.prototype,"config",void 0);const at=_.join(process.cwd(),"src/assets"),ct=_.join(at,"templates"),lt=_.join(at,"prompts"),pt=new WeakMap;class dt extends s.LoggedClass{get client(){const e=pt.get(this);if(!e)throw Error("Mcp server requires Mcp client");return e}constructor(){super()}async load(){const e=this.log.for(this.load);for(const t of X)try{e.info("loading prompt "+t.getName());const r=t.build(this.client);e.verbose(`Loaded prompt ${r.title} from ${t.getName()} definition`)}catch(r){e.error("Failed to load prompt "+t.getName(),r)}try{await it(this.client),e.verbose("Registered built-in tools")}catch(t){e.error("Failed to register tools",t)}try{await(async(e,t)=>{t.info("Registering agent templates as resources...");const r=I.readdirSync(ct).filter(e=>e.endsWith(".md"));for(const s of r){const r=_.basename(s,".md"),n=_.join(ct,s),i=ot.builder.setName(r).setTitle("Template: "+r).setDescription("Resource template for "+r).setUriOtTemplate("file:///"+n).setConfig({mimeType:"text/markdown",description:"Template for "+r}).setCb(async e=>{const t=I.readFileSync(e.pathname,"utf8");return{contents:[{uri:e.toString(),text:t,mimeType:"text/markdown"}],_meta:{}}});try{i.build(e),t.info("Registered template: "+r)}catch(e){t.error(`Failed to register template ${r}:`,e)}}t.info("Registering agent prompts...");const s=I.readdirSync(lt).filter(e=>e.endsWith(".md"));for(const r of s){const s=_.basename(r,".md"),n=_.join(lt,r),i=I.readFileSync(n,"utf8"),o=B.builder.setName(s).setTitle("Prompt: "+s).setDescription("Dynamic prompt for "+s).setArgsSchema(a.z.object({})).setCb(async e=>({messages:[{role:"user",content:{type:"text",text:i}}],_meta:{}}));try{o.build(e),t.info("Registered prompt: "+s)}catch(e){t.error(`Failed to register prompt ${s}:`,e)}}})(this.client,e),e.verbose("Registered agent-specific assets")}catch(t){e.error("Failed to register agent assets",t)}}async boot(e="stdio"){let t=this.log;this.log.for(this.boot).info("McpServer booting..."),((e=s.Logging.get())=>{let t;try{t=(()=>{let e,t=__dirname;try{for(;t&&t!==_.parse(t).root;){const r=_.join(t,"node_modules");if(I.existsSync(r)&&I.statSync(r).isDirectory()){e=r;break}const s=_.dirname(t);if(s===t)break;t=s}}catch{}const r=[];if(e){const t=_.join(e,"@decaf-ts");try{if(I.existsSync(t)&&I.statSync(t).isDirectory()){const e=I.readdirSync(t);for(const s of e){const e=_.join(t,s);try{const t=_.join(e,"workdocs","assets","slogans.json");if(I.existsSync(t)&&I.statSync(t).isFile()){const e=I.readFileSync(t,"utf-8"),s=JSON.parse(e);if(Array.isArray(s))for(const e of s)"string"==typeof e&&e.trim().length>0&&r.push(e.trim())}}catch{}}}}catch{}}return 0===r.length?"Decaf: strongly brewed TypeScript.":r[Math.floor(Math.random()*r.length)]})()}catch{t="Decaf: strongly brewed TypeScript."}const r="# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# ( ( \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# ) ) \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# [=======] \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# `-----\xb4 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n#".split("\n"),i=r.reduce((e,t)=>Math.max(e,t.length),0);r.push("# "+t.padStart(i-3)),r.forEach((t,r)=>{const s=T[r%T.length]||"",i=e.info.bind(e);try{i(n.style(t||"").raw(s).text)}catch{i((t||"")+"")}})})(this.log),"stdio"===e&&(s.Logging.setFactory(E),t=s.Logging.for(this.constructor.name));const r=((Array.isArray(ie.icons)?ie.icons:[ie.icons])||[]).map(e=>{const t="string"==typeof e?.src?e.src:(e?.src??"")+"",r="string"==typeof e?.mimeType?e.mimeType:(e?.mimeType??"")+"";let s=[];return Array.isArray(e?.sizes)?s=e.sizes.map(e=>e+""):"string"==typeof e?.sizes&&(s=(e.sizes+"").split(",").map(e=>e.trim())),{src:t,mimeType:r,sizes:s}}),i={name:ie.name,title:ie.title,websiteUrl:ie.websiteUrl,version:ie.version,icons:r},o=new v.McpServer(i,{instructions:"You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework. \nProvide clear, concise, and accurate information.\nIf you don't know the answer, admit it rather than making up information.\nAlways prioritize the user's intent and provide helpful suggestions when appropriate.\n",capabilities:{logging:{},tools:{},prompts:{}}});switch(((e,t)=>{pt.set(e,t)})(this,o),o.onerror=e=>{this.log.error("MCP instance onerror",e)},e){case"stdio":e=new S.StdioServerTransport;break;case"http":e=new j.StreamableHTTPServerTransport({sessionIdGenerator:()=>w.v4(),onsessioninitialized:e=>t.verbose("Session initialized: "+e),onsessionclosed:e=>t.verbose("Session closed: "+e),enableJsonResponse:!0,eventStore:void 0});break;default:if(!(a=e)||"object"!=typeof a||"function"!=typeof a.send&&"function"!=typeof a.close&&"function"!=typeof a.on)throw new p.InternalError("Invalid transport type: "+e)}var a;try{this.log.info("Loading resources/prompts/tools..."),await this.load()}catch(e){throw this.log.error("Error loading resources/prompts/tools: "+e),e}await this.client.connect(e),t.info(`MCP Server connected via ${e.constructor.name} and running. Waiting for client connections...`)}}const ut=(new e.Command).command("start").option("--transport [String]","transport mode","stdio").description("starts decaf's mcp server").action(async e=>{const s=JSON.parse(t.readFileSync(r.join(process.cwd(),"package.json"),"utf-8")),n=s.version,{transport:i}=e,o=(new z).for("mcp-server");if("stdio"!==i)throw Error("Unsupported transport mode: "+i);return o.info("Transport stdio"),o.debug(`running with options: ${JSON.stringify(e)} for ${s.name} version ${n}`),(new dt).boot(i)});(new e.Command).command("md-to-ast").description("pipes markdown to jira ast: `cat file.md` | npx decaf-mcp md-to-ast > ast.json").action(async e=>{const n=JSON.parse(t.readFileSync(r.join(process.cwd(),"package.json"),"utf-8")),i=n.version;s.Logging.for("md-to-ast").debug(`running with options: ${JSON.stringify(e)} for ${n.name} version ${i}`);const o=Ce(await(async()=>{const e=[];for await(const t of process.stdin)e.push(Buffer.from(t));return Buffer.concat(e).toString("utf8")})(),{resolveMention:e=>({id:e,text:"@"+e}),resolveAttachment:e=>({id:e,collection:"attachments"})});process.stdout.write(JSON.stringify(o,null,2)+"\n")});const mt=(new e.Command).name("mcp-server").command("mcp-server").description("decaf mcp server and agentic functionality");mt.addCommand(ut),mt.parse(process.argv)},"object"==typeof exports&&"undefined"!=typeof module?t(require("commander"),require("fs"),require("path"),require("@decaf-ts/logging"),require("styled-string-builder"),require("tslib"),require("@decaf-ts/decorator-validation"),require("zod"),require("@decaf-ts/injectable-decorators"),require("@decaf-ts/decoration"),require("@decaf-ts/db-decorators"),require("crypto"),require("zlib"),require("dotenv"),require("unified"),require("remark-directive"),require("remark-gfm"),require("remark-parse"),require("@modelcontextprotocol/sdk/shared/uriTemplate.js"),require("@modelcontextprotocol/sdk/server/mcp.js"),require("uuid"),require("@modelcontextprotocol/sdk/server/stdio.js"),require("@modelcontextprotocol/sdk/server/streamableHttp.js")):"function"==typeof define&&define.amd?define(["commander","fs","path","@decaf-ts/logging","styled-string-builder","tslib","@decaf-ts/decorator-validation","zod","@decaf-ts/injectable-decorators","@decaf-ts/decoration","@decaf-ts/db-decorators","crypto","zlib","dotenv","unified","remark-directive","remark-gfm","remark-parse","@modelcontextprotocol/sdk/shared/uriTemplate.js","@modelcontextprotocol/sdk/server/mcp.js","uuid","@modelcontextprotocol/sdk/server/stdio.js","@modelcontextprotocol/sdk/server/streamableHttp.js"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).commander,e.fs,e.path,e.decafTsLogging,e.styledStringBuilder,e.tslib,e.decafTsDecoratorValidation,e.zod,e.decafTsInjectableDecorators,e.decafTsDecoration,e.decafTsDbDecorators,e.crypto,e.zlib,e.dotenv,e.unified,e.remarkDirective,e.remarkGfm,e.remarkParse,e.uriTemplate_js,e.mcp_js,e.uuid,e.stdio_js,e.streamableHttp_js);
3
3
  //# sourceMappingURL=mcp-server.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.cjs","sources":["../src/utils/banner.ts","../src/constants.ts","../src/utils/constants.ts","../src/builders/builder.ts","../src/jira/schema-utils.ts","../src/utils/conversions.ts","../src/utils/obfuscation.ts","../src/utils/asset-path.ts","../src/utils/assets.ts","../src/builders/prompt-builder.ts","../src/prompts/contants.ts","../src/prompts/jsdocs-prompts.ts","../src/prompts/index.ts","../src/version.ts","../src/utils/environment.ts","../src/builders/resource-builder.ts","../src/agent/registrations.ts","../src/utils/stdio-error-logger.ts","../src/mcp-server.ts","../src/tools/index.ts","../src/tools/server-info.ts","../src/utils/initialization.ts","../src/utils/utils.ts","../src/bin/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["colors","ReasoningLevel","EffortLevel","Cost","Paths","AssetCategory","Builder","Model","log","this","_log","Logging","for","constructor","arg","super","logFor","extra","sessionId","requestId","authInfo","length","clientId","toString","setDescription","value","description","getDescription","setName","name","getName","setTitle","title","__decorate","required","prototype","UsableBuilder","reasoning","NONE","effort","cost","FREE","setReasoning","setEffort","setCost","findUnderlyingZodObject","s","cur","def","_def","typeName","schema","innerType","undefined","isZodSchema","toLevel","lvl","BASIC","ADVANCED","HIGH","MEDIUM","LOW","InternalError","MAGIC","Buffer","from","decryptObfuscatedPayload","input","Error","subarray","equals","keyMaterial","process","env","ENCRYPTION_KEY","offset","salt","iv","tag","ciphertext","key","crypto","scryptSync","deriveKey","decipher","createDecipheriv","setAuthTag","plaintext","concat","update","final","zlib","gunzipSync","findAssetsDir","startDir","current","libAssets","path","join","fs","existsSync","srcAssets","plainAssets","parent","dirname","resolveAssetsDir","explicit","DECAF_ASSET_DIR","MCP_ASSET_DIR","ASSET_DIR","entry","argv","fromEntry","roots","cwd","INIT_CWD","filter","Boolean","root","found","AssetReader","LoggedClass","basePath","listAssets","folder","assetDir","readdirSync","listPrompts","PROMPT","getAsset","format","categories","filePath","readFileSync","encFallback","getAllAssets","category","reduce","acc","fileName","extWithDot","extname","basename","replace","toPromptDef","getPrompt","text","toSnakeCase","JSON","parse","e","SerializationError","getAllPrompts","texts","Object","entries","prompt","injectable","PromptBuilder","setCb","cb","setArgsSchema","argsSchema","builder","patchPrompt","placeholders","replacements","missing","Array","isArray","keys","p","hasOwnProperty","call","ValidationError","verbose","stringify","debug","filteredReplacements","sf","build","server","errs","hasErrors","defLike","shape","type","normalizedShape","z","any","object","ensureZodObject","argsShape","extractShape","registerPrompt","async","args","assign","_meta","usage","result","Promise","resolve","error","inject","ZodObject","prop","NamedPromptBuilder","setCategory","promptCategory","addPrefix","prefixes","push","addSuffix","suffixes","promptDef","assets","fromObject","toIgnoreProps","Set","Metadata","properties","k","includes","forEach","add","map","argSchema","flat","el","string","describe","parsePlaceholders","messages","role","content","PromptCategories","namedPromptBuilder","extraPrefix","extraSuffix","pb","DOCS","list","String","minlength","Prompts","VERSION","registerLibrary","DefaultMcpEnvironment","mcpId","version","websiteUrl","repositoryUrl","license","workingDir","contacts","url","tags","metadata","icons","src","mimeType","sizes","jira","host","email","apiKey","level","LogLevel","Environment","LoggedEnvironment","accumulate","setConfig","ResourceBuilder","config","setUriOtTemplate","uriOrTemplate","uriOrTemplateArg","ResourceTemplate","UriTemplate","readCb","uri","resource","ASSETS_DIR","TEMPLATES_DIR","PROMPTS_DIR","StdioErrorLogger","silly","info","warn","benchmark","trace","clear","context","stdioErrorLoggerFactory","McpServer","client","_mcp","load","registerTool","inputSchema","outputSchema","annotations","readOnlyHint","destructiveHint","idempotentHint","openWorldHint","promptNames","sort","registerServerInfoTool","registerTools","templateFiles","file","endsWith","resourceBuilder","pathname","contents","promptFiles","promptContent","promptBuilder","registerAgentAssets","boot","transportType","logger","get","message","nodeModulesDir","__dirname","candidate","statSync","isDirectory","slogans","scopeDir","pkgs","pkg","depPath","slogansPath","isFile","raw","parsed","trim","Math","floor","random","getSlogan","banner","split","maxLength","max","line","padStart","index","color","logFn","bind","style","printBanner","setFactory","normalizedIcons","i","serverInfo","MCP","instructions","capabilities","logging","tools","prompts","onerror","err","StdioServerTransport","StreamableHTTPServerTransport","sessionIdGenerator","v4","onsessioninitialized","onsessionclosed","enableJsonResponse","eventStore","send","close","on","connect","main"],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.cjs","sources":["../src/utils/stdio-error-logger.ts","../src/utils/banner.ts","../src/constants.ts","../src/utils/constants.ts","../src/builders/builder.ts","../src/jira/schema-utils.ts","../src/utils/obfuscation.ts","../src/utils/asset-path.ts","../src/utils/assets.ts","../src/utils/conversions.ts","../src/builders/prompt-builder.ts","../src/prompts/example-prompt.ts","../src/prompts/interactive-jsdoc.ts","../src/prompts/contants.ts","../src/prompts/jsdocs-prompts.ts","../src/prompts/code/design-patterns/builder.ts","../src/prompts/index.ts","../src/builders/tool-builder.ts","../src/tools/example-tool.ts","../src/tools/file-summarizer/index.ts","../src/version.ts","../src/utils/environment.ts","../src/modules/jira/jira-environment.ts","../src/modules/jira/error-normalizer.ts","../src/modules/jira/tools/issue-delete.ts","../src/modules/jira/tools/issue-read.ts","../src/modules/jira/adf/pipeline/convertMedia.ts","../src/modules/jira/adf/pipeline/textRuns.ts","../src/modules/jira/adf/pipeline/directive-utils.ts","../src/modules/jira/adf/pipeline/convertInline.ts","../src/modules/jira/adf/pipeline/textify.ts","../src/modules/jira/adf/pipeline/convertBlock.ts","../src/modules/jira/adf/pipeline/convertList.ts","../src/modules/jira/adf/pipeline/languageMap.ts","../src/modules/jira/adf/pipeline/convertTable.ts","../src/modules/jira/adf/markdownToAdf.ts","../src/modules/jira/adf/pipeline/convertRoot.ts","../src/modules/jira/adf/pipeline/normalizeDoc.ts","../src/modules/jira/schemas/issue-transition-input.ts","../src/modules/jira/tools/issue-transition.ts","../src/modules/jira/tools/issue-update.ts","../src/modules/jira/schemas/update-issue-input.ts","../src/modules/jira/tools/assign.ts","../src/modules/jira/schemas/assign-issue-input.ts","../src/modules/jira/tools/unassign.ts","../src/modules/jira/tools/comment-add.ts","../src/modules/jira/schemas/add-comment-input.ts","../src/modules/jira/tools/comment-list.ts","../src/modules/jira/schemas/list-comments-input.ts","../src/modules/jira/tools/link-create.ts","../src/modules/jira/schemas/create-link-input.ts","../src/modules/jira/tools/attach.ts","../src/modules/jira/schemas/attach-issue-input.ts","../src/modules/jira/tools/attachment-list.ts","../src/modules/jira/tools/attachment-delete.ts","../src/modules/jira/tools/worklog-add.ts","../src/modules/jira/schemas/add-worklog-input.ts","../src/modules/jira/register-utils.ts","../src/modules/jira/makeJiraClient.ts","../src/tools/index.ts","../src/tools/server-info.ts","../src/builders/resource-builder.ts","../src/agent/registrations.ts","../src/mcp-server.ts","../src/utils/initialization.ts","../src/utils/utils.ts","../src/cli-module.ts","../src/bin/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["StdioErrorLogger","MiniLogger","log","level","msg","error","meta","confLvl","this","config","NumericLogLevels","stdioErrorLoggerFactory","context","_args","loggerName","name","ctor","constructor","resolveContextName","colors","ReasoningLevel","EffortLevel","Cost","Paths","AssetCategory","Builder","Model","_log","Logging","for","arg","super","logFor","extra","sessionId","requestId","authInfo","length","clientId","toString","setDescription","value","description","getDescription","setName","getName","setTitle","title","__decorate","required","prototype","UsableBuilder","reasoning","NONE","effort","cost","FREE","setReasoning","setEffort","setCost","findUnderlyingZodObject","s","cur","def","_def","typeName","schema","innerType","undefined","ensureZodObject","defLike","shape","type","normalizedShape","key","Object","entries","isZodSchema","z","any","object","Error","extractShape","MAGIC","Buffer","from","findAssetsDir","startDir","current","libAssets","path","join","fs","existsSync","srcAssets","plainAssets","parent","dirname","resolveAssetsDir","explicit","process","env","DECAF_ASSET_DIR","MCP_ASSET_DIR","ASSET_DIR","entry","argv","fromEntry","roots","cwd","INIT_CWD","filter","Boolean","root","found","AssetReader","LoggedClass","basePath","listAssets","folder","assetDir","readdirSync","listPrompts","PROMPT","getAsset","format","categories","readFile","target","useEnc","input","subarray","equals","keyMaterial","ENCRYPTION_KEY","offset","salt","iv","tag","ciphertext","crypto","scryptSync","deriveKey","decipher","createDecipheriv","setAuthTag","plaintext","concat","update","final","zlib","gunzipSync","decryptObfuscatedPayload","readFileSync","err","code","direct","fallback","getAllAssets","category","reduce","acc","fileName","extWithDot","extname","basename","replace","toPromptDef","normalizeLevel","lvl","BASIC","ADVANCED","HIGH","MEDIUM","LOW","InternalError","toLevel","toLowerCase","getPrompt","text","toSnakeCase","JSON","parse","e","SerializationError","getAllPrompts","texts","prompt","injectable","PromptBuilder","setCb","cb","setArgsSchema","argsSchema","builder","patchPrompt","placeholders","replacements","missing","Array","isArray","keys","p","hasOwnProperty","call","ValidationError","verbose","stringify","debug","filteredReplacements","sf","build","server","errs","hasErrors","argsShape","registerPrompt","async","args","assign","_meta","usage","result","Promise","resolve","inject","ZodObject","prop","NamedPromptBuilder","setCategory","promptCategory","addPrefix","prefixes","push","addSuffix","suffixes","promptDef","assets","fromObject","toIgnoreProps","Set","Metadata","properties","k","includes","forEach","add","map","argSchema","flat","el","string","describe","parsePlaceholders","messages","role","content","list","String","minlength","ExamplePrompt","message","optional","structuredContent","gist","InteractiveJsDocPrompt","PromptCategories","namedPromptBuilder","extraPrefix","extraSuffix","pb","DOCS","JsDocPrompts","className","Prompts","toPascalCase","ToolBuilder","setAnnotations","annotations","setInputSchema","inputSchema","setOutputSchema","outputSchema","readOnlyHint","destructiveHint","idempotentHint","openWorldHint","inputShape","outputShape","registerTool","warn","status","filePath","summary","VERSION","registerLibrary","dotenv","__dirname","DefaultMcpEnvironment","mcpId","version","websiteUrl","repositoryUrl","license","workingDir","contacts","url","tags","metadata","icons","src","mimeType","sizes","jira","host","JIRA__HOST","email","JIRA__EMAIL","apiKey","JIRA__API_KEY","JIRA__APIKEY","projectKey","JIRA__PROJECT_KEY","issueType","JIRA__ISSUE_TYPE","parentIssue","JIRA__PARENT_ISSUE","LogLevel","Environment","LoggedEnvironment","accumulate","normalizeEnvConfig","trim","createJiraEnvDescriptors","sensitive","formatDescriptor","descriptor","state","maskValue","qualifier","setConfig","MissingJiraEnvironmentError","descriptors","requiredMissing","d","describeJiraEnvironment","captureStackTrace","normalizeJiraError","details","raw","statusCandidate","statusCode","response","httpStatus","Number","body","data","collector","errorMessages","errorMessage","errorCollection","errors","chunk","values","val","collectMessages","fallbackMessage","issueId","min","deleteSubtasks","boolean","default","JiraIssueDelete","runTool","client","parsed","transport","issues","issue","deleteFn","delete","deleteIssue","success","expand","fields","array","JiraIssueRead","payload","issueIdOrKey","get","attachmentInlineOrMedia","linkNode","linkText","opts","m","match","token","ref","resolveAttachment","node","attrs","layout","id","collection","parseTextRuns","enableAtMentions","enableEmojiShortcodes","i","out","mentionRe","emojiRe","next","minMatch","findNext","slice","index","kind","full","groups","prefix","handle","resolved","resolveMention","shortName","resolveEmoji","nodes","n","last","marks","coalesceText","re","start","lastIndex","exec","source","a","b","extractDirectiveLabel","first","children","c","normalizePanelType","v","normalizeStatusColor","convertInline","child","href","inlineText","attachment","enableSmartCards","isNakedUrl","color","attributes","extractDirectiveText","emojiNode","wrapMark","mark","pieces","test","sn","startsWith","textify","convertBlock","isContainerDirective","panelType","innerBlocks","convertPanelDirective","clampInt","depth","paragraphNode","only","convertMediaFromParagraph","listNode","enableTaskLists","some","li","checked","items","idx","blocks","localId","convertTaskList","ordered","listItem","convertList","lang","enableMermaid","js","javascript","jsx","ts","typescript","tsx","py","python","rb","ruby","sh","bash","zsh","shell","yml","yaml","json","toml","xml","html","css","scss","sql","go","rust","java","cpp","cs","csharp","php","kotlin","swift","md","markdown","graphql","gql","dockerfile","makefile","ini","languageMap","normalizeCodeLanguage","language","tableNode","row","rowIndex","cell","convertTable","convertStatusDirective","convertPanelDirectiveLeaf","unknown","unknownNodeStrategy","t","max","x","isFinite","Math","trunc","DEFAULTS","markdownToAdf","options","processor","unified","use","remarkParse","remarkGfm","remarkDirective","tree","transformed","runSync","cleanNodes","doc","liftBlockCards","normalizeDoc","convertRoot","nextChildren","transitionId","union","number","record","set","remove","comment","JiraIssueTransition","transitionPayload","transition","edit","notifyUsers","issueTemplateId","overrideScreenSecurity","overrideEditableFlag","JiraIssueUpdate","assignee","accountId","accountType","JiraAssignIssue","JiraUnassignIssue","visibility","enum","JiraCommentAdd","addComment","maxResults","orderBy","JiraCommentList","getComments","link","relationship","inwardIssue","outwardIssue","JiraLinkCreate","linkPayload","file","JiraAttachIssue","fileBuffer","addAttachment","JiraAttachmentList","getAttachments","attachmentId","JiraAttachmentDelete","deleteAttachment","timeSpent","author","startingOn","artifact","JiraWorklogAdd","worklog","started","addWorklog","toolConfigs","registerJiraTools","jiraClient","missingEnvError","Version3Client","mod","require","authEmail","authToken","ensureJiraCredentials","authentication","basic","apiToken","makeJiraClient","registrations","tool","info","registerTools","promptNames","sort","registerServerInfoTool","ResourceBuilder","setUriOtTemplate","uriOrTemplate","uriOrTemplateArg","ResourceTemplate","UriTemplate","readCb","uri","resource","ASSETS_DIR","TEMPLATES_DIR","PROMPTS_DIR","MCP_STORE","WeakMap","McpServer","mcp","load","templateFiles","endsWith","resourceBuilder","pathname","contents","promptFiles","promptContent","promptBuilder","registerAgentAssets","boot","transportType","logger","nodeModulesDir","candidate","statSync","isDirectory","slogans","scopeDir","pkgs","pkg","depPath","slogansPath","isFile","floor","random","getSlogan","banner","split","maxLength","line","padStart","logFn","bind","style","printBanner","setFactory","normalizedIcons","serverInfo","MCP","instructions","capabilities","logging","tools","prompts","writeMcp","onerror","StdioServerTransport","StreamableHTTPServerTransport","sessionIdGenerator","v4","onsessioninitialized","onsessionclosed","enableJsonResponse","eventStore","send","close","on","connect","mcpServer","Command","command","option","action","adf","chunks","stdin","readStdin","stdout","write","mainCmd","addCommand"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{Logging as t,LoggedClass as e,toSnakeCase as r,sf as s,LogLevel as o,LoggedEnvironment as i}from"@decaf-ts/logging";import{style as n}from"styled-string-builder";import*as a from"path";import*as c from"fs";import{__decorate as p,__metadata as d}from"tslib";import{required as m,Model as f,list as l,minlength as h}from"@decaf-ts/decorator-validation";import{z as u,ZodObject as g}from"zod";import{injectable as y,inject as b}from"@decaf-ts/injectable-decorators";import{prop as S,Metadata as v}from"@decaf-ts/decoration";import{InternalError as w,SerializationError as j,ValidationError as O}from"@decaf-ts/db-decorators";import E from"crypto";import N from"zlib";import{UriTemplate as x}from"@modelcontextprotocol/sdk/shared/uriTemplate.js";import{ResourceTemplate as A,McpServer as P}from"@modelcontextprotocol/sdk/server/mcp.js";import{v4 as T}from"uuid";import{StdioServerTransport as C}from"@modelcontextprotocol/sdk/server/stdio.js";import{StreamableHTTPServerTransport as D}from"@modelcontextprotocol/sdk/server/streamableHttp.js";const I=["\x1b[38;5;215m","\x1b[38;5;209m","\x1b[38;5;205m","\x1b[38;5;210m","\x1b[38;5;217m","\x1b[38;5;216m","\x1b[38;5;224m","\x1b[38;5;230m","\x1b[38;5;230m"];var k,_,M,R,F;(t=>{t[t.NONE=0]="NONE",t[t.BASIC=1]="BASIC",t[t.ADVANCED=2]="ADVANCED",t[t.HIGH=3]="HIGH"})(k||(k={})),(t=>{t[t.NONE=0]="NONE",t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH"})(_||(_={})),(t=>{t[t.FREE=0]="FREE",t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH"})(M||(M={}));class $ extends f{get log(){return this._log||(this._log=t.for(this)),this._log}constructor(t){super(t)}logFor(t){const{sessionId:e,requestId:r,authInfo:s}=t||{};let o="string"==typeof e&&e.length>0?this.log.for(e):this.log;return s&&s.clientId&&(o=o.for(s.clientId)),r&&(o=o.for(r.toString())),o}setDescription(t){return this.description=t,this}getDescription(){return this.description}setName(t){return this.name=t,this}getName(){return this.name}setTitle(t){return this.title=t,this}}p([m(),d("design:type",String)],$.prototype,"description",void 0),p([m(),d("design:type",String)],$.prototype,"name",void 0),p([m(),d("design:type",String)],$.prototype,"title",void 0);class H extends ${constructor(t){super(t),this.reasoning=k.NONE,this.effort=_.NONE,this.cost=M.FREE}setReasoning(t){return this.reasoning=t,this}setEffort(t){return this.effort=t,this}setCost(t){return this.cost=t,this}}function z(t){if(!t)return;let e=t,r=e&&e._def;for(;r&&"ZodObject"!==r.typeName;){if("ZodEffects"===r.typeName&&r.schema)e=r.schema;else if("ZodOptional"===r.typeName&&r.innerType)e=r.innerType;else if("ZodDefault"===r.typeName&&r.innerType)e=r.innerType;else if("ZodNullable"===r.typeName&&r.innerType)e=r.innerType;else{if(!r.schema)return;e=r.schema}r=e&&e._def}return r&&"ZodObject"===r.typeName?r:void 0}function U(t){return!(!t||"object"!=typeof t||!t._def)}function G(t){switch(t){case"none":return k.NONE;case"basic":return k.BASIC;case"advanced":return k.ADVANCED;case"high":return k.HIGH;case"medium":return _.MEDIUM;case"low":return M.LOW;case"free":return M.FREE;default:throw new w("Cannon convert unknown level "+t)}}p([m(),d("design:type",Number)],H.prototype,"reasoning",void 0),p([m(),d("design:type",Number)],H.prototype,"effort",void 0),p([m(),d("design:type",Number)],H.prototype,"cost",void 0),(t=>{t.ASSETS="assets"})(R||(R={})),(t=>{t.PROMPT="prompts",t.DOCUMENTATION="documentation",t.CODE="code"})(F||(F={}));const W=Buffer.from("DCAF1","ascii");function q(t){if(t.length<W.length+16+12+16)throw Error("Invalid prompt payload (too short)");if(!t.subarray(0,W.length).equals(W))throw Error("Invalid prompt payload (bad magic)");const e=process.env.ENCRYPTION_KEY||"";if(!e)throw Error("Missing encryption key. Set ENCRYPTION_KEY to load obfuscated assets.");let r=W.length;const s=t.subarray(r,r+16);r+=16;const o=t.subarray(r,r+12);r+=12;const i=t.subarray(r,r+16);r+=16;const n=t.subarray(r),a=((t,e)=>E.scryptSync(t,e,32))(e,s),c=E.createDecipheriv("aes-256-gcm",a,o);c.setAuthTag(i);const p=Buffer.concat([c.update(n),c.final()]);return N.gunzipSync(p)}function J(t){let e=t;for(;;){const t=a.join(e,"lib","assets");if(c.existsSync(t))return t;const r=a.join(e,"src","assets");if(c.existsSync(r))return r;const s=a.join(e,"assets");if(c.existsSync(s))return s;const o=a.dirname(e);if(o===e)break;e=o}}function L(){const t=process.env.DECAF_ASSET_DIR||process.env.MCP_ASSET_DIR||process.env.ASSET_DIR||"";if(t&&c.existsSync(t))return t;const e=process.argv?.[1];if(e){const t=J(a.dirname(e));if(t)return t}const r=[process.cwd(),process.env.INIT_CWD].filter(Boolean);for(const t of r){const e=J(t);if(e)return e}return a.join(process.cwd(),"assets")}let Z=class extends e{constructor(t){super(),this.basePath=t||L()}listAssets(...t){const e=a.join(this.basePath,...t);return c.readdirSync(e)}listPrompts(){return this.listAssets(F.PROMPT)}getAsset(t,e="md",...r){const s=a.join(this.basePath,...r),o=a.join(s,`${t}.${e}`);if(c.existsSync(o))return"enc"===e?q(c.readFileSync(o)).toString("utf-8"):c.readFileSync(o,"utf-8");const i=a.join(s,t+".enc");if(c.existsSync(i))return q(c.readFileSync(i)).toString("utf-8");throw Error("Asset not found: "+a.join(s,`${t}.${e}`))}getAllAssets(t,...e){return this.listAssets(t,...e).reduce((r,s)=>{const o=a.extname(s),i=a.basename(s,o),n=o.replace(/^\./,"")||void 0;return r[i]=this.getAsset(i,n??void 0,t,...e),r},{})}toPromptDef(t){return t.effort=G(t.effort),t.reasoning=G(t.reasoning),t.cost=G(t.cost),t}getPrompt(t,...e){const s=this.getAsset(r(t),"json",F.PROMPT,...e);let o;try{o=JSON.parse(s)}catch(r){throw new j(`Failed to parse prompt ${t} in categories ${e}: ${r}`)}return this.toPromptDef(o)}getAllPrompts(...t){const e=this.getAllAssets(F.PROMPT,...t);return Object.entries(e).reduce((e,[r,s])=>{try{e[r]=JSON.parse(s)}catch(e){throw new j(`Failed to parse prompt ${r} in categories ${t}: ${e}`)}return e},e)}};Z=p([y(),d("design:paramtypes",[String])],Z);class B extends H{constructor(t){super(t)}setCb(t){return this.cb=t,this}setArgsSchema(t){return this.argsSchema=t,this}static get builder(){return new B}static patchPrompt(t,e,r,o){const i=(e=Array.isArray(e)?e:Object.keys(e)).filter(t=>!Object.prototype.hasOwnProperty.call(r,t));if(i.length)throw new O("Missing replacements for placeholders: "+i.join(", "));o&&(o.verbose("Patching prompt with placeholders: "+JSON.stringify(e)),o.debug("Values: "+JSON.stringify(r)));const n=e.reduce((t,e)=>(t[e]=r[e],t),{});return s(t,n)}patchPrompt(t,e,r,s){return B.patchPrompt(t,e,r,s||this.log.for(this.patchPrompt))}build(t,e){const r=this.log.for(this.build),s=this.hasErrors();if(s)throw new O(s.toString());try{this.argsSchema&&((t,e="schema")=>{if(z(t))return t;if(t&&"object"==typeof t){const e=t.def&&"object"==typeof t.def?t.def:void 0,r=e&&(e.shape||"object"===e.type)&&e.shape||("object"===t.type?t.shape:void 0)||(e&&"object"===e.type?{}:void 0);if(e||"object"===t.type||r){const t={};if(r&&"object"==typeof r)for(const[e,s]of Object.entries(r))t[e]=U(s)?s:u.any();return u.object(t)}}throw Error(`Registration error: provided a non-canonical ${e}. Export a ZodObject (z.object(...)).`)})(this.argsSchema,"argsSchema");const r=(t=>{if(!t)return;if(t&&"object"==typeof t&&!t._def)return t.def&&"object"==typeof t.def&&t.def.shape?t.def.shape:t;const e=z(t);return e?"function"==typeof e.shape?e.shape():e.shape||void 0:void 0})(this.argsSchema);return t.registerPrompt(this.name,{title:this.title,description:this.description,argsSchema:r},async(t,r)=>{const s=this.logFor(r);t=Object.assign({},e,t||{}),s.verbose(`Executing prompt ${this.name} with args: ${JSON.stringify(t)}`),t._meta=Object.assign(t._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const o=await Promise.resolve(this.cb(t,r));return s.verbose(`Prompt ${this.name} executed successfully.`),s.debug("Prompt execution meta: "+JSON.stringify(o._meta)),o})}catch(t){throw r.error("Failed to register prompt "+(this.name||this.constructor.name),t),t}}}p([b(Z),d("design:type",Z)],B.prototype,"assets",void 0),p([m(),d("design:type",Object)],B.prototype,"cb",void 0),p([m(),d("design:type",g)],B.prototype,"argsSchema",void 0),p([S(),d("design:type",Object)],B.prototype,"placeholders",void 0);class V extends B{setCategory(t){return this.promptCategory=t,this}addPrefix(t){return this.prefixes=this.prefixes||[],this.prefixes.push(t),this}addSuffix(t){return this.suffixes=this.suffixes||[],this.suffixes.push(t),this}constructor(t){super(t)}build(t){const e=this.assets.getPrompt(this.name,this.promptCategory);f.fromObject(this,e);const r=new Set((v.properties(V)||[]).filter(t=>!["assets","promptCategory","prefixes","suffixes"].includes(t)));["cb","argsSchema"].forEach(t=>r.add(t));const s=this.hasErrors(...Array.from(r));if(s)throw new O(s.toString());const o=(this.prefixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),i=(this.suffixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),n=[...new Set([...e.placeholders,...o.map(t=>t.placeholders||[]),...i.map(t=>t.placeholders||[])].flat())].reduce((t,e)=>(t[e]=u.string().describe("The description for "+e),t),{});return this.setArgsSchema(u.object(n)),this.setCb((t,e)=>{const r=this.logFor(e).for(V).for(this.promptCategory).for(this.name);function s(t=[]){return Array.isArray(t)?t:Object.keys(t)}const o=(this.prefixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),i=(this.suffixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),n=this.assets.getPrompt(this.name,this.promptCategory),a=[...new Set([...o.map(t=>s(t.placeholders)).flat(),...i.map(t=>s(t.placeholders)).flat(),...s(n.placeholders).flat()])];return{messages:[{role:"user",content:{type:"text",text:this.patchPrompt([...o.map(t=>t.prompt),n.prompt,...i.map(t=>t.prompt)].join("\n\n"),a,t,r)}}],_meta:{}}}),super.build(t)}setReasoning(t){throw new w("Named prompt builders don't require callback")}setEffort(t){throw new w("Named prompt builders don't require callback")}setCost(t){throw new w("Named prompt builders don't require callback")}setDescription(t){throw new w("Named prompt builders don't require callback")}setTitle(t){throw new w("Named prompt builders don't require callback")}static get builder(){return new V}}var Y;function K(t,e=[],r=[]){const s=V.builder.setCategory(Y.DOCS).setName(t);return["prefix",...e].forEach(t=>s.addPrefix(t)),["suffix",...r].forEach(t=>s.addSuffix(t)),s}p([m(),d("design:type",String)],V.prototype,"promptCategory",void 0),p([l(String),h(1),d("design:type",Array)],V.prototype,"prefixes",void 0),p([h(1),l(String),d("design:type",Array)],V.prototype,"suffixes",void 0),(t=>{t.DOCS="documentation",t.CODE="code"})(Y||(Y={}));const Q=[K("class"),K("constant"),K("decorator"),K("function"),K("module"),K("file"),K("repo",[],["iterate"])],X="##VERSION##";v.registerLibrary("##PACKAGE##",X);const tt={mcpId:"decaf",name:"decaf-ts mcp server",title:"Decaf-TS MCP Server",description:"Provides precise coding assistance for the decaf-ts framework",version:X,websiteUrl:"https://decaf-ts.github.io",repositoryUrl:"https://github.com/decaf-ts/mcp-server",license:"AGPL-3.0",workingDir:process.cwd(),assetDir:L(),contacts:[{name:"Decaf-TS",url:"https://decaf-ts.github.io"}],tags:"server,official,decaf-ts",metadata:{},icons:[{src:"workdocs/assets/favicon.svg",mimeType:"image/svg+xml",sizes:"any"}],jira:{host:"decaf-ts.atlassian.net",email:"",apiKey:""},level:o.error},et=i.accumulate(tt);t.setConfig(et);class rt extends ${setCb(t){return this.cb=t,this}setConfig(t){return this.config=t,this}setUriOtTemplate(t){return this.uriOrTemplate=t,this}constructor(t){super(t)}static get builder(){return new rt}build(e){const r=this.hasErrors();if(r)throw Error(r.toString());try{const t="string"==typeof this.uriOrTemplate&&this.uriOrTemplate.includes("{")?new A(new x(this.uriOrTemplate),{list:void 0}):this.uriOrTemplate,r=Object.assign(this.config,{_meta:{}}),s=async(t,e)=>{const r=this.logFor(e);r.verbose(`Requesting resource ${this.name} from ${t.toString()}`);const s=await Promise.resolve(this.cb(t,e));return r.verbose(`Resource ${this.name} retrieved successfully.`),r.debug("Resource retrieval meta: "+JSON.stringify(s._meta)),s};return e.resource(this.name,t,r,s)}catch(e){throw t.for(this).error("Error registering resource "+this.name,e),e}}}p([m(),d("design:type",String)],rt.prototype,"uriOrTemplate",void 0),p([m(),d("design:type",Function)],rt.prototype,"cb",void 0),p([m(),d("design:type",Object)],rt.prototype,"config",void 0);const st=a.join(process.cwd(),"src/assets"),ot=a.join(st,"templates"),it=a.join(st,"prompts");class nt{constructor(t){this.name=t}silly(...t){}verbose(...t){}info(...t){}debug(...t){}warn(...t){}error(...t){}benchmark(){return this}trace(){return this}clear(){return this}get root(){return[]}for(t){return this}setConfig(t){}}const at=t=>new nt("string"==typeof t?t:t?.name||t?.constructor?.name||"unknown");class ct extends e{get client(){if(!this._mcp)throw Error("Mcp server requires Mcp client");return this._mcp}constructor(){super()}async load(){const t=this.log.for(this.load);for(const e of Q)try{t.info("loading prompt "+e.getName());const r=e.build(this.client);t.verbose(`Loaded prompt ${r.title} from ${e.getName()} definition`)}catch(r){t.error("Failed to load prompt "+e.getName(),r)}try{await(async t=>{await(async t=>{t.registerTool("decaf.server-info",{title:"Decaf MCP Server Info",description:"Return server metadata, version, and registered prompt names for diagnostics.",inputSchema:{},outputSchema:void 0,annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},async()=>{const t=Q.map(t=>t.getName()).sort();return{content:[{type:"text",text:["Name: "+et.name,"Title: "+et.title,"Version: "+et.version,"Prompts: "+(t.join(", ")||"<none>")].join("\n")}]}})})(t)})(this.client),t.verbose("Registered built-in tools")}catch(e){t.error("Failed to register tools",e)}try{await(async(t,e)=>{e.info("Registering agent templates as resources...");const r=c.readdirSync(ot).filter(t=>t.endsWith(".md"));for(const s of r){const r=a.basename(s,".md"),o=a.join(ot,s),i=rt.builder.setName(r).setUriOtTemplate("file:///"+o).setConfig({mimeType:"text/markdown",description:"Template for "+r}).setCb(async t=>{const e=c.readFileSync(t.pathname,"utf8");return{contents:[{uri:t.toString(),text:e,mimeType:"text/markdown"}],_meta:{}}});try{i.build(t),e.info("Registered template: "+r)}catch(t){e.error(`Failed to register template ${r}:`,t)}}e.info("Registering agent prompts...");const s=c.readdirSync(it).filter(t=>t.endsWith(".md"));for(const r of s){const s=a.basename(r,".md"),o=a.join(it,r),i=c.readFileSync(o,"utf8"),n=B.builder.setName(s).setTitle("Prompt: "+s).setDescription("Dynamic prompt for "+s).setArgsSchema(u.object({})).setCb(async t=>({messages:[{role:"user",content:{type:"text",text:i}}],_meta:{}}));try{n.build(t),e.info("Registered prompt: "+s)}catch(t){e.error(`Failed to register prompt ${s}:`,t)}}})(this.client,t),t.verbose("Registered agent-specific assets")}catch(e){t.error("Failed to register agent assets",e)}}async boot(e="stdio"){let r=this.log;this.log.for(this.boot).info("McpServer booting..."),((e=t.get())=>{let r;try{r=(()=>{let t,e=__dirname;try{for(;e&&e!==a.parse(e).root;){const r=a.join(e,"node_modules");if(c.existsSync(r)&&c.statSync(r).isDirectory()){t=r;break}const s=a.dirname(e);if(s===e)break;e=s}}catch{}const r=[];if(t){const e=a.join(t,"@decaf-ts");try{if(c.existsSync(e)&&c.statSync(e).isDirectory()){const t=c.readdirSync(e);for(const s of t){const t=a.join(e,s);try{const e=a.join(t,"workdocs","assets","slogans.json");if(c.existsSync(e)&&c.statSync(e).isFile()){const t=c.readFileSync(e,"utf-8"),s=JSON.parse(t);if(Array.isArray(s))for(const t of s)"string"==typeof t&&t.trim().length>0&&r.push(t.trim())}}catch{}}}}catch{}}return 0===r.length?"Decaf: strongly brewed TypeScript.":r[Math.floor(Math.random()*r.length)]})()}catch{r="Decaf: strongly brewed TypeScript."}const s="# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# ( ( \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# ) ) \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# [=======] \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# `-----\xb4 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n#".split("\n"),o=s.reduce((t,e)=>Math.max(t,e.length),0);s.push("# "+r.padStart(o-3)),s.forEach((t,r)=>{const s=I[r%I.length]||"",o=e.info.bind(e);try{o(n(t||"").raw(s).text)}catch{o((t||"")+"")}})})(this.log),"stdio"===e&&(t.setFactory(at),r=t.for(this.constructor.name));const s=((Array.isArray(et.icons)?et.icons:[et.icons])||[]).map(t=>{const e="string"==typeof t?.src?t.src:(t?.src??"")+"",r="string"==typeof t?.mimeType?t.mimeType:(t?.mimeType??"")+"";let s=[];return Array.isArray(t?.sizes)?s=t.sizes.map(t=>t+""):"string"==typeof t?.sizes&&(s=(t.sizes+"").split(",").map(t=>t.trim())),{src:e,mimeType:r,sizes:s}}),o={name:et.name,title:et.title,websiteUrl:et.websiteUrl,version:et.version,icons:s};switch(this._mcp=new P(o,{instructions:"You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework. \nProvide clear, concise, and accurate information.\nIf you don't know the answer, admit it rather than making up information.\nAlways prioritize the user's intent and provide helpful suggestions when appropriate.\n",capabilities:{logging:{},tools:{},prompts:{}}}),this._mcp.onerror=t=>{this.log.error("MCP instance onerror",t)},e){case"stdio":e=new C;break;case"http":e=new D({sessionIdGenerator:()=>T(),onsessioninitialized:t=>r.verbose("Session initialized: "+t),onsessionclosed:t=>r.verbose("Session closed: "+t),enableJsonResponse:!0,eventStore:void 0});break;default:if(!(i=e)||"object"!=typeof i||"function"!=typeof i.send&&"function"!=typeof i.close&&"function"!=typeof i.on)throw new w("Invalid transport type: "+e)}var i;try{this.log.info("Loading resources/prompts/tools..."),await this.load()}catch(t){throw this.log.error("Error loading resources/prompts/tools: "+t),t}await this.client.connect(e),r.info(`MCP Server connected via ${e.constructor.name} and running. Waiting for client connections...`)}}(async()=>{(new ct).boot("stdio")})();
1
+ import{Command as t}from"commander";import*as e from"fs";import r,{promises as s}from"fs";import*as n from"path";import i from"path";import{MiniLogger as o,NumericLogLevels as a,Logging as c,LoggedClass as p,toSnakeCase as l,sf as u,toPascalCase as d,LogLevel as m,LoggedEnvironment as h}from"@decaf-ts/logging";import{style as f}from"styled-string-builder";import{__decorate as y,__metadata as g}from"tslib";import{required as b,Model as v,list as w,minlength as S}from"@decaf-ts/decorator-validation";import{z as j,ZodObject as x}from"zod";import{injectable as I,inject as A}from"@decaf-ts/injectable-decorators";import{prop as E,Metadata as k}from"@decaf-ts/decoration";import{InternalError as T,SerializationError as N,ValidationError as O}from"@decaf-ts/db-decorators";import C from"crypto";import H from"zlib";import J from"dotenv";import{unified as _}from"unified";import D from"remark-directive";import P from"remark-gfm";import R from"remark-parse";import{UriTemplate as $}from"@modelcontextprotocol/sdk/shared/uriTemplate.js";import{ResourceTemplate as M,McpServer as F}from"@modelcontextprotocol/sdk/server/mcp.js";import{v4 as q}from"uuid";import{StdioServerTransport as B}from"@modelcontextprotocol/sdk/server/stdio.js";import{StreamableHTTPServerTransport as W}from"@modelcontextprotocol/sdk/server/streamableHttp.js";class L extends o{log(t,e,r,s){const n=this.config("level");a[n],a[t]}}const U=(t,e,...r)=>{const s=(t=>{if("string"==typeof t)return t;if(!t)return"unknown";if("function"==typeof t)return t.name||"unknown";if("object"==typeof t&&"constructor"in t){const e=t.constructor;if(e&&e.name)return e.name}return"unknown"})(t);return new L(s,e)},K=["\x1b[38;5;215m","\x1b[38;5;209m","\x1b[38;5;205m","\x1b[38;5;210m","\x1b[38;5;217m","\x1b[38;5;216m","\x1b[38;5;224m","\x1b[38;5;230m","\x1b[38;5;230m"];var z,Y,G,Z,V;(t=>{t[t.NONE=0]="NONE",t[t.BASIC=1]="BASIC",t[t.ADVANCED=2]="ADVANCED",t[t.HIGH=3]="HIGH"})(z||(z={})),(t=>{t[t.NONE=0]="NONE",t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH"})(Y||(Y={})),(t=>{t[t.FREE=0]="FREE",t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH"})(G||(G={}));class Q extends v{get log(){return this._log||(this._log=c.for(this)),this._log}constructor(t){super(t)}logFor(t){const{sessionId:e,requestId:r,authInfo:s}=t||{};let n="string"==typeof e&&e.length>0?this.log.for(e):this.log;return s&&s.clientId&&(n=n.for(s.clientId)),r&&(n=n.for(r.toString())),n}setDescription(t){return this.description=t,this}getDescription(){return this.description}setName(t){return this.name=t,this}getName(){return this.name}setTitle(t){return this.title=t,this}}y([b(),g("design:type",String)],Q.prototype,"description",void 0),y([b(),g("design:type",String)],Q.prototype,"name",void 0),y([b(),g("design:type",String)],Q.prototype,"title",void 0);class X extends Q{constructor(t){super(t),this.reasoning=z.NONE,this.effort=Y.NONE,this.cost=G.FREE}setReasoning(t){return this.reasoning=t,this}setEffort(t){return this.effort=t,this}setCost(t){return this.cost=t,this}}function tt(t){if(!t)return;let e=t,r=e&&e._def;for(;r&&"ZodObject"!==r.typeName;){if("ZodEffects"===r.typeName&&r.schema)e=r.schema;else if("ZodOptional"===r.typeName&&r.innerType)e=r.innerType;else if("ZodDefault"===r.typeName&&r.innerType)e=r.innerType;else if("ZodNullable"===r.typeName&&r.innerType)e=r.innerType;else{if(!r.schema)return;e=r.schema}r=e&&e._def}return r&&"ZodObject"===r.typeName?r:void 0}function et(t,e="schema"){if(tt(t))return t;if(t&&"object"==typeof t){const e=t.def&&"object"==typeof t.def?t.def:void 0,r=e&&(e.shape||"object"===e.type)&&e.shape||("object"===t.type?t.shape:void 0)||(e&&"object"===e.type?{}:void 0);if(e||"object"===t.type||r){const t={};if(r&&"object"==typeof r)for(const[e,s]of Object.entries(r))t[e]=st(s)?s:j.any();return j.object(t)}}throw Error(`Registration error: provided a non-canonical ${e}. Export a ZodObject (z.object(...)).`)}function rt(t){if(!t)return;if(t&&"object"==typeof t&&!t._def)return t.def&&"object"==typeof t.def&&t.def.shape?t.def.shape:t;const e=tt(t);return e?"function"==typeof e.shape?e.shape():e.shape||void 0:void 0}function st(t){return!(!t||"object"!=typeof t||!t._def)}y([b(),g("design:type",Number)],X.prototype,"reasoning",void 0),y([b(),g("design:type",Number)],X.prototype,"effort",void 0),y([b(),g("design:type",Number)],X.prototype,"cost",void 0),(t=>{t.ASSETS="assets"})(Z||(Z={})),(t=>{t.PROMPT="prompts",t.DOCUMENTATION="documentation",t.CODE="code"})(V||(V={}));const nt=Buffer.from("DCAF1","ascii");function it(t){let r=t;for(;;){const t=n.join(r,"lib","assets");if(e.existsSync(t))return t;const s=n.join(r,"src","assets");if(e.existsSync(s))return s;const i=n.join(r,"assets");if(e.existsSync(i))return i;const o=n.dirname(r);if(o===r)break;r=o}}function ot(){const t=process.env.DECAF_ASSET_DIR||process.env.MCP_ASSET_DIR||process.env.ASSET_DIR||"";if(t&&e.existsSync(t))return t;const r=process.argv?.[1];if(r){const t=it(n.dirname(r));if(t)return t}const s=[process.cwd(),process.env.INIT_CWD].filter(Boolean);for(const t of s){const e=it(t);if(e)return e}return n.join(process.cwd(),"assets")}let at=class extends p{constructor(t){super(),this.basePath=t||ot()}listAssets(...t){const r=n.join(this.basePath,...t);return e.readdirSync(r)}listPrompts(){return this.listAssets(V.PROMPT)}getAsset(t,r="md",...s){const i=n.join(this.basePath,...s),o=(t,r=!1)=>{try{return r?(t=>{if(t.length<nt.length+16+12+16)throw Error("Invalid prompt payload (too short)");if(!t.subarray(0,nt.length).equals(nt))throw Error("Invalid prompt payload (bad magic)");const e=process.env.ENCRYPTION_KEY||"";if(!e)throw Error("Missing encryption key. Set ENCRYPTION_KEY to load obfuscated assets.");let r=nt.length;const s=t.subarray(r,r+16);r+=16;const n=t.subarray(r,r+12);r+=12;const i=t.subarray(r,r+16);r+=16;const o=t.subarray(r),a=((t,e)=>C.scryptSync(t,e,32))(e,s),c=C.createDecipheriv("aes-256-gcm",a,n);c.setAuthTag(i);const p=Buffer.concat([c.update(o),c.final()]);return H.gunzipSync(p)})(e.readFileSync(t)).toString("utf-8"):e.readFileSync(t,"utf-8")}catch(t){if("ENOENT"===t.code)return null;throw t}},a=o(n.join(i,`${t}.${r}`),"enc"===r);if(null!==a)return a;const c=o(n.join(i,t+".enc"),!0);if(null!==c)return c;throw Error("Asset not found: "+n.join(i,`${t}.${r}`))}getAllAssets(t,...e){return this.listAssets(t,...e).reduce((r,s)=>{const i=n.extname(s),o=n.basename(s,i),a=i.replace(/^\./,"")||void 0;return r[o]=this.getAsset(o,a??void 0,t,...e),r},{})}toPromptDef(t){const e=t=>"number"==typeof t?t:"string"==typeof t?(t=>{switch(t){case"none":return z.NONE;case"basic":return z.BASIC;case"advanced":return z.ADVANCED;case"high":return z.HIGH;case"medium":return Y.MEDIUM;case"low":return G.LOW;case"free":return G.FREE;default:throw new T("Cannon convert unknown level "+t)}})(t.toLowerCase()):z.NONE;return t.effort=e(t.effort),t.reasoning=e(t.reasoning),t.cost=e(t.cost),t}getPrompt(t,...e){const r=this.getAsset(l(t),"json",V.PROMPT,...e);let s;try{s=JSON.parse(r)}catch(r){throw new N(`Failed to parse prompt ${t} in categories ${e}: ${r}`)}return this.toPromptDef(s)}getAllPrompts(...t){const e=this.getAllAssets(V.PROMPT,...t);return Object.entries(e).reduce((e,[r,s])=>{try{e[r]=JSON.parse(s)}catch(e){throw new N(`Failed to parse prompt ${r} in categories ${t}: ${e}`)}return e},e)}};at=y([I(),g("design:paramtypes",[String])],at);class ct extends X{constructor(t){super(t)}setCb(t){return this.cb=t,this}setArgsSchema(t){return this.argsSchema=t,this}static get builder(){return new ct}static patchPrompt(t,e,r,s){const n=(e=Array.isArray(e)?e:Object.keys(e)).filter(t=>!Object.prototype.hasOwnProperty.call(r,t));if(n.length)throw new O("Missing replacements for placeholders: "+n.join(", "));s&&(s.verbose("Patching prompt with placeholders: "+JSON.stringify(e)),s.debug("Values: "+JSON.stringify(r)));const i=e.reduce((t,e)=>(t[e]=r[e],t),{});return u(t,i)}patchPrompt(t,e,r,s){return ct.patchPrompt(t,e,r,s||this.log.for(this.patchPrompt))}build(t,e){const r=this.log.for(this.build),s=this.hasErrors();if(s)throw new O(s.toString());try{this.argsSchema&&et(this.argsSchema,"argsSchema");const r=rt(this.argsSchema);return t.registerPrompt(this.name,{title:this.title,description:this.description,argsSchema:r},async(t,r)=>{const s=this.logFor(r);t=Object.assign({},e,t||{}),s.verbose(`Executing prompt ${this.name} with args: ${JSON.stringify(t)}`),t._meta=Object.assign(t._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const n=await Promise.resolve(this.cb(t,r));return s.verbose(`Prompt ${this.name} executed successfully.`),s.debug("Prompt execution meta: "+JSON.stringify(n._meta)),n})}catch(t){throw r.error("Failed to register prompt "+(this.name||this.constructor.name),t),t}}}y([A(at),g("design:type",at)],ct.prototype,"assets",void 0),y([b(),g("design:type",Object)],ct.prototype,"cb",void 0),y([b(),g("design:type",x)],ct.prototype,"argsSchema",void 0),y([E(),g("design:type",Object)],ct.prototype,"placeholders",void 0);class pt extends ct{setCategory(t){return this.promptCategory=t,this}addPrefix(t){return this.prefixes=this.prefixes||[],this.prefixes.push(t),this}addSuffix(t){return this.suffixes=this.suffixes||[],this.suffixes.push(t),this}constructor(t){super(t)}build(t){const e=this.assets.getPrompt(this.name,this.promptCategory);v.fromObject(this,e);const r=new Set((k.properties(pt)||[]).filter(t=>!["assets","promptCategory","prefixes","suffixes"].includes(t)));["cb","argsSchema"].forEach(t=>r.add(t));const s=this.hasErrors(...Array.from(r));if(s)throw new O(s.toString());const n=(this.prefixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),i=(this.suffixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),o=[...new Set([...e.placeholders,...n.map(t=>t.placeholders||[]),...i.map(t=>t.placeholders||[])].flat())].reduce((t,e)=>(t[e]=j.string().describe("The description for "+e),t),{});return this.setArgsSchema(j.object(o)),this.setCb((t,e)=>{const r=this.logFor(e).for(pt).for(this.promptCategory).for(this.name);function s(t=[]){return Array.isArray(t)?t:Object.keys(t)}const n=(this.prefixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),i=(this.suffixes||[]).map(t=>this.assets.getPrompt(t,this.promptCategory)),o=this.assets.getPrompt(this.name,this.promptCategory),a=[...new Set([...n.map(t=>s(t.placeholders)).flat(),...i.map(t=>s(t.placeholders)).flat(),...s(o.placeholders).flat()])];return{messages:[{role:"user",content:{type:"text",text:this.patchPrompt([...n.map(t=>t.prompt),o.prompt,...i.map(t=>t.prompt)].join("\n\n"),a,t,r)}}],_meta:{}}}),super.build(t)}setReasoning(t){throw new T("Named prompt builders don't require callback")}setEffort(t){throw new T("Named prompt builders don't require callback")}setCost(t){throw new T("Named prompt builders don't require callback")}setDescription(t){throw new T("Named prompt builders don't require callback")}setTitle(t){throw new T("Named prompt builders don't require callback")}static get builder(){return new pt}}y([b(),g("design:type",String)],pt.prototype,"promptCategory",void 0),y([w(String),S(1),g("design:type",Array)],pt.prototype,"prefixes",void 0),y([S(1),w(String),g("design:type",Array)],pt.prototype,"suffixes",void 0);const lt=ct.builder.setName("example.prompt").setTitle("Example prompt").setDescription("Example prompt for testing").setArgsSchema(j.object({message:j.string().optional()})).setCb(async t=>{const e=t.message??"default";return{messages:[{role:"assistant",content:{type:"text",text:e}}],content:[],structuredContent:{message:e},result:{message:e}}}),ut=ct.builder.setName("interactive.jsdoc").setTitle("Interactive JSDoc prompt").setDescription("Interactive prompt for jogging JSDoc helpers").setArgsSchema(j.object({gist:j.string().optional()})).setCb(async t=>{const e=t.gist??"interactive jsdoc response";return{messages:[{role:"assistant",content:{type:"text",text:e}}],content:[],structuredContent:{message:e},result:{message:e}}}),dt=Object.assign(ut,{name:ut.getName()});var mt;function ht(t,e=[],r=[]){const s=pt.builder.setCategory(mt.DOCS).setName(t);return["prefix",...e].forEach(t=>s.addPrefix(t)),["suffix",...r].forEach(t=>s.addSuffix(t)),s}(t=>{t.DOCS="documentation",t.CODE="code"})(mt||(mt={}));const ft=[ht("class"),ht("constant"),ht("decorator"),ht("function"),ht("module"),ht("file"),ht("repo",[],["iterate"])],yt=j.object({className:j.string().describe("the class name to turn into a builder")}),gt=[lt,dt,...ft,ct.builder.setName("ts.code.dp.builder").setTitle("Typescript builder design patter prompt").setDescription("for a class, with a defined set of properties, scafold a builder design pattern").setArgsSchema(yt).setReasoning(z.BASIC).setCb((t,e)=>(t.className=d(t.className),{messages:[{role:"user",content:{type:"text",text:`You're a senior TypeScript developer writing typescript code.You're a senior TypeScript developer writing typescript code.\nTransform the selected class into a builder design pattern implementation in Typescript.\nuse @decaf-ts validation decorators to enforce the validation of your builder.\n\n- must extend the Model Class from @decaf-ts/decorator-validation;\n- each property must be marked as protected;\n- each property must have a setter method that returns 'this' for chaining;\n- the build() method must validate the properties using hasErrors() method from Model class;\n- if validation fails, throw an error with the validation errors;\n- if validation passes, return an instance of the original class with the set properties;\n- optionally (but do so by default) add the static builder and from methods from the example;\n- if the clasee already follows the pattern but has properties without decoration or without setters, simple add them;\n\nexample:\n\noriginal class:\n\`\`\`typescript\nexport class ${t.className} {\n description!: string;\n name!: string = "default name";\n title!: string;\n age?: string;\n dateOfBirth!: Date;\n}}\n\`\`\` \n\nresulting builder pattern implementation:\n\`\`\`typescript\nexport class ${t.className}Builder extends Model {\n\n @minlength(10\n @required()\n protected description!: string;\n \n @required()\n protected name!: string = "default value;\n \n @required()\n protected title!: string;\n \n @min(18)\n protected age?: string;\n \n @date()\n protected dateOfBirth!: Date;\n\n protected constructor(arg?: ModelArg<${t.className}Builder>>) {\n super(arg);\n Model.fromModel(this, arg);\n }\n\n setDescription(value: string) {\n this.description = value;\n return this;\n }\n\n setName(value: string) {\n this.name = value;\n return this;\n }\n\n setTitle(value: string) {\n this.title = value;\n return this;\n }\n setAge(value: number) {\n this.age = value;\n return this;\n }\n setDate(value: Date) {\n this.age = value;\n return this;\n }\n \n build(...args: any[]): ${t.className}Builder | Promise<${t.className}Builder> {\n const errs = this.hasErrors();\n if (errs) throw new Error(errs.toString());\n \n return // code that builds OBJ here\n }\n \n static get builder(): ${t.className}Builder {\n return new ${t.className}Builder(); // static method to get a new builder instance\n }\n \n static from<K extends keyof ${t.className}Builder>(obj: K, ${t.className}Builder[K]): ${t.className}Builder {\n return new ${t.className}Builder(); // static method to create a builder from an object\n }\n}\n\`\`\` \n\n`}}],_meta:{}}))];class bt extends X{setAnnotations(t){return this.annotations=Object.assign(this.annotations,t),this}setCb(t){return this.cb=t,this}setInputSchema(t){return this.inputSchema=t,this}setOutputSchema(t){return this.outputSchema=t,this}constructor(t){super(t),this.annotations={readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}}static get builder(){return new bt}build(t){const e=this.hasErrors();if(e)throw Error(e.toString());try{this.inputSchema&&et(this.inputSchema,"inputSchema"),this.outputSchema&&et(this.outputSchema,"outputSchema");const e=rt(this.inputSchema),r=rt(this.outputSchema);return t.registerTool(this.name,{title:this.title,description:this.description,inputSchema:e,outputSchema:r,annotations:this.annotations,_meta:{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}}},async(t,e)=>{const r=this.logFor(e);r.verbose(`Executing tool ${this.name} with args: ${JSON.stringify(t)}`),e._meta=Object.assign(e._meta||{},{usage:{reasoning:this.reasoning,effort:this.effort,cost:this.cost}});const s=await Promise.resolve(this.cb(t,e));return r.verbose(`Tool ${this.name} executed successfully.`),r.debug("Tool execution meta: "+JSON.stringify(s._meta)),s})}catch(t){const e=t?.message||t+"";if("string"==typeof e&&e.includes("already registered"))return c.for(this).warn(`Tool ${this.name} already registered - skipping duplicate registration`),{name:this.name};throw c.for(this).error("Error building tool",t),t}}}y([b(),g("design:type",Object)],bt.prototype,"annotations",void 0),y([b(),g("design:type",Object)],bt.prototype,"cb",void 0),y([b(),g("design:type",Function)],bt.prototype,"inputSchema",void 0);const vt=bt.builder.setName("example.tool").setTitle("Example tool").setDescription("A smoke tool used for quick testing").setInputSchema(j.object({})).setCb(async()=>({content:[{type:"text",text:"example tool ok"}],result:{status:"ok"}}));Object.assign(vt,{name:vt.getName()});const wt=bt.builder.setName("file.summarizer").setTitle("File summarizer").setDescription("Summaries files for quick previews").setInputSchema(j.object({filePath:j.string().optional()})).setCb(async()=>({content:[{type:"text",text:"file summary stub"}],result:{summary:"file summary stub"}}));Object.assign(wt,{name:wt.getName()});const St="##VERSION##";k.registerLibrary("##PACKAGE##",St),J.config({path:n.resolve(__dirname,"../../.env")});const jt={mcpId:"decaf",name:"decaf-ts mcp server",title:"Decaf-TS MCP Server",description:"Provides precise coding assistance for the decaf-ts framework",version:St,websiteUrl:"https://decaf-ts.github.io",repositoryUrl:"https://github.com/decaf-ts/mcp-server",license:"AGPL-3.0",workingDir:process.cwd(),assetDir:ot(),contacts:[{name:"Decaf-TS",url:"https://decaf-ts.github.io"}],tags:"server,official,decaf-ts",metadata:{},icons:[{src:"workdocs/assets/favicon.svg",mimeType:"image/svg+xml",sizes:"any"}],jira:{host:process.env.JIRA__HOST||"decaf-ts.atlassian.net",email:process.env.JIRA__EMAIL||"",apiKey:process.env.JIRA__API_KEY||process.env.JIRA__APIKEY||"",projectKey:process.env.JIRA__PROJECT_KEY||void 0,issueType:process.env.JIRA__ISSUE_TYPE||void 0,parentIssue:process.env.JIRA__PARENT_ISSUE||void 0},level:m.error},xt=h.accumulate(jt);function It(){const{host:t,email:e,apiKey:r,projectKey:s,issueType:n}=xt.jira;return{host:t?.trim(),email:e?.trim(),apiKey:r?.trim(),projectKey:s?.trim(),issueType:n?.trim(),parentIssue:xt.jira.parentIssue?.trim()}}function At(){const t=It();return[{name:"JIRA__HOST",required:!0,description:"Atlassian host (e.g. decaf-ts.atlassian.net) where your Jira instance is hosted.",value:t.host},{name:"JIRA__EMAIL",required:!0,description:"Email address of the Jira account that has API access.",value:t.email},{name:"JIRA__API_KEY",required:!0,description:"API token created in your Atlassian profile (a.k.a. APIKEY alias) for authenticating requests.",sensitive:!0,value:t.apiKey},{name:"JIRA__PROJECT_KEY",required:!1,description:"Default Jira project key (e.g. DECAF) used when an issue creation request omits a project.",value:t.projectKey},{name:"JIRA__ISSUE_TYPE",required:!1,description:"Default Jira issue type (e.g. Task, Bug) used when creating issues without an explicit type.",value:t.issueType},{name:"JIRA__PARENT_ISSUE",required:!1,description:"Default parent issue key (e.g. DECAF-123) applied when a child issue is created without an explicit parent.",value:t.parentIssue}]}function Et(t){const e=t.value?((t,e)=>{if(t)return e?"<configured>":t})(t.value,t.sensitive):"not set",r=t.required?"(required)":"(optional)";return`\u2022 ${t.name} ${r}: ${t.description} Current state: ${e}.`}c.setConfig(xt);class kt extends Error{constructor(t){const e=At(),r=(t=>{const e=At();return`${t.length?`Missing Jira credentials: ${t.map(t=>t.name).join(", ")}.`:"Jira credentials are configured."}\n\nThis setup uses the following environment variables:\n${e.map(Et).join("\n")}`})(t);super(r),this.name="MissingJiraEnvironmentError",this.descriptors=e,this.missing=t,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,kt)}}function Tt(t){if(!t)return{code:"jira_error",message:"Unknown Jira error",details:{raw:t}};const e=t?.status??t?.statusCode??t?.response?.status??t?.response?.statusCode,r="number"==typeof e?e:Number(e)||void 0,s=t?.response?.data??t?.data??t?.response?.body??t?.body,n=[];"string"==typeof t?.message&&n.push(t.message),((t,e)=>{t&&(Array.isArray(t.errorMessages)&&t.errorMessages.forEach(t=>"string"==typeof t&&e.push(t)),"string"==typeof t.errorMessage&&e.push(t.errorMessage),t.errorCollection&&Array.isArray(t.errorCollection.errors)&&t.errorCollection.errors.forEach(t=>{"string"==typeof t?e.push(t):t&&"string"==typeof t.message&&e.push(t.message)}),t?.errors&&"object"==typeof t.errors&&Object.values(t.errors).forEach(t=>{"string"==typeof t?e.push(t):"string"==typeof t?.message&&e.push(t.message)}))})(s,n);const i=r?`Jira API error (${r})`:"Jira API error",o=n.length>0?n.join(" | "):i;return{code:r?"jira_"+r:t?.code??"jira_error",message:o,details:{httpStatus:r,body:s,raw:t}}}const Nt=j.object({issueId:j.string().min(1),deleteSubtasks:j.boolean().optional().default(!0)}),Ot={name:"jira.issue-delete",inputSchema:Nt,runTool:async(t,e)=>{try{const r=Nt.parse(e),s=t.issues??t.issue??t,n=s?.delete??s?.deleteIssue;if("function"!=typeof n)throw Error("jira client delete endpoint is not available");return await n.call(s,{issueId:r.issueId,deleteSubtasks:r.deleteSubtasks}),{success:!0,message:`Issue ${e.issueId} deleted successfully`}}catch(t){throw Tt(t)}}},Ct=j.object({issueId:j.string().min(1),expand:j.string().optional(),fields:j.array(j.string()).optional(),properties:j.array(j.string()).optional()}),Ht={name:"jira.issue-read",inputSchema:Ct,runTool:async(t,e)=>{try{const r=Ct.parse(e),s={issueIdOrKey:r.issueId};r.expand&&(s.expand=r.expand),r.fields&&(s.fields=r.fields),r.properties&&(s.properties=r.properties);const n=await t.issues.get(s);return n?.data??n}catch(t){throw Tt(t)}}};function Jt(t,e,r){const s=((t.url??"")+"").match(/^(attachment|jira-attachment):(.+)$/i);if(!s)return null;const n=s[2],i=r.resolveAttachment?.(n);return i?{type:"block",node:{type:"mediaSingle",attrs:{layout:"center"},content:[{type:"media",attrs:{type:"file",id:i.id,collection:i.collection??"attachments"}}]}}:null}function _t(t,e){if(!t)return[];if(!e.enableAtMentions&&!e.enableEmojiShortcodes)return[{type:"text",text:t}];let r=0;const s=[],n=/(^|[^A-Za-z0-9_])@([A-Za-z0-9._-]{1,64})/g,i=/:([a-z0-9_+-]{1,64}):/gi;for(;r<t.length;){const o=Pt(e.enableAtMentions?Dt(n,t,r):null,e.enableEmojiShortcodes?Dt(i,t,r):null);if(!o){s.push({type:"text",text:t.slice(r)});break}if(o.index>r&&s.push({type:"text",text:t.slice(r,o.index)}),"mention"===o.kind){const{full:t,groups:n}=o,i=n[0]??"",a=n[1]??"";i&&s.push({type:"text",text:i});const c=e.resolveMention?.(a);c?s.push({type:"mention",attrs:{id:c.id,text:c.text}}):s.push({type:"text",text:"@"+a}),r=o.index+t.length;continue}if("emoji"===o.kind){const{full:t,groups:n}=o,i=`:${n[0]}:`,a=e.resolveEmoji?.(i);s.push({type:"emoji",attrs:a?{shortName:a.shortName,text:a.text}:{shortName:i}}),r=o.index+t.length;continue}}return(t=>{const e=[];for(const r of t){const t=e[e.length-1];"text"!==r.type||"text"!==t?.type||t.marks||r.marks?e.push(r):t.text=(t.text??"")+(r.text??"")}return e})(s)}function Dt(t,e,r){t.lastIndex=r;const s=t.exec(e);if(!s)return null;const n=t.source.includes("@")?"mention":"emoji";return{index:s.index,full:s[0],groups:s.slice(1),kind:n}}function Pt(t,e){return t?e&&t.index>e.index?e:t:e}function Rt(t){const e=(t.children??[])[0];return"text"===e?.type?(e.value??"")+"":"paragraph"===e?.type?((e.children??[]).map(t=>"text"===t.type?(t.value??"")+"":"").join("")||"")+"":""}function $t(t){const e=((t??"")+"").toLowerCase().trim();return e?"info"===e||"note"===e||"success"===e||"warning"===e||"error"===e?e:"danger"===e?"error":null:null}function Mt(t){const e=((t??"")+"").toLowerCase().trim();return!e||"neutral"!==e&&"green"!==e&&"yellow"!==e&&"red"!==e&&"blue"!==e&&"purple"!==e?null:e}function Ft(t,e){const r=[];for(const s of t??[])if(s?.type)if("text"!==s.type)if("strong"!==s.type)if("emphasis"!==s.type)if("delete"!==s.type)if("inlineCode"!==s.type)if("break"!==s.type){if("link"===s.type){const t=(s.url??"")+"",n=Bt(s.children??[],t),i=Jt(s,0,e);if(i){"inline"===i.type?r.push(i.node):r.push({type:"text",text:n,marks:[{type:"link",attrs:{href:t}}]});continue}if(e.enableSmartCards&&Wt(n,t)){r.push({type:"inlineCard",attrs:{url:t}});continue}r.push({type:"text",text:n,marks:[{type:"link",attrs:{href:t}}]});continue}if("textDirective"===s.type&&"status"===s.name){const t=Rt(s)||"Status",e=Mt(s.attributes?.color)??"neutral";r.push({type:"status",attrs:{text:t,color:e}});continue}if("textDirective"===s.type&&"emoji"===s.name){const t=Lt(s);r.push(Ut(t,e));continue}}else r.push({type:"hardBreak"});else r.push({type:"text",text:(s.value??"")+"",marks:[{type:"code"}]});else r.push(...qt(Ft(s.children??[],e),{type:"strike"}));else r.push(...qt(Ft(s.children??[],e),{type:"em"}));else r.push(...qt(Ft(s.children??[],e),{type:"strong"}));else r.push(..._t((s.value??"")+"",e));return r.filter(t=>!("text"===t.type&&""===(t.text??"")))}function qt(t,e){return t.map(t=>{if("text"!==t.type)return t;const r=t.marks?[...t.marks,e]:[e];return{...t,marks:r}})}function Bt(t,e){const r=[];for(const e of t??[])"text"===e.type||"inlineCode"===e.type?r.push((e.value??"")+""):"emphasis"!==e.type&&"strong"!==e.type&&"delete"!==e.type||r.push(Bt(e.children??[],""));return r.join("")||e}function Wt(t,e){const r=(t??"").trim(),s=(e??"").trim();return r===s&&/^https?:\/\//i.test(s)}function Lt(t){return(t.children??[]).map(t=>"text"===t.type?(t.value??"")+"":"").join("").trim()||""}function Ut(t,e){const r=t.startsWith(":")?t:`:${t}:`,s=e.resolveEmoji?.(r);return s?{type:"emoji",attrs:{shortName:s.shortName,text:s.text}}:{type:"emoji",attrs:{shortName:r}}}function Kt(t){return t?"string"==typeof t?t:"text"===t.type||"inlineCode"===t.type?(t.value??"")+"":Array.isArray(t.children)?t.children.map(Kt).join(""):"":""}function zt(t,e){if(!t?.type)return null;if((t=>"containerDirective"===t?.type&&"panel"===t?.name)(t))return((t,e)=>{const r=t.attributes??{},s=$t(r.type)??"info",n="string"==typeof r.title?r.title:void 0,i=(t.children??[]).map(t=>zt(t,e)).flat().filter(Boolean);return{type:"panel",attrs:{panelType:s,...n?{panelType:s,title:n}:{panelType:s}},content:i.length?i:[{type:"paragraph",content:[]}]}})(t,e);switch(t.type){case"heading":return{type:"heading",attrs:{level:Gt(t.depth??1,1,6)},content:Ft(t.children??[],e)};case"paragraph":return(t=>{const e=t.children??[];if(1!==e.length)return null;const r=e[0];if("image"!==r?.type)return null;const s=(r.url??"")+"";return s?{type:"mediaSingle",attrs:{layout:"center"},content:[{type:"media",attrs:{type:"external",url:s}}]}:null})(t)||{type:"paragraph",content:Ft(t.children??[],e)};case"blockquote":return{type:"blockquote",content:(t.children??[]).map(t=>zt(t,e)).flat().filter(Boolean)};case"list":return((t,e)=>e.enableTaskLists&&(t.children??[]).some(t=>"boolean"==typeof t.checked)?((t,e)=>{const r=[];let s=0;for(const n of t.children??[]){if("boolean"!=typeof n.checked)continue;s+=1;const t=(n.children??[]).map(t=>zt(t,e)).flat().filter(Boolean);r.push({type:"taskItem",attrs:{localId:"task-"+s,state:n.checked?"DONE":"TODO"},content:t.length?t:[{type:"paragraph",content:[]}]})}return{type:"taskList",content:r}})(t,e):{type:t.ordered?"orderedList":"bulletList",content:(t.children??[]).map(t=>((t,e)=>{const r=(t.children??[]).map(t=>zt(t,e)).flat().filter(Boolean);return{type:"listItem",content:r.length?r:[{type:"paragraph",content:[]}]}})(t,e))})(t,e);case"code":{const r=((t,e)=>{const r=(t??"").toString().trim().toLowerCase();return r?e.enableMermaid&&"mermaid"===r?"mermaid":(t=>{const e=t.trim().toLowerCase();return{js:"javascript",javascript:"javascript",jsx:"javascript",ts:"typescript",typescript:"typescript",tsx:"typescript",py:"python",python:"python",rb:"ruby",ruby:"ruby",sh:"bash",bash:"bash",zsh:"bash",shell:"bash",yml:"yaml",yaml:"yaml",json:"json",toml:"toml",xml:"xml",html:"html",css:"css",scss:"scss",sql:"sql",go:"go",rust:"rust",java:"java",c:"c",cpp:"cpp","c++":"cpp",cs:"csharp",csharp:"csharp",php:"php",kotlin:"kotlin",swift:"swift",md:"markdown",markdown:"markdown",graphql:"graphql",gql:"graphql",dockerfile:"docker",makefile:"make",ini:"ini"}[e]??e})(r):null})(t.lang,e);return{type:"codeBlock",attrs:{language:r},content:[{type:"text",text:(t.value??"")+""}]}}case"thematicBreak":return{type:"rule"};case"table":return((t,e)=>({type:"table",content:(t.children??[]).map((t,r)=>({type:"tableRow",content:(t.children??[]).map(t=>({type:0===r?"tableHeader":"tableCell",content:[{type:"paragraph",content:Ft(t.children??[],e)}]}))}))}))(t,e);case"leafDirective":return"status"===t.name?(t=>{const e=Mt((t.attributes??{}).color)??"neutral";return{type:"paragraph",content:[{type:"status",attrs:{text:Rt(t)||"Status",color:e}}]}})(t):"panel"===t.name?((t,e)=>{const r=t.attributes??{},s=$t(r.type)??"info",n="string"==typeof r.title?r.title:void 0;return{type:"panel",attrs:{panelType:s,...n?{title:n}:{}},content:[{type:"paragraph",content:Ft([{type:"text",value:Rt(t)}],e)}]}})(t,e):Yt(t,e);default:return Yt(t,e)}}function Yt(t,e){if("drop"===e.unknownNodeStrategy)return null;const r=Kt(t);return r?{type:"paragraph",content:[{type:"text",text:r}]}:null}function Gt(t,e,r){const s=Number.isFinite(t)?Math.trunc(t):e;return Math.max(e,Math.min(r,s))}const Zt={resolveMention:void 0,resolveAttachment:void 0,resolveEmoji:void 0,enableSmartCards:!0,enableMermaid:!0,enableEmojiShortcodes:!0,enableAtMentions:!0,enableTaskLists:!0,unknownNodeStrategy:"text"};function Vt(t,e={}){const r={...Zt,...e},s=t??"",n=_().use(R).use(P).use(D),i=n.parse(s),o=n.runSync(i);return Qt(o),((t,e)=>{const r=[];for(const s of t.children??[]){const t=zt(s,e);t&&(Array.isArray(t)?r.push(...t):r.push(t))}return((t,e)=>{if(!e.enableSmartCards)return t;const r=t.content.map(t=>(t=>{if("paragraph"!==t.type)return t;const e=t.content??[];if(1!==e.length)return t;const r=e[0];if("inlineCard"!==r?.type)return t;const s=r.attrs?.url;return s?[{type:"blockCard",attrs:{url:s}}]:t})(t)).flat();return{...t,content:r}})({version:1,type:"doc",content:r},e)})(o,r)}function Qt(t){if(!t||!Array.isArray(t.children))return;const e=[];for(const r of t.children)"definition"!==r?.type&&("html"!==r?.type?(Qt(r),e.push(r)):e.push({type:"text",value:(r.value??"")+""}));t.children=e}const Xt=j.object({issueId:j.string().min(1),transitionId:j.union([j.string(),j.number()]),fields:j.record(j.any()).optional(),update:j.record(j.array(j.object({set:j.any().optional(),add:j.any().optional(),remove:j.any().optional()}))).optional(),comment:j.string().optional()}),te={name:"jira.issue-transition",inputSchema:Xt,runTool:async(t,e)=>{try{const r=Xt.parse(e),s={id:r.transitionId};r.fields&&(s.fields=r.fields),r.update&&(s.update=r.update),r.comment&&(s.comment={body:Vt(r.comment)});const n=await t.issues.transition({issueId:r.issueId,transition:s});return n?.data??n}catch(t){throw Tt(t)}}},ee=j.object({issueId:j.string().min(1),fields:j.record(j.any()).optional(),update:j.record(j.array(j.object({set:j.any().optional(),add:j.any().optional(),remove:j.any().optional(),edit:j.any().optional()}))).optional(),properties:j.array(j.any()).optional(),notifyUsers:j.boolean().optional().default(!0),issueTemplateId:j.string().optional(),overrideScreenSecurity:j.boolean().optional().default(!1),overrideEditableFlag:j.boolean().optional().default(!1)}),re={name:"jira.issue-update",inputSchema:ee,runTool:async(t,e)=>{try{const r=ee.parse(e),s={issueId:r.issueId};r.fields&&(s.fields=r.fields),r.update&&(s.update=r.update),r.properties&&(s.properties=r.properties),void 0!==r.notifyUsers&&(s.notifyUsers=r.notifyUsers),r.issueTemplateId&&(s.issueTemplateId=r.issueTemplateId),void 0!==r.overrideScreenSecurity&&(s.overrideScreenSecurity=r.overrideScreenSecurity),void 0!==r.overrideEditableFlag&&(s.overrideEditableFlag=r.overrideEditableFlag);const n=await t.issues.update(s);return n?.data??n}catch(t){throw Tt(t)}}},se=j.object({issueId:j.string().min(1),assignee:j.union([j.string(),j.object({accountId:j.string().min(1)}),j.object({accountType:j.string().min(1)})])}),ne={name:"jira.assign-issue",inputSchema:se,runTool:async(t,e)=>{try{const r=se.parse(e);let s;s="string"==typeof r.assignee?{accountId:r.assignee}:r.assignee;const n=await t.issues.assign({issueId:r.issueId,assignee:s});return n?.data??n}catch(t){throw Tt(t)}}},ie=j.object({issueId:j.string().min(1)}),oe={name:"jira.unassign-issue",inputSchema:ie,runTool:async(t,e)=>{try{const r=ie.parse(e),s=await t.issues.assign({issueId:r.issueId,assignee:{accountId:"-1"}});return s?.data??s}catch(t){throw Tt(t)}}},ae=j.object({issueId:j.string().min(1),body:j.string().min(1),visibility:j.object({type:j.enum(["role","group"]),value:j.string().min(1)}).optional()}),ce={name:"jira.comment-add",inputSchema:ae,runTool:async(t,e)=>{try{const r=ae.parse(e),s={body:Vt(r.body)};r.visibility&&(s.visibility=r.visibility);const n=await t.issues.addComment({issueId:r.issueId,comment:s});return n?.data??n}catch(t){throw Tt(t)}}},pe=j.object({issueId:j.string().min(1),start:j.number().optional().default(0),maxResults:j.number().optional().default(50),orderBy:j.string().optional(),expand:j.string().optional()}),le={name:"jira.comment-list",inputSchema:pe,runTool:async(t,e)=>{try{const r=pe.parse(e),s=await t.issues.getComments({issueId:r.issueId,start:r.start,maxResults:r.maxResults,orderBy:r.orderBy,expand:r.expand});return s?.data??s}catch(t){throw Tt(t)}}},ue=j.object({link:j.object({relationship:j.enum(["Blocks","Relates to","Duplicates","Is blocked by","Is related to","Is duplicated by","Causes","Is caused by","Clone","Required","Work on","Split","Roll up"]),inwardIssue:j.object({id:j.string().optional(),key:j.string().optional()}),outwardIssue:j.object({id:j.string().optional(),key:j.string().optional()}),comment:j.object({body:j.string().optional(),visibility:j.object({type:j.enum(["role","group"]),value:j.string().min(1)}).optional()}).optional()})}),de={name:"jira.link-create",inputSchema:ue,runTool:async(t,e)=>{try{const r=ue.parse(e).link,s={relationship:r.relationship,inwardIssue:r.inwardIssue.id||r.inwardIssue.key,outwardIssue:r.outwardIssue.id||r.outwardIssue.key};r.comment&&(r.comment.body&&(s.comment=Vt(r.comment.body)),r.comment.visibility&&(s.visibility=r.comment.visibility));const n=await t.issues.link(s);return n?.data??n}catch(t){throw Tt(t)}}},me=j.object({issueId:j.string().min(1),file:j.string().min(1),mimeType:j.string().optional(),comment:j.string().optional()}),he={name:"jira.attach",inputSchema:me,runTool:async(t,e)=>{try{const r=me.parse(e),n=i.resolve(r.file),o=await s.readFile(n),a=i.basename(n),c=await t.issues.addAttachment({issueId:r.issueId,file:{name:a,content:o,mimeType:r.mimeType??"application/octet-stream"},comment:r.comment});return c?.data??c}catch(t){if(t&&t.code&&"string"==typeof t.code&&["ENOENT","EACCES"].includes(t.code))throw Error("Attachment file error: "+t.message);throw Tt(t)}}},fe=j.object({issueId:j.string().min(1)}),ye={name:"jira.attachment-list",inputSchema:fe,runTool:async(t,e)=>{try{const r=fe.parse(e),s=await t.issues.getAttachments({issueId:r.issueId});return s?.data??s}catch(t){throw Tt(t)}}},ge=j.object({issueId:j.string().min(1),attachmentId:j.string().min(1)}),be={name:"jira.attachment-delete",inputSchema:ge,runTool:async(t,e)=>{try{const r=ge.parse(e);return await t.issues.deleteAttachment({issueId:r.issueId,attachmentId:r.attachmentId}),{success:!0,message:`Attachment ${e.attachmentId} deleted successfully`}}catch(t){throw Tt(t)}}},ve=j.object({issueId:j.string().min(1),timeSpent:j.string().min(1),comment:j.string().optional(),author:j.object({accountId:j.string().min(1)}).optional(),startingOn:j.string().optional(),artifact:j.string().optional()}),we={name:"jira.worklog-add",inputSchema:ve,runTool:async(t,e)=>{try{const r=ve.parse(e),s={timeSpent:r.timeSpent};r.comment&&(s.comment=r.comment),r.author&&(s.author=r.author),r.startingOn&&(s.started=r.startingOn),r.artifact&&(s.artifact=r.artifact);const n=await t.issues.addWorklog({issueId:r.issueId,...s});return n?.data??n}catch(t){throw Tt(t)}}},Se={[Ht.name]:{title:"Jira Issue Read",description:"Read a Jira issue with expandable fields and properties",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[re.name]:{title:"Jira Issue Update",description:"Update a Jira issue using fields, update ops, and property toggles",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[Ot.name]:{title:"Jira Issue Delete",description:"Delete a Jira issue and optionally remove its subtasks",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!0}},[te.name]:{title:"Jira Issue Transition",description:"Transition a Jira issue while optionally adding a comment",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[ne.name]:{title:"Jira Issue Assign",description:"Assign a Jira issue to a user or account",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[oe.name]:{title:"Jira Issue Unassign",description:"Unassign the current owner from a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[ce.name]:{title:"Jira Comment Add",description:"Add a comment to a Jira issue with optional visibility",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[le.name]:{title:"Jira Comment List",description:"List comments on a Jira issue with pagination support",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[de.name]:{title:"Jira Link Create",description:"Create an issue link relationship with optional comment",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[he.name]:{title:"Jira Attachment Add",description:"Attach a local file to a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}},[ye.name]:{title:"Jira Attachment List",description:"List attachments on a Jira issue",annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},[be.name]:{title:"Jira Attachment Delete",description:"Delete an attachment from a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!0}},[we.name]:{title:"Jira Worklog Add",description:"Log time spent on a Jira issue",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0}}};async function je(t){const e=c.for(je);let r,s=null;try{r=(()=>{let t;try{const e=require("jira.js");t=e?.Version3Client||e.default?.Version3Client||e.default||e}catch(t){throw Error("Unable to require 'jira.js' \u2014 ensure it is installed as a dependency: "+t)}const{host:e,email:r,apiKey:s}=(()=>{const t=It(),e=At().filter(t=>t.required&&!t.value);if(e.length>0)throw new kt(e);return{host:t.host,email:t.email,apiKey:t.apiKey}})();return new t({host:e,authentication:{basic:{email:r,apiToken:s}}})})()}catch(t){if(!(t instanceof kt))return void e.warn("Skipping Jira tool registration; unable to create Jira client",{error:t});s=t,e.warn("Registering Jira tools without credentials; each tool will report configuration requirements.",{error:t})}const n=[Ht,re,Ot,te,ne,oe,ce,le,de,he,ye,be,we];for(const i of n){const n=Se[i.name];if(n)try{await t.registerTool(i.name,{title:n.title,description:n.description,inputSchema:rt(i.inputSchema),annotations:n.annotations},async t=>{if(!r)throw s??Error("Jira client unavailable because credentials could not be loaded.");return i.runTool(r,t)}),e.info("Registered Jira tool "+i.name)}catch(t){e.error("Failed to register Jira tool "+i.name,{error:t})}}}async function xe(t){await(async t=>{t.registerTool("decaf.server-info",{title:"Decaf MCP Server Info",description:"Return server metadata, version, and registered prompt names for diagnostics.",inputSchema:{},outputSchema:void 0,annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1}},async()=>{const t=gt.map(t=>t.getName()).sort();return{content:[{type:"text",text:["Name: "+xt.name,"Title: "+xt.title,"Version: "+xt.version,"Prompts: "+(t.join(", ")||"<none>")].join("\n")}]}})})(t);const e=c.for(xe);try{await je(t)}catch(t){e.error("Failed to register Jira tools",t)}}class Ie extends Q{setCb(t){return this.cb=t,this}setConfig(t){return this.config=t,this}setUriOtTemplate(t){return this.uriOrTemplate=t,this}constructor(t){super(t)}static get builder(){return new Ie}build(t){const e=this.hasErrors();if(e)throw Error(e.toString());try{const e="string"==typeof this.uriOrTemplate&&this.uriOrTemplate.includes("{")?new M(new $(this.uriOrTemplate),{list:void 0}):this.uriOrTemplate,r=Object.assign(this.config,{_meta:{}}),s=async(t,e)=>{const r=this.logFor(e);r.verbose(`Requesting resource ${this.name} from ${t.toString()}`);const s=await Promise.resolve(this.cb(t,e));return r.verbose(`Resource ${this.name} retrieved successfully.`),r.debug("Resource retrieval meta: "+JSON.stringify(s._meta)),s};return t.resource(this.name,e,r,s)}catch(t){throw c.for(this).error("Error registering resource "+this.name,t),t}}}y([b(),g("design:type",String)],Ie.prototype,"uriOrTemplate",void 0),y([b(),g("design:type",Function)],Ie.prototype,"cb",void 0),y([b(),g("design:type",Object)],Ie.prototype,"config",void 0);const Ae=n.join(process.cwd(),"src/assets"),Ee=n.join(Ae,"templates"),ke=n.join(Ae,"prompts"),Te=new WeakMap;class Ne extends p{get client(){const t=Te.get(this);if(!t)throw Error("Mcp server requires Mcp client");return t}constructor(){super()}async load(){const t=this.log.for(this.load);for(const e of gt)try{t.info("loading prompt "+e.getName());const r=e.build(this.client);t.verbose(`Loaded prompt ${r.title} from ${e.getName()} definition`)}catch(r){t.error("Failed to load prompt "+e.getName(),r)}try{await xe(this.client),t.verbose("Registered built-in tools")}catch(e){t.error("Failed to register tools",e)}try{await(async(t,r)=>{r.info("Registering agent templates as resources...");const s=e.readdirSync(Ee).filter(t=>t.endsWith(".md"));for(const i of s){const s=n.basename(i,".md"),o=n.join(Ee,i),a=Ie.builder.setName(s).setTitle("Template: "+s).setDescription("Resource template for "+s).setUriOtTemplate("file:///"+o).setConfig({mimeType:"text/markdown",description:"Template for "+s}).setCb(async t=>{const r=e.readFileSync(t.pathname,"utf8");return{contents:[{uri:t.toString(),text:r,mimeType:"text/markdown"}],_meta:{}}});try{a.build(t),r.info("Registered template: "+s)}catch(t){r.error(`Failed to register template ${s}:`,t)}}r.info("Registering agent prompts...");const i=e.readdirSync(ke).filter(t=>t.endsWith(".md"));for(const s of i){const i=n.basename(s,".md"),o=n.join(ke,s),a=e.readFileSync(o,"utf8"),c=ct.builder.setName(i).setTitle("Prompt: "+i).setDescription("Dynamic prompt for "+i).setArgsSchema(j.object({})).setCb(async t=>({messages:[{role:"user",content:{type:"text",text:a}}],_meta:{}}));try{c.build(t),r.info("Registered prompt: "+i)}catch(t){r.error(`Failed to register prompt ${i}:`,t)}}})(this.client,t),t.verbose("Registered agent-specific assets")}catch(e){t.error("Failed to register agent assets",e)}}async boot(t="stdio"){let r=this.log;this.log.for(this.boot).info("McpServer booting..."),((t=c.get())=>{let r;try{r=(()=>{let t,r=__dirname;try{for(;r&&r!==n.parse(r).root;){const s=n.join(r,"node_modules");if(e.existsSync(s)&&e.statSync(s).isDirectory()){t=s;break}const i=n.dirname(r);if(i===r)break;r=i}}catch{}const s=[];if(t){const r=n.join(t,"@decaf-ts");try{if(e.existsSync(r)&&e.statSync(r).isDirectory()){const t=e.readdirSync(r);for(const i of t){const t=n.join(r,i);try{const r=n.join(t,"workdocs","assets","slogans.json");if(e.existsSync(r)&&e.statSync(r).isFile()){const t=e.readFileSync(r,"utf-8"),n=JSON.parse(t);if(Array.isArray(n))for(const t of n)"string"==typeof t&&t.trim().length>0&&s.push(t.trim())}}catch{}}}}catch{}}return 0===s.length?"Decaf: strongly brewed TypeScript.":s[Math.floor(Math.random()*s.length)]})()}catch{r="Decaf: strongly brewed TypeScript."}const s="# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# ( ( \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# ) ) \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# [=======] \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n# `-----\xb4 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \n# \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \n#".split("\n"),i=s.reduce((t,e)=>Math.max(t,e.length),0);s.push("# "+r.padStart(i-3)),s.forEach((e,r)=>{const s=K[r%K.length]||"",n=t.info.bind(t);try{n(f(e||"").raw(s).text)}catch{n((e||"")+"")}})})(this.log),"stdio"===t&&(c.setFactory(U),r=c.for(this.constructor.name));const s=((Array.isArray(xt.icons)?xt.icons:[xt.icons])||[]).map(t=>{const e="string"==typeof t?.src?t.src:(t?.src??"")+"",r="string"==typeof t?.mimeType?t.mimeType:(t?.mimeType??"")+"";let s=[];return Array.isArray(t?.sizes)?s=t.sizes.map(t=>t+""):"string"==typeof t?.sizes&&(s=(t.sizes+"").split(",").map(t=>t.trim())),{src:e,mimeType:r,sizes:s}}),i={name:xt.name,title:xt.title,websiteUrl:xt.websiteUrl,version:xt.version,icons:s},o=new F(i,{instructions:"You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework. \nProvide clear, concise, and accurate information.\nIf you don't know the answer, admit it rather than making up information.\nAlways prioritize the user's intent and provide helpful suggestions when appropriate.\n",capabilities:{logging:{},tools:{},prompts:{}}});switch(((t,e)=>{Te.set(t,e)})(this,o),o.onerror=t=>{this.log.error("MCP instance onerror",t)},t){case"stdio":t=new B;break;case"http":t=new W({sessionIdGenerator:()=>q(),onsessioninitialized:t=>r.verbose("Session initialized: "+t),onsessionclosed:t=>r.verbose("Session closed: "+t),enableJsonResponse:!0,eventStore:void 0});break;default:if(!(a=t)||"object"!=typeof a||"function"!=typeof a.send&&"function"!=typeof a.close&&"function"!=typeof a.on)throw new T("Invalid transport type: "+t)}var a;try{this.log.info("Loading resources/prompts/tools..."),await this.load()}catch(t){throw this.log.error("Error loading resources/prompts/tools: "+t),t}await this.client.connect(t),r.info(`MCP Server connected via ${t.constructor.name} and running. Waiting for client connections...`)}}const Oe=(new t).command("start").option("--transport [String]","transport mode","stdio").description("starts decaf's mcp server").action(async t=>{const e=JSON.parse(r.readFileSync(i.join(process.cwd(),"package.json"),"utf-8")),s=e.version,{transport:n}=t,o=(new L).for("mcp-server");if("stdio"!==n)throw Error("Unsupported transport mode: "+n);return o.info("Transport stdio"),o.debug(`running with options: ${JSON.stringify(t)} for ${e.name} version ${s}`),(new Ne).boot(n)});(new t).command("md-to-ast").description("pipes markdown to jira ast: `cat file.md` | npx decaf-mcp md-to-ast > ast.json").action(async t=>{const e=JSON.parse(r.readFileSync(i.join(process.cwd(),"package.json"),"utf-8")),s=e.version;c.for("md-to-ast").debug(`running with options: ${JSON.stringify(t)} for ${e.name} version ${s}`);const n=Vt(await(async()=>{const t=[];for await(const e of process.stdin)t.push(Buffer.from(e));return Buffer.concat(t).toString("utf8")})(),{resolveMention:t=>({id:t,text:"@"+t}),resolveAttachment:t=>({id:t,collection:"attachments"})});process.stdout.write(JSON.stringify(n,null,2)+"\n")});const Ce=(new t).name("mcp-server").command("mcp-server").description("decaf mcp server and agentic functionality");Ce.addCommand(Oe),Ce.parse(process.argv);
2
2
  //# sourceMappingURL=mcp-server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sources":["../src/utils/banner.ts","../src/constants.ts","../src/utils/constants.ts","../src/builders/builder.ts","../src/jira/schema-utils.ts","../src/utils/conversions.ts","../src/utils/obfuscation.ts","../src/utils/asset-path.ts","../src/utils/assets.ts","../src/builders/prompt-builder.ts","../src/prompts/contants.ts","../src/prompts/jsdocs-prompts.ts","../src/prompts/index.ts","../src/version.ts","../src/utils/environment.ts","../src/builders/resource-builder.ts","../src/agent/registrations.ts","../src/utils/stdio-error-logger.ts","../src/mcp-server.ts","../src/tools/index.ts","../src/tools/server-info.ts","../src/utils/initialization.ts","../src/utils/utils.ts","../src/bin/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["colors","ReasoningLevel","EffortLevel","Cost","Paths","AssetCategory","Builder","Model","log","this","_log","Logging","for","constructor","arg","super","logFor","extra","sessionId","requestId","authInfo","length","clientId","toString","setDescription","value","description","getDescription","setName","name","getName","setTitle","title","__decorate","required","prototype","UsableBuilder","reasoning","NONE","effort","cost","FREE","setReasoning","setEffort","setCost","findUnderlyingZodObject","s","cur","def","_def","typeName","schema","innerType","undefined","isZodSchema","toLevel","lvl","BASIC","ADVANCED","HIGH","MEDIUM","LOW","InternalError","MAGIC","Buffer","from","decryptObfuscatedPayload","input","Error","subarray","equals","keyMaterial","process","env","ENCRYPTION_KEY","offset","salt","iv","tag","ciphertext","key","crypto","scryptSync","deriveKey","decipher","createDecipheriv","setAuthTag","plaintext","concat","update","final","zlib","gunzipSync","findAssetsDir","startDir","current","libAssets","path","join","fs","existsSync","srcAssets","plainAssets","parent","dirname","resolveAssetsDir","explicit","DECAF_ASSET_DIR","MCP_ASSET_DIR","ASSET_DIR","entry","argv","fromEntry","roots","cwd","INIT_CWD","filter","Boolean","root","found","AssetReader","LoggedClass","basePath","listAssets","folder","assetDir","readdirSync","listPrompts","PROMPT","getAsset","format","categories","filePath","readFileSync","encFallback","getAllAssets","category","reduce","acc","fileName","extWithDot","extname","basename","replace","toPromptDef","getPrompt","text","toSnakeCase","JSON","parse","e","SerializationError","getAllPrompts","texts","Object","entries","prompt","injectable","PromptBuilder","setCb","cb","setArgsSchema","argsSchema","builder","patchPrompt","placeholders","replacements","missing","Array","isArray","keys","p","hasOwnProperty","call","ValidationError","verbose","stringify","debug","filteredReplacements","sf","build","server","errs","hasErrors","defLike","shape","type","normalizedShape","z","any","object","ensureZodObject","argsShape","extractShape","registerPrompt","async","args","assign","_meta","usage","result","Promise","resolve","error","inject","ZodObject","prop","NamedPromptBuilder","setCategory","promptCategory","addPrefix","prefixes","push","addSuffix","suffixes","promptDef","assets","fromObject","toIgnoreProps","Set","Metadata","properties","k","includes","forEach","add","map","argSchema","flat","el","string","describe","parsePlaceholders","messages","role","content","PromptCategories","namedPromptBuilder","extraPrefix","extraSuffix","pb","DOCS","list","String","minlength","Prompts","VERSION","registerLibrary","DefaultMcpEnvironment","mcpId","version","websiteUrl","repositoryUrl","license","workingDir","contacts","url","tags","metadata","icons","src","mimeType","sizes","jira","host","email","apiKey","level","LogLevel","Environment","LoggedEnvironment","accumulate","setConfig","ResourceBuilder","config","setUriOtTemplate","uriOrTemplate","uriOrTemplateArg","ResourceTemplate","UriTemplate","readCb","uri","resource","ASSETS_DIR","TEMPLATES_DIR","PROMPTS_DIR","StdioErrorLogger","silly","info","warn","benchmark","trace","clear","context","stdioErrorLoggerFactory","McpServer","client","_mcp","load","registerTool","inputSchema","outputSchema","annotations","readOnlyHint","destructiveHint","idempotentHint","openWorldHint","promptNames","sort","registerServerInfoTool","registerTools","templateFiles","file","endsWith","resourceBuilder","pathname","contents","promptFiles","promptContent","promptBuilder","registerAgentAssets","boot","transportType","logger","get","message","nodeModulesDir","__dirname","candidate","statSync","isDirectory","slogans","scopeDir","pkgs","pkg","depPath","slogansPath","isFile","raw","parsed","trim","Math","floor","random","getSlogan","banner","split","maxLength","max","line","padStart","index","color","logFn","bind","style","printBanner","setFactory","normalizedIcons","i","serverInfo","MCP","instructions","capabilities","logging","tools","prompts","onerror","err","StdioServerTransport","StreamableHTTPServerTransport","sessionIdGenerator","v4","onsessioninitialized","onsessionclosed","enableJsonResponse","eventStore","send","close","on","connect","main"],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sources":["../src/utils/stdio-error-logger.ts","../src/utils/banner.ts","../src/constants.ts","../src/utils/constants.ts","../src/builders/builder.ts","../src/jira/schema-utils.ts","../src/utils/obfuscation.ts","../src/utils/asset-path.ts","../src/utils/assets.ts","../src/utils/conversions.ts","../src/builders/prompt-builder.ts","../src/prompts/example-prompt.ts","../src/prompts/interactive-jsdoc.ts","../src/prompts/contants.ts","../src/prompts/jsdocs-prompts.ts","../src/prompts/code/design-patterns/builder.ts","../src/prompts/index.ts","../src/builders/tool-builder.ts","../src/tools/example-tool.ts","../src/tools/file-summarizer/index.ts","../src/version.ts","../src/utils/environment.ts","../src/modules/jira/jira-environment.ts","../src/modules/jira/error-normalizer.ts","../src/modules/jira/tools/issue-delete.ts","../src/modules/jira/tools/issue-read.ts","../src/modules/jira/adf/pipeline/convertMedia.ts","../src/modules/jira/adf/pipeline/textRuns.ts","../src/modules/jira/adf/pipeline/directive-utils.ts","../src/modules/jira/adf/pipeline/convertInline.ts","../src/modules/jira/adf/pipeline/textify.ts","../src/modules/jira/adf/pipeline/convertBlock.ts","../src/modules/jira/adf/pipeline/convertList.ts","../src/modules/jira/adf/pipeline/languageMap.ts","../src/modules/jira/adf/pipeline/convertTable.ts","../src/modules/jira/adf/markdownToAdf.ts","../src/modules/jira/adf/pipeline/convertRoot.ts","../src/modules/jira/adf/pipeline/normalizeDoc.ts","../src/modules/jira/schemas/issue-transition-input.ts","../src/modules/jira/tools/issue-transition.ts","../src/modules/jira/tools/issue-update.ts","../src/modules/jira/schemas/update-issue-input.ts","../src/modules/jira/tools/assign.ts","../src/modules/jira/schemas/assign-issue-input.ts","../src/modules/jira/tools/unassign.ts","../src/modules/jira/tools/comment-add.ts","../src/modules/jira/schemas/add-comment-input.ts","../src/modules/jira/tools/comment-list.ts","../src/modules/jira/schemas/list-comments-input.ts","../src/modules/jira/tools/link-create.ts","../src/modules/jira/schemas/create-link-input.ts","../src/modules/jira/tools/attach.ts","../src/modules/jira/schemas/attach-issue-input.ts","../src/modules/jira/tools/attachment-list.ts","../src/modules/jira/tools/attachment-delete.ts","../src/modules/jira/tools/worklog-add.ts","../src/modules/jira/schemas/add-worklog-input.ts","../src/modules/jira/register-utils.ts","../src/modules/jira/makeJiraClient.ts","../src/tools/index.ts","../src/tools/server-info.ts","../src/builders/resource-builder.ts","../src/agent/registrations.ts","../src/mcp-server.ts","../src/utils/initialization.ts","../src/utils/utils.ts","../src/cli-module.ts","../src/bin/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["StdioErrorLogger","MiniLogger","log","level","msg","error","meta","confLvl","this","config","NumericLogLevels","stdioErrorLoggerFactory","context","_args","loggerName","name","ctor","constructor","resolveContextName","colors","ReasoningLevel","EffortLevel","Cost","Paths","AssetCategory","Builder","Model","_log","Logging","for","arg","super","logFor","extra","sessionId","requestId","authInfo","length","clientId","toString","setDescription","value","description","getDescription","setName","getName","setTitle","title","__decorate","required","prototype","UsableBuilder","reasoning","NONE","effort","cost","FREE","setReasoning","setEffort","setCost","findUnderlyingZodObject","s","cur","def","_def","typeName","schema","innerType","undefined","ensureZodObject","defLike","shape","type","normalizedShape","key","Object","entries","isZodSchema","z","any","object","Error","extractShape","MAGIC","Buffer","from","findAssetsDir","startDir","current","libAssets","path","join","fs","existsSync","srcAssets","plainAssets","parent","dirname","resolveAssetsDir","explicit","process","env","DECAF_ASSET_DIR","MCP_ASSET_DIR","ASSET_DIR","entry","argv","fromEntry","roots","cwd","INIT_CWD","filter","Boolean","root","found","AssetReader","LoggedClass","basePath","listAssets","folder","assetDir","readdirSync","listPrompts","PROMPT","getAsset","format","categories","readFile","target","useEnc","input","subarray","equals","keyMaterial","ENCRYPTION_KEY","offset","salt","iv","tag","ciphertext","crypto","scryptSync","deriveKey","decipher","createDecipheriv","setAuthTag","plaintext","concat","update","final","zlib","gunzipSync","decryptObfuscatedPayload","readFileSync","err","code","direct","fallback","getAllAssets","category","reduce","acc","fileName","extWithDot","extname","basename","replace","toPromptDef","normalizeLevel","lvl","BASIC","ADVANCED","HIGH","MEDIUM","LOW","InternalError","toLevel","toLowerCase","getPrompt","text","toSnakeCase","JSON","parse","e","SerializationError","getAllPrompts","texts","prompt","injectable","PromptBuilder","setCb","cb","setArgsSchema","argsSchema","builder","patchPrompt","placeholders","replacements","missing","Array","isArray","keys","p","hasOwnProperty","call","ValidationError","verbose","stringify","debug","filteredReplacements","sf","build","server","errs","hasErrors","argsShape","registerPrompt","async","args","assign","_meta","usage","result","Promise","resolve","inject","ZodObject","prop","NamedPromptBuilder","setCategory","promptCategory","addPrefix","prefixes","push","addSuffix","suffixes","promptDef","assets","fromObject","toIgnoreProps","Set","Metadata","properties","k","includes","forEach","add","map","argSchema","flat","el","string","describe","parsePlaceholders","messages","role","content","list","String","minlength","ExamplePrompt","message","optional","structuredContent","gist","InteractiveJsDocPrompt","PromptCategories","namedPromptBuilder","extraPrefix","extraSuffix","pb","DOCS","JsDocPrompts","className","Prompts","toPascalCase","ToolBuilder","setAnnotations","annotations","setInputSchema","inputSchema","setOutputSchema","outputSchema","readOnlyHint","destructiveHint","idempotentHint","openWorldHint","inputShape","outputShape","registerTool","warn","status","filePath","summary","VERSION","registerLibrary","dotenv","__dirname","DefaultMcpEnvironment","mcpId","version","websiteUrl","repositoryUrl","license","workingDir","contacts","url","tags","metadata","icons","src","mimeType","sizes","jira","host","JIRA__HOST","email","JIRA__EMAIL","apiKey","JIRA__API_KEY","JIRA__APIKEY","projectKey","JIRA__PROJECT_KEY","issueType","JIRA__ISSUE_TYPE","parentIssue","JIRA__PARENT_ISSUE","LogLevel","Environment","LoggedEnvironment","accumulate","normalizeEnvConfig","trim","createJiraEnvDescriptors","sensitive","formatDescriptor","descriptor","state","maskValue","qualifier","setConfig","MissingJiraEnvironmentError","descriptors","requiredMissing","d","describeJiraEnvironment","captureStackTrace","normalizeJiraError","details","raw","statusCandidate","statusCode","response","httpStatus","Number","body","data","collector","errorMessages","errorMessage","errorCollection","errors","chunk","values","val","collectMessages","fallbackMessage","issueId","min","deleteSubtasks","boolean","default","JiraIssueDelete","runTool","client","parsed","transport","issues","issue","deleteFn","delete","deleteIssue","success","expand","fields","array","JiraIssueRead","payload","issueIdOrKey","get","attachmentInlineOrMedia","linkNode","linkText","opts","m","match","token","ref","resolveAttachment","node","attrs","layout","id","collection","parseTextRuns","enableAtMentions","enableEmojiShortcodes","i","out","mentionRe","emojiRe","next","minMatch","findNext","slice","index","kind","full","groups","prefix","handle","resolved","resolveMention","shortName","resolveEmoji","nodes","n","last","marks","coalesceText","re","start","lastIndex","exec","source","a","b","extractDirectiveLabel","first","children","c","normalizePanelType","v","normalizeStatusColor","convertInline","child","href","inlineText","attachment","enableSmartCards","isNakedUrl","color","attributes","extractDirectiveText","emojiNode","wrapMark","mark","pieces","test","sn","startsWith","textify","convertBlock","isContainerDirective","panelType","innerBlocks","convertPanelDirective","clampInt","depth","paragraphNode","only","convertMediaFromParagraph","listNode","enableTaskLists","some","li","checked","items","idx","blocks","localId","convertTaskList","ordered","listItem","convertList","lang","enableMermaid","js","javascript","jsx","ts","typescript","tsx","py","python","rb","ruby","sh","bash","zsh","shell","yml","yaml","json","toml","xml","html","css","scss","sql","go","rust","java","cpp","cs","csharp","php","kotlin","swift","md","markdown","graphql","gql","dockerfile","makefile","ini","languageMap","normalizeCodeLanguage","language","tableNode","row","rowIndex","cell","convertTable","convertStatusDirective","convertPanelDirectiveLeaf","unknown","unknownNodeStrategy","t","max","x","isFinite","Math","trunc","DEFAULTS","markdownToAdf","options","processor","unified","use","remarkParse","remarkGfm","remarkDirective","tree","transformed","runSync","cleanNodes","doc","liftBlockCards","normalizeDoc","convertRoot","nextChildren","transitionId","union","number","record","set","remove","comment","JiraIssueTransition","transitionPayload","transition","edit","notifyUsers","issueTemplateId","overrideScreenSecurity","overrideEditableFlag","JiraIssueUpdate","assignee","accountId","accountType","JiraAssignIssue","JiraUnassignIssue","visibility","enum","JiraCommentAdd","addComment","maxResults","orderBy","JiraCommentList","getComments","link","relationship","inwardIssue","outwardIssue","JiraLinkCreate","linkPayload","file","JiraAttachIssue","fileBuffer","addAttachment","JiraAttachmentList","getAttachments","attachmentId","JiraAttachmentDelete","deleteAttachment","timeSpent","author","startingOn","artifact","JiraWorklogAdd","worklog","started","addWorklog","toolConfigs","registerJiraTools","jiraClient","missingEnvError","Version3Client","mod","require","authEmail","authToken","ensureJiraCredentials","authentication","basic","apiToken","makeJiraClient","registrations","tool","info","registerTools","promptNames","sort","registerServerInfoTool","ResourceBuilder","setUriOtTemplate","uriOrTemplate","uriOrTemplateArg","ResourceTemplate","UriTemplate","readCb","uri","resource","ASSETS_DIR","TEMPLATES_DIR","PROMPTS_DIR","MCP_STORE","WeakMap","McpServer","mcp","load","templateFiles","endsWith","resourceBuilder","pathname","contents","promptFiles","promptContent","promptBuilder","registerAgentAssets","boot","transportType","logger","nodeModulesDir","candidate","statSync","isDirectory","slogans","scopeDir","pkgs","pkg","depPath","slogansPath","isFile","floor","random","getSlogan","banner","split","maxLength","line","padStart","logFn","bind","style","printBanner","setFactory","normalizedIcons","serverInfo","MCP","instructions","capabilities","logging","tools","prompts","writeMcp","onerror","StdioServerTransport","StreamableHTTPServerTransport","sessionIdGenerator","v4","onsessioninitialized","onsessionclosed","enableJsonResponse","eventStore","send","close","on","connect","mcpServer","Command","command","option","action","adf","chunks","stdin","readStdin","stdout","write","mainCmd","addCommand"],"mappings":"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"}
package/package.json CHANGED
@@ -85,7 +85,9 @@
85
85
  "devDependencies": {
86
86
  "@decaf-ts/utils": "latest",
87
87
  "@types/jest": "^30.0.0",
88
- "@types/js-yaml": "^4.0.5"
88
+ "@types/js-yaml": "^4.0.5",
89
+ "dotenv": "^17.3.1",
90
+ "dotenv-expand": "^12.0.3"
89
91
  },
90
92
  "dependencies": {
91
93
  "@decaf-ts/cli": "latest",
@@ -101,7 +103,11 @@
101
103
  "jira.js": "^5.2.2",
102
104
  "js-yaml": "^4.1.1",
103
105
  "mistreevous": "^4.3.1",
106
+ "remark-directive": "^4.0.0",
107
+ "remark-gfm": "^4.0.1",
108
+ "remark-parse": "^11.0.0",
104
109
  "ts-morph": "^27.0.2",
110
+ "unified": "^11.0.5",
105
111
  "uuid": "^13.0.0"
106
112
  },
107
113
  "overrides": {
@@ -109,5 +115,5 @@
109
115
  "test-exclude": "7.0.1"
110
116
  },
111
117
  "license": "AGPL-3.0",
112
- "version": "1.0.10"
118
+ "version": "1.2.0"
113
119
  }