specweave 0.30.18 → 0.32.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.
- package/CLAUDE.md +22 -0
- package/dist/src/adapters/README.md +275 -0
- package/dist/src/adapters/adapter-base.d.ts +1 -1
- package/dist/src/adapters/adapter-base.js +3 -3
- package/dist/src/adapters/adapter-base.js.map +1 -1
- package/dist/src/adapters/adapter-loader.d.ts +11 -10
- package/dist/src/adapters/adapter-loader.d.ts.map +1 -1
- package/dist/src/adapters/adapter-loader.js +31 -21
- package/dist/src/adapters/adapter-loader.js.map +1 -1
- package/dist/src/adapters/claude/README.md +233 -0
- package/dist/src/adapters/codex/README.md +105 -0
- package/dist/src/adapters/cursor/.cursor/context/docs-context.md +62 -0
- package/dist/src/adapters/cursor/.cursor/context/increments-context.md +71 -0
- package/dist/src/adapters/cursor/.cursor/context/strategy-context.md +73 -0
- package/dist/src/adapters/cursor/.cursor/context/tests-context.md +89 -0
- package/dist/src/adapters/cursor/README.md +283 -0
- package/dist/src/adapters/cursor/adapter.d.ts +5 -1
- package/dist/src/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/src/adapters/cursor/adapter.js +18 -115
- package/dist/src/adapters/cursor/adapter.js.map +1 -1
- package/dist/src/adapters/gemini/README.md +97 -0
- package/dist/src/adapters/generic/README.md +277 -0
- package/dist/src/adapters/registry.yaml +197 -0
- package/dist/src/cli/helpers/init/living-docs-preflight.js +12 -12
- package/dist/src/cli/helpers/init/living-docs-preflight.js.map +1 -1
- package/dist/src/config/types.d.ts +1208 -203
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/core/external-tools/external-items-counter.d.ts +62 -0
- package/dist/src/core/external-tools/external-items-counter.d.ts.map +1 -0
- package/dist/src/core/external-tools/external-items-counter.js +206 -0
- package/dist/src/core/external-tools/external-items-counter.js.map +1 -0
- package/dist/src/core/external-tools/external-items-display.d.ts +39 -0
- package/dist/src/core/external-tools/external-items-display.d.ts.map +1 -0
- package/dist/src/core/external-tools/external-items-display.js +185 -0
- package/dist/src/core/external-tools/external-items-display.js.map +1 -0
- package/dist/src/core/external-tools/index.d.ts +8 -0
- package/dist/src/core/external-tools/index.d.ts.map +1 -0
- package/dist/src/core/external-tools/index.js +8 -0
- package/dist/src/core/external-tools/index.js.map +1 -0
- package/dist/src/core/external-tools/providers/ado-items-adapter.d.ts +39 -0
- package/dist/src/core/external-tools/providers/ado-items-adapter.d.ts.map +1 -0
- package/dist/src/core/external-tools/providers/ado-items-adapter.js +188 -0
- package/dist/src/core/external-tools/providers/ado-items-adapter.js.map +1 -0
- package/dist/src/core/external-tools/providers/github-items-adapter.d.ts +38 -0
- package/dist/src/core/external-tools/providers/github-items-adapter.d.ts.map +1 -0
- package/dist/src/core/external-tools/providers/github-items-adapter.js +136 -0
- package/dist/src/core/external-tools/providers/github-items-adapter.js.map +1 -0
- package/dist/src/core/external-tools/providers/index.d.ts +7 -0
- package/dist/src/core/external-tools/providers/index.d.ts.map +1 -0
- package/dist/src/core/external-tools/providers/index.js +7 -0
- package/dist/src/core/external-tools/providers/index.js.map +1 -0
- package/dist/src/core/external-tools/providers/jira-items-adapter.d.ts +42 -0
- package/dist/src/core/external-tools/providers/jira-items-adapter.d.ts.map +1 -0
- package/dist/src/core/external-tools/providers/jira-items-adapter.js +153 -0
- package/dist/src/core/external-tools/providers/jira-items-adapter.js.map +1 -0
- package/dist/src/core/external-tools/types.d.ts +78 -0
- package/dist/src/core/external-tools/types.d.ts.map +1 -0
- package/dist/src/core/external-tools/types.js +19 -0
- package/dist/src/core/external-tools/types.js.map +1 -0
- package/dist/src/core/increment/increment-utils.d.ts +13 -37
- package/dist/src/core/increment/increment-utils.d.ts.map +1 -1
- package/dist/src/core/increment/increment-utils.js +17 -64
- package/dist/src/core/increment/increment-utils.js.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.d.ts.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.js +4 -0
- package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
- package/dist/src/core/llm/providers/azure-openai-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/azure-openai-provider.js +1 -0
- package/dist/src/core/llm/providers/azure-openai-provider.js.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.js +4 -3
- package/dist/src/core/llm/providers/bedrock-provider.js.map +1 -1
- package/dist/src/core/llm/providers/openai-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/openai-provider.js +1 -0
- package/dist/src/core/llm/providers/openai-provider.js.map +1 -1
- package/dist/src/core/llm/providers/vertex-ai-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/vertex-ai-provider.js +1 -0
- package/dist/src/core/llm/providers/vertex-ai-provider.js.map +1 -1
- package/dist/src/importers/ado-importer.d.ts.map +1 -1
- package/dist/src/importers/ado-importer.js +2 -1
- package/dist/src/importers/ado-importer.js.map +1 -1
- package/dist/src/importers/github-importer.d.ts.map +1 -1
- package/dist/src/importers/github-importer.js +2 -1
- package/dist/src/importers/github-importer.js.map +1 -1
- package/dist/src/importers/jira-importer.d.ts.map +1 -1
- package/dist/src/importers/jira-importer.js +2 -1
- package/dist/src/importers/jira-importer.js.map +1 -1
- package/dist/src/init/architecture/types.d.ts +140 -33
- package/dist/src/init/architecture/types.d.ts.map +1 -1
- package/dist/src/init/compliance/types.d.ts +27 -30
- package/dist/src/init/compliance/types.d.ts.map +1 -1
- package/dist/src/init/repo/types.d.ts +34 -11
- package/dist/src/init/repo/types.d.ts.map +1 -1
- package/dist/src/init/research/src/config/types.d.ts +82 -15
- package/dist/src/init/research/src/config/types.d.ts.map +1 -1
- package/dist/src/init/research/types.d.ts +93 -38
- package/dist/src/init/research/types.d.ts.map +1 -1
- package/dist/src/init/team/types.d.ts +42 -4
- package/dist/src/init/team/types.d.ts.map +1 -1
- package/dist/src/utils/fs-native.d.ts +2 -1
- package/dist/src/utils/fs-native.d.ts.map +1 -1
- package/dist/src/utils/fs-native.js +6 -1
- package/dist/src/utils/fs-native.js.map +1 -1
- package/dist/src/utils/html-to-mdx.d.ts +37 -0
- package/dist/src/utils/html-to-mdx.d.ts.map +1 -0
- package/dist/src/utils/html-to-mdx.js +98 -0
- package/dist/src/utils/html-to-mdx.js.map +1 -0
- package/package.json +3 -3
- package/plugins/specweave/commands/specweave-external.md +150 -0
- package/plugins/specweave/commands/specweave-judge.md +11 -0
- package/plugins/specweave/hooks/lib/update-status-line.sh +16 -4
- package/plugins/specweave/hooks/universal/hook-wrapper.cmd +26 -26
- package/plugins/specweave/hooks/universal/session-start.cmd +16 -16
- package/plugins/specweave/hooks/universal/session-start.ps1 +16 -16
- package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +2 -1
- package/plugins/specweave/lib/vendor/utils/fs-native.js +6 -1
- package/plugins/specweave/lib/vendor/utils/fs-native.js.map +1 -1
- package/plugins/specweave-docs/commands/build.md +47 -73
- package/plugins/specweave-docs/commands/preview.md +181 -87
- package/plugins/specweave-docs/skills/preview/SKILL.md +45 -56
- package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +0 -296
- package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +0 -444
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
# Cursor Adapter
|
|
2
|
+
|
|
3
|
+
**Automation Level**: Semi (Good experience with @ shortcuts and Composer)
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The Cursor adapter provides **semi-automation** for SpecWeave by teaching Cursor's AI how to **behave like** it has Claude Code's skills and agents, even without native support.
|
|
8
|
+
|
|
9
|
+
## Key Insight: Simulating Anthropic's Standards
|
|
10
|
+
|
|
11
|
+
**Anthropic Sets Standards** (MCP, Skills, Agents) that provide superior results. For Cursor, we provide **"implementation guides"** that teach the AI how to act like it has these capabilities.
|
|
12
|
+
|
|
13
|
+
Example:
|
|
14
|
+
```markdown
|
|
15
|
+
# In .cursorrules:
|
|
16
|
+
## What is a SpecWeave Skill?
|
|
17
|
+
A skill is a specialized capability that activates automatically when relevant.
|
|
18
|
+
|
|
19
|
+
**In Claude Code**: Skills are native (.claude/skills/)
|
|
20
|
+
**In Cursor**: You simulate by reading relevant workflow instructions
|
|
21
|
+
|
|
22
|
+
## increment-planner Skill
|
|
23
|
+
When user says "create increment":
|
|
24
|
+
2. Auto-increment number
|
|
25
|
+
3. Create spec.md (act as PM role)
|
|
26
|
+
4. Create plan.md (act as Architect role)
|
|
27
|
+
5. Create tasks.md
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
This is **meta-documentation** - teaching the AI how to behave!
|
|
31
|
+
|
|
32
|
+
## What This Adapter Provides
|
|
33
|
+
|
|
34
|
+
### 🔍 Progressive Disclosure
|
|
35
|
+
|
|
36
|
+
SpecWeave now includes **SKILLS-INDEX.md** - enabling Cursor to efficiently discover and use all 35+ skills!
|
|
37
|
+
|
|
38
|
+
**How it works**:
|
|
39
|
+
1. Read `.claude/skills/SKILLS-INDEX.md` (referenced in AGENTS.md)
|
|
40
|
+
2. Match task to activation keywords (e.g., "feature planning" → increment-planner)
|
|
41
|
+
3. Load specific SKILL.md when relevant
|
|
42
|
+
4. Follow proven workflows
|
|
43
|
+
|
|
44
|
+
**Benefits**:
|
|
45
|
+
- ✅ **90% token savings** (5k vs 50k tokens - load only what you need)
|
|
46
|
+
- ✅ **Full skill access** - All 35+ skills now efficiently accessible!
|
|
47
|
+
- ✅ **Consistent output** - Follow SpecWeave best practices every time
|
|
48
|
+
|
|
49
|
+
**Example**:
|
|
50
|
+
```markdown
|
|
51
|
+
# From AGENTS.md, Cursor learns about:
|
|
52
|
+
.claude/skills/SKILLS-INDEX.md # Single-file skill reference
|
|
53
|
+
|
|
54
|
+
# When user asks: "Plan a new feature for auth"
|
|
55
|
+
# 1. Read SKILLS-INDEX.md → Find "increment-planner" (matches "feature planning")
|
|
56
|
+
# 2. Load .claude/skills/increment-planner/SKILL.md
|
|
57
|
+
# 3. Follow the increment planning workflow
|
|
58
|
+
# Result: Proper spec.md, plan.md, tasks.md creation
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Note**: While Claude Code activates skills automatically, Cursor simulates this by following the progressive disclosure pattern documented in AGENTS.md.
|
|
62
|
+
|
|
63
|
+
### .cursorrules (Workflow Instructions)
|
|
64
|
+
- **What**: Complete workflow guide for SpecWeave
|
|
65
|
+
- **How**: Teaches Cursor to act like skills/agents
|
|
66
|
+
- **Example**: When to adopt PM vs Architect perspective
|
|
67
|
+
- **Benefit**: Semi-automated feature creation
|
|
68
|
+
|
|
69
|
+
### @ Context Shortcuts
|
|
70
|
+
| Shortcut | Loads | Use Case |
|
|
71
|
+
|----------|-------|----------|
|
|
72
|
+
| `@increments` | Current increment files | "What are we working on?" |
|
|
73
|
+
| `@docs` | Architecture documentation | "Show me system design" |
|
|
74
|
+
| `@strategy` | Business requirements | "What are the requirements?" |
|
|
75
|
+
| `@tests` | Test strategy and cases | "What tests exist?" |
|
|
76
|
+
|
|
77
|
+
**Usage**: Type `@increments show current tasks` in Cursor chat
|
|
78
|
+
|
|
79
|
+
### Composer Multi-File Editing
|
|
80
|
+
- Edit spec.md, plan.md, tasks.md simultaneously
|
|
81
|
+
- Maintain consistency across files
|
|
82
|
+
- Fast iteration on designs
|
|
83
|
+
|
|
84
|
+
## How It Works
|
|
85
|
+
|
|
86
|
+
### Simulating Skills
|
|
87
|
+
|
|
88
|
+
**Claude Code (automatic)**:
|
|
89
|
+
```typescript
|
|
90
|
+
// Skills auto-activate
|
|
91
|
+
User: "create increment for auth"
|
|
92
|
+
→ specweave-detector activates
|
|
93
|
+
→ skill-router routes to increment-planner
|
|
94
|
+
→ increment-planner creates increment
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Cursor (manual simulation)**:
|
|
98
|
+
```typescript
|
|
99
|
+
// You follow .cursorrules instructions
|
|
100
|
+
User: "create increment for auth"
|
|
101
|
+
→ You read .cursorrules
|
|
102
|
+
→ Follow workflow: check config → create folders → create files
|
|
103
|
+
→ Act like increment-planner by following those steps
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Simulating Agents
|
|
107
|
+
|
|
108
|
+
**Claude Code (automatic)**:
|
|
109
|
+
```typescript
|
|
110
|
+
Task({ subagent_type: "specweave:pm:pm", prompt: "create spec" })
|
|
111
|
+
→ PM agent invoked with separate context window
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**Cursor (manual adoption)**:
|
|
115
|
+
```typescript
|
|
116
|
+
User: "act as PM and create spec"
|
|
117
|
+
→ You adopt PM perspective:
|
|
118
|
+
- Focus on WHAT/WHY (not HOW)
|
|
119
|
+
- Technology-agnostic requirements
|
|
120
|
+
- User stories + acceptance criteria
|
|
121
|
+
→ Create spec.md following PM role
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**Pro Tip**: .cursorrules defines each role's responsibilities clearly
|
|
125
|
+
|
|
126
|
+
## Installation
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# Install SpecWeave with Cursor adapter
|
|
130
|
+
npx specweave init my-project --adapter cursor
|
|
131
|
+
|
|
132
|
+
# Files created:
|
|
133
|
+
# .cursorrules (workflow instructions)
|
|
134
|
+
# .cursor/context/*.md (@ shortcut targets)
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## Directory Structure
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
.cursorrules # Main workflow instructions
|
|
141
|
+
.cursor/
|
|
142
|
+
├── README.md # This file
|
|
143
|
+
└── context/ # @ shortcut files
|
|
144
|
+
├── increments-context.md
|
|
145
|
+
├── docs-context.md
|
|
146
|
+
├── strategy-context.md
|
|
147
|
+
└── tests-context.md
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Usage Examples
|
|
151
|
+
|
|
152
|
+
### Example 1: Create Feature
|
|
153
|
+
|
|
154
|
+
**User**: "Create increment for user authentication"
|
|
155
|
+
|
|
156
|
+
**Cursor** (following .cursorrules):
|
|
157
|
+
2. ✅ Find next increment number (0003)
|
|
158
|
+
3. ✅ Create folder: `.specweave/increments/0003-user-authentication/`
|
|
159
|
+
4. ✅ Act as PM: Create spec.md (WHAT/WHY, user stories, acceptance criteria)
|
|
160
|
+
5. ✅ Act as Architect: Create plan.md (HOW, technical design, components)
|
|
161
|
+
6. ✅ Create tasks.md (implementation checklist)
|
|
162
|
+
7. ✅ Create context-manifest.yaml (list files to load - 70%+ token savings)
|
|
163
|
+
|
|
164
|
+
**Result**: Complete increment ready for implementation!
|
|
165
|
+
|
|
166
|
+
### Example 2: Use @ Shortcuts
|
|
167
|
+
|
|
168
|
+
**User**: "@increments what's the current task?"
|
|
169
|
+
|
|
170
|
+
**Cursor**:
|
|
171
|
+
1. ✅ Loads current increment's spec.md, plan.md, tasks.md
|
|
172
|
+
2. ✅ Reads tasks.md → Find first unchecked task
|
|
173
|
+
3. ✅ Response: "Currently on T003: Implement OAuth2 authentication flow"
|
|
174
|
+
|
|
175
|
+
### Example 3: Multi-File Edit with Composer
|
|
176
|
+
|
|
177
|
+
**User**: *Opens Composer (Cmd+I)*
|
|
178
|
+
"Update spec.md and plan.md to add Google OAuth login"
|
|
179
|
+
|
|
180
|
+
**Cursor**:
|
|
181
|
+
1. ✅ Edits spec.md → Add FR-003 (Google OAuth requirement)
|
|
182
|
+
2. ✅ Edits plan.md → Add OAuth implementation section
|
|
183
|
+
3. ✅ Maintains consistency between both files
|
|
184
|
+
|
|
185
|
+
### Example 4: Adopt Agent Role
|
|
186
|
+
|
|
187
|
+
**User**: "Act as DevOps agent and create Terraform for Hetzner"
|
|
188
|
+
|
|
189
|
+
**Cursor** (adopting DevOps role):
|
|
190
|
+
1. ✅ Focus on infrastructure (not application code)
|
|
191
|
+
2. ✅ Create Terraform files (provider.tf, main.tf, variables.tf)
|
|
192
|
+
3. ✅ Add monitoring, logging, security configs
|
|
193
|
+
4. ✅ Document deployment process
|
|
194
|
+
|
|
195
|
+
## Context Loading (70%+ Token Savings)
|
|
196
|
+
|
|
197
|
+
**.cursorrules teaches Cursor**:
|
|
198
|
+
|
|
199
|
+
```markdown
|
|
200
|
+
## CRITICAL: Context Manifest
|
|
201
|
+
|
|
202
|
+
**Always read context-manifest.yaml first!**
|
|
203
|
+
|
|
204
|
+
Example:
|
|
205
|
+
```yaml
|
|
206
|
+
spec_sections:
|
|
207
|
+
- .specweave/docs/internal/strategy/auth/spec.md
|
|
208
|
+
documentation:
|
|
209
|
+
- .specweave/docs/internal/architecture/auth-design.md
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
**ONLY load these 2 files**, not entire .specweave/docs/ folder!
|
|
213
|
+
|
|
214
|
+
**Why?**
|
|
215
|
+
- Full specs: 500+ pages (50k tokens)
|
|
216
|
+
- Manifest files: 50 pages (5k tokens)
|
|
217
|
+
- Savings: 90% = 45k tokens saved!
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
## Comparison: Cursor vs Claude Code
|
|
221
|
+
|
|
222
|
+
| Feature | Claude Code | Cursor |
|
|
223
|
+
|---------|-------------|--------|
|
|
224
|
+
| **Skills** | Native auto-activation | Simulated via .cursorrules |
|
|
225
|
+
| **Agents** | Separate context windows | Manual role adoption |
|
|
226
|
+
| **Hooks** | Auto-execute on events | Not available |
|
|
227
|
+
| **Commands** | Native slash commands | Workflow instructions |
|
|
228
|
+
| **Context** | MCP protocol | Manual loading via @ shortcuts |
|
|
229
|
+
| **File Access** | Native tools | Native (Composer) |
|
|
230
|
+
| **Automation** | Full | Semi |
|
|
231
|
+
|
|
232
|
+
**Cursor = Good experience** (70-80% of Claude Code's capabilities)
|
|
233
|
+
|
|
234
|
+
## Limitations
|
|
235
|
+
|
|
236
|
+
❌ **No auto-activation** - Must explicitly request workflows
|
|
237
|
+
❌ **No separate context windows** - All context shared
|
|
238
|
+
❌ **No hooks** - Can't auto-update docs on events (see workaround below)
|
|
239
|
+
⚠️ **Manual role adoption** - Must say "act as PM"
|
|
240
|
+
|
|
241
|
+
✅ **But Composer + @ shortcuts provide great UX!**
|
|
242
|
+
|
|
243
|
+
### Documentation Update Workaround
|
|
244
|
+
|
|
245
|
+
Since Cursor doesn't have hooks, you MUST manually update documentation after every task.
|
|
246
|
+
|
|
247
|
+
**See the comprehensive guide in AGENTS.md** (section: "Documentation Updates - CRITICAL FOR NON-CLAUDE TOOLS")
|
|
248
|
+
|
|
249
|
+
**Quick checklist after completing any task**:
|
|
250
|
+
1. Update `.specweave/increments/{id}/tasks.md` (mark tasks complete)
|
|
251
|
+
2. Update `.specweave/docs/internal/architecture/` (HLD/LLD/ADRs)
|
|
252
|
+
3. Update `.specweave/docs/internal/strategy/` (PRDs if requirements changed)
|
|
253
|
+
4. Update `README.md` (user-facing changes)
|
|
254
|
+
5. Update `CHANGELOG.md` (version history)
|
|
255
|
+
|
|
256
|
+
## Tips & Tricks
|
|
257
|
+
|
|
258
|
+
### 1. Always Mention Context-Manifest
|
|
259
|
+
"Read context-manifest.yaml and load only files listed there"
|
|
260
|
+
|
|
261
|
+
### 2. Be Explicit About Roles
|
|
262
|
+
"Act as PM agent and create spec" (not just "create spec")
|
|
263
|
+
|
|
264
|
+
### 3. Use @ Shortcuts
|
|
265
|
+
Faster than typing full file paths
|
|
266
|
+
|
|
267
|
+
### 4. Use Composer for Multi-File Edits
|
|
268
|
+
Cmd+I → Edit multiple files at once
|
|
269
|
+
|
|
270
|
+
### 5. Reference .cursorrules
|
|
271
|
+
If Cursor forgets workflow: "Follow the workflow in .cursorrules"
|
|
272
|
+
|
|
273
|
+
## Related Documentation
|
|
274
|
+
|
|
275
|
+
- [SPECWEAVE.md](../../SPECWEAVE.md) - Complete development guide
|
|
276
|
+
- [.cursorrules](.cursorrules) - Cursor workflow instructions (READ THIS!)
|
|
277
|
+
- [Adapter Architecture](../README.md) - Multi-tool design philosophy
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
**Status**: Active (v0.2.0-beta.1+)
|
|
282
|
+
**Market Share**: ~30% (Cursor users)
|
|
283
|
+
**Priority**: P1 (high impact adapter)
|
|
@@ -17,7 +17,11 @@ export declare class CursorAdapter extends AdapterBase {
|
|
|
17
17
|
/**
|
|
18
18
|
* Detect if Cursor is available
|
|
19
19
|
*
|
|
20
|
-
*
|
|
20
|
+
* NOTE: This detection only runs if Claude CLI is NOT available.
|
|
21
|
+
* Claude is checked FIRST (active indicator) before Cursor (passive indicator).
|
|
22
|
+
* See adapter-loader.ts detectTool() for full priority order.
|
|
23
|
+
*
|
|
24
|
+
* Checks for (passive indicators):
|
|
21
25
|
* - cursor command in PATH
|
|
22
26
|
* - .cursor/ directory exists
|
|
23
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cursor/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIzD,qBAAa,aAAc,SAAQ,WAAW;IAC5C,IAAI,SAAY;IAChB,WAAW,SAA6E;IACxF,eAAe,EAAG,MAAM,CAAU;IAElC
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cursor/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIzD,qBAAa,aAAc,SAAQ,WAAW;IAC5C,IAAI,SAAY;IAChB,WAAW,SAA6E;IACxF,eAAe,EAAG,MAAM,CAAU;IAElC;;;;;;;;;;OAUG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAOhC;;;;;OAKG;IACH,QAAQ,IAAI,WAAW,EAAE;IA8BzB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBrD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;IAsBzB;;;;;;OAMG;IACH,eAAe,IAAI,OAAO;IAI1B;;;;OAIG;YACW,iBAAiB;IAiB/B;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;;;;;;;;;OAWG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsFlD;;;;;;OAMG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCrD;;;;;;OAMG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAmB/C"}
|
|
@@ -21,7 +21,11 @@ export class CursorAdapter extends AdapterBase {
|
|
|
21
21
|
/**
|
|
22
22
|
* Detect if Cursor is available
|
|
23
23
|
*
|
|
24
|
-
*
|
|
24
|
+
* NOTE: This detection only runs if Claude CLI is NOT available.
|
|
25
|
+
* Claude is checked FIRST (active indicator) before Cursor (passive indicator).
|
|
26
|
+
* See adapter-loader.ts detectTool() for full priority order.
|
|
27
|
+
*
|
|
28
|
+
* Checks for (passive indicators):
|
|
25
29
|
* - cursor command in PATH
|
|
26
30
|
* - .cursor/ directory exists
|
|
27
31
|
*/
|
|
@@ -91,124 +95,23 @@ export class CursorAdapter extends AdapterBase {
|
|
|
91
95
|
*/
|
|
92
96
|
getInstructions() {
|
|
93
97
|
return `
|
|
94
|
-
|
|
95
|
-
Cursor Adapter - Semi-Automation
|
|
96
|
-
================================================================
|
|
97
|
-
|
|
98
|
-
Your project is now configured for Cursor with SEMI-automation!
|
|
99
|
-
|
|
100
|
-
WHAT THIS PROVIDES:
|
|
101
|
-
|
|
102
|
-
- AGENTS.md (Universal Standard)
|
|
103
|
-
- Cursor automatically reads this file
|
|
104
|
-
- Contains all workflow instructions
|
|
105
|
-
- Defines agent roles (PM, Architect, etc.)
|
|
106
|
-
- Defines skill capabilities (increment-planner, context-loader, etc.)
|
|
107
|
-
- Project structure and templates
|
|
108
|
-
- Following agents.md standard (https://agents.md/)
|
|
109
|
-
|
|
110
|
-
- @ Context Shortcuts (Quick Access)
|
|
111
|
-
- @increments - Load current increment files
|
|
112
|
-
- @docs - Load architecture documentation
|
|
113
|
-
- @strategy - Load business specifications
|
|
114
|
-
- @tests - Load test strategy and cases
|
|
115
|
-
|
|
116
|
-
- Composer Multi-File Editing
|
|
117
|
-
- Create multiple files simultaneously
|
|
118
|
-
- Edit across spec.md, plan.md, tasks.md
|
|
119
|
-
|
|
120
|
-
UNDERSTANDING THE DIFFERENCE:
|
|
121
|
-
|
|
122
|
-
Claude Code (Full Automation):
|
|
123
|
-
- Native skills (auto-activate)
|
|
124
|
-
- Native agents (separate context windows)
|
|
125
|
-
- Native hooks (auto-update docs)
|
|
126
|
-
- Slash commands (/inc, /do, /done)
|
|
127
|
-
|
|
128
|
-
Cursor (Semi-Automation - This Adapter):
|
|
129
|
-
- Reads AGENTS.md for workflow instructions
|
|
130
|
-
- Manual role adoption (say "act as PM")
|
|
131
|
-
- No hooks (manual doc updates)
|
|
132
|
-
- Manual workflows (follow AGENTS.md steps)
|
|
133
|
-
|
|
134
|
-
HOW CURSOR USES AGENTS.MD:
|
|
135
|
-
|
|
136
|
-
Cursor automatically reads AGENTS.md to understand:
|
|
137
|
-
1. Project structure (.specweave/ folders)
|
|
138
|
-
2. How to create increments (spec.md, plan.md, tasks.md)
|
|
139
|
-
3. Agent roles (PM defines WHAT/WHY, Architect designs HOW)
|
|
140
|
-
4. Skill workflows (increment-planner, context-loader, etc.)
|
|
141
|
-
5. Context manifests (70%+ token savings)
|
|
142
|
-
6. Templates and examples
|
|
143
|
-
|
|
144
|
-
When you say "create increment for auth":
|
|
145
|
-
→ Cursor reads AGENTS.md
|
|
146
|
-
→ Follows the workflow described there
|
|
147
|
-
→ Creates spec.md (adopting PM role)
|
|
148
|
-
→ Creates plan.md (adopting Architect role)
|
|
149
|
-
→ Creates tasks.md
|
|
150
|
-
|
|
151
|
-
QUICK START:
|
|
152
|
-
|
|
153
|
-
1. Open project in Cursor
|
|
154
|
-
|
|
155
|
-
2. Create your first feature:
|
|
156
|
-
"Create increment for user authentication"
|
|
157
|
-
|
|
158
|
-
Cursor will:
|
|
159
|
-
- Read AGENTS.md for workflow
|
|
160
|
-
- Ask clarifying questions
|
|
161
|
-
- Create spec.md (acting as PM from AGENTS.md)
|
|
162
|
-
- Create plan.md (acting as Architect from AGENTS.md)
|
|
163
|
-
- Create tasks.md
|
|
164
|
-
|
|
165
|
-
3. Use @ shortcuts for context:
|
|
166
|
-
"@increments show me the current increment"
|
|
167
|
-
"@docs show me the architecture"
|
|
168
|
-
"@strategy show me the business requirements"
|
|
169
|
-
|
|
170
|
-
4. Use Composer for multi-file edits:
|
|
171
|
-
Cmd+I → "Update spec.md and plan.md to add OAuth2"
|
|
172
|
-
|
|
173
|
-
CONTEXT LOADING (70%+ Token Savings):
|
|
174
|
-
|
|
175
|
-
CRITICAL: Always read context-manifest.yaml first!
|
|
176
|
-
|
|
177
|
-
AGENTS.md teaches Cursor:
|
|
178
|
-
1. Look for .specweave/increments/####/context-manifest.yaml
|
|
179
|
-
2. ONLY load files listed in manifest
|
|
180
|
-
3. Don't load all specs (wastes tokens)
|
|
181
|
-
|
|
182
|
-
Example manifest (YAML):
|
|
183
|
-
|
|
184
|
-
spec_sections:
|
|
185
|
-
- .specweave/docs/internal/strategy/auth/spec.md
|
|
186
|
-
documentation:
|
|
187
|
-
- .specweave/docs/internal/architecture/auth-design.md
|
|
188
|
-
|
|
189
|
-
Cursor: "Only load these 2 files, not entire docs/ folder"
|
|
190
|
-
|
|
191
|
-
LIMITATIONS (vs Claude Code):
|
|
192
|
-
|
|
193
|
-
- No auto-activation (must explicitly request workflows)
|
|
194
|
-
- No separate context windows (all context shared)
|
|
195
|
-
- No hooks (can't auto-update docs on events)
|
|
196
|
-
- Requires manual role adoption (say "act as PM")
|
|
197
|
-
|
|
198
|
-
But still VERY good experience with Composer + @ shortcuts!
|
|
98
|
+
Cursor Adapter - Semi-Automation
|
|
199
99
|
|
|
200
|
-
|
|
100
|
+
Cursor reads AGENTS.md for workflow instructions.
|
|
201
101
|
|
|
202
|
-
|
|
203
|
-
-
|
|
204
|
-
-
|
|
102
|
+
@ Shortcuts:
|
|
103
|
+
@increments - Current increment files
|
|
104
|
+
@docs - Architecture docs
|
|
105
|
+
@strategy - Business specs
|
|
106
|
+
@tests - Test files
|
|
205
107
|
|
|
206
|
-
|
|
108
|
+
Quick Start:
|
|
109
|
+
1. Open in Cursor
|
|
110
|
+
2. Say: "Create increment for [feature]"
|
|
111
|
+
3. Use Composer (Cmd+I) for multi-file edits
|
|
207
112
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
- "act as Architect and design system" (AGENTS.md defines Architect role)
|
|
211
|
-
- "act as DevOps and create infrastructure" (AGENTS.md defines DevOps role)
|
|
113
|
+
Tip: Say "act as PM/Architect/DevOps" to adopt roles.
|
|
114
|
+
Docs: AGENTS.md, .cursor/README.md
|
|
212
115
|
`;
|
|
213
116
|
}
|
|
214
117
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/adapters/cursor/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAmB,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAGlG,MAAM,OAAO,aAAc,SAAQ,WAAW;IAA9C;;QACE,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,yEAAyE,CAAC;QACxF,oBAAe,GAAG,MAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/adapters/cursor/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Gemini CLI Adapter
|
|
2
|
+
|
|
3
|
+
**Automation Level**: Semi (Good experience with 1M context window and agent mode)
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The Gemini CLI adapter provides **semi-automation** for SpecWeave using Google's open-source Gemini CLI tool with **AGENTS.md** as the universal instruction file.
|
|
8
|
+
|
|
9
|
+
## Key Features
|
|
10
|
+
|
|
11
|
+
- **1M Token Context Window**: Handle massive specifications
|
|
12
|
+
- **Agent Mode**: Multi-file task completion with approval workflow
|
|
13
|
+
- **MCP Support**: Model Context Protocol for extensibility
|
|
14
|
+
- **Built-in Tools**: File operations, shell commands, Google Search, web fetching
|
|
15
|
+
- **Free Tier**: Gemini 2.5 Pro included (60 req/min, 1K req/day)
|
|
16
|
+
- **Open Source**: Apache 2.0 license
|
|
17
|
+
|
|
18
|
+
## Installation
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Install Gemini CLI
|
|
22
|
+
npm install -g @google-cloud/gemini-cli
|
|
23
|
+
|
|
24
|
+
# Authenticate
|
|
25
|
+
gemini auth
|
|
26
|
+
|
|
27
|
+
# Initialize SpecWeave project with Gemini adapter
|
|
28
|
+
npx specweave init my-project --adapter gemini
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## How It Works
|
|
32
|
+
|
|
33
|
+
Gemini CLI reads **AGENTS.md** (universal instruction file) for SpecWeave context:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
gemini "Read AGENTS.md and create increment for user authentication"
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Gemini will:
|
|
40
|
+
1. Read AGENTS.md for project structure and roles
|
|
41
|
+
2. Adopt PM role: Create spec.md (WHAT/WHY)
|
|
42
|
+
3. Adopt Architect role: Create plan.md (HOW)
|
|
43
|
+
4. Create tasks.md (implementation checklist)
|
|
44
|
+
5. Use agent mode for multi-file operations
|
|
45
|
+
|
|
46
|
+
## Universal AGENTS.md
|
|
47
|
+
|
|
48
|
+
Instead of tool-specific files (.cursorrules, copilot instructions), SpecWeave uses **AGENTS.md** that works with ALL tools:
|
|
49
|
+
|
|
50
|
+
- ✅ Gemini CLI
|
|
51
|
+
- ✅ Codex (OpenAI)
|
|
52
|
+
- ✅ Cursor
|
|
53
|
+
- ✅ GitHub Copilot
|
|
54
|
+
- ✅ ANY AI tool
|
|
55
|
+
|
|
56
|
+
**Single source of truth** = easier maintenance!
|
|
57
|
+
|
|
58
|
+
## Example Workflows
|
|
59
|
+
|
|
60
|
+
### Create Feature
|
|
61
|
+
```bash
|
|
62
|
+
gemini "Read AGENTS.md. Create increment 0002 for payment processing with Stripe."
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Implement Task
|
|
66
|
+
```bash
|
|
67
|
+
gemini "Read increment 0002, implement task T001"
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Context Loading (70%+ Token Savings)
|
|
71
|
+
```bash
|
|
72
|
+
gemini "Read context-manifest.yaml from increment 0001, load only those files, then implement T001"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Comparison with Claude Code
|
|
76
|
+
|
|
77
|
+
| Feature | Claude Code | Gemini CLI |
|
|
78
|
+
|---------|-------------|------------|
|
|
79
|
+
| **Automation** | Full | Semi |
|
|
80
|
+
| **Context** | 200k tokens | 1M tokens (5x!) |
|
|
81
|
+
| **Skills** | Native | Via AGENTS.md |
|
|
82
|
+
| **Agents** | Native (separate contexts) | Via AGENTS.md (manual adoption) |
|
|
83
|
+
| **Hooks** | Yes (auto-update) | No (manual) |
|
|
84
|
+
| **Cost** | Paid | Free tier available |
|
|
85
|
+
| **Open Source** | No | Yes (Apache 2.0) |
|
|
86
|
+
|
|
87
|
+
## Links
|
|
88
|
+
|
|
89
|
+
- [Gemini CLI Documentation](https://developers.google.com/gemini-code-assist/docs/gemini-cli)
|
|
90
|
+
- [GitHub Repository](https://github.com/google-gemini/gemini-cli)
|
|
91
|
+
- [SpecWeave Website](https://spec-weave.com)
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
**Status**: Active (v0.2.0+)
|
|
96
|
+
**Market Share**: Growing (Google's AI coding tool)
|
|
97
|
+
**Priority**: P1 (high impact - 1M context window!)
|