@promptwheel/mcp 0.6.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 (134) hide show
  1. package/README.md +178 -0
  2. package/dist/advance-helpers.d.ts +27 -0
  3. package/dist/advance-helpers.d.ts.map +1 -0
  4. package/dist/advance-helpers.js +127 -0
  5. package/dist/advance-helpers.js.map +1 -0
  6. package/dist/advance-prompts.d.ts +48 -0
  7. package/dist/advance-prompts.d.ts.map +1 -0
  8. package/dist/advance-prompts.js +420 -0
  9. package/dist/advance-prompts.js.map +1 -0
  10. package/dist/advance.d.ts +30 -0
  11. package/dist/advance.d.ts.map +1 -0
  12. package/dist/advance.js +752 -0
  13. package/dist/advance.js.map +1 -0
  14. package/dist/codebase-index.d.ts +5 -0
  15. package/dist/codebase-index.d.ts.map +1 -0
  16. package/dist/codebase-index.js +5 -0
  17. package/dist/codebase-index.js.map +1 -0
  18. package/dist/dedup-memory.d.ts +30 -0
  19. package/dist/dedup-memory.d.ts.map +1 -0
  20. package/dist/dedup-memory.js +76 -0
  21. package/dist/dedup-memory.js.map +1 -0
  22. package/dist/direct-client.d.ts +57 -0
  23. package/dist/direct-client.d.ts.map +1 -0
  24. package/dist/direct-client.js +92 -0
  25. package/dist/direct-client.js.map +1 -0
  26. package/dist/event-handlers-qa.d.ts +5 -0
  27. package/dist/event-handlers-qa.d.ts.map +1 -0
  28. package/dist/event-handlers-qa.js +186 -0
  29. package/dist/event-handlers-qa.js.map +1 -0
  30. package/dist/event-handlers-scout.d.ts +5 -0
  31. package/dist/event-handlers-scout.d.ts.map +1 -0
  32. package/dist/event-handlers-scout.js +270 -0
  33. package/dist/event-handlers-scout.js.map +1 -0
  34. package/dist/event-handlers-ticket.d.ts +5 -0
  35. package/dist/event-handlers-ticket.d.ts.map +1 -0
  36. package/dist/event-handlers-ticket.js +232 -0
  37. package/dist/event-handlers-ticket.js.map +1 -0
  38. package/dist/event-helpers.d.ts +46 -0
  39. package/dist/event-helpers.d.ts.map +1 -0
  40. package/dist/event-helpers.js +125 -0
  41. package/dist/event-helpers.js.map +1 -0
  42. package/dist/event-processor.d.ts +15 -0
  43. package/dist/event-processor.d.ts.map +1 -0
  44. package/dist/event-processor.js +111 -0
  45. package/dist/event-processor.js.map +1 -0
  46. package/dist/formulas.d.ts +27 -0
  47. package/dist/formulas.d.ts.map +1 -0
  48. package/dist/formulas.js +109 -0
  49. package/dist/formulas.js.map +1 -0
  50. package/dist/guidelines.d.ts +16 -0
  51. package/dist/guidelines.d.ts.map +1 -0
  52. package/dist/guidelines.js +44 -0
  53. package/dist/guidelines.js.map +1 -0
  54. package/dist/index.d.ts +9 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +42 -0
  57. package/dist/index.js.map +1 -0
  58. package/dist/learnings.d.ts +42 -0
  59. package/dist/learnings.d.ts.map +1 -0
  60. package/dist/learnings.js +117 -0
  61. package/dist/learnings.js.map +1 -0
  62. package/dist/project-metadata.d.ts +34 -0
  63. package/dist/project-metadata.d.ts.map +1 -0
  64. package/dist/project-metadata.js +617 -0
  65. package/dist/project-metadata.js.map +1 -0
  66. package/dist/proposals.d.ts +23 -0
  67. package/dist/proposals.d.ts.map +1 -0
  68. package/dist/proposals.js +201 -0
  69. package/dist/proposals.js.map +1 -0
  70. package/dist/qa-stats.d.ts +51 -0
  71. package/dist/qa-stats.d.ts.map +1 -0
  72. package/dist/qa-stats.js +121 -0
  73. package/dist/qa-stats.js.map +1 -0
  74. package/dist/run-manager.d.ts +97 -0
  75. package/dist/run-manager.d.ts.map +1 -0
  76. package/dist/run-manager.js +583 -0
  77. package/dist/run-manager.js.map +1 -0
  78. package/dist/run-state-bridge.d.ts +13 -0
  79. package/dist/run-state-bridge.d.ts.map +1 -0
  80. package/dist/run-state-bridge.js +101 -0
  81. package/dist/run-state-bridge.js.map +1 -0
  82. package/dist/scope-policy.d.ts +83 -0
  83. package/dist/scope-policy.d.ts.map +1 -0
  84. package/dist/scope-policy.js +278 -0
  85. package/dist/scope-policy.js.map +1 -0
  86. package/dist/server.d.ts +18 -0
  87. package/dist/server.d.ts.map +1 -0
  88. package/dist/server.js +35 -0
  89. package/dist/server.js.map +1 -0
  90. package/dist/spindle.d.ts +41 -0
  91. package/dist/spindle.d.ts.map +1 -0
  92. package/dist/spindle.js +230 -0
  93. package/dist/spindle.js.map +1 -0
  94. package/dist/state.d.ts +36 -0
  95. package/dist/state.d.ts.map +1 -0
  96. package/dist/state.js +50 -0
  97. package/dist/state.js.map +1 -0
  98. package/dist/ticket-worker.d.ts +37 -0
  99. package/dist/ticket-worker.d.ts.map +1 -0
  100. package/dist/ticket-worker.js +527 -0
  101. package/dist/ticket-worker.js.map +1 -0
  102. package/dist/tool-registry.d.ts +35 -0
  103. package/dist/tool-registry.d.ts.map +1 -0
  104. package/dist/tool-registry.js +129 -0
  105. package/dist/tool-registry.js.map +1 -0
  106. package/dist/tools/execute.d.ts +17 -0
  107. package/dist/tools/execute.d.ts.map +1 -0
  108. package/dist/tools/execute.js +418 -0
  109. package/dist/tools/execute.js.map +1 -0
  110. package/dist/tools/git.d.ts +7 -0
  111. package/dist/tools/git.d.ts.map +1 -0
  112. package/dist/tools/git.js +98 -0
  113. package/dist/tools/git.js.map +1 -0
  114. package/dist/tools/intelligence.d.ts +10 -0
  115. package/dist/tools/intelligence.d.ts.map +1 -0
  116. package/dist/tools/intelligence.js +432 -0
  117. package/dist/tools/intelligence.js.map +1 -0
  118. package/dist/tools/session.d.ts +7 -0
  119. package/dist/tools/session.d.ts.map +1 -0
  120. package/dist/tools/session.js +533 -0
  121. package/dist/tools/session.js.map +1 -0
  122. package/dist/tools/trajectory.d.ts +10 -0
  123. package/dist/tools/trajectory.d.ts.map +1 -0
  124. package/dist/tools/trajectory.js +374 -0
  125. package/dist/tools/trajectory.js.map +1 -0
  126. package/dist/trajectory-io.d.ts +21 -0
  127. package/dist/trajectory-io.d.ts.map +1 -0
  128. package/dist/trajectory-io.js +105 -0
  129. package/dist/trajectory-io.js.map +1 -0
  130. package/dist/types.d.ts +229 -0
  131. package/dist/types.d.ts.map +1 -0
  132. package/dist/types.js +13 -0
  133. package/dist/types.js.map +1 -0
  134. package/package.json +63 -0
@@ -0,0 +1,229 @@
1
+ /**
2
+ * PromptWheel v2 types — Run state, events, phases, and response contracts.
3
+ *
4
+ * These match the schemas defined in docs/PLUGIN_ROADMAP.md.
5
+ */
6
+ export type { CodebaseIndex, ModuleEntry, LargeFileEntry } from './codebase-index.js';
7
+ export type Phase = 'SCOUT' | 'PLAN' | 'EXECUTE' | 'QA' | 'PR' | 'NEXT_TICKET' | 'PARALLEL_EXECUTE' | 'DONE' | 'BLOCKED_NEEDS_HUMAN' | 'FAILED_BUDGET' | 'FAILED_VALIDATION' | 'FAILED_SPINDLE';
8
+ export declare const TERMINAL_PHASES: ReadonlySet<Phase>;
9
+ export interface CommitPlan {
10
+ ticket_id: string;
11
+ files_to_touch: Array<{
12
+ path: string;
13
+ reason: string;
14
+ action: 'create' | 'modify' | 'delete';
15
+ }>;
16
+ expected_tests: string[];
17
+ risk_level: 'low' | 'medium' | 'high';
18
+ estimated_lines: number;
19
+ }
20
+ export interface SpindleState {
21
+ output_hashes: string[];
22
+ diff_hashes: string[];
23
+ iterations_since_change: number;
24
+ total_output_chars: number;
25
+ total_change_chars: number;
26
+ failing_command_signatures: string[];
27
+ plan_hashes: string[];
28
+ file_edit_counts?: Record<string, number>;
29
+ }
30
+ export interface RunState {
31
+ run_id: string;
32
+ session_id: string;
33
+ project_id: string;
34
+ phase: Phase;
35
+ phase_entry_step: number;
36
+ step_count: number;
37
+ step_budget: number;
38
+ ticket_step_count: number;
39
+ ticket_step_budget: number;
40
+ total_lines_changed: number;
41
+ max_lines_per_ticket: number;
42
+ total_tool_calls: number;
43
+ max_tool_calls_per_ticket: number;
44
+ tickets_completed: number;
45
+ tickets_failed: number;
46
+ tickets_blocked: number;
47
+ prs_created: number;
48
+ scout_cycles: number;
49
+ max_cycles: number;
50
+ max_prs: number;
51
+ current_ticket_id: string | null;
52
+ current_ticket_plan: CommitPlan | null;
53
+ plan_approved: boolean;
54
+ plan_rejections: number;
55
+ qa_retries: number;
56
+ scout_retries: number;
57
+ last_qa_failure: {
58
+ failed_commands: string[];
59
+ error_output: string;
60
+ } | null;
61
+ last_plan_rejection_reason: string | null;
62
+ started_at: string;
63
+ expires_at: string | null;
64
+ scope: string;
65
+ formula: string | null;
66
+ categories: string[];
67
+ min_confidence: number;
68
+ max_proposals_per_scout: number;
69
+ min_impact_score: number;
70
+ create_prs: boolean;
71
+ draft: boolean;
72
+ eco: boolean;
73
+ hints: string[];
74
+ scout_exclude_dirs: string[];
75
+ parallel: number;
76
+ ticket_workers: Record<string, TicketWorkerState>;
77
+ direct: boolean;
78
+ cross_verify: boolean;
79
+ sectors_scanned: number;
80
+ sectors_total: number;
81
+ files_scanned: number;
82
+ files_total: number;
83
+ spindle: SpindleState;
84
+ spindle_recoveries: number;
85
+ scouted_dirs: string[];
86
+ deferred_proposals: DeferredProposal[];
87
+ project_metadata: ProjectMetadataSnapshot | null;
88
+ codebase_index: import('./codebase-index.js').CodebaseIndex | null;
89
+ codebase_index_dirty: boolean;
90
+ pending_proposals: import('./proposals.js').RawProposal[] | null;
91
+ skip_review: boolean;
92
+ scout_exploration_log: string[];
93
+ learnings_enabled: boolean;
94
+ /** True once learnings have been lazy-loaded from disk */
95
+ learnings_loaded: boolean;
96
+ injected_learning_ids: string[];
97
+ /** Cached learnings (lazy-loaded on first use, not at session start) */
98
+ cached_learnings: import('./learnings.js').Learning[];
99
+ selected_sector_path?: string;
100
+ current_sector_path?: string;
101
+ active_trajectory: string | null;
102
+ trajectory_step_id: string | null;
103
+ trajectory_step_title: string | null;
104
+ dry_run: boolean;
105
+ qa_commands: string[];
106
+ }
107
+ export interface ProjectMetadataSnapshot {
108
+ languages: string[];
109
+ package_manager: string | null;
110
+ test_runner_name: string | null;
111
+ test_run_command: string | null;
112
+ test_filter_syntax: string | null;
113
+ framework: string | null;
114
+ linter: string | null;
115
+ type_checker: string | null;
116
+ monorepo_tool: string | null;
117
+ }
118
+ export interface TicketWorkerState {
119
+ phase: 'PLAN' | 'EXECUTE' | 'QA' | 'CROSS_QA' | 'PR' | 'DONE' | 'FAILED';
120
+ plan: CommitPlan | null;
121
+ plan_approved: boolean;
122
+ plan_rejections: number;
123
+ qa_retries: number;
124
+ step_count: number;
125
+ /** Session-level step_count when this worker last made progress */
126
+ last_active_at_step: number;
127
+ spindle: SpindleState;
128
+ last_qa_failure: {
129
+ failed_commands: string[];
130
+ error_output: string;
131
+ } | null;
132
+ }
133
+ export interface DeferredProposal {
134
+ category: string;
135
+ title: string;
136
+ description: string;
137
+ files: string[];
138
+ allowed_paths: string[];
139
+ confidence: number;
140
+ impact_score: number;
141
+ original_scope: string;
142
+ verification_commands: string[];
143
+ acceptance_criteria: string[];
144
+ risk: string;
145
+ touched_files_estimate: number;
146
+ rollback_note: string;
147
+ rationale?: string;
148
+ estimated_complexity?: string;
149
+ }
150
+ export type EventType = 'SESSION_START' | 'ADVANCE_CALLED' | 'ADVANCE_RETURNED' | 'SCOUT_OUTPUT' | 'PROPOSALS_FILTERED' | 'TICKETS_CREATED' | 'TICKET_ASSIGNED' | 'PLAN_SUBMITTED' | 'PLAN_APPROVED' | 'PLAN_REJECTED' | 'TOOL_CALL_ATTEMPTED' | 'SCOPE_ALLOWED' | 'SCOPE_BLOCKED' | 'TICKET_RESULT' | 'QA_STARTED' | 'QA_COMMAND_RESULT' | 'QA_PASSED' | 'QA_FAILED' | 'PR_CREATED' | 'TICKET_COMPLETED' | 'TICKET_COMPLETED_NO_PR' | 'TICKET_FAILED' | 'BUDGET_WARNING' | 'BUDGET_EXHAUSTED' | 'SPINDLE_WARNING' | 'SPINDLE_ABORT' | 'TRACE_ANALYSIS' | 'HINT_CONSUMED' | 'USER_OVERRIDE' | 'PROPOSALS_REVIEWED' | 'SECTOR_ROTATION_FAILED' | 'WORKER_TIMEOUT' | 'LEARNINGS_LOAD_FAILED' | 'SESSION_END';
151
+ export interface RunEvent {
152
+ ts: string;
153
+ step: number;
154
+ type: EventType;
155
+ payload: Record<string, unknown>;
156
+ }
157
+ export interface AdvanceConstraints {
158
+ allowed_paths: string[];
159
+ denied_paths: string[];
160
+ denied_patterns: string[];
161
+ max_files: number;
162
+ max_lines: number;
163
+ required_commands: string[];
164
+ plan_required: boolean;
165
+ auto_approve_patterns: string[];
166
+ }
167
+ export interface AdvanceDigest {
168
+ step: number;
169
+ phase: string;
170
+ tickets_completed: number;
171
+ tickets_failed: number;
172
+ budget_remaining: number;
173
+ ticket_budget_remaining: number;
174
+ spindle_risk: 'none' | 'low' | 'medium' | 'high';
175
+ time_remaining_ms: number | null;
176
+ }
177
+ export interface ParallelTicketInfo {
178
+ ticket_id: string;
179
+ title: string;
180
+ description: string;
181
+ constraints: AdvanceConstraints;
182
+ /** Self-contained prompt for a Task subagent — no MCP tools needed */
183
+ inline_prompt: string;
184
+ }
185
+ export interface AdvanceResponse {
186
+ next_action: 'PROMPT' | 'STOP' | 'PARALLEL_EXECUTE';
187
+ phase: Phase;
188
+ prompt: string | null;
189
+ reason: string;
190
+ constraints: AdvanceConstraints;
191
+ digest: AdvanceDigest;
192
+ parallel_tickets?: ParallelTicketInfo[];
193
+ }
194
+ export interface SessionConfig {
195
+ hours?: number;
196
+ formula?: string;
197
+ deep?: boolean;
198
+ continuous?: boolean;
199
+ scope?: string;
200
+ categories?: string[];
201
+ min_confidence?: number;
202
+ max_proposals?: number;
203
+ step_budget?: number;
204
+ ticket_step_budget?: number;
205
+ max_prs?: number;
206
+ max_cycles?: number;
207
+ /** @deprecated Use create_prs instead */
208
+ draft_prs?: boolean;
209
+ create_prs?: boolean;
210
+ draft?: boolean;
211
+ eco?: boolean;
212
+ parallel?: number;
213
+ min_impact_score?: number;
214
+ scout_exclude_dirs?: string[];
215
+ learnings?: boolean;
216
+ learnings_budget?: number;
217
+ learnings_decay_rate?: number;
218
+ /** Direct mode: edit in place without worktrees/branches. Default: true (simpler for solo use). */
219
+ direct?: boolean;
220
+ /** Cross-verify: use a separate verifier agent for QA instead of self-verification. Default: false. */
221
+ cross_verify?: boolean;
222
+ /** Skip adversarial review: create tickets directly from scout proposals without a second review pass. Default: false. */
223
+ skip_review?: boolean;
224
+ /** Dry-run mode: scout only, no ticket creation or execution. Default: false. */
225
+ dry_run?: boolean;
226
+ /** User-specified QA commands to run after every ticket (in addition to scout-proposed verification commands). */
227
+ qa_commands?: string[];
228
+ }
229
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,13 @@
1
+ /**
2
+ * PromptWheel v2 types — Run state, events, phases, and response contracts.
3
+ *
4
+ * These match the schemas defined in docs/PLUGIN_ROADMAP.md.
5
+ */
6
+ export const TERMINAL_PHASES = new Set([
7
+ 'DONE',
8
+ 'BLOCKED_NEEDS_HUMAN',
9
+ 'FAILED_BUDGET',
10
+ 'FAILED_VALIDATION',
11
+ 'FAILED_SPINDLE',
12
+ ]);
13
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwBH,MAAM,CAAC,MAAM,eAAe,GAAuB,IAAI,GAAG,CAAC;IACzD,MAAM;IACN,qBAAqB;IACrB,eAAe;IACf,mBAAmB;IACnB,gBAAgB;CACjB,CAAC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "@promptwheel/mcp",
3
+ "version": "0.6.0",
4
+ "description": "PromptWheel MCP server - stateful tool provider for Claude Code",
5
+ "author": "PromptWheel",
6
+ "homepage": "https://promptwheel.com",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/promptwheel-ai/promptwheel.git",
10
+ "directory": "packages/mcp"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/promptwheel-ai/promptwheel/issues"
14
+ },
15
+ "type": "module",
16
+ "main": "dist/index.js",
17
+ "types": "dist/index.d.ts",
18
+ "bin": {
19
+ "promptwheel-mcp": "dist/index.js"
20
+ },
21
+ "exports": {
22
+ ".": {
23
+ "types": "./dist/index.d.ts",
24
+ "import": "./dist/index.js"
25
+ },
26
+ "./direct-client": {
27
+ "types": "./dist/direct-client.d.ts",
28
+ "import": "./dist/direct-client.js"
29
+ },
30
+ "./formulas": {
31
+ "types": "./dist/formulas.d.ts",
32
+ "import": "./dist/formulas.js"
33
+ }
34
+ },
35
+ "files": [
36
+ "dist"
37
+ ],
38
+ "scripts": {
39
+ "build": "npx tsc",
40
+ "clean": "rm -rf dist",
41
+ "typecheck": "tsc --noEmit",
42
+ "prepublishOnly": "npm run build"
43
+ },
44
+ "keywords": [
45
+ "promptwheel",
46
+ "mcp",
47
+ "model-context-protocol",
48
+ "claude-code",
49
+ "tools"
50
+ ],
51
+ "license": "Apache-2.0",
52
+ "dependencies": {
53
+ "@promptwheel/core": "^0.6.0",
54
+ "@promptwheel/sqlite": "^0.6.0",
55
+ "@modelcontextprotocol/sdk": "^1.12.1",
56
+ "minimatch": "^10.1.1"
57
+ },
58
+ "devDependencies": {
59
+ "@types/minimatch": "^5.1.2",
60
+ "@types/node": "^22.0.0",
61
+ "typescript": "^5.9.3"
62
+ }
63
+ }