@j0hanz/prompt-tuner-mcp-server 1.0.4 → 1.0.5

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 (146) hide show
  1. package/AGENTS.md +21 -24
  2. package/README.md +5 -43
  3. package/dist/config/constants.d.ts +0 -1
  4. package/dist/config/constants.d.ts.map +1 -1
  5. package/dist/config/constants.js +0 -1
  6. package/dist/config/constants.js.map +1 -1
  7. package/dist/config/instructions.d.ts +1 -1
  8. package/dist/config/instructions.d.ts.map +1 -1
  9. package/dist/config/instructions.js +21 -43
  10. package/dist/config/instructions.js.map +1 -1
  11. package/dist/config/types.d.ts +0 -23
  12. package/dist/config/types.d.ts.map +1 -1
  13. package/dist/config/types.js +0 -7
  14. package/dist/config/types.js.map +1 -1
  15. package/dist/config/typos.d.ts.map +1 -1
  16. package/dist/config/typos.js +1 -4
  17. package/dist/config/typos.js.map +1 -1
  18. package/dist/index.js +78 -9
  19. package/dist/index.js.map +1 -1
  20. package/dist/lib/cache.d.ts +0 -1
  21. package/dist/lib/cache.d.ts.map +1 -1
  22. package/dist/lib/cache.js +0 -4
  23. package/dist/lib/cache.js.map +1 -1
  24. package/dist/lib/errors.d.ts +2 -3
  25. package/dist/lib/errors.d.ts.map +1 -1
  26. package/dist/lib/errors.js +36 -7
  27. package/dist/lib/errors.js.map +1 -1
  28. package/dist/lib/llm-providers.d.ts.map +1 -1
  29. package/dist/lib/llm-providers.js +3 -5
  30. package/dist/lib/llm-providers.js.map +1 -1
  31. package/dist/lib/llm-runtime.d.ts +1 -1
  32. package/dist/lib/llm-runtime.d.ts.map +1 -1
  33. package/dist/lib/llm-runtime.js +8 -6
  34. package/dist/lib/llm-runtime.js.map +1 -1
  35. package/dist/lib/prompt-analysis/scoring.d.ts.map +1 -1
  36. package/dist/lib/prompt-analysis/scoring.js +7 -3
  37. package/dist/lib/prompt-analysis/scoring.js.map +1 -1
  38. package/dist/lib/prompt-analysis.d.ts +0 -2
  39. package/dist/lib/prompt-analysis.d.ts.map +1 -1
  40. package/dist/lib/prompt-analysis.js +0 -2
  41. package/dist/lib/prompt-analysis.js.map +1 -1
  42. package/dist/lib/prompt-policy.d.ts +5 -0
  43. package/dist/lib/prompt-policy.d.ts.map +1 -0
  44. package/dist/lib/prompt-policy.js +16 -0
  45. package/dist/lib/prompt-policy.js.map +1 -0
  46. package/dist/lib/retry.d.ts +1 -1
  47. package/dist/lib/retry.d.ts.map +1 -1
  48. package/dist/lib/retry.js +25 -8
  49. package/dist/lib/retry.js.map +1 -1
  50. package/dist/lib/technique-templates.d.ts.map +1 -1
  51. package/dist/lib/technique-templates.js +147 -120
  52. package/dist/lib/technique-templates.js.map +1 -1
  53. package/dist/lib/validation.d.ts +0 -1
  54. package/dist/lib/validation.d.ts.map +1 -1
  55. package/dist/lib/validation.js +0 -7
  56. package/dist/lib/validation.js.map +1 -1
  57. package/dist/prompts/quick-workflows.d.ts.map +1 -1
  58. package/dist/prompts/quick-workflows.js +117 -212
  59. package/dist/prompts/quick-workflows.js.map +1 -1
  60. package/dist/resources/index.d.ts +1 -2
  61. package/dist/resources/index.d.ts.map +1 -1
  62. package/dist/resources/index.js +2 -3
  63. package/dist/resources/index.js.map +1 -1
  64. package/dist/resources/prompt-templates.d.ts.map +1 -1
  65. package/dist/resources/prompt-templates.js +3 -12
  66. package/dist/resources/prompt-templates.js.map +1 -1
  67. package/dist/schemas/index.d.ts +3 -3
  68. package/dist/schemas/index.d.ts.map +1 -1
  69. package/dist/schemas/index.js +3 -3
  70. package/dist/schemas/index.js.map +1 -1
  71. package/dist/schemas/inputs.d.ts +4 -27
  72. package/dist/schemas/inputs.d.ts.map +1 -1
  73. package/dist/schemas/inputs.js +0 -17
  74. package/dist/schemas/inputs.js.map +1 -1
  75. package/dist/schemas/llm-responses.d.ts +16 -121
  76. package/dist/schemas/llm-responses.d.ts.map +1 -1
  77. package/dist/schemas/llm-responses.js +5 -16
  78. package/dist/schemas/llm-responses.js.map +1 -1
  79. package/dist/schemas/outputs.d.ts +31 -280
  80. package/dist/schemas/outputs.d.ts.map +1 -1
  81. package/dist/schemas/outputs.js +3 -61
  82. package/dist/schemas/outputs.js.map +1 -1
  83. package/dist/server.d.ts.map +1 -1
  84. package/dist/server.js +0 -3
  85. package/dist/server.js.map +1 -1
  86. package/dist/tools/analyze-prompt.d.ts.map +1 -1
  87. package/dist/tools/analyze-prompt.js +57 -48
  88. package/dist/tools/analyze-prompt.js.map +1 -1
  89. package/dist/tools/compare-prompts.d.ts.map +1 -1
  90. package/dist/tools/compare-prompts.js +48 -31
  91. package/dist/tools/compare-prompts.js.map +1 -1
  92. package/dist/tools/detect-format.d.ts.map +1 -1
  93. package/dist/tools/detect-format.js +49 -39
  94. package/dist/tools/detect-format.js.map +1 -1
  95. package/dist/tools/index.d.ts.map +1 -1
  96. package/dist/tools/index.js +0 -4
  97. package/dist/tools/index.js.map +1 -1
  98. package/dist/tools/optimize-prompt.d.ts.map +1 -1
  99. package/dist/tools/optimize-prompt.js +41 -29
  100. package/dist/tools/optimize-prompt.js.map +1 -1
  101. package/dist/tools/refine-prompt.d.ts.map +1 -1
  102. package/dist/tools/refine-prompt.js +3 -3
  103. package/dist/tools/refine-prompt.js.map +1 -1
  104. package/dist/tools/validate-prompt.d.ts.map +1 -1
  105. package/dist/tools/validate-prompt.js +50 -36
  106. package/dist/tools/validate-prompt.js.map +1 -1
  107. package/package.json +1 -3
  108. package/src/config/constants.ts +0 -1
  109. package/src/config/instructions.ts +21 -43
  110. package/src/config/types.ts +0 -34
  111. package/src/index.ts +92 -10
  112. package/src/lib/cache.ts +0 -5
  113. package/src/lib/errors.ts +55 -7
  114. package/src/lib/llm-providers.ts +18 -15
  115. package/src/lib/llm-runtime.ts +28 -21
  116. package/src/lib/prompt-analysis.ts +0 -5
  117. package/src/lib/prompt-policy.ts +18 -0
  118. package/src/lib/retry.ts +36 -8
  119. package/src/lib/technique-templates.ts +147 -120
  120. package/src/lib/validation.ts +0 -8
  121. package/src/prompts/quick-workflows.ts +119 -224
  122. package/src/resources/index.ts +2 -6
  123. package/src/schemas/index.ts +0 -5
  124. package/src/schemas/inputs.ts +0 -19
  125. package/src/schemas/llm-responses.ts +6 -20
  126. package/src/schemas/outputs.ts +3 -66
  127. package/src/server.ts +0 -3
  128. package/src/tools/analyze-prompt.ts +64 -50
  129. package/src/tools/index.ts +0 -4
  130. package/src/tools/optimize-prompt.ts +45 -30
  131. package/src/tools/refine-prompt.ts +9 -5
  132. package/src/tools/validate-prompt.ts +61 -38
  133. package/src/types/regexp-escape.d.ts +3 -0
  134. package/tests/quick-workflows.test.ts +1 -34
  135. package/tsconfig.json +1 -1
  136. package/src/config/typos.ts +0 -121
  137. package/src/lib/prompt-analysis/scoring.ts +0 -235
  138. package/src/lib/prompt-analysis/suggestions.ts +0 -115
  139. package/src/resources/prompt-templates/analysis.ts +0 -156
  140. package/src/resources/prompt-templates/coding.ts +0 -302
  141. package/src/resources/prompt-templates/data-extraction.ts +0 -122
  142. package/src/resources/prompt-templates/system-prompts.ts +0 -81
  143. package/src/resources/prompt-templates/writing.ts +0 -176
  144. package/src/resources/prompt-templates.ts +0 -203
  145. package/src/tools/compare-prompts.ts +0 -301
  146. package/src/tools/detect-format.ts +0 -172
