@every-env/compound-plugin 0.9.0 → 2.34.2
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-plugin/marketplace.json +3 -3
- package/.github/workflows/publish.yml +20 -10
- package/.releaserc.json +31 -0
- package/AGENTS.md +6 -1
- package/CHANGELOG.md +76 -0
- package/CLAUDE.md +16 -3
- package/README.md +83 -16
- package/bun.lock +977 -0
- package/docs/plans/2026-02-14-feat-auto-detect-install-and-gemini-sync-plan.md +360 -0
- package/docs/plans/2026-02-25-feat-windsurf-global-scope-support-plan.md +627 -0
- package/docs/plans/2026-03-01-feat-ce-command-aliases-backwards-compatible-deprecation-plan.md +261 -0
- package/docs/plans/2026-03-01-fix-setup-skill-non-claude-llm-fallback-plan.md +140 -0
- package/docs/plans/2026-03-03-feat-sync-claude-mcp-all-supported-providers-plan.md +639 -0
- package/docs/plans/feature_opencode-commands-as-md-and-config-merge.md +574 -0
- package/docs/solutions/adding-converter-target-providers.md +693 -0
- package/docs/solutions/plugin-versioning-requirements.md +7 -3
- package/docs/specs/windsurf.md +477 -0
- package/package.json +10 -4
- package/plans/landing-page-launchkit-refresh.md +2 -2
- package/plugins/compound-engineering/.claude-plugin/plugin.json +2 -2
- package/plugins/compound-engineering/CHANGELOG.md +82 -1
- package/plugins/compound-engineering/CLAUDE.md +14 -7
- package/plugins/compound-engineering/README.md +10 -7
- package/plugins/compound-engineering/agents/research/git-history-analyzer.md +1 -1
- package/plugins/compound-engineering/agents/research/learnings-researcher.md +1 -1
- package/plugins/compound-engineering/agents/review/code-simplicity-reviewer.md +1 -1
- package/plugins/compound-engineering/commands/ce/brainstorm.md +145 -0
- package/plugins/compound-engineering/commands/ce/compound.md +240 -0
- package/plugins/compound-engineering/commands/ce/plan.md +636 -0
- package/plugins/compound-engineering/commands/ce/review.md +525 -0
- package/plugins/compound-engineering/commands/ce/work.md +470 -0
- package/plugins/compound-engineering/commands/create-agent-skill.md +1 -1
- package/plugins/compound-engineering/commands/deepen-plan.md +6 -6
- package/plugins/compound-engineering/commands/deploy-docs.md +1 -1
- package/plugins/compound-engineering/commands/feature-video.md +15 -6
- package/plugins/compound-engineering/commands/heal-skill.md +1 -1
- package/plugins/compound-engineering/commands/lfg.md +3 -3
- package/plugins/compound-engineering/commands/slfg.md +3 -3
- package/plugins/compound-engineering/commands/test-xcode.md +2 -2
- package/plugins/compound-engineering/commands/workflows/brainstorm.md +4 -123
- package/plugins/compound-engineering/commands/workflows/compound.md +4 -234
- package/plugins/compound-engineering/commands/workflows/plan.md +4 -562
- package/plugins/compound-engineering/commands/workflows/review.md +4 -522
- package/plugins/compound-engineering/commands/workflows/work.md +4 -448
- package/plugins/compound-engineering/skills/brainstorming/SKILL.md +3 -3
- package/plugins/compound-engineering/skills/create-agent-skills/workflows/add-workflow.md +6 -0
- package/plugins/compound-engineering/skills/create-agent-skills/workflows/create-new-skill.md +6 -0
- package/plugins/compound-engineering/skills/document-review/SKILL.md +1 -1
- package/plugins/compound-engineering/skills/file-todos/SKILL.md +1 -1
- package/plugins/compound-engineering/skills/git-worktree/SKILL.md +5 -5
- package/plugins/compound-engineering/skills/proof/SKILL.md +185 -0
- package/plugins/compound-engineering/skills/resolve-pr-parallel/SKILL.md +1 -1
- package/plugins/compound-engineering/skills/setup/SKILL.md +8 -2
- package/src/commands/convert.ts +101 -24
- package/src/commands/install.ts +102 -45
- package/src/commands/sync.ts +43 -62
- package/src/converters/claude-to-openclaw.ts +240 -0
- package/src/converters/claude-to-opencode.ts +12 -10
- package/src/converters/claude-to-qwen.ts +238 -0
- package/src/converters/claude-to-windsurf.ts +205 -0
- package/src/index.ts +2 -1
- package/src/parsers/claude-home.ts +55 -3
- package/src/sync/codex.ts +38 -62
- package/src/sync/commands.ts +198 -0
- package/src/sync/copilot.ts +14 -36
- package/src/sync/droid.ts +50 -9
- package/src/sync/gemini.ts +135 -0
- package/src/sync/json-config.ts +47 -0
- package/src/sync/kiro.ts +49 -0
- package/src/sync/mcp-transports.ts +19 -0
- package/src/sync/openclaw.ts +18 -0
- package/src/sync/opencode.ts +10 -30
- package/src/sync/pi.ts +12 -36
- package/src/sync/qwen.ts +66 -0
- package/src/sync/registry.ts +141 -0
- package/src/sync/skills.ts +21 -0
- package/src/sync/windsurf.ts +59 -0
- package/src/targets/index.ts +60 -1
- package/src/targets/openclaw.ts +96 -0
- package/src/targets/opencode.ts +76 -10
- package/src/targets/qwen.ts +64 -0
- package/src/targets/windsurf.ts +104 -0
- package/src/types/kiro.ts +3 -1
- package/src/types/openclaw.ts +52 -0
- package/src/types/opencode.ts +7 -8
- package/src/types/qwen.ts +51 -0
- package/src/types/windsurf.ts +35 -0
- package/src/utils/codex-agents.ts +1 -1
- package/src/utils/detect-tools.ts +37 -0
- package/src/utils/files.ts +14 -0
- package/src/utils/resolve-output.ts +50 -0
- package/src/utils/secrets.ts +24 -0
- package/src/utils/symlink.ts +4 -6
- package/tests/claude-home.test.ts +46 -0
- package/tests/cli.test.ts +180 -0
- package/tests/converter.test.ts +43 -10
- package/tests/detect-tools.test.ts +119 -0
- package/tests/openclaw-converter.test.ts +200 -0
- package/tests/opencode-writer.test.ts +142 -5
- package/tests/qwen-converter.test.ts +238 -0
- package/tests/resolve-output.test.ts +131 -0
- package/tests/sync-codex.test.ts +64 -0
- package/tests/sync-copilot.test.ts +60 -4
- package/tests/sync-droid.test.ts +44 -4
- package/tests/sync-gemini.test.ts +160 -0
- package/tests/sync-kiro.test.ts +83 -0
- package/tests/sync-openclaw.test.ts +51 -0
- package/tests/sync-qwen.test.ts +75 -0
- package/tests/sync-windsurf.test.ts +89 -0
- package/tests/windsurf-converter.test.ts +573 -0
- package/tests/windsurf-writer.test.ts +359 -0
- package/docs/css/docs.css +0 -675
- package/docs/css/style.css +0 -2886
- package/docs/index.html +0 -1046
- package/docs/js/main.js +0 -225
- package/docs/pages/agents.html +0 -649
- package/docs/pages/changelog.html +0 -534
- package/docs/pages/commands.html +0 -523
- package/docs/pages/getting-started.html +0 -582
- package/docs/pages/mcp-servers.html +0 -409
- package/docs/pages/skills.html +0 -611
|
@@ -13,6 +13,8 @@ component: plugin-development
|
|
|
13
13
|
|
|
14
14
|
When making changes to the compound-engineering plugin, documentation can get out of sync with the actual components (agents, commands, skills). This leads to confusion about what's included in each version and makes it difficult to track changes over time.
|
|
15
15
|
|
|
16
|
+
This document applies to the embedded marketplace plugin metadata, not the root CLI package release version. The root CLI package (`package.json`, root `CHANGELOG.md`, repo `v*` tags) is managed by semantic-release and follows the repository tag line.
|
|
17
|
+
|
|
16
18
|
## Solution
|
|
17
19
|
|
|
18
20
|
**Every change to the plugin MUST include:**
|
|
@@ -72,6 +74,8 @@ This documentation serves as a reminder. When Claude Code works on this plugin,
|
|
|
72
74
|
|
|
73
75
|
## Related Files
|
|
74
76
|
|
|
75
|
-
- `/Users/kieranklaassen/
|
|
76
|
-
- `/Users/kieranklaassen/
|
|
77
|
-
- `/Users/kieranklaassen/
|
|
77
|
+
- `/Users/kieranklaassen/compound-engineering-plugin/plugins/compound-engineering/.claude-plugin/plugin.json`
|
|
78
|
+
- `/Users/kieranklaassen/compound-engineering-plugin/plugins/compound-engineering/CHANGELOG.md`
|
|
79
|
+
- `/Users/kieranklaassen/compound-engineering-plugin/plugins/compound-engineering/README.md`
|
|
80
|
+
- `/Users/kieranklaassen/compound-engineering-plugin/package.json`
|
|
81
|
+
- `/Users/kieranklaassen/compound-engineering-plugin/CHANGELOG.md`
|
|
@@ -0,0 +1,477 @@
|
|
|
1
|
+
# Windsurf Editor Global Configuration Guide
|
|
2
|
+
|
|
3
|
+
> **Purpose**: Technical reference for programmatically creating and managing Windsurf's global Skills, Workflows, and Rules.
|
|
4
|
+
>
|
|
5
|
+
> **Source**: Official Windsurf documentation at [docs.windsurf.com](https://docs.windsurf.com) + local file analysis.
|
|
6
|
+
>
|
|
7
|
+
> **Last Updated**: February 2026
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Table of Contents
|
|
12
|
+
|
|
13
|
+
1. [Overview](#overview)
|
|
14
|
+
2. [Base Directory Structure](#base-directory-structure)
|
|
15
|
+
3. [Skills](#skills)
|
|
16
|
+
4. [Workflows](#workflows)
|
|
17
|
+
5. [Rules](#rules)
|
|
18
|
+
6. [Memories](#memories)
|
|
19
|
+
7. [System-Level Configuration (Enterprise)](#system-level-configuration-enterprise)
|
|
20
|
+
8. [Programmatic Creation Reference](#programmatic-creation-reference)
|
|
21
|
+
9. [Best Practices](#best-practices)
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Overview
|
|
26
|
+
|
|
27
|
+
Windsurf provides three main customization mechanisms:
|
|
28
|
+
|
|
29
|
+
| Feature | Purpose | Invocation |
|
|
30
|
+
|---------|---------|------------|
|
|
31
|
+
| **Skills** | Complex multi-step tasks with supporting resources | Automatic (progressive disclosure) or `@skill-name` |
|
|
32
|
+
| **Workflows** | Reusable step-by-step procedures | Slash command `/workflow-name` |
|
|
33
|
+
| **Rules** | Behavioral guidelines and preferences | Trigger-based (always-on, glob, manual, or model decision) |
|
|
34
|
+
|
|
35
|
+
All three support both **workspace-level** (project-specific) and **global** (user-wide) scopes.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Base Directory Structure
|
|
40
|
+
|
|
41
|
+
### Global Configuration Root
|
|
42
|
+
|
|
43
|
+
| OS | Path |
|
|
44
|
+
|----|------|
|
|
45
|
+
| **Windows** | `C:\Users\{USERNAME}\.codeium\windsurf\` |
|
|
46
|
+
| **macOS** | `~/.codeium/windsurf/` |
|
|
47
|
+
| **Linux** | `~/.codeium/windsurf/` |
|
|
48
|
+
|
|
49
|
+
### Directory Layout
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
~/.codeium/windsurf/
|
|
53
|
+
├── skills/ # Global skills (directories)
|
|
54
|
+
│ └── {skill-name}/
|
|
55
|
+
│ └── SKILL.md
|
|
56
|
+
├── global_workflows/ # Global workflows (flat .md files)
|
|
57
|
+
│ └── {workflow-name}.md
|
|
58
|
+
├── rules/ # Global rules (flat .md files)
|
|
59
|
+
│ └── {rule-name}.md
|
|
60
|
+
├── memories/
|
|
61
|
+
│ ├── global_rules.md # Always-on global rules (plain text)
|
|
62
|
+
│ └── *.pb # Auto-generated memories (protobuf)
|
|
63
|
+
├── mcp_config.json # MCP server configuration
|
|
64
|
+
└── user_settings.pb # User settings (protobuf)
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Skills
|
|
70
|
+
|
|
71
|
+
Skills bundle instructions with supporting resources for complex, multi-step tasks. Cascade uses **progressive disclosure** to automatically invoke skills when relevant.
|
|
72
|
+
|
|
73
|
+
### Storage Locations
|
|
74
|
+
|
|
75
|
+
| Scope | Location |
|
|
76
|
+
|-------|----------|
|
|
77
|
+
| **Global** | `~/.codeium/windsurf/skills/{skill-name}/SKILL.md` |
|
|
78
|
+
| **Workspace** | `.windsurf/skills/{skill-name}/SKILL.md` |
|
|
79
|
+
|
|
80
|
+
### Directory Structure
|
|
81
|
+
|
|
82
|
+
Each skill is a **directory** (not a single file) containing:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
{skill-name}/
|
|
86
|
+
├── SKILL.md # Required: Main skill definition
|
|
87
|
+
├── references/ # Optional: Reference documentation
|
|
88
|
+
├── assets/ # Optional: Images, diagrams, etc.
|
|
89
|
+
├── scripts/ # Optional: Helper scripts
|
|
90
|
+
└── {any-other-files} # Optional: Templates, configs, etc.
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### SKILL.md Format
|
|
94
|
+
|
|
95
|
+
```markdown
|
|
96
|
+
---
|
|
97
|
+
name: skill-name
|
|
98
|
+
description: Brief description shown to model to help it decide when to invoke the skill
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
# Skill Title
|
|
102
|
+
|
|
103
|
+
Instructions for the skill go here in markdown format.
|
|
104
|
+
|
|
105
|
+
## Section 1
|
|
106
|
+
Step-by-step guidance...
|
|
107
|
+
|
|
108
|
+
## Section 2
|
|
109
|
+
Reference supporting files using relative paths:
|
|
110
|
+
- See [deployment-checklist.md](./deployment-checklist.md)
|
|
111
|
+
- Run script: [deploy.sh](./scripts/deploy.sh)
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Required YAML Frontmatter Fields
|
|
115
|
+
|
|
116
|
+
| Field | Required | Description |
|
|
117
|
+
|-------|----------|-------------|
|
|
118
|
+
| `name` | **Yes** | Unique identifier (lowercase letters, numbers, hyphens only). Must match directory name. |
|
|
119
|
+
| `description` | **Yes** | Explains what the skill does and when to use it. Critical for automatic invocation. |
|
|
120
|
+
|
|
121
|
+
### Naming Convention
|
|
122
|
+
|
|
123
|
+
- Use **lowercase-kebab-case**: `deploy-to-staging`, `code-review`, `setup-dev-environment`
|
|
124
|
+
- Name must match the directory name exactly
|
|
125
|
+
|
|
126
|
+
### Invocation Methods
|
|
127
|
+
|
|
128
|
+
1. **Automatic**: Cascade automatically invokes when request matches skill description
|
|
129
|
+
2. **Manual**: Type `@skill-name` in Cascade input
|
|
130
|
+
|
|
131
|
+
### Example: Complete Skill
|
|
132
|
+
|
|
133
|
+
```
|
|
134
|
+
~/.codeium/windsurf/skills/deploy-to-production/
|
|
135
|
+
├── SKILL.md
|
|
136
|
+
├── deployment-checklist.md
|
|
137
|
+
├── rollback-procedure.md
|
|
138
|
+
└── config-template.yaml
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**SKILL.md:**
|
|
142
|
+
```markdown
|
|
143
|
+
---
|
|
144
|
+
name: deploy-to-production
|
|
145
|
+
description: Guides the deployment process to production with safety checks. Use when deploying to prod, releasing, or pushing to production environment.
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## Pre-deployment Checklist
|
|
149
|
+
1. Run all tests
|
|
150
|
+
2. Check for uncommitted changes
|
|
151
|
+
3. Verify environment variables
|
|
152
|
+
|
|
153
|
+
## Deployment Steps
|
|
154
|
+
Follow these steps to deploy safely...
|
|
155
|
+
|
|
156
|
+
See [deployment-checklist.md](./deployment-checklist.md) for full checklist.
|
|
157
|
+
See [rollback-procedure.md](./rollback-procedure.md) if issues occur.
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## Workflows
|
|
163
|
+
|
|
164
|
+
Workflows define step-by-step procedures invoked via slash commands. They guide Cascade through repetitive tasks.
|
|
165
|
+
|
|
166
|
+
### Storage Locations
|
|
167
|
+
|
|
168
|
+
| Scope | Location |
|
|
169
|
+
|-------|----------|
|
|
170
|
+
| **Global** | `~/.codeium/windsurf/global_workflows/{workflow-name}.md` |
|
|
171
|
+
| **Workspace** | `.windsurf/workflows/{workflow-name}.md` |
|
|
172
|
+
|
|
173
|
+
### File Format
|
|
174
|
+
|
|
175
|
+
Workflows are **single markdown files** (not directories):
|
|
176
|
+
|
|
177
|
+
```markdown
|
|
178
|
+
---
|
|
179
|
+
description: Short description of what the workflow does
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
# Workflow Title
|
|
183
|
+
|
|
184
|
+
> Arguments: [optional arguments description]
|
|
185
|
+
|
|
186
|
+
Step-by-step instructions in markdown.
|
|
187
|
+
|
|
188
|
+
1. First step
|
|
189
|
+
2. Second step
|
|
190
|
+
3. Third step
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### Required YAML Frontmatter Fields
|
|
194
|
+
|
|
195
|
+
| Field | Required | Description |
|
|
196
|
+
|-------|----------|-------------|
|
|
197
|
+
| `description` | **Yes** | Short title/description shown in UI |
|
|
198
|
+
|
|
199
|
+
### Invocation
|
|
200
|
+
|
|
201
|
+
- Slash command: `/workflow-name`
|
|
202
|
+
- Filename becomes the command (e.g., `deploy.md` → `/deploy`)
|
|
203
|
+
|
|
204
|
+
### Constraints
|
|
205
|
+
|
|
206
|
+
- **Character limit**: 12,000 characters per workflow file
|
|
207
|
+
- Workflows can call other workflows: Include instructions like "Call `/other-workflow`"
|
|
208
|
+
|
|
209
|
+
### Example: Complete Workflow
|
|
210
|
+
|
|
211
|
+
**File**: `~/.codeium/windsurf/global_workflows/address-pr-comments.md`
|
|
212
|
+
|
|
213
|
+
```markdown
|
|
214
|
+
---
|
|
215
|
+
description: Address all PR review comments systematically
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
# Address PR Comments
|
|
219
|
+
|
|
220
|
+
> Arguments: [PR number]
|
|
221
|
+
|
|
222
|
+
1. Check out the PR branch: `gh pr checkout [id]`
|
|
223
|
+
|
|
224
|
+
2. Get comments on PR:
|
|
225
|
+
```bash
|
|
226
|
+
gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line}'
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
3. For EACH comment:
|
|
230
|
+
a. Print: "(index). From [user] on [file]:[lines] — [body]"
|
|
231
|
+
b. Analyze the file and line range
|
|
232
|
+
c. If unclear, ask for clarification
|
|
233
|
+
d. Make the change before moving to next comment
|
|
234
|
+
|
|
235
|
+
4. Summarize what was done and which comments need attention
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
## Rules
|
|
241
|
+
|
|
242
|
+
Rules provide persistent behavioral guidelines that influence how Cascade responds.
|
|
243
|
+
|
|
244
|
+
### Storage Locations
|
|
245
|
+
|
|
246
|
+
| Scope | Location |
|
|
247
|
+
|-------|----------|
|
|
248
|
+
| **Global** | `~/.codeium/windsurf/rules/{rule-name}.md` |
|
|
249
|
+
| **Workspace** | `.windsurf/rules/{rule-name}.md` |
|
|
250
|
+
|
|
251
|
+
### File Format
|
|
252
|
+
|
|
253
|
+
Rules are **single markdown files**:
|
|
254
|
+
|
|
255
|
+
```markdown
|
|
256
|
+
---
|
|
257
|
+
description: When to use this rule
|
|
258
|
+
trigger: activation_mode
|
|
259
|
+
globs: ["*.py", "src/**/*.ts"]
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
Rule instructions in markdown format.
|
|
263
|
+
|
|
264
|
+
- Guideline 1
|
|
265
|
+
- Guideline 2
|
|
266
|
+
- Guideline 3
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### YAML Frontmatter Fields
|
|
270
|
+
|
|
271
|
+
| Field | Required | Description |
|
|
272
|
+
|-------|----------|-------------|
|
|
273
|
+
| `description` | **Yes** | Describes when to use the rule |
|
|
274
|
+
| `trigger` | Optional | Activation mode (see below) |
|
|
275
|
+
| `globs` | Optional | File patterns for glob trigger |
|
|
276
|
+
|
|
277
|
+
### Activation Modes (trigger field)
|
|
278
|
+
|
|
279
|
+
| Mode | Value | Description |
|
|
280
|
+
|------|-------|-------------|
|
|
281
|
+
| **Manual** | `manual` | Activated via `@mention` in Cascade input |
|
|
282
|
+
| **Always On** | `always` | Always applied to every conversation |
|
|
283
|
+
| **Model Decision** | `model_decision` | Model decides based on description |
|
|
284
|
+
| **Glob** | `glob` | Applied when working with files matching pattern |
|
|
285
|
+
|
|
286
|
+
### Constraints
|
|
287
|
+
|
|
288
|
+
- **Character limit**: 12,000 characters per rule file
|
|
289
|
+
|
|
290
|
+
### Example: Complete Rule
|
|
291
|
+
|
|
292
|
+
**File**: `~/.codeium/windsurf/rules/python-style.md`
|
|
293
|
+
|
|
294
|
+
```markdown
|
|
295
|
+
---
|
|
296
|
+
description: Python coding standards and style guidelines. Use when writing or reviewing Python code.
|
|
297
|
+
trigger: glob
|
|
298
|
+
globs: ["*.py", "**/*.py"]
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
# Python Coding Guidelines
|
|
302
|
+
|
|
303
|
+
- Use type hints for all function parameters and return values
|
|
304
|
+
- Follow PEP 8 style guide
|
|
305
|
+
- Use early returns when possible
|
|
306
|
+
- Always add docstrings to public functions and classes
|
|
307
|
+
- Prefer f-strings over .format() or % formatting
|
|
308
|
+
- Use pathlib instead of os.path for file operations
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## Memories
|
|
314
|
+
|
|
315
|
+
### Global Rules (Always-On)
|
|
316
|
+
|
|
317
|
+
**Location**: `~/.codeium/windsurf/memories/global_rules.md`
|
|
318
|
+
|
|
319
|
+
This is a special file for rules that **always apply** to all conversations. Unlike rules in the `rules/` directory, this file:
|
|
320
|
+
|
|
321
|
+
- Does **not** require YAML frontmatter
|
|
322
|
+
- Is plain text/markdown
|
|
323
|
+
- Is always active (no trigger configuration)
|
|
324
|
+
|
|
325
|
+
**Format:**
|
|
326
|
+
```markdown
|
|
327
|
+
Plain text rules that always apply to all conversations.
|
|
328
|
+
|
|
329
|
+
- Rule 1
|
|
330
|
+
- Rule 2
|
|
331
|
+
- Rule 3
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
### Auto-Generated Memories
|
|
335
|
+
|
|
336
|
+
Cascade automatically creates memories during conversations, stored as `.pb` (protobuf) files in `~/.codeium/windsurf/memories/`. These are managed by Windsurf and should not be manually edited.
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
340
|
+
## System-Level Configuration (Enterprise)
|
|
341
|
+
|
|
342
|
+
Enterprise organizations can deploy system-level configurations that apply globally and cannot be modified by end users.
|
|
343
|
+
|
|
344
|
+
### System-Level Paths
|
|
345
|
+
|
|
346
|
+
| Type | Windows | macOS | Linux/WSL |
|
|
347
|
+
|------|---------|-------|-----------|
|
|
348
|
+
| **Rules** | `C:\ProgramData\Windsurf\rules\*.md` | `/Library/Application Support/Windsurf/rules/*.md` | `/etc/windsurf/rules/*.md` |
|
|
349
|
+
| **Workflows** | `C:\ProgramData\Windsurf\workflows\*.md` | `/Library/Application Support/Windsurf/workflows/*.md` | `/etc/windsurf/workflows/*.md` |
|
|
350
|
+
|
|
351
|
+
### Precedence Order
|
|
352
|
+
|
|
353
|
+
When items with the same name exist at multiple levels:
|
|
354
|
+
|
|
355
|
+
1. **System** (highest priority) - Organization-wide, deployed by IT
|
|
356
|
+
2. **Workspace** - Project-specific in `.windsurf/`
|
|
357
|
+
3. **Global** - User-defined in `~/.codeium/windsurf/`
|
|
358
|
+
4. **Built-in** - Default items provided by Windsurf
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
362
|
+
## Programmatic Creation Reference
|
|
363
|
+
|
|
364
|
+
### Quick Reference Table
|
|
365
|
+
|
|
366
|
+
| Type | Path Pattern | Format | Key Fields |
|
|
367
|
+
|------|--------------|--------|------------|
|
|
368
|
+
| **Skill** | `skills/{name}/SKILL.md` | YAML frontmatter + markdown | `name`, `description` |
|
|
369
|
+
| **Workflow** | `global_workflows/{name}.md` (global) or `workflows/{name}.md` (workspace) | YAML frontmatter + markdown | `description` |
|
|
370
|
+
| **Rule** | `rules/{name}.md` | YAML frontmatter + markdown | `description`, `trigger`, `globs` |
|
|
371
|
+
| **Global Rules** | `memories/global_rules.md` | Plain text/markdown | None |
|
|
372
|
+
|
|
373
|
+
### Minimal Templates
|
|
374
|
+
|
|
375
|
+
#### Skill (SKILL.md)
|
|
376
|
+
```markdown
|
|
377
|
+
---
|
|
378
|
+
name: my-skill
|
|
379
|
+
description: What this skill does and when to use it
|
|
380
|
+
---
|
|
381
|
+
|
|
382
|
+
Instructions here.
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
#### Workflow
|
|
386
|
+
```markdown
|
|
387
|
+
---
|
|
388
|
+
description: What this workflow does
|
|
389
|
+
---
|
|
390
|
+
|
|
391
|
+
1. Step one
|
|
392
|
+
2. Step two
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
#### Rule
|
|
396
|
+
```markdown
|
|
397
|
+
---
|
|
398
|
+
description: When this rule applies
|
|
399
|
+
trigger: model_decision
|
|
400
|
+
---
|
|
401
|
+
|
|
402
|
+
- Guideline one
|
|
403
|
+
- Guideline two
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
### Validation Checklist
|
|
407
|
+
|
|
408
|
+
When programmatically creating items:
|
|
409
|
+
|
|
410
|
+
- [ ] **Skills**: Directory exists with `SKILL.md` inside
|
|
411
|
+
- [ ] **Skills**: `name` field matches directory name exactly
|
|
412
|
+
- [ ] **Skills**: Name uses only lowercase letters, numbers, hyphens
|
|
413
|
+
- [ ] **Workflows/Rules**: File is `.md` extension
|
|
414
|
+
- [ ] **All**: YAML frontmatter uses `---` delimiters
|
|
415
|
+
- [ ] **All**: `description` field is present and meaningful
|
|
416
|
+
- [ ] **All**: File size under 12,000 characters (workflows/rules)
|
|
417
|
+
|
|
418
|
+
---
|
|
419
|
+
|
|
420
|
+
## Best Practices
|
|
421
|
+
|
|
422
|
+
### Writing Effective Descriptions
|
|
423
|
+
|
|
424
|
+
The `description` field is critical for automatic invocation. Be specific:
|
|
425
|
+
|
|
426
|
+
**Good:**
|
|
427
|
+
```yaml
|
|
428
|
+
description: Guides deployment to staging environment with pre-flight checks. Use when deploying to staging, testing releases, or preparing for production.
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
**Bad:**
|
|
432
|
+
```yaml
|
|
433
|
+
description: Deployment stuff
|
|
434
|
+
```
|
|
435
|
+
|
|
436
|
+
### Formatting Guidelines
|
|
437
|
+
|
|
438
|
+
- Use bullet points and numbered lists (easier for Cascade to follow)
|
|
439
|
+
- Use markdown headers to organize sections
|
|
440
|
+
- Keep rules concise and specific
|
|
441
|
+
- Avoid generic rules like "write good code" (already built-in)
|
|
442
|
+
|
|
443
|
+
### XML Tags for Grouping
|
|
444
|
+
|
|
445
|
+
XML tags can effectively group related rules:
|
|
446
|
+
|
|
447
|
+
```markdown
|
|
448
|
+
<coding_guidelines>
|
|
449
|
+
- Use early returns when possible
|
|
450
|
+
- Always add documentation for new functions
|
|
451
|
+
- Prefer composition over inheritance
|
|
452
|
+
</coding_guidelines>
|
|
453
|
+
|
|
454
|
+
<testing_requirements>
|
|
455
|
+
- Write unit tests for all public methods
|
|
456
|
+
- Maintain 80% code coverage
|
|
457
|
+
</testing_requirements>
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
### Skills vs Rules vs Workflows
|
|
461
|
+
|
|
462
|
+
| Use Case | Recommended |
|
|
463
|
+
|----------|-------------|
|
|
464
|
+
| Multi-step procedure with supporting files | **Skill** |
|
|
465
|
+
| Repeatable CLI/automation sequence | **Workflow** |
|
|
466
|
+
| Coding style preferences | **Rule** |
|
|
467
|
+
| Project conventions | **Rule** |
|
|
468
|
+
| Deployment procedure | **Skill** or **Workflow** |
|
|
469
|
+
| Code review checklist | **Skill** |
|
|
470
|
+
|
|
471
|
+
---
|
|
472
|
+
|
|
473
|
+
## Additional Resources
|
|
474
|
+
|
|
475
|
+
- **Official Documentation**: [docs.windsurf.com](https://docs.windsurf.com)
|
|
476
|
+
- **Skills Specification**: [agentskills.io](https://agentskills.io/home)
|
|
477
|
+
- **Rule Templates**: [windsurf.com/editor/directory](https://windsurf.com/editor/directory)
|
package/package.json
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@every-env/compound-plugin",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.34.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"private": false,
|
|
6
6
|
"bin": {
|
|
7
|
-
"compound-plugin": "
|
|
7
|
+
"compound-plugin": "src/index.ts"
|
|
8
8
|
},
|
|
9
|
+
"homepage": "https://github.com/EveryInc/compound-engineering-plugin",
|
|
10
|
+
"repository": "https://github.com/EveryInc/compound-engineering-plugin",
|
|
9
11
|
"publishConfig": {
|
|
10
12
|
"access": "public"
|
|
11
13
|
},
|
|
@@ -14,13 +16,17 @@
|
|
|
14
16
|
"convert": "bun run src/index.ts convert",
|
|
15
17
|
"list": "bun run src/index.ts list",
|
|
16
18
|
"cli:install": "bun run src/index.ts install",
|
|
17
|
-
"test": "bun test"
|
|
19
|
+
"test": "bun test",
|
|
20
|
+
"release:dry-run": "semantic-release --dry-run"
|
|
18
21
|
},
|
|
19
22
|
"dependencies": {
|
|
20
23
|
"citty": "^0.1.6",
|
|
21
24
|
"js-yaml": "^4.1.0"
|
|
22
25
|
},
|
|
23
26
|
"devDependencies": {
|
|
24
|
-
"
|
|
27
|
+
"@semantic-release/changelog": "^6.0.3",
|
|
28
|
+
"@semantic-release/git": "^10.0.1",
|
|
29
|
+
"bun-types": "^1.0.0",
|
|
30
|
+
"semantic-release": "^25.0.3"
|
|
25
31
|
}
|
|
26
32
|
}
|
|
@@ -275,5 +275,5 @@ Review and enhance the `/docs/index.html` landing page using LaunchKit elements
|
|
|
275
275
|
|
|
276
276
|
- LaunchKit Template: https://launchkit.evilmartians.io/
|
|
277
277
|
- Pragmatic Writing Skill: `~/.claude/skills/pragmatic-writing-skill/SKILL.md`
|
|
278
|
-
- Current Landing Page: `/Users/kieranklaassen/
|
|
279
|
-
- Style CSS: `/Users/kieranklaassen/
|
|
278
|
+
- Current Landing Page: `/Users/kieranklaassen/compound-engineering-plugin/docs/index.html`
|
|
279
|
+
- Style CSS: `/Users/kieranklaassen/compound-engineering-plugin/docs/css/style.css`
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "compound-engineering",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "AI-powered development tools. 29 agents, 22 commands,
|
|
3
|
+
"version": "2.38.1",
|
|
4
|
+
"description": "AI-powered development tools. 29 agents, 22 commands, 20 skills, 1 MCP server for code review, research, design, and workflow automation.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Kieran Klaassen",
|
|
7
7
|
"email": "kieran@every.to",
|
|
@@ -5,6 +5,87 @@ All notable changes to the compound-engineering plugin will be documented in thi
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [2.38.1] - 2026-03-01
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **Cross-platform `AskUserQuestion` fallback** — `setup` skill and `create-new-skill`/`add-workflow` workflows now include an "Interaction Method" preamble that instructs non-Claude LLMs (Codex, Gemini, Copilot, Kiro) to use numbered lists instead of `AskUserQuestion`, preventing silent auto-configuration. ([#204](https://github.com/EveryInc/compound-engineering-plugin/issues/204))
|
|
13
|
+
- **Codex AGENTS.md `AskUserQuestion` mapping** — Strengthened from "ask the user in chat" to structured numbered-list guidance with multi-select support and a "never skip or auto-configure" rule.
|
|
14
|
+
- **Skill compliance checklist** — Added `AskUserQuestion` lint rule to `CLAUDE.md` to prevent recurrence.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## [2.38.0] - 2026-03-01
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
- `workflows:plan`, `workflows:work`, `workflows:review`, `workflows:brainstorm`, `workflows:compound` renamed to `ce:plan`, `ce:work`, `ce:review`, `ce:brainstorm`, `ce:compound` for clarity — the `ce:` prefix unambiguously identifies these as compound-engineering commands
|
|
22
|
+
|
|
23
|
+
### Deprecated
|
|
24
|
+
- `workflows:*` commands — all five remain functional as aliases that forward to their `ce:*` equivalents with a deprecation notice. Will be removed in a future version.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## [2.37.2] - 2026-03-01
|
|
29
|
+
|
|
30
|
+
### Added
|
|
31
|
+
|
|
32
|
+
- **CLI: auto-detect install targets** — `bunx @every-env/compound-plugin install compound-engineering --to all` auto-detects installed AI coding tools and installs to all of them in one command. ([#191](https://github.com/EveryInc/compound-engineering-plugin/pull/191))
|
|
33
|
+
- **CLI: Gemini sync** — `sync --target gemini` symlinks personal skills to `.gemini/skills/` and merges MCP servers into `.gemini/settings.json`. ([#191](https://github.com/EveryInc/compound-engineering-plugin/pull/191))
|
|
34
|
+
- **CLI: sync defaults to `--target all`** — Running `sync` with no target now syncs to all detected tools automatically. ([#191](https://github.com/EveryInc/compound-engineering-plugin/pull/191))
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## [2.37.1] - 2026-03-01
|
|
39
|
+
|
|
40
|
+
### Fixed
|
|
41
|
+
|
|
42
|
+
- **`/workflows:review` rendering** — Fixed broken markdown output: "Next Steps" items 3 & 4 and Severity Breakdown no longer leak outside the Summary Report template, section numbering fixed (was jumping 5→7, now correct), removed orphaned fenced code block delimiters that caused the entire End-to-End Testing section to render as a code block, and fixed unclosed quoted string in section 1. ([#214](https://github.com/EveryInc/compound-engineering-plugin/pull/214)) — thanks [@XSAM](https://github.com/XSAM)!
|
|
43
|
+
- **`.worktrees` gitignore** — Added `.worktrees/` to `.gitignore` to prevent worktree directories created by the `git-worktree` skill from being tracked. ([#213](https://github.com/EveryInc/compound-engineering-plugin/pull/213)) — thanks [@XSAM](https://github.com/XSAM)!
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## [2.37.0] - 2026-03-01
|
|
48
|
+
|
|
49
|
+
### Added
|
|
50
|
+
|
|
51
|
+
- **`proof` skill** — Create, edit, comment on, and share markdown documents via Proof's web API and local bridge. Supports document creation, track-changes suggestions, comments, and bulk rewrites. No authentication required for creating shared documents.
|
|
52
|
+
- **Optional Proof sharing in `/workflows:brainstorm`** — "Share to Proof" is now a menu option in Phase 4 handoff, letting you upload the brainstorm document when you want to, rather than automatically on every run.
|
|
53
|
+
- **Optional Proof sharing in `/workflows:plan`** — "Share to Proof" is now a menu option in Post-Generation Options, letting you upload the plan file on demand rather than automatically.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## [2.36.0] - 2026-03-01
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
|
|
61
|
+
- **OpenClaw install target** — `bunx @every-env/compound-plugin install compound-engineering --to openclaw` now installs the plugin to OpenClaw's extensions directory. ([#217](https://github.com/EveryInc/compound-engineering-plugin/pull/217)) — thanks [@TrendpilotAI](https://github.com/TrendpilotAI)!
|
|
62
|
+
- **Qwen Code install target** — `bunx @every-env/compound-plugin install compound-engineering --to qwen` now installs the plugin to Qwen Code's extensions directory. ([#220](https://github.com/EveryInc/compound-engineering-plugin/pull/220)) — thanks [@rlam3](https://github.com/rlam3)!
|
|
63
|
+
- **Windsurf install target** — `bunx @every-env/compound-plugin install compound-engineering --to windsurf` converts plugins to Windsurf format. Agents become Windsurf skills, commands become flat workflows, and MCP servers write to `mcp_config.json`. Defaults to global scope (`~/.codeium/windsurf/`); use `--scope workspace` for project-level output. ([#202](https://github.com/EveryInc/compound-engineering-plugin/pull/202)) — thanks [@rburnham52](https://github.com/rburnham52)!
|
|
64
|
+
|
|
65
|
+
### Fixed
|
|
66
|
+
|
|
67
|
+
- **`create-agent-skill` / `heal-skill` YAML crash** — `argument-hint` values containing special characters now properly quoted to prevent YAML parse errors in the Claude Code TUI. ([#219](https://github.com/EveryInc/compound-engineering-plugin/pull/219)) — thanks [@solon](https://github.com/solon)!
|
|
68
|
+
- **`resolve-pr-parallel` skill name** — Renamed from `resolve_pr_parallel` (underscore) to `resolve-pr-parallel` (hyphen) to match the standard naming convention. ([#202](https://github.com/EveryInc/compound-engineering-plugin/pull/202)) — thanks [@rburnham52](https://github.com/rburnham52)!
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## [2.35.2] - 2026-02-20
|
|
73
|
+
|
|
74
|
+
### Changed
|
|
75
|
+
|
|
76
|
+
- **`/workflows:plan` brainstorm integration** — When plan finds a brainstorm document, it now heavily references it throughout. Added `origin:` frontmatter field to plan templates, brainstorm cross-check in final review, and "Sources" section at the bottom of all three plan templates (MINIMAL, MORE, A LOT). Brainstorm decisions are carried forward with explicit references (`see brainstorm: <path>`) and a mandatory scan before finalizing ensures nothing is dropped.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## [2.35.1] - 2026-02-18
|
|
81
|
+
|
|
82
|
+
### Changed
|
|
83
|
+
|
|
84
|
+
- **`/workflows:work` system-wide test check** — Added "System-Wide Test Check" to the task execution loop. Before marking a task done, forces five questions: what callbacks/middleware fire when this runs? Do tests exercise the real chain or just mocked isolation? Can failure leave orphaned state? What other interfaces need the same change? Do error strategies align across layers? Includes skip criteria for leaf-node changes. Also added integration test guidance to the "Test Continuously" section.
|
|
85
|
+
- **`/workflows:plan` system-wide impact templates** — Added "System-Wide Impact" section to MORE and A LOT plan templates (interaction graph, error propagation, state lifecycle, API surface parity, integration test scenarios) as lightweight prompts to flag risks during planning.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
8
89
|
## [2.35.0] - 2026-02-17
|
|
9
90
|
|
|
10
91
|
### Fixed
|
|
@@ -83,7 +164,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
83
164
|
- All 29 agent descriptions trimmed from ~1,400 to ~180 chars avg (examples moved to agent body)
|
|
84
165
|
- 18 manual commands marked `disable-model-invocation: true` (side-effect commands like `/lfg`, `/deploy-docs`, `/triage`, etc.)
|
|
85
166
|
- 6 manual skills marked `disable-model-invocation: true` (`orchestrating-swarms`, `git-worktree`, `skill-creator`, `compound-docs`, `file-todos`, `resolve-pr-parallel`)
|
|
86
|
-
- **git-worktree**: Remove confirmation prompt for worktree creation ([@Sam Xie](https://github.com/
|
|
167
|
+
- **git-worktree**: Remove confirmation prompt for worktree creation ([@Sam Xie](https://github.com/XSAM))
|
|
87
168
|
- **Prevent subagents from writing intermediary files** in compound workflow ([@Trevin Chow](https://github.com/trevin))
|
|
88
169
|
|
|
89
170
|
### Fixed
|