@dedesfr/prompter 0.8.23 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/README.md +105 -77
  3. package/dist/cli/index.js +25 -1
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/commands/init.d.ts +1 -7
  6. package/dist/commands/init.d.ts.map +1 -1
  7. package/dist/commands/init.js +60 -299
  8. package/dist/commands/init.js.map +1 -1
  9. package/dist/commands/login.d.ts +4 -0
  10. package/dist/commands/login.d.ts.map +1 -0
  11. package/dist/commands/login.js +56 -0
  12. package/dist/commands/login.js.map +1 -0
  13. package/dist/commands/logout.d.ts +4 -0
  14. package/dist/commands/logout.d.ts.map +1 -0
  15. package/dist/commands/logout.js +14 -0
  16. package/dist/commands/logout.js.map +1 -0
  17. package/dist/commands/update.d.ts.map +1 -1
  18. package/dist/commands/update.js +31 -41
  19. package/dist/commands/update.js.map +1 -1
  20. package/dist/commands/whoami.d.ts +4 -0
  21. package/dist/commands/whoami.d.ts.map +1 -0
  22. package/dist/commands/whoami.js +42 -0
  23. package/dist/commands/whoami.js.map +1 -0
  24. package/dist/core/auth-store.d.ts +10 -0
  25. package/dist/core/auth-store.d.ts.map +1 -0
  26. package/dist/core/auth-store.js +39 -0
  27. package/dist/core/auth-store.js.map +1 -0
  28. package/dist/core/configurators/slash/antigravity.d.ts +2 -5
  29. package/dist/core/configurators/slash/antigravity.d.ts.map +1 -1
  30. package/dist/core/configurators/slash/antigravity.js +2 -57
  31. package/dist/core/configurators/slash/antigravity.js.map +1 -1
  32. package/dist/core/configurators/slash/base.d.ts +6 -18
  33. package/dist/core/configurators/slash/base.d.ts.map +1 -1
  34. package/dist/core/configurators/slash/base.js +8 -77
  35. package/dist/core/configurators/slash/base.js.map +1 -1
  36. package/dist/core/configurators/slash/claude.d.ts +2 -5
  37. package/dist/core/configurators/slash/claude.d.ts.map +1 -1
  38. package/dist/core/configurators/slash/claude.js +2 -57
  39. package/dist/core/configurators/slash/claude.js.map +1 -1
  40. package/dist/core/configurators/slash/codex.d.ts +2 -5
  41. package/dist/core/configurators/slash/codex.d.ts.map +1 -1
  42. package/dist/core/configurators/slash/codex.js +2 -57
  43. package/dist/core/configurators/slash/codex.js.map +1 -1
  44. package/dist/core/configurators/slash/droid.d.ts +2 -5
  45. package/dist/core/configurators/slash/droid.d.ts.map +1 -1
  46. package/dist/core/configurators/slash/droid.js +2 -32
  47. package/dist/core/configurators/slash/droid.js.map +1 -1
  48. package/dist/core/configurators/slash/forge.d.ts +2 -5
  49. package/dist/core/configurators/slash/forge.d.ts.map +1 -1
  50. package/dist/core/configurators/slash/forge.js +2 -32
  51. package/dist/core/configurators/slash/forge.js.map +1 -1
  52. package/dist/core/configurators/slash/github-copilot.d.ts +2 -7
  53. package/dist/core/configurators/slash/github-copilot.d.ts.map +1 -1
  54. package/dist/core/configurators/slash/github-copilot.js +2 -96
  55. package/dist/core/configurators/slash/github-copilot.js.map +1 -1
  56. package/dist/core/configurators/slash/index.d.ts +1 -1
  57. package/dist/core/configurators/slash/index.d.ts.map +1 -1
  58. package/dist/core/configurators/slash/index.js +1 -1
  59. package/dist/core/configurators/slash/index.js.map +1 -1
  60. package/dist/core/configurators/slash/kilocode.d.ts +2 -5
  61. package/dist/core/configurators/slash/kilocode.d.ts.map +1 -1
  62. package/dist/core/configurators/slash/kilocode.js +2 -57
  63. package/dist/core/configurators/slash/kilocode.js.map +1 -1
  64. package/dist/core/configurators/slash/opencode.d.ts +2 -5
  65. package/dist/core/configurators/slash/opencode.d.ts.map +1 -1
  66. package/dist/core/configurators/slash/opencode.js +2 -57
  67. package/dist/core/configurators/slash/opencode.js.map +1 -1
  68. package/dist/core/configurators/slash/registry.d.ts +4 -4
  69. package/dist/core/configurators/slash/registry.d.ts.map +1 -1
  70. package/dist/core/configurators/slash/registry.js.map +1 -1
  71. package/dist/core/registry.d.ts +18 -0
  72. package/dist/core/registry.d.ts.map +1 -0
  73. package/dist/core/registry.js +94 -0
  74. package/dist/core/registry.js.map +1 -0
  75. package/dist/core/templates/index.d.ts +0 -1
  76. package/dist/core/templates/index.d.ts.map +1 -1
  77. package/dist/core/templates/index.js +0 -1
  78. package/dist/core/templates/index.js.map +1 -1
  79. package/package.json +7 -1
  80. package/AGENTS.md +0 -123
  81. package/CLAUDE.md +0 -17
  82. package/build.js +0 -20
  83. package/convex-setup.md +0 -403
  84. package/dist/core/templates/slash-command-templates.d.ts +0 -7
  85. package/dist/core/templates/slash-command-templates.d.ts.map +0 -1
  86. package/dist/core/templates/slash-command-templates.js +0 -1041
  87. package/dist/core/templates/slash-command-templates.js.map +0 -1
  88. package/prompt/ai-humanizer.md +0 -45
  89. package/prompt/api-contract-generator.md +0 -234
  90. package/prompt/apply.md +0 -17
  91. package/prompt/archive.md +0 -21
  92. package/prompt/design-system.md +0 -210
  93. package/prompt/document-explainer.md +0 -149
  94. package/prompt/epic-generator.md +0 -198
  95. package/prompt/epic-single.md +0 -47
  96. package/prompt/erd-generator.md +0 -130
  97. package/prompt/fsd-generator.md +0 -157
  98. package/prompt/prd-agent-generator.md +0 -147
  99. package/prompt/prd-generator.md +0 -195
  100. package/prompt/product-brief.md +0 -289
  101. package/prompt/proposal.md +0 -22
  102. package/prompt/qa-test-scenario.md +0 -133
  103. package/prompt/skill-creator.md +0 -350
  104. package/prompt/story-generator.md +0 -278
  105. package/prompt/story-single.md +0 -70
  106. package/prompt/tdd-generator.md +0 -294
  107. package/prompt/tdd-lite-generator.md +0 -224
  108. package/prompt/wireframe-generator.md +0 -219
  109. package/skills/ai-context-generator/SKILL.md +0 -54
  110. package/skills/ai-context-generator/references/AGENTS.template.md +0 -83
  111. package/skills/ai-context-generator/references/CLAUDE.template.md +0 -39
  112. package/skills/ai-context-generator/references/behavioral-guidelines.md +0 -71
  113. package/skills/ai-context-generator/references/discovery-checklist.md +0 -40
  114. package/skills/ai-context-generator/references/examples/AGENTS.good.md +0 -103
  115. package/skills/ai-context-generator/references/extraction-checklist.md +0 -23
  116. package/skills/ai-context-generator/references/overlays/laravel.md +0 -44
  117. package/skills/cerebro/SKILL.md +0 -187
  118. package/skills/cerebro/references/agents.md +0 -213
  119. package/skills/code-review/SKILL.md +0 -373
  120. package/skills/code-review/assets/report-template-agent.md +0 -212
  121. package/skills/code-review/assets/report-template-compact.md +0 -81
  122. package/skills/code-review/assets/report-template-full.md +0 -264
  123. package/skills/code-review/assets/report-template-human.md +0 -168
  124. package/skills/code-review/references/universal-patterns.md +0 -495
  125. package/skills/design-md/README.md +0 -34
  126. package/skills/design-md/SKILL.md +0 -172
  127. package/skills/design-md/examples/DESIGN.md +0 -154
  128. package/skills/design-system-generator/SKILL.md +0 -324
  129. package/skills/design-system-generator/assets/design-system-template.md +0 -348
  130. package/skills/design-system-generator/references/extraction-patterns.md +0 -321
  131. package/skills/doc-builder/SKILL.md +0 -115
  132. package/skills/doc-builder/references/ui-patterns.md +0 -394
  133. package/skills/document-translator/SKILL.md +0 -58
  134. package/skills/enhance-prompt/README.md +0 -34
  135. package/skills/enhance-prompt/SKILL.md +0 -204
  136. package/skills/enhance-prompt/references/KEYWORDS.md +0 -114
  137. package/skills/feature-planner/SKILL.md +0 -305
  138. package/skills/feature-planner/assets/implementation-plan-template.md +0 -85
  139. package/skills/frontend-design/LICENSE.txt +0 -177
  140. package/skills/frontend-design/SKILL.md +0 -42
  141. package/skills/gamma-builder/SKILL.md +0 -134
  142. package/skills/laravel-code-review/SKILL.md +0 -383
  143. package/skills/laravel-code-review/assets/report-template-agent.md +0 -195
  144. package/skills/laravel-code-review/assets/report-template-compact.md +0 -79
  145. package/skills/laravel-code-review/assets/report-template-full.md +0 -253
  146. package/skills/laravel-code-review/assets/report-template-human.md +0 -159
  147. package/skills/laravel-code-review/references/laravel-patterns.md +0 -571
  148. package/skills/laravel-code-review/references/php84-features.md +0 -442
  149. package/skills/mcp-builder/LICENSE.txt +0 -202
  150. package/skills/mcp-builder/SKILL.md +0 -236
  151. package/skills/mcp-builder/reference/evaluation.md +0 -602
  152. package/skills/mcp-builder/reference/mcp_best_practices.md +0 -249
  153. package/skills/mcp-builder/reference/node_mcp_server.md +0 -970
  154. package/skills/mcp-builder/reference/python_mcp_server.md +0 -719
  155. package/skills/mcp-builder/scripts/connections.py +0 -151
  156. package/skills/mcp-builder/scripts/evaluation.py +0 -373
  157. package/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  158. package/skills/mcp-builder/scripts/requirements.txt +0 -2
  159. package/skills/meeting-notes/SKILL.md +0 -159
  160. package/skills/meeting-notes/evals/evals.json +0 -23
  161. package/skills/project-orchestrator/SKILL.md +0 -487
  162. package/skills/project-orchestrator/assets/caddy-vps-setup.md +0 -180
  163. package/skills/project-orchestrator/assets/plan-summary-template.md +0 -159
  164. package/skills/prompter-specs/SKILL.md +0 -115
  165. package/skills/prompter-workflow/SKILL.md +0 -166
  166. package/skills/prompter-workflow/evals/evals.json +0 -89
  167. package/skills/sph-generator/SKILL.md +0 -488
  168. package/skills/ui-ux-pro/SKILL.md +0 -199
  169. package/skills/ui-ux-pro/assets/design-spec-template.md +0 -173
  170. package/skills/ui-ux-pro/references/component-patterns.md +0 -255
  171. package/skills/ui-ux-pro/references/design-principles.md +0 -167
  172. package/src/cli/index.ts +0 -223
  173. package/src/commands/archive.ts +0 -302
  174. package/src/commands/change.ts +0 -292
  175. package/src/commands/config.ts +0 -233
  176. package/src/commands/guide.ts +0 -50
  177. package/src/commands/init.ts +0 -899
  178. package/src/commands/list.ts +0 -194
  179. package/src/commands/show.ts +0 -138
  180. package/src/commands/spec.ts +0 -251
  181. package/src/commands/update.ts +0 -156
  182. package/src/commands/upgrade.ts +0 -30
  183. package/src/commands/validate.ts +0 -326
  184. package/src/core/artifact-graph/graph.ts +0 -167
  185. package/src/core/artifact-graph/index.ts +0 -44
  186. package/src/core/artifact-graph/instruction-loader.ts +0 -302
  187. package/src/core/artifact-graph/resolver.ts +0 -226
  188. package/src/core/artifact-graph/schema.ts +0 -124
  189. package/src/core/artifact-graph/state.ts +0 -64
  190. package/src/core/artifact-graph/types.ts +0 -65
  191. package/src/core/completions/command-registry.ts +0 -382
  192. package/src/core/completions/completion-provider.ts +0 -128
  193. package/src/core/completions/generators/bash-generator.ts +0 -191
  194. package/src/core/completions/generators/fish-generator.ts +0 -188
  195. package/src/core/completions/generators/powershell-generator.ts +0 -223
  196. package/src/core/completions/generators/zsh-generator.ts +0 -281
  197. package/src/core/completions/templates/bash-templates.ts +0 -24
  198. package/src/core/completions/templates/fish-templates.ts +0 -40
  199. package/src/core/completions/templates/powershell-templates.ts +0 -25
  200. package/src/core/completions/templates/zsh-templates.ts +0 -36
  201. package/src/core/completions/types.ts +0 -90
  202. package/src/core/config-schema.ts +0 -230
  203. package/src/core/config.ts +0 -181
  204. package/src/core/configurators/slash/antigravity.ts +0 -70
  205. package/src/core/configurators/slash/base.ts +0 -203
  206. package/src/core/configurators/slash/claude.ts +0 -70
  207. package/src/core/configurators/slash/codex.ts +0 -70
  208. package/src/core/configurators/slash/droid.ts +0 -44
  209. package/src/core/configurators/slash/forge.ts +0 -44
  210. package/src/core/configurators/slash/github-copilot.ts +0 -114
  211. package/src/core/configurators/slash/index.ts +0 -10
  212. package/src/core/configurators/slash/kilocode.ts +0 -70
  213. package/src/core/configurators/slash/opencode.ts +0 -70
  214. package/src/core/configurators/slash/registry.ts +0 -51
  215. package/src/core/converters/json-converter.ts +0 -62
  216. package/src/core/global-config.ts +0 -136
  217. package/src/core/parsers/change-parser.ts +0 -234
  218. package/src/core/parsers/markdown-parser.ts +0 -237
  219. package/src/core/parsers/requirement-blocks.ts +0 -234
  220. package/src/core/prompt-templates.ts +0 -3504
  221. package/src/core/schemas/base.schema.ts +0 -20
  222. package/src/core/schemas/change.schema.ts +0 -42
  223. package/src/core/schemas/index.ts +0 -20
  224. package/src/core/schemas/spec.schema.ts +0 -17
  225. package/src/core/skill-discovery.ts +0 -68
  226. package/src/core/specs-apply.ts +0 -483
  227. package/src/core/styles/palette.ts +0 -8
  228. package/src/core/templates/agents-template.ts +0 -459
  229. package/src/core/templates/claude-template.ts +0 -2
  230. package/src/core/templates/index.ts +0 -4
  231. package/src/core/templates/project-template.ts +0 -32
  232. package/src/core/templates/slash-command-templates.ts +0 -1068
  233. package/src/core/validation/constants.ts +0 -48
  234. package/src/core/validation/types.ts +0 -19
  235. package/src/core/validation/validator.ts +0 -449
  236. package/src/core/view.ts +0 -219
  237. package/src/index.ts +0 -1
  238. package/src/utils/change-metadata.ts +0 -171
  239. package/src/utils/change-utils.ts +0 -131
  240. package/src/utils/file-system.ts +0 -252
  241. package/src/utils/index.ts +0 -12
  242. package/src/utils/interactive.ts +0 -29
  243. package/src/utils/item-discovery.ts +0 -66
  244. package/src/utils/match.ts +0 -26
  245. package/src/utils/shell-detection.ts +0 -62
  246. package/src/utils/task-progress.ts +0 -43
  247. package/tsconfig.json +0 -28