package/AGENTS.md CHANGED
@@ -2,41 +2,38 @@
2
2
 
3
3
  ## Project Structure & Module Organization
4
4
 
5
- - `src/` contains the TypeScript source: server setup, tools, resources, prompts, schemas, and shared utilities.
6
- - `tests/` holds Vitest specs (for example `tests/server.test.ts`).
7
- - `docs/` contains documentation assets (logo, guides). `CONFIGURATION.md` documents environment variables.
8
- - `dist/` is the compiled output (do not edit by hand).
5
+ - `src/` contains TypeScript source. Key entry points: `src/index.ts` and `src/server.ts`. Feature areas include `src/tools/`, `src/resources/`, `src/prompts/`, `src/schemas/`, `src/config/`, and `src/lib/`.
6
+ - `tests/` holds Vitest suites (for example, `tests/integration.test.ts`).
7
+ - `docs/` contains documentation and assets such as `docs/logo.png`.
8
+ - `dist/` is generated build output; do not edit directly.
9
9
 
10
10
  ## Build, Test, and Development Commands
11
11
 
12
- Run commands from the repo root.
13
-
14
- - `npm install` installs dependencies.
15
- - `npm run build` compiles TypeScript and sets the executable bit on `dist/index.js`.
16
- - `npm run dev` runs the server in watch mode; `npm run dev:http` enables HTTP mode.
17
- - `npm start` runs the built server; `npm run start:http` enables HTTP mode.
18
- - `npm test` runs Vitest once; `npm run test:watch` watches tests.
19
- - `npm run lint` runs ESLint; `npm run format` runs Prettier; `npm run type-check` runs `tsc --noEmit`.
20
- - `npm run inspector` starts the MCP Inspector (use `inspector:http` for HTTP).
12
+ - `npm run build`: compile TypeScript to `dist/` and mark `dist/index.js` executable.
13
+ - `npm run dev` / `npm run dev:http`: run the server from `src/` in watch mode (stdio or HTTP).
14
+ - `npm run start` / `npm run start:http`: run the compiled server from `dist/`.
15
+ - `npm run test`: run Vitest once; `npm run test:watch` for watch mode.
16
+ - `npm run lint`: ESLint checks; `npm run format`: Prettier formatting; `npm run type-check`: TypeScript without emit.
17
+ - `npm run inspector`: launch the MCP inspector against `dist/`.
21
18
 
22
19
  ## Coding Style & Naming Conventions
23
20
 
24
- - TypeScript ESM (`"type": "module"`). Prefer explicit return types and `type` imports.
25
- - Prettier enforces 2-space indentation, single quotes, semicolons, 80-char width, LF, and sorted imports.
26
- - ESLint is strict: no `any`, no unused imports, prefer `const`, and avoid floating promises.
27
- - Naming: `camelCase` for variables/functions, `PascalCase` for types/classes, `UPPER_CASE` for constants. Leading `_` is allowed for intentionally unused params.
21
+ - Formatting is enforced by Prettier: 2-space indentation, single quotes, semicolons, 80-char print width.
22
+ - ESLint with typescript-eslint is strict: no unused imports, no `any`, prefer type-only imports, explicit return types.
23
+ - Naming: camelCase for variables/functions, PascalCase for types/classes, UPPER_CASE for constants. Leading underscores are allowed for intentionally unused args.
28
24
 
29
25
  ## Testing Guidelines
30
26
 
31
- - Framework: Vitest (node environment). Test files live in `tests/**/*.test.ts`.
32
- - Add or update tests when changing tools, scoring logic, or server behavior.
27
+ - Tests use Vitest and live in `tests/` using `*.test.ts` filenames.
28
+ - Integration tests require an API key (`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, or `GOOGLE_API_KEY`) and a built `dist/` (`npm run build`). If no key is set, integration tests are skipped.
29
+ - Keep unit tests fast; add integration coverage for new tools/resources when behavior depends on the running server.
33
30
 
34
31
  ## Commit & Pull Request Guidelines
35
32
 
36
- - Commit subjects in this repo are short, imperative, and sentence case (for example "Refactor cache handling"). Release commits may be version-only (for example "1.0.2").
37
- - PRs should include a clear description, reasoning, and the tests run. Update `README.md` or `CONFIGURATION.md` when changing tools, prompts, or environment variables.
33
+ - Commit subjects in this repo are short, descriptive, imperative sentences (for example, "Refactor cache configuration..."). Version bumps may be bare tags like `1.0.4`.
34
+ - Before opening a PR, run `npm run lint`, `npm run type-check`, and `npm run test`.
35
+ - PRs should describe the change, include test commands run, and update `README.md` or `CONFIGURATION.md` when behavior or env vars change.
38
36
 
39
- ## Security & Configuration Tips
37
+ ## Security & Configuration
40
38
 
41
- - Configure via environment variables only; do not commit secrets. Set exactly one provider API key for the chosen `LLM_PROVIDER`.
42
- - Be cautious with `INCLUDE_ERROR_CONTEXT=true` since it can include prompt excerpts in errors.
39
+ - Runtime configuration is via environment variables documented in `CONFIGURATION.md`. Never commit API keys; prefer MCP client config or a local `.env` file.
package/README.md CHANGED
@@ -15,17 +15,13 @@ An MCP server that helps you write better prompts for AI assistants. It analyzes
15
15
  | 🔧 **Refine Prompts** | Fix grammar, improve clarity, and apply optimization techniques like Chain-of-Thought. |
16
16
  | 📊 **Analyze Quality** | Score prompts (0-100) on clarity, specificity, completeness, structure, and effectiveness. |
17
17
  | 🚀 **Optimize** | Apply multiple techniques sequentially for comprehensive improvement. |
18
- | 🔍 **Detect Format** | Identify if a prompt targets Claude XML, GPT Markdown, or JSON. |
19
- | ⚖️ **Compare** | A/B test two prompt versions with side-by-side scoring and diffs. |
20
18
  | ✅ **Validate** | Pre-flight checks for anti-patterns, token limits, and security risks. |
21
- | 📚 **Templates** | Access a library of best-practice prompt templates for coding, writing, and analysis. |
22
19
 
23
20
  ## 🎯 When to Use
24
21
 
25
22
  - **Before sending a prompt**: Use `refine_prompt` to fix typos and vague language.
26
23
  - **When results are poor**: Use `analyze_prompt` to understand why the AI is struggling.
27
24
  - **For complex tasks**: Use `optimize_prompt` with "comprehensive" techniques.
28
- - **For A/B testing**: Use `compare_prompts` to choose the best version.
29
25
  - **For security**: Use `validate_prompt` to check for injection risks.
30
26
 
31
27
  ## 🚀 Quick Start
@@ -132,29 +128,6 @@ Apply multiple optimization techniques using AI (e.g., `["basic", "roleBased", "
132
128
 
133
129
  **Returns:** Optimized prompt, before/after scores, and list of improvements.
134
130
 
135
- ### `detect_format`
136
-
137
- Identify if prompt targets Claude XML, GPT Markdown, or JSON schema using AI analysis. Returns confidence score and recommendations.
138
-
139
- | Parameter | Type | Required | Default | Description |
140
- | :-------- | :----- | :------- | :------ | :---------------------- |
141
- | `prompt` | string | ✅ | - | Prompt text to analyze. |
142
-
143
- **Returns:** Detected format (`claude`, `gpt`, `json`, `auto`), confidence score, and recommendation.
144
-
145
- ### `compare_prompts`
146
-
147
- Compare two prompt versions using AI analysis. Returns scores, winner, improvements/regressions, and recommendations.
148
-
149
- | Parameter | Type | Required | Default | Description |
150
- | :-------- | :----- | :------- | :----------- | :------------------------ |
151
- | `promptA` | string | ✅ | - | First prompt to compare. |
152
- | `promptB` | string | ✅ | - | Second prompt to compare. |
153
- | `labelA` | string | ❌ | `"Prompt A"` | Label for first prompt. |
154
- | `labelB` | string | ❌ | `"Prompt B"` | Label for second prompt. |
155
-
156
- **Returns:** Comparison report with scores, winner, and detailed analysis.
157
-
158
131
  ### `validate_prompt`
159
132
 
160
133
  Pre-flight validation using AI: checks issues, estimates tokens, detects security risks. Returns isValid boolean and categorized issues.
@@ -167,24 +140,13 @@ Pre-flight validation using AI: checks issues, estimates tokens, detects securit
167
140
 
168
141
  **Returns:** Validation status, token estimate, and list of issues (errors, warnings, info).
169
142
 
170
- ## 📚 Resources
171
-
172
- | URI Pattern | Description |
173
- | :------------------------------ | :---------------------------------------------------------------------------------------------------------------- |
174
- | `templates://catalog` | List of all available prompt templates by category. |
175
- | `templates://{category}/{name}` | Get a specific prompt template (e.g., `templates://coding/code-review`, `templates://coding/mcp-ts-boilerplate`). |
176
-
177
143
  ## 💬 Prompts
178
144
 
179
- | Name | Description |
180
- | :--------------------- | :-------------------------------------------------------------------- |
181
- | `quick-optimize` | Fast prompt improvement with grammar and clarity fixes. |
182
- | `deep-optimize` | Comprehensive optimization with all techniques applied. |
183
- | `analyze` | Score prompt quality and get improvement suggestions. |
184
- | `review` | Check prompt against prompting best practices. |
185
- | `iterative-refine` | Identify top 3 weaknesses and fix them iteratively. |
186
- | `recommend-techniques` | Recommend best optimization techniques based on prompt and task type. |
187
- | `scan-antipatterns` | Detect common prompt anti-patterns and provide corrections. |
145
+ | Name | Description |
146
+ | :--------------- | :------------------------------------------------------ |
147
+ | `quick-optimize` | Fast prompt improvement with grammar and clarity fixes. |
148
+ | `deep-optimize` | Comprehensive optimization with all techniques applied. |
149
+ | `analyze` | Score prompt quality and get improvement suggestions. |
188
150
 
189
151
  ## 🔌 Client Configuration
190
152
 
@@ -1,6 +1,5 @@
1
1
  export { PATTERNS } from './patterns.js';
2
2
  export { SERVER_INSTRUCTIONS } from './instructions.js';
3
- export { TYPO_PATTERNS } from './typos.js';
4
3
  export declare const SCORING_WEIGHTS: {
5
4
  readonly clarity: 0.25;
6
5
  readonly specificity: 0.25;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAC7C,eAAO,MAAM,cAAc,QAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AACvD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,eAAO,MAAM,cAAc,QAAqB,CAAC;AACjD,eAAO,MAAM,cAAc,QAAqB,CAAC;AAEjD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,eAAO,MAAM,uBAAuB,SAAU,CAAC;AAC/C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,eAAO,MAAM,cAAc;;;;CAIjB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAC7C,eAAO,MAAM,cAAc,QAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AACvD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,eAAO,MAAM,cAAc,QAAqB,CAAC;AACjD,eAAO,MAAM,cAAc,QAAqB,CAAC;AAEjD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,eAAO,MAAM,uBAAuB,SAAU,CAAC;AAC/C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,eAAO,MAAM,cAAc;;;;CAIjB,CAAC"}
@@ -2,7 +2,6 @@ import packageJson from '../../package.json' with { type: 'json' };
2
2
  import { config } from './env.js';
3
3
  export { PATTERNS } from './patterns.js';
4
4
  export { SERVER_INSTRUCTIONS } from './instructions.js';
5
- export { TYPO_PATTERNS } from './typos.js';
6
5
  export const SCORING_WEIGHTS = {
7
6
  clarity: 0.25,
8
7
  specificity: 0.25,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,IAAI;CACX,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAC7C,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC;AAElD,yCAAyC;AACzC,MAAM,EACJ,iBAAiB,EAAE,qBAAqB,EACxC,cAAc,EAAE,kBAAkB,EAClC,cAAc,EAAE,kBAAkB,GACnC,GAAG,MAAM,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAEnC,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAEjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,4BAA4B;IACvC,MAAM,EAAE,sBAAsB;CACtB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,IAAI;CACX,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAC7C,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC;AAElD,yCAAyC;AACzC,MAAM,EACJ,iBAAiB,EAAE,qBAAqB,EACxC,cAAc,EAAE,kBAAkB,EAClC,cAAc,EAAE,kBAAkB,GACnC,GAAG,MAAM,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAEnC,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAEjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,4BAA4B;IACvC,MAAM,EAAE,sBAAsB;CACtB,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const SERVER_INSTRUCTIONS = "# PromptTuner MCP\n\nA professional prompt engineering toolkit that helps you write better prompts for AI assistants using modern best practices from Anthropic, OpenAI, and industry leaders.\n\n## Quick Start\n\n| Goal | Tool | When to Use |\n|------|------|-------------|\n| Quick fix | `refine_prompt` | Fix typos, improve clarity |\n| Deep optimization | `optimize_prompt` | Apply multiple techniques |\n| Quality check | `analyze_prompt` | Get scores and suggestions |\n| Format detection | `detect_format` | Check Claude/GPT compatibility |\n\n## Tools\n\n### refine_prompt\nImproves a prompt using a single optimization technique.\n\n**Techniques:**\n- `basic` (default) - Fix grammar, spelling, and clarity\n- `chainOfThought` - Add step-by-step reasoning guidance\n- `fewShot` - Add input/output examples\n- `roleBased` - Add expert persona/role context\n- `structured` - Add XML (Claude) or Markdown (GPT) structure\n- `comprehensive` - Apply all techniques intelligently\n\n**Example:**\n```json\n{ \"prompt\": \"help me code\", \"technique\": \"roleBased\", \"targetFormat\": \"claude\" }\n```\n\n### analyze_prompt\nScores your prompt (0-100) across five dimensions:\n- **Clarity** - Is the intent clear and unambiguous?\n- **Specificity** - Are requirements well-defined?\n- **Completeness** - Is context and output format specified?\n- **Structure** - Is it well-organized?\n- **Effectiveness** - Will it produce good results?\n\nReturns actionable suggestions for improvement.\n\n### optimize_prompt\nChains multiple techniques for maximum improvement. Shows before/after scores and a diff of changes.\n\n**Example:**\n```json\n{ \"prompt\": \"write code\", \"techniques\": [\"basic\", \"roleBased\", \"structured\"] }\n```\n\n### detect_format\nIdentifies the target format (Claude XML, GPT Markdown, or JSON) with confidence score and recommendation.\n\n## Target Formats\n\n| Format | Best For | Structure |\n|--------|----------|-----------|\n| `claude` | Anthropic Claude | XML tags: `<context>`, `<task>`, `<requirements>` |\n| `gpt` | OpenAI GPT | Markdown: `## Context`, `## Task`, `**bold**` |\n| `json` | Structured output | JSON schema specification |\n| `auto` | Auto-detect | Analyzes prompt to determine best format |\n\n## Technique Selection Guide\n\n| Task Type | Recommended Techniques |\n|-----------|----------------------|\n| Simple query | `basic` only |\n| Code task | `roleBased` + `structured` |\n| Complex analysis | `roleBased` + `chainOfThought` |\n| Data extraction | `structured` + `fewShot` |\n| Creative writing | `roleBased` + `fewShot` |\n| Maximum quality | `comprehensive` |\n\n## Resources\n- `templates://catalog` - Browse all template categories\n- `templates://{category}/{name}` - Get specific templates\n\n**Categories:** coding, writing, analysis, system-prompts, data-extraction\n\n## Workflow Prompts\n- `quick-optimize` - Single-step optimization\n- `full-analysis` - Comprehensive review with scoring\n- `convert-format` - Transform to target format\n- `best-practices-review` - Educational feedback\n- `iterative-improve` - Multi-technique enhancement\n\n## Modern Best Practices (2024-2025)\n\n### Core Principles\n1. **Be Specific** - Replace vague words (\"something\", \"stuff\", \"etc.\") with concrete terms\n2. **Add Role Context** - \"You are a senior engineer with expertise in...\" activates domain knowledge\n3. **Use Structure** - XML tags for Claude, Markdown for GPT (never mix)\n4. **Show Examples** - 2-3 diverse examples demonstrate desired format\n5. **Add Constraints** - Use ALWAYS/NEVER/MUST patterns for clear boundaries\n6. **Specify Output** - Define exactly what format and structure you expect\n7. **Enable Reasoning** - Use task-specific CoT triggers for complex tasks\n\n### Advanced Techniques (from OpenAI & Anthropic Research)\n8. **Place Instructions Twice** - For long prompts, put key instructions at BOTH beginning AND end\n9. **Use Semantic Tags** - Claude: `<context>`, `<task>`, `<requirements>`, `<output_format>`\n10. **Be Literal** - Modern models follow instructions more literally; be precise\n11. **Add Quality Checks** - Include verification steps for important outputs\n12. **Avoid Generic Roles** - \"Helpful assistant\" provides no benefit; use specific expert roles\n\n### Prompt Architecture (Recommended Order)\n```\n1. Role/Identity (if applicable)\n2. Context/Background\n3. Task/Objective\n4. Instructions/Steps\n5. Requirements/Constraints (ALWAYS/NEVER)\n6. Output Format\n7. Examples (if helpful)\n8. Final Reminder (reiterate critical instruction)\n```";
1
+ export declare const SERVER_INSTRUCTIONS = "# PromptTuner MCP\n\nA lean prompt optimization toolkit for refining, analyzing, and validating prompts.\n\n## Quick Start\n\n| Goal | Tool | When to Use |\n|------|------|-------------|\n| Quick fix | `refine_prompt` | Fix typos and clarity issues |\n| Deep optimization | `optimize_prompt` | Apply multiple techniques |\n| Quality check | `analyze_prompt` | Get scores and suggestions |\n| Safety check | `validate_prompt` | Find issues and estimate tokens |\n\n## Tools\n\n### refine_prompt\nImproves a prompt using a single optimization technique.\n\n**Techniques:**\n- `basic` (default) - Fix grammar, spelling, and clarity\n- `chainOfThought` - Add step-by-step reasoning guidance\n- `fewShot` - Add input/output examples\n- `roleBased` - Add expert persona/role context\n- `structured` - Add XML (Claude) or Markdown (GPT) structure\n- `comprehensive` - Apply all techniques intelligently\n\n**Example:**\n```json\n{ \"prompt\": \"help me code\", \"technique\": \"roleBased\", \"targetFormat\": \"claude\" }\n```\n\n### analyze_prompt\nScores your prompt (0-100) across clarity, specificity, completeness, structure, and effectiveness.\n\n### optimize_prompt\nChains multiple techniques for maximum improvement and returns before/after scores plus improvements.\n\n**Example:**\n```json\n{ \"prompt\": \"write code\", \"techniques\": [\"basic\", \"roleBased\", \"structured\"] }\n```\n\n### validate_prompt\nChecks for prompt issues, estimates token usage, and optionally detects injection risks.\n\n## Target Formats\n\n| Format | Best For | Structure |\n|--------|----------|-----------|\n| `claude` | Anthropic Claude | XML tags: `<context>`, `<task>`, `<requirements>` |\n| `gpt` | OpenAI GPT | Markdown: `## Context`, `## Task`, `**bold**` |\n| `json` | Structured output | JSON schema specification |\n| `auto` | Auto-detect | Uses prompt heuristics to pick format |\n\n## Technique Selection Guide\n\n| Task Type | Recommended Techniques |\n|-----------|----------------------|\n| Simple query | `basic` only |\n| Code task | `roleBased` + `structured` |\n| Complex analysis | `roleBased` + `chainOfThought` |\n| Data extraction | `structured` + `fewShot` |\n| Creative writing | `roleBased` + `fewShot` |\n| Maximum quality | `comprehensive` |\n\n## Workflow Prompts\n- `quick-optimize` - Single-step refinement\n- `deep-optimize` - Comprehensive optimization\n- `analyze` - Quality analysis\n\n## Modern Best Practices (2024-2025)\n\n1. **Be Specific** - Replace vague words with concrete terms\n2. **Add Role Context** - Use specific expert personas\n3. **Use Structure** - XML for Claude, Markdown for GPT (never mix)\n4. **Show Examples** - 2-3 diverse examples for pattern tasks\n5. **Add Constraints** - Clear ALWAYS/NEVER rules\n6. **Specify Output** - Define the expected format explicitly\n7. **Enable Reasoning** - Add task-specific reasoning triggers when needed\n8. **Place Key Instructions Twice** - Start and end for long prompts\n\n## Prompt Architecture (Recommended Order)\n```\n1. Role/Identity (if applicable)\n2. Context/Background\n3. Task/Objective\n4. Instructions/Steps\n5. Requirements/Constraints (ALWAYS/NEVER)\n6. Output Format\n7. Examples (if helpful)\n8. Final Reminder (reiterate critical instruction)\n```";
2
2
  //# sourceMappingURL=instructions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/config/instructions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,k+IAiHzB,CAAC"}
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/config/instructions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,0rGA2FzB,CAAC"}
@@ -1,15 +1,15 @@
1
1
  export const SERVER_INSTRUCTIONS = `# PromptTuner MCP
2
2
 
3
- A professional prompt engineering toolkit that helps you write better prompts for AI assistants using modern best practices from Anthropic, OpenAI, and industry leaders.
3
+ A lean prompt optimization toolkit for refining, analyzing, and validating prompts.
4
4
 
5
5
  ## Quick Start
6
6
 
7
7
  | Goal | Tool | When to Use |
8
8
  |------|------|-------------|
9
- | Quick fix | \`refine_prompt\` | Fix typos, improve clarity |
9
+ | Quick fix | \`refine_prompt\` | Fix typos and clarity issues |
10
10
  | Deep optimization | \`optimize_prompt\` | Apply multiple techniques |
11
11
  | Quality check | \`analyze_prompt\` | Get scores and suggestions |
12
- | Format detection | \`detect_format\` | Check Claude/GPT compatibility |
12
+ | Safety check | \`validate_prompt\` | Find issues and estimate tokens |
13
13
 
14
14
  ## Tools
15
15
 
@@ -30,25 +30,18 @@ Improves a prompt using a single optimization technique.
30
30
  \`\`\`
31
31
 
32
32
  ### analyze_prompt
33
- Scores your prompt (0-100) across five dimensions:
34
- - **Clarity** - Is the intent clear and unambiguous?
35
- - **Specificity** - Are requirements well-defined?
36
- - **Completeness** - Is context and output format specified?
37
- - **Structure** - Is it well-organized?
38
- - **Effectiveness** - Will it produce good results?
39
-
40
- Returns actionable suggestions for improvement.
33
+ Scores your prompt (0-100) across clarity, specificity, completeness, structure, and effectiveness.
41
34
 
42
35
  ### optimize_prompt
43
- Chains multiple techniques for maximum improvement. Shows before/after scores and a diff of changes.
36
+ Chains multiple techniques for maximum improvement and returns before/after scores plus improvements.
44
37
 
45
38
  **Example:**
46
39
  \`\`\`json
47
40
  { "prompt": "write code", "techniques": ["basic", "roleBased", "structured"] }
48
41
  \`\`\`
49
42
 
50
- ### detect_format
51
- Identifies the target format (Claude XML, GPT Markdown, or JSON) with confidence score and recommendation.
43
+ ### validate_prompt
44
+ Checks for prompt issues, estimates token usage, and optionally detects injection risks.
52
45
 
53
46
  ## Target Formats
54
47
 
@@ -57,7 +50,7 @@ Identifies the target format (Claude XML, GPT Markdown, or JSON) with confidence
57
50
  | \`claude\` | Anthropic Claude | XML tags: \`<context>\`, \`<task>\`, \`<requirements>\` |
58
51
  | \`gpt\` | OpenAI GPT | Markdown: \`## Context\`, \`## Task\`, \`**bold**\` |
59
52
  | \`json\` | Structured output | JSON schema specification |
60
- | \`auto\` | Auto-detect | Analyzes prompt to determine best format |
53
+ | \`auto\` | Auto-detect | Uses prompt heuristics to pick format |
61
54
 
62
55
  ## Technique Selection Guide
63
56
 
@@ -70,38 +63,23 @@ Identifies the target format (Claude XML, GPT Markdown, or JSON) with confidence
70
63
  | Creative writing | \`roleBased\` + \`fewShot\` |
71
64
  | Maximum quality | \`comprehensive\` |
72
65
 
73
- ## Resources
74
- - \`templates://catalog\` - Browse all template categories
75
- - \`templates://{category}/{name}\` - Get specific templates
76
-
77
- **Categories:** coding, writing, analysis, system-prompts, data-extraction
78
-
79
66
  ## Workflow Prompts
80
- - \`quick-optimize\` - Single-step optimization
81
- - \`full-analysis\` - Comprehensive review with scoring
82
- - \`convert-format\` - Transform to target format
83
- - \`best-practices-review\` - Educational feedback
84
- - \`iterative-improve\` - Multi-technique enhancement
67
+ - \`quick-optimize\` - Single-step refinement
68
+ - \`deep-optimize\` - Comprehensive optimization
69
+ - \`analyze\` - Quality analysis
85
70
 
86
71
  ## Modern Best Practices (2024-2025)
87
72
 
88
- ### Core Principles
89
- 1. **Be Specific** - Replace vague words ("something", "stuff", "etc.") with concrete terms
90
- 2. **Add Role Context** - "You are a senior engineer with expertise in..." activates domain knowledge
91
- 3. **Use Structure** - XML tags for Claude, Markdown for GPT (never mix)
92
- 4. **Show Examples** - 2-3 diverse examples demonstrate desired format
93
- 5. **Add Constraints** - Use ALWAYS/NEVER/MUST patterns for clear boundaries
94
- 6. **Specify Output** - Define exactly what format and structure you expect
95
- 7. **Enable Reasoning** - Use task-specific CoT triggers for complex tasks
96
-
97
- ### Advanced Techniques (from OpenAI & Anthropic Research)
98
- 8. **Place Instructions Twice** - For long prompts, put key instructions at BOTH beginning AND end
99
- 9. **Use Semantic Tags** - Claude: \`<context>\`, \`<task>\`, \`<requirements>\`, \`<output_format>\`
100
- 10. **Be Literal** - Modern models follow instructions more literally; be precise
101
- 11. **Add Quality Checks** - Include verification steps for important outputs
102
- 12. **Avoid Generic Roles** - "Helpful assistant" provides no benefit; use specific expert roles
103
-
104
- ### Prompt Architecture (Recommended Order)
73
+ 1. **Be Specific** - Replace vague words with concrete terms
74
+ 2. **Add Role Context** - Use specific expert personas
75
+ 3. **Use Structure** - XML for Claude, Markdown for GPT (never mix)
76
+ 4. **Show Examples** - 2-3 diverse examples for pattern tasks
77
+ 5. **Add Constraints** - Clear ALWAYS/NEVER rules
78
+ 6. **Specify Output** - Define the expected format explicitly
79
+ 7. **Enable Reasoning** - Add task-specific reasoning triggers when needed
80
+ 8. **Place Key Instructions Twice** - Start and end for long prompts
81
+
82
+ ## Prompt Architecture (Recommended Order)
105
83
  \`\`\`
106
84
  1. Role/Identity (if applicable)
107
85
  2. Context/Background
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/config/instructions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiH5B,CAAC"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/config/instructions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2F5B,CAAC"}
@@ -1,10 +1,5 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  export type ToolRegistrar = (server: McpServer) => void;
3
- export interface RefinedPrompt {
4
- original: string;
5
- refined: string;
6
- corrections: string[];
7
- }
8
3
  export interface ErrorResponse {
9
4
  [key: string]: unknown;
10
5
  content: {
@@ -63,10 +58,6 @@ export interface SuggestionContext {
63
58
  score: PromptScore;
64
59
  }
65
60
  export type SuggestionGenerator = (ctx: SuggestionContext) => string | null;
66
- export interface ScoreRule {
67
- condition: boolean;
68
- bonus: number;
69
- }
70
61
  export interface PatternCache {
71
62
  hasClaudePatterns: boolean;
72
63
  hasXmlStructure: boolean;
@@ -142,7 +133,6 @@ export declare const ErrorCode: {
142
133
  readonly E_TIMEOUT: "E_TIMEOUT";
143
134
  };
144
135
  export type ErrorCodeType = (typeof ErrorCode)[keyof typeof ErrorCode];
145
- export declare const JSON_RPC_ERROR_CODES: Record<ErrorCodeType, number>;
146
136
  export interface OptimizeScore {
147
137
  clarity: number;
148
138
  specificity: number;
@@ -175,14 +165,6 @@ export interface AnalysisResponse {
175
165
  characteristics: AnalysisCharacteristics;
176
166
  suggestions: string[];
177
167
  }
178
- export interface ComparisonResponse {
179
- winner: 'A' | 'B' | 'tie';
180
- scoreA: OptimizeScore;
181
- scoreB: OptimizeScore;
182
- improvements: string[];
183
- regressions: string[];
184
- recommendation: string;
185
- }
186
168
  export interface ValidationIssue {
187
169
  type: 'error' | 'warning' | 'info';
188
170
  message: string;
@@ -193,9 +175,4 @@ export interface ValidationResponse {
193
175
  tokenEstimate: number;
194
176
  issues: ValidationIssue[];
195
177
  }
196
- export interface FormatDetectionResponse {
197
- detectedFormat: 'claude' | 'gpt' | 'json' | 'auto';
198
- confidence: number;
199
- recommendation: string;
200
- }
201
178
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
@@ -19,11 +19,4 @@ export const ErrorCode = {
19
19
  E_LLM_AUTH_FAILED: 'E_LLM_AUTH_FAILED',
20
20
  E_TIMEOUT: 'E_TIMEOUT',
21
21
  };
22
- export const JSON_RPC_ERROR_CODES = {
23
- E_INVALID_INPUT: -32602, // Invalid params
24
- E_LLM_FAILED: -32603, // Internal error
25
- E_LLM_RATE_LIMITED: -32603, // Internal error (rate limit)
26
- E_LLM_AUTH_FAILED: -32603, // Internal error (auth)
27
- E_TIMEOUT: -32603, // Internal error (timeout)
28
- };
29
22
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAsCA,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,OAAO;IACP,gBAAgB;IAChB,SAAS;IACT,WAAW;IACX,YAAY;IACZ,eAAe;CAC0C,CAAC;AAI5D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,QAAQ;IACR,KAAK;IACL,MAAM;CACmD,CAAC;AAmH5D,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE,iBAAiB;IAClC,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,iBAAiB,EAAE,mBAAmB;IACtC,SAAS,EAAE,WAAW;CACd,CAAC;AAIX,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE,eAAe,EAAE,CAAC,KAAK,EAAE,iBAAiB;IAC1C,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB;IACvC,kBAAkB,EAAE,CAAC,KAAK,EAAE,8BAA8B;IAC1D,iBAAiB,EAAE,CAAC,KAAK,EAAE,wBAAwB;IACnD,SAAS,EAAE,CAAC,KAAK,EAAE,2BAA2B;CACtC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAgCA,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,OAAO;IACP,gBAAgB;IAChB,SAAS;IACT,WAAW;IACX,YAAY;IACZ,eAAe;CAC0C,CAAC;AAI5D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,QAAQ;IACR,KAAK;IACL,MAAM;CACmD,CAAC;AA8G5D,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE,iBAAiB;IAClC,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,iBAAiB,EAAE,mBAAmB;IACtC,SAAS,EAAE,WAAW;CACd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"typos.d.ts","sourceRoot":"","sources":["../../src/config/typos.ts"],"names":[],"mappings":"AAgFA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAwBA;AAOD,eAAO,MAAM,aAAa;;;;GAIvB,CAAC"}
1
+ {"version":3,"file":"typos.d.ts","sourceRoot":"","sources":["../../src/config/typos.ts"],"names":[],"mappings":"AAgFA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAwBA;AAGD,eAAO,MAAM,aAAa;;;;GAIvB,CAAC"}
@@ -94,13 +94,10 @@ export function fixTyposBatch(text) {
94
94
  return { fixed, corrections };
95
95
  }
96
96
  // Export precompiled typo patterns for tests and faster per-pattern matching.
97
- function escapeForRegex(s) {
98
- return s.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\$&');
99
- }
100
97
  export const TYPO_PATTERNS = TYPO_WORDS.map((typo) => ({
101
98
  typo,
102
99
  correction: TYPO_MAP.get(typo) ?? '',
103
- regex: new RegExp(`\\b(${escapeForRegex(typo)})\\b`, 'gi'),
100
+ regex: new RegExp(`\\b(${RegExp.escape(typo)})\\b`, 'gi'),
104
101
  }));
105
102
  // Legacy per-pattern export removed (dead code). Use `fixTyposBatch()` instead for typo corrections.
106
103
  //# sourceMappingURL=typos.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typos.js","sourceRoot":"","sources":["../../src/config/typos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typos.js","sourceRoot":"","sources":["../../src/config/typos.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,19 +1,88 @@
1
1
  #!/usr/bin/env node
2
- import closeWithGrace from 'close-with-grace';
3
2
  import { logger } from './lib/errors.js';
4
3
  import { createServer, startServer, validateApiKeys } from './server.js';
4
+ const SHUTDOWN_DELAY_MS = 500;
5
+ const SIGNALS = [
6
+ 'SIGHUP',
7
+ 'SIGINT',
8
+ 'SIGQUIT',
9
+ 'SIGILL',
10
+ 'SIGTRAP',
11
+ 'SIGABRT',
12
+ 'SIGBUS',
13
+ 'SIGFPE',
14
+ 'SIGSEGV',
15
+ 'SIGUSR2',
16
+ 'SIGTERM',
17
+ ];
18
+ const ERROR_EVENTS = ['uncaughtException', 'unhandledRejection'];
19
+ const EXIT_EVENTS = ['beforeExit'];
20
+ let shuttingDown = false;
21
+ let server = null;
22
+ async function beginShutdown(reason) {
23
+ if (shuttingDown) {
24
+ if (reason.signal) {
25
+ logger.error({ signal: reason.signal }, `Second ${reason.signal}, exiting`);
26
+ }
27
+ else if (reason.err) {
28
+ logger.error({ err: reason.err }, 'Second error, exiting');
29
+ }
30
+ else {
31
+ logger.error('Second shutdown event, exiting');
32
+ }
33
+ process.exit(1);
34
+ return;
35
+ }
36
+ shuttingDown = true;
37
+ if (reason.err) {
38
+ logger.error({ err: reason.err }, 'Server closing due to error');
39
+ }
40
+ if (reason.signal) {
41
+ logger.info({ signal: reason.signal }, 'Server shutting down gracefully');
42
+ }
43
+ if (reason.event) {
44
+ logger.info({ event: reason.event }, 'Server shutting down gracefully');
45
+ }
46
+ let exitCode = reason.err ? 1 : 0;
47
+ const timeout = setTimeout(() => {
48
+ logger.error({ delayMs: SHUTDOWN_DELAY_MS }, 'Forced shutdown due to timeout');
49
+ process.exit(1);
50
+ }, SHUTDOWN_DELAY_MS);
51
+ try {
52
+ if (server?.isConnected()) {
53
+ await server.close();
54
+ }
55
+ }
56
+ catch (error) {
57
+ exitCode = 1;
58
+ logger.error({ err: error }, 'Error during shutdown');
59
+ }
60
+ finally {
61
+ clearTimeout(timeout);
62
+ process.exit(exitCode);
63
+ }
64
+ }
65
+ for (const signal of SIGNALS) {
66
+ process.once(signal, (received) => {
67
+ void beginShutdown({ signal: received });
68
+ });
69
+ }
70
+ for (const event of ERROR_EVENTS) {
71
+ process.once(event, (err) => {
72
+ void beginShutdown({ err });
73
+ });
74
+ }
75
+ for (const event of EXIT_EVENTS) {
76
+ process.once(event, () => {
77
+ void beginShutdown({ event });
78
+ });
79
+ }
5
80
  async function main() {
6
81
  await validateApiKeys();
7
- const server = createServer();
82
+ server = createServer();
8
83
  await startServer(server);
9
84
  }
10
- closeWithGrace({ delay: 500 }, ({ signal, err }) => {
11
- if (err)
12
- logger.error({ err }, 'Server closing due to error');
13
- logger.info({ signal }, 'Server shutting down gracefully');
14
- });
15
85
  main().catch((error) => {
16
- logger.error({ err: error }, 'Fatal error');
17
- process.exit(1);
86
+ void beginShutdown({ err: error });
18
87
  });
19
88
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzE,KAAK,UAAU,IAAI;IACjB,MAAM,eAAe,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,cAAc,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE;IACjD,IAAI,GAAG;QAAE,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,6BAA6B,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,iCAAiC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
1
  export declare function getCachedRefinement(prompt: string, technique: string, format: string): string | null;
2
2
  export declare function setCachedRefinement(prompt: string, technique: string, format: string, refined: string): void;
3
- export declare function clearCache(): void;
4
3
  //# sourceMappingURL=cache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/lib/cache.ts"],"names":[],"mappings":"AA0BA,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAKf;AAGD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,IAAI,CAQN;AAGD,wBAAgB,UAAU,IAAI,IAAI,CAEjC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/lib/cache.ts"],"names":[],"mappings":"AA0BA,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAKf;AAGD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,IAAI,CAQN"}
package/dist/lib/cache.js CHANGED
@@ -27,8 +27,4 @@ export function setCachedRefinement(prompt, technique, format, refined) {
27
27
  refinementCache.set(key, refined);
28
28
  debugCache('setCachedRefinement: key=%s size=%d', key.slice(0, 8), refinementCache.size);
29
29
  }
30
- // Clears the refinement cache
31
- export function clearCache() {
32
- refinementCache.clear();
33
- }
34
30
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/lib/cache.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC;AAChD,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AACxD,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAiB;IACnD,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,kBAAkB;CACxB,CAAC,CAAC;AAEH,uCAAuC;AACvC,SAAS,gBAAgB,CACvB,MAAc,EACd,SAAiB,EACjB,MAAc;IAEd,MAAM,IAAI,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;IAChD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,SAAiB,EACjB,MAAc;IAEd,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAChD,UAAU,CAAC,oCAAoC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,SAAiB,EACjB,MAAc,EACd,OAAe;IAEf,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,CACR,qCAAqC,EACrC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EACf,eAAe,CAAC,IAAI,CACrB,CAAC;AACJ,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,UAAU;IACxB,eAAe,CAAC,KAAK,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/lib/cache.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC;AAChD,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AACxD,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAiB;IACnD,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,kBAAkB;CACxB,CAAC,CAAC;AAEH,uCAAuC;AACvC,SAAS,gBAAgB,CACvB,MAAc,EACd,SAAiB,EACjB,MAAc;IAEd,MAAM,IAAI,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;IAChD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,SAAiB,EACjB,MAAc;IAEd,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAChD,UAAU,CAAC,oCAAoC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,SAAiB,EACjB,MAAc,EACd,OAAe;IAEf,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,CACR,qCAAqC,EACrC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EACf,eAAe,CAAC,IAAI,CACrB,CAAC;AACJ,CAAC"}