@@ -1,249 +0,0 @@
1
- # MCP Server Best Practices
2
-
3
- ## Quick Reference
4
-
5
- ### Server Naming
6
- - **Python**: `{service}_mcp` (e.g., `slack_mcp`)
7
- - **Node/TypeScript**: `{service}-mcp-server` (e.g., `slack-mcp-server`)
8
-
9
- ### Tool Naming
10
- - Use snake_case with service prefix
11
- - Format: `{service}_{action}_{resource}`
12
- - Example: `slack_send_message`, `github_create_issue`
13
-
14
- ### Response Formats
15
- - Support both JSON and Markdown formats
16
- - JSON for programmatic processing
17
- - Markdown for human readability
18
-
19
- ### Pagination
20
- - Always respect `limit` parameter
21
- - Return `has_more`, `next_offset`, `total_count`
22
- - Default to 20-50 items
23
-
24
- ### Transport
25
- - **Streamable HTTP**: For remote servers, multi-client scenarios
26
- - **stdio**: For local integrations, command-line tools
27
- - Avoid SSE (deprecated in favor of streamable HTTP)
28
-
29
- ---
30
-
31
- ## Server Naming Conventions
32
-
33
- Follow these standardized naming patterns:
34
-
35
- **Python**: Use format `{service}_mcp` (lowercase with underscores)
36
- - Examples: `slack_mcp`, `github_mcp`, `jira_mcp`
37
-
38
- **Node/TypeScript**: Use format `{service}-mcp-server` (lowercase with hyphens)
39
- - Examples: `slack-mcp-server`, `github-mcp-server`, `jira-mcp-server`
40
-
41
- The name should be general, descriptive of the service being integrated, easy to infer from the task description, and without version numbers.
42
-
43
- ---
44
-
45
- ## Tool Naming and Design
46
-
47
- ### Tool Naming
48
-
49
- 1. **Use snake_case**: `search_users`, `create_project`, `get_channel_info`
50
- 2. **Include service prefix**: Anticipate that your MCP server may be used alongside other MCP servers
51
- - Use `slack_send_message` instead of just `send_message`
52
- - Use `github_create_issue` instead of just `create_issue`
53
- 3. **Be action-oriented**: Start with verbs (get, list, search, create, etc.)
54
- 4. **Be specific**: Avoid generic names that could conflict with other servers
55
-
56
- ### Tool Design
57
-
58
- - Tool descriptions must narrowly and unambiguously describe functionality
59
- - Descriptions must precisely match actual functionality
60
- - Provide tool annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)
61
- - Keep tool operations focused and atomic
62
-
63
- ---
64
-
65
- ## Response Formats
66
-
67
- All tools that return data should support multiple formats:
68
-
69
- ### JSON Format (`response_format="json"`)
70
- - Machine-readable structured data
71
- - Include all available fields and metadata
72
- - Consistent field names and types
73
- - Use for programmatic processing
74
-
75
- ### Markdown Format (`response_format="markdown"`, typically default)
76
- - Human-readable formatted text
77
- - Use headers, lists, and formatting for clarity
78
- - Convert timestamps to human-readable format
79
- - Show display names with IDs in parentheses
80
- - Omit verbose metadata
81
-
82
- ---
83
-
84
- ## Pagination
85
-
86
- For tools that list resources:
87
-
88
- - **Always respect the `limit` parameter**
89
- - **Implement pagination**: Use `offset` or cursor-based pagination
90
- - **Return pagination metadata**: Include `has_more`, `next_offset`/`next_cursor`, `total_count`
91
- - **Never load all results into memory**: Especially important for large datasets
92
- - **Default to reasonable limits**: 20-50 items is typical
93
-
94
- Example pagination response:
95
- ```json
96
- {
97
- "total": 150,
98
- "count": 20,
99
- "offset": 0,
100
- "items": [...],
101
- "has_more": true,
102
- "next_offset": 20
103
- }
104
- ```
105
-
106
- ---
107
-
108
- ## Transport Options
109
-
110
- ### Streamable HTTP
111
-
112
- **Best for**: Remote servers, web services, multi-client scenarios
113
-
114
- **Characteristics**:
115
- - Bidirectional communication over HTTP
116
- - Supports multiple simultaneous clients
117
- - Can be deployed as a web service
118
- - Enables server-to-client notifications
119
-
120
- **Use when**:
121
- - Serving multiple clients simultaneously
122
- - Deploying as a cloud service
123
- - Integration with web applications
124
-
125
- ### stdio
126
-
127
- **Best for**: Local integrations, command-line tools
128
-
129
- **Characteristics**:
130
- - Standard input/output stream communication
131
- - Simple setup, no network configuration needed
132
- - Runs as a subprocess of the client
133
-
134
- **Use when**:
135
- - Building tools for local development environments
136
- - Integrating with desktop applications
137
- - Single-user, single-session scenarios
138
-
139
- **Note**: stdio servers should NOT log to stdout (use stderr for logging)
140
-
141
- ### Transport Selection
142
-
143
- | Criterion | stdio | Streamable HTTP |
144
- |-----------|-------|-----------------|
145
- | **Deployment** | Local | Remote |
146
- | **Clients** | Single | Multiple |
147
- | **Complexity** | Low | Medium |
148
- | **Real-time** | No | Yes |
149
-
150
- ---
151
-
152
- ## Security Best Practices
153
-
154
- ### Authentication and Authorization
155
-
156
- **OAuth 2.1**:
157
- - Use secure OAuth 2.1 with certificates from recognized authorities
158
- - Validate access tokens before processing requests
159
- - Only accept tokens specifically intended for your server
160
-
161
- **API Keys**:
162
- - Store API keys in environment variables, never in code
163
- - Validate keys on server startup
164
- - Provide clear error messages when authentication fails
165
-
166
- ### Input Validation
167
-
168
- - Sanitize file paths to prevent directory traversal
169
- - Validate URLs and external identifiers
170
- - Check parameter sizes and ranges
171
- - Prevent command injection in system calls
172
- - Use schema validation (Pydantic/Zod) for all inputs
173
-
174
- ### Error Handling
175
-
176
- - Don't expose internal errors to clients
177
- - Log security-relevant errors server-side
178
- - Provide helpful but not revealing error messages
179
- - Clean up resources after errors
180
-
181
- ### DNS Rebinding Protection
182
-
183
- For streamable HTTP servers running locally:
184
- - Enable DNS rebinding protection
185
- - Validate the `Origin` header on all incoming connections
186
- - Bind to `127.0.0.1` rather than `0.0.0.0`
187
-
188
- ---
189
-
190
- ## Tool Annotations
191
-
192
- Provide annotations to help clients understand tool behavior:
193
-
194
- | Annotation | Type | Default | Description |
195
- |-----------|------|---------|-------------|
196
- | `readOnlyHint` | boolean | false | Tool does not modify its environment |
197
- | `destructiveHint` | boolean | true | Tool may perform destructive updates |
198
- | `idempotentHint` | boolean | false | Repeated calls with same args have no additional effect |
199
- | `openWorldHint` | boolean | true | Tool interacts with external entities |
200
-
201
- **Important**: Annotations are hints, not security guarantees. Clients should not make security-critical decisions based solely on annotations.
202
-
203
- ---
204
-
205
- ## Error Handling
206
-
207
- - Use standard JSON-RPC error codes
208
- - Report tool errors within result objects (not protocol-level errors)
209
- - Provide helpful, specific error messages with suggested next steps
210
- - Don't expose internal implementation details
211
- - Clean up resources properly on errors
212
-
213
- Example error handling:
214
- ```typescript
215
- try {
216
- const result = performOperation();
217
- return { content: [{ type: "text", text: result }] };
218
- } catch (error) {
219
- return {
220
- isError: true,
221
- content: [{
222
- type: "text",
223
- text: `Error: ${error.message}. Try using filter='active_only' to reduce results.`
224
- }]
225
- };
226
- }
227
- ```
228
-
229
- ---
230
-
231
- ## Testing Requirements
232
-
233
- Comprehensive testing should cover:
234
-
235
- - **Functional testing**: Verify correct execution with valid/invalid inputs
236
- - **Integration testing**: Test interaction with external systems
237
- - **Security testing**: Validate auth, input sanitization, rate limiting
238
- - **Performance testing**: Check behavior under load, timeouts
239
- - **Error handling**: Ensure proper error reporting and cleanup
240
-
241
- ---
242
-
243
- ## Documentation Requirements
244
-
245
- - Provide clear documentation of all tools and capabilities
246
- - Include working examples (at least 3 per major feature)
247
- - Document security considerations
248
- - Specify required permissions and access levels
249
- - Document rate limits and performance characteristics