@every-env/compound-plugin 0.1.0 → 0.2.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/commands/triage-prs.md +193 -0
- package/.claude-plugin/marketplace.json +4 -4
- package/.github/workflows/ci.yml +25 -0
- package/README.md +25 -4
- package/docs/index.html +14 -14
- package/docs/pages/changelog.html +1 -1
- package/docs/pages/getting-started.html +1 -1
- package/docs/plans/2026-02-08-feat-pr-triage-and-merge-plan.md +128 -0
- package/package.json +1 -1
- package/plans/grow-your-own-garden-plugin-architecture.md +1 -1
- package/plugins/compound-engineering/.claude-plugin/plugin.json +3 -3
- package/plugins/compound-engineering/CHANGELOG.md +32 -0
- package/plugins/compound-engineering/CLAUDE.md +3 -4
- package/plugins/compound-engineering/README.md +20 -7
- package/plugins/compound-engineering/agents/research/best-practices-researcher.md +14 -3
- package/plugins/compound-engineering/agents/research/framework-docs-researcher.md +11 -3
- package/plugins/compound-engineering/agents/research/git-history-analyzer.md +2 -0
- package/plugins/compound-engineering/agents/research/learnings-researcher.md +243 -0
- package/plugins/compound-engineering/agents/research/repo-research-analyst.md +5 -4
- package/plugins/compound-engineering/agents/review/code-simplicity-reviewer.md +1 -0
- package/plugins/compound-engineering/agents/review/pattern-recognition-specialist.md +1 -1
- package/plugins/compound-engineering/agents/review/schema-drift-detector.md +139 -0
- package/plugins/compound-engineering/commands/deepen-plan.md +5 -5
- package/plugins/compound-engineering/commands/report-bug.md +3 -3
- package/plugins/compound-engineering/commands/resolve_todo_parallel.md +2 -0
- package/plugins/compound-engineering/commands/slfg.md +31 -0
- package/plugins/compound-engineering/commands/technical_review.md +7 -0
- package/plugins/compound-engineering/commands/workflows/brainstorm.md +124 -0
- package/plugins/compound-engineering/commands/workflows/compound.md +64 -27
- package/plugins/compound-engineering/commands/workflows/plan.md +127 -42
- package/plugins/compound-engineering/commands/workflows/review.md +12 -0
- package/plugins/compound-engineering/commands/workflows/work.md +72 -2
- package/plugins/compound-engineering/skills/brainstorming/SKILL.md +190 -0
- package/plugins/compound-engineering/skills/compound-docs/SKILL.md +9 -9
- package/plugins/compound-engineering/skills/compound-docs/assets/critical-pattern-template.md +1 -1
- package/plugins/compound-engineering/skills/compound-docs/assets/resolution-template.md +3 -3
- package/plugins/compound-engineering/skills/compound-docs/references/yaml-schema.md +1 -1
- package/plugins/compound-engineering/skills/create-agent-skills/SKILL.md +168 -192
- package/plugins/compound-engineering/skills/create-agent-skills/references/official-spec.md +74 -125
- package/plugins/compound-engineering/skills/create-agent-skills/references/skill-structure.md +109 -329
- package/plugins/compound-engineering/skills/document-review/SKILL.md +87 -0
- package/plugins/compound-engineering/skills/git-worktree/scripts/worktree-manager.sh +2 -10
- package/plugins/compound-engineering/skills/orchestrating-swarms/SKILL.md +1717 -0
- package/plugins/compound-engineering/skills/resolve-pr-parallel/SKILL.md +89 -0
- package/plugins/compound-engineering/skills/resolve-pr-parallel/scripts/get-pr-comments +68 -0
- package/plugins/compound-engineering/skills/resolve-pr-parallel/scripts/resolve-pr-thread +23 -0
- package/src/commands/install.ts +3 -1
- package/src/commands/sync.ts +84 -0
- package/src/converters/claude-to-codex.ts +59 -2
- package/src/converters/claude-to-opencode.ts +7 -5
- package/src/index.ts +2 -0
- package/src/parsers/claude-home.ts +65 -0
- package/src/sync/codex.ts +92 -0
- package/src/sync/opencode.ts +75 -0
- package/src/targets/codex.ts +7 -2
- package/src/targets/opencode.ts +11 -2
- package/src/types/claude.ts +1 -1
- package/src/utils/files.ts +13 -0
- package/src/utils/symlink.ts +43 -0
- package/tests/cli.test.ts +7 -5
- package/tests/codex-converter.test.ts +83 -0
- package/tests/codex-writer.test.ts +32 -0
- package/tests/opencode-writer.test.ts +57 -0
- package/plugins/compound-engineering/commands/plan_review.md +0 -7
- package/plugins/compound-engineering/commands/resolve_pr_parallel.md +0 -49
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: triage-prs
|
|
3
|
+
description: Triage all open PRs with parallel agents, label, group, and review one-by-one
|
|
4
|
+
argument-hint: "[optional: repo owner/name or GitHub PRs URL]"
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
allowed-tools: Bash(gh *), Bash(git log *)
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Triage Open Pull Requests
|
|
10
|
+
|
|
11
|
+
Review, label, and act on all open PRs for a repository using parallel review agents. Produces a grouped triage report, applies labels, cross-references with issues, and walks through each PR for merge/comment decisions.
|
|
12
|
+
|
|
13
|
+
## Step 0: Detect Repository
|
|
14
|
+
|
|
15
|
+
Detect repo context:
|
|
16
|
+
- Current repo: !`gh repo view --json nameWithOwner -q .nameWithOwner 2>/dev/null || echo "no repo detected"`
|
|
17
|
+
- Current branch: !`git branch --show-current 2>/dev/null`
|
|
18
|
+
|
|
19
|
+
If `$ARGUMENTS` contains a GitHub URL or `owner/repo`, use that instead. Confirm the repo with the user if ambiguous.
|
|
20
|
+
|
|
21
|
+
## Step 1: Gather Context (Parallel)
|
|
22
|
+
|
|
23
|
+
Run these in parallel:
|
|
24
|
+
|
|
25
|
+
1. **List all open PRs:**
|
|
26
|
+
```bash
|
|
27
|
+
gh pr list --repo OWNER/REPO --state open --limit 50
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
2. **List all open issues:**
|
|
31
|
+
```bash
|
|
32
|
+
gh issue list --repo OWNER/REPO --state open --limit 50
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
3. **List existing labels:**
|
|
36
|
+
```bash
|
|
37
|
+
gh label list --repo OWNER/REPO --limit 50
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
4. **Check recent merges** (to detect duplicate/superseded PRs):
|
|
41
|
+
```bash
|
|
42
|
+
git log --oneline -20 main
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Step 2: Batch PRs by Theme
|
|
46
|
+
|
|
47
|
+
Group PRs into review batches of 4-6 based on apparent type:
|
|
48
|
+
|
|
49
|
+
- **Bug fixes** - titles with `fix`, `bug`, error descriptions
|
|
50
|
+
- **Features** - titles with `feat`, `add`, new functionality
|
|
51
|
+
- **Documentation** - titles with `docs`, `readme`, terminology
|
|
52
|
+
- **Configuration/Setup** - titles with `config`, `setup`, `install`
|
|
53
|
+
- **Stale/Old** - PRs older than 30 days
|
|
54
|
+
|
|
55
|
+
## Step 3: Parallel Review (Team of Agents)
|
|
56
|
+
|
|
57
|
+
Spawn one review agent per batch using the Task tool. Each agent should:
|
|
58
|
+
|
|
59
|
+
For each PR in their batch:
|
|
60
|
+
1. Run `gh pr view --repo OWNER/REPO <number> --json title,body,files,additions,deletions,author,createdAt`
|
|
61
|
+
2. Run `gh pr diff --repo OWNER/REPO <number>` (pipe to `head -200` for large diffs)
|
|
62
|
+
3. Determine:
|
|
63
|
+
- **Description:** 1-2 sentence summary of the change
|
|
64
|
+
- **Label:** Which existing repo label fits best
|
|
65
|
+
- **Action:** merge / request changes / close / needs discussion
|
|
66
|
+
- **Related PRs:** Any PRs in this or other batches that touch the same files or feature
|
|
67
|
+
- **Quality notes:** Code quality, test coverage, staleness concerns
|
|
68
|
+
|
|
69
|
+
Instruct each agent to:
|
|
70
|
+
- Flag PRs that touch the same files (potential merge conflicts)
|
|
71
|
+
- Flag PRs that duplicate recently merged work
|
|
72
|
+
- Flag PRs that are part of a group solving the same problem differently
|
|
73
|
+
- Report findings as a markdown table
|
|
74
|
+
- Send findings back via message when done
|
|
75
|
+
|
|
76
|
+
## Step 4: Cross-Reference Issues
|
|
77
|
+
|
|
78
|
+
After all agents report, match issues to PRs:
|
|
79
|
+
|
|
80
|
+
- Check if any PR title/body mentions `Fixes #X` or `Closes #X`
|
|
81
|
+
- Check if any issue title matches a PR's topic
|
|
82
|
+
- Look for duplicate issues (same bug reported twice)
|
|
83
|
+
|
|
84
|
+
Build a mapping table:
|
|
85
|
+
```
|
|
86
|
+
| Issue | PR | Relationship |
|
|
87
|
+
|-------|-----|--------------|
|
|
88
|
+
| #158 | #159 | PR fixes issue |
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Step 5: Identify Themes
|
|
92
|
+
|
|
93
|
+
Group all issues into themes (3-6 themes):
|
|
94
|
+
- Count issues per theme
|
|
95
|
+
- Note which themes have PRs addressing them and which don't
|
|
96
|
+
- Flag themes with competing/overlapping PRs
|
|
97
|
+
|
|
98
|
+
## Step 6: Compile Triage Report
|
|
99
|
+
|
|
100
|
+
Present a single report with:
|
|
101
|
+
|
|
102
|
+
1. **Summary stats:** X open PRs, Y open issues, Z themes
|
|
103
|
+
2. **PR groups** with recommended actions:
|
|
104
|
+
- Group name and related PRs
|
|
105
|
+
- Per-PR: #, title, author, description, label, action
|
|
106
|
+
3. **Issue-to-PR mapping**
|
|
107
|
+
4. **Themes across issues**
|
|
108
|
+
5. **Suggested cleanup:** spam issues, duplicates, stale items
|
|
109
|
+
|
|
110
|
+
## Step 7: Apply Labels
|
|
111
|
+
|
|
112
|
+
After presenting the report, ask user:
|
|
113
|
+
|
|
114
|
+
> "Apply these labels to all PRs on GitHub?"
|
|
115
|
+
|
|
116
|
+
If yes, run `gh pr edit --repo OWNER/REPO <number> --add-label "<label>"` for each PR.
|
|
117
|
+
|
|
118
|
+
## Step 8: One-by-One Review
|
|
119
|
+
|
|
120
|
+
Use **AskUserQuestion** to ask:
|
|
121
|
+
|
|
122
|
+
> "Ready to walk through PRs one-by-one for merge/comment decisions?"
|
|
123
|
+
|
|
124
|
+
Then for each PR, ordered by priority (bug fixes first, then docs, then features, then stale):
|
|
125
|
+
|
|
126
|
+
### Show the PR:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
### PR #<number> - <title>
|
|
130
|
+
Author: <author> | Files: <count> | +<additions>/-<deletions> | <age>
|
|
131
|
+
Label: <label>
|
|
132
|
+
|
|
133
|
+
<1-2 sentence description>
|
|
134
|
+
|
|
135
|
+
Fixes: <linked issues if any>
|
|
136
|
+
Related: <related PRs if any>
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Show the diff (trimmed to key changes if large).
|
|
140
|
+
|
|
141
|
+
### Ask for decision:
|
|
142
|
+
|
|
143
|
+
Use **AskUserQuestion**:
|
|
144
|
+
- **Merge** - Merge this PR now
|
|
145
|
+
- **Comment & skip** - Leave a comment explaining why not merging, keep open
|
|
146
|
+
- **Close** - Close with a comment
|
|
147
|
+
- **Skip** - Move to next without action
|
|
148
|
+
|
|
149
|
+
### Execute decision:
|
|
150
|
+
|
|
151
|
+
- **Merge:** `gh pr merge --repo OWNER/REPO <number> --squash`
|
|
152
|
+
- If PR fixes an issue, close the issue too
|
|
153
|
+
- **Comment & skip:** `gh pr comment --repo OWNER/REPO <number> --body "<comment>"`
|
|
154
|
+
- Ask user what to say, or generate a grateful + specific comment
|
|
155
|
+
- **Close:** `gh pr close --repo OWNER/REPO <number> --comment "<reason>"`
|
|
156
|
+
- **Skip:** Move on
|
|
157
|
+
|
|
158
|
+
## Step 9: Post-Merge Cleanup
|
|
159
|
+
|
|
160
|
+
After all PRs are reviewed:
|
|
161
|
+
|
|
162
|
+
1. **Close resolved issues** that were fixed by merged PRs
|
|
163
|
+
2. **Close spam/off-topic issues** (confirm with user first)
|
|
164
|
+
3. **Summary of actions taken:**
|
|
165
|
+
```
|
|
166
|
+
## Triage Complete
|
|
167
|
+
|
|
168
|
+
Merged: X PRs
|
|
169
|
+
Commented: Y PRs
|
|
170
|
+
Closed: Z PRs
|
|
171
|
+
Skipped: W PRs
|
|
172
|
+
|
|
173
|
+
Issues closed: A
|
|
174
|
+
Labels applied: B
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
## Step 10: Post-Triage Options
|
|
178
|
+
|
|
179
|
+
Use **AskUserQuestion**:
|
|
180
|
+
|
|
181
|
+
1. **Run `/release-docs`** - Update documentation site if components changed
|
|
182
|
+
2. **Run `/changelog`** - Generate changelog for merged PRs
|
|
183
|
+
3. **Commit any local changes** - If version bumps needed
|
|
184
|
+
4. **Done** - Wrap up
|
|
185
|
+
|
|
186
|
+
## Important Notes
|
|
187
|
+
|
|
188
|
+
- **DO NOT merge without user approval** for each PR
|
|
189
|
+
- **DO NOT force push or destructive actions**
|
|
190
|
+
- Comments on declined PRs should be grateful and constructive
|
|
191
|
+
- When PRs conflict with each other, note this and suggest merge order
|
|
192
|
+
- When multiple PRs solve the same problem differently, flag for user to pick one
|
|
193
|
+
- Use Haiku model for review agents to save cost (they're doing read-only analysis)
|
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "compound-engineering",
|
|
14
|
-
"description": "AI-powered development tools that get smarter with every use. Make each unit of engineering work easier than the last. Includes
|
|
15
|
-
"version": "2.
|
|
14
|
+
"description": "AI-powered development tools that get smarter with every use. Make each unit of engineering work easier than the last. Includes 29 specialized agents, 25 commands, and 16 skills.",
|
|
15
|
+
"version": "2.30.0",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "Kieran Klaassen",
|
|
18
18
|
"url": "https://github.com/kieranklaassen",
|
|
19
19
|
"email": "kieran@every.to"
|
|
20
20
|
},
|
|
21
|
-
"homepage": "https://github.com/
|
|
21
|
+
"homepage": "https://github.com/EveryInc/compound-engineering-plugin",
|
|
22
22
|
"tags": ["ai-powered", "compound-engineering", "workflow-automation", "code-review", "quality", "knowledge-management", "image-generation"],
|
|
23
23
|
"source": "./plugins/compound-engineering"
|
|
24
24
|
},
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"author": {
|
|
30
30
|
"name": "Nityesh Agarwal"
|
|
31
31
|
},
|
|
32
|
-
"homepage": "https://github.com/
|
|
32
|
+
"homepage": "https://github.com/EveryInc/compound-engineering-plugin",
|
|
33
33
|
"tags": ["coding", "programming", "tutorial", "learning", "spaced-repetition", "education"],
|
|
34
34
|
"source": "./plugins/coding-tutor"
|
|
35
35
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
|
|
16
|
+
- name: Setup Bun
|
|
17
|
+
uses: oven-sh/setup-bun@v2
|
|
18
|
+
with:
|
|
19
|
+
bun-version: latest
|
|
20
|
+
|
|
21
|
+
- name: Install dependencies
|
|
22
|
+
run: bun install
|
|
23
|
+
|
|
24
|
+
- name: Run tests
|
|
25
|
+
run: bun test
|
package/README.md
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
# Compound Marketplace
|
|
2
2
|
|
|
3
|
+
[](https://github.com/EveryInc/compound-engineering-plugin/actions/workflows/ci.yml)
|
|
4
|
+
[](https://www.npmjs.com/package/@every-env/compound-plugin)
|
|
5
|
+
|
|
3
6
|
A Claude Code plugin marketplace featuring the **Compound Engineering Plugin** — tools that make each unit of engineering work easier than the last.
|
|
4
7
|
|
|
5
|
-
## Install
|
|
8
|
+
## Claude Code Install
|
|
6
9
|
|
|
7
10
|
```bash
|
|
8
|
-
/plugin marketplace add https://github.com/
|
|
11
|
+
/plugin marketplace add https://github.com/EveryInc/compound-engineering-plugin
|
|
9
12
|
/plugin install compound-engineering
|
|
10
13
|
```
|
|
11
14
|
|
|
12
|
-
## OpenCode + Codex
|
|
15
|
+
## OpenCode + Codex (experimental) Install
|
|
13
16
|
|
|
14
17
|
This repo includes a Bun/TypeScript CLI that converts Claude Code plugins to OpenCode and Codex.
|
|
15
18
|
|
|
@@ -27,10 +30,28 @@ Local dev:
|
|
|
27
30
|
bun run src/index.ts install ./plugins/compound-engineering --to opencode
|
|
28
31
|
```
|
|
29
32
|
|
|
30
|
-
OpenCode output is written to `~/.opencode` by default, with `opencode.json` at the root and `agents/`, `skills/`, and `plugins/` alongside it.
|
|
33
|
+
OpenCode output is written to `~/.config/opencode` by default, with `opencode.json` at the root and `agents/`, `skills/`, and `plugins/` alongside it.
|
|
31
34
|
Both provider targets are experimental and may change as the formats evolve.
|
|
32
35
|
Codex output is written to `~/.codex/prompts` and `~/.codex/skills`, with each Claude command converted into both a prompt and a skill (the prompt instructs Codex to load the corresponding skill). Generated Codex skill descriptions are truncated to 1024 characters (Codex limit).
|
|
33
36
|
|
|
37
|
+
## Sync Personal Config
|
|
38
|
+
|
|
39
|
+
Sync your personal Claude Code config (`~/.claude/`) to OpenCode or Codex:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Sync skills and MCP servers to OpenCode
|
|
43
|
+
bunx @every-env/compound-plugin sync --target opencode
|
|
44
|
+
|
|
45
|
+
# Sync to Codex
|
|
46
|
+
bunx @every-env/compound-plugin sync --target codex
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
This syncs:
|
|
50
|
+
- Personal skills from `~/.claude/skills/` (as symlinks)
|
|
51
|
+
- MCP servers from `~/.claude/settings.json`
|
|
52
|
+
|
|
53
|
+
Skills are symlinked (not copied) so changes in Claude Code are reflected immediately.
|
|
54
|
+
|
|
34
55
|
## Workflow
|
|
35
56
|
|
|
36
57
|
```
|
package/docs/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<head>
|
|
5
5
|
<meta charset="utf-8" />
|
|
6
6
|
<title>Compounding Engineering - AI-Powered Development Tools for Claude Code</title>
|
|
7
|
-
<meta content="Your code reviews just got 12 expert opinions in 30 seconds.
|
|
7
|
+
<meta content="Your code reviews just got 12 expert opinions in 30 seconds. 28 specialized agents, 24 workflow commands, and 15 skills that make today's work easier than yesterday's." name="description" />
|
|
8
8
|
<meta content="width=device-width, initial-scale=1" name="viewport" />
|
|
9
9
|
|
|
10
10
|
<!-- Open Graph -->
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
<meta property="og:site_name" content="Compounding Engineering" />
|
|
13
13
|
<meta property="og:locale" content="en_US" />
|
|
14
14
|
<meta property="og:title" content="Compounding Engineering - AI Development Tools" />
|
|
15
|
-
<meta property="og:description" content="Get 12 expert code reviews in 30 seconds.
|
|
15
|
+
<meta property="og:description" content="Get 12 expert code reviews in 30 seconds. 28 specialized agents that make today's work easier than yesterday's." />
|
|
16
16
|
<meta name="twitter:card" content="summary_large_image" />
|
|
17
17
|
<meta name="twitter:title" content="Compounding Engineering" />
|
|
18
18
|
<meta name="twitter:description" content="12 expert code reviews in 30 seconds. Make today's work easier than yesterday's." />
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
<a href="pages/getting-started.html" class="nav-link">Docs</a>
|
|
140
140
|
</nav>
|
|
141
141
|
<div class="button-group">
|
|
142
|
-
<a href="https://github.com/
|
|
142
|
+
<a href="https://github.com/EveryInc/compound-engineering-plugin" class="button ghost compact hide-on-mobile">
|
|
143
143
|
<div class="fa-brands fa-github icon l"></div>
|
|
144
144
|
</a>
|
|
145
145
|
<a href="#install" class="button primary compact">Install</a>
|
|
@@ -154,14 +154,14 @@
|
|
|
154
154
|
<section class="hero-section">
|
|
155
155
|
<div class="hero-decoration"></div>
|
|
156
156
|
<div class="heading hero centered">
|
|
157
|
-
<a href="https://github.com/
|
|
158
|
-
<i class="fa-solid fa-rocket"></i> Version 2.
|
|
157
|
+
<a href="https://github.com/EveryInc/compound-engineering-plugin/releases" class="eyebrow">
|
|
158
|
+
<i class="fa-solid fa-rocket"></i> Version 2.28.0 released!
|
|
159
159
|
</a>
|
|
160
160
|
<h1 class="balanced" style="margin-bottom: 32px;">
|
|
161
161
|
Your Code Reviews Just Got 12 Expert Opinions. In 30 Seconds.
|
|
162
162
|
</h1>
|
|
163
163
|
<p class="paragraph m secondary balanced" style="margin-bottom: 32px;">
|
|
164
|
-
Here's what happened when we shipped yesterday: security audit, performance analysis, architectural review, pattern detection, and eight more specialized checks—all running in parallel. No meetings. No waiting. Just answers. That's compounding engineering:
|
|
164
|
+
Here's what happened when we shipped yesterday: security audit, performance analysis, architectural review, pattern detection, and eight more specialized checks—all running in parallel. No meetings. No waiting. Just answers. That's compounding engineering: 28 specialized agents, 24 workflow commands, and 15 skills that make today's work easier than yesterday's.
|
|
165
165
|
</p>
|
|
166
166
|
<div class="button-group margin-paragraph centered">
|
|
167
167
|
<a href="#install" class="button primary">
|
|
@@ -179,23 +179,23 @@
|
|
|
179
179
|
<div class="stats-container">
|
|
180
180
|
<div class="stat-card">
|
|
181
181
|
<div class="stat-icon"><i class="fa-solid fa-users-gear"></i></div>
|
|
182
|
-
<div class="stat-number">
|
|
182
|
+
<div class="stat-number">28</div>
|
|
183
183
|
<div class="stat-label">Specialized Agents</div>
|
|
184
184
|
</div>
|
|
185
185
|
<div class="stat-card">
|
|
186
186
|
<div class="stat-icon"><i class="fa-solid fa-terminal"></i></div>
|
|
187
|
-
<div class="stat-number">
|
|
187
|
+
<div class="stat-number">24</div>
|
|
188
188
|
<div class="stat-label">Slash Commands</div>
|
|
189
189
|
</div>
|
|
190
190
|
<div class="stat-card">
|
|
191
191
|
<div class="stat-icon"><i class="fa-solid fa-wand-magic-sparkles"></i></div>
|
|
192
|
-
<div class="stat-number">
|
|
192
|
+
<div class="stat-number">15</div>
|
|
193
193
|
<div class="stat-label">Intelligent Skills</div>
|
|
194
194
|
</div>
|
|
195
195
|
<div class="stat-card">
|
|
196
196
|
<div class="stat-icon"><i class="fa-solid fa-server"></i></div>
|
|
197
|
-
<div class="stat-number">
|
|
198
|
-
<div class="stat-label">MCP
|
|
197
|
+
<div class="stat-number">1</div>
|
|
198
|
+
<div class="stat-label">MCP Server</div>
|
|
199
199
|
</div>
|
|
200
200
|
</div>
|
|
201
201
|
</section>
|
|
@@ -884,7 +884,7 @@
|
|
|
884
884
|
<div class="step-content">
|
|
885
885
|
<h3>Add the Marketplace</h3>
|
|
886
886
|
<div class="card-code-block">
|
|
887
|
-
<pre><code>claude /plugin marketplace add https://github.com/
|
|
887
|
+
<pre><code>claude /plugin marketplace add https://github.com/EveryInc/compound-engineering-plugin</code></pre>
|
|
888
888
|
</div>
|
|
889
889
|
</div>
|
|
890
890
|
</div>
|
|
@@ -996,7 +996,7 @@ skill: gemini-imagegen</code></pre>
|
|
|
996
996
|
<i class="fa-solid fa-download"></i> Install Plugin Now
|
|
997
997
|
<span class="button-arrow">→</span>
|
|
998
998
|
</a>
|
|
999
|
-
<a href="https://github.com/
|
|
999
|
+
<a href="https://github.com/EveryInc/compound-engineering-plugin" class="button tertiary cta-secondary">
|
|
1000
1000
|
<i class="fa-brands fa-github"></i> View on GitHub
|
|
1001
1001
|
</a>
|
|
1002
1002
|
</div>
|
|
@@ -1024,7 +1024,7 @@ skill: gemini-imagegen</code></pre>
|
|
|
1024
1024
|
</div>
|
|
1025
1025
|
<div>
|
|
1026
1026
|
<div class="link-list">
|
|
1027
|
-
<a href="https://github.com/
|
|
1027
|
+
<a href="https://github.com/EveryInc/compound-engineering-plugin" class="icon-link ui s" target="_blank">
|
|
1028
1028
|
<div class="fa-brands fa-github icon m color-accent"></div>
|
|
1029
1029
|
<div class="pseudo-link">GitHub</div>
|
|
1030
1030
|
</a>
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
<strong><code>/report-bug</code> command</strong> - New slash command for reporting bugs in the
|
|
119
119
|
compound-engineering plugin. Provides a structured workflow that gathers bug information
|
|
120
120
|
through guided questions, collects environment details automatically, and creates a GitHub
|
|
121
|
-
issue in the
|
|
121
|
+
issue in the EveryInc/compound-engineering-plugin repository.
|
|
122
122
|
</li>
|
|
123
123
|
</ul>
|
|
124
124
|
</div>
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
<h3>Step 1: Add the Marketplace</h3>
|
|
98
98
|
<p>Think of the marketplace as an app store. You're adding it to Claude Code's list of places to look for plugins:</p>
|
|
99
99
|
<div class="card-code-block">
|
|
100
|
-
<pre><code>claude /plugin marketplace add https://github.com/
|
|
100
|
+
<pre><code>claude /plugin marketplace add https://github.com/EveryInc/compound-engineering-plugin</code></pre>
|
|
101
101
|
</div>
|
|
102
102
|
|
|
103
103
|
<h3>Step 2: Install the Plugin</h3>
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: PR Triage, Review & Merge
|
|
3
|
+
type: feat
|
|
4
|
+
date: 2026-02-08
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PR Triage, Review & Merge
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
Review all 17 open PRs one-by-one. Merge the ones that look good, leave constructive comments on the ones we won't take (keeping them open for contributors to address). Close duplicates/spam.
|
|
12
|
+
|
|
13
|
+
## Approach
|
|
14
|
+
|
|
15
|
+
Show the diff for each PR, get a go/no-go, then either merge or comment. PRs are ordered by priority group.
|
|
16
|
+
|
|
17
|
+
## Group 1: Bug Fixes (high confidence merges)
|
|
18
|
+
|
|
19
|
+
### PR #159 - fix(git-worktree): detect worktrees where .git is a file
|
|
20
|
+
- **Author:** dalley | **Files:** 1 | **+2/-2**
|
|
21
|
+
- **What:** Changes `-d` to `-e` check in `worktree-manager.sh` so `list` and `cleanup` detect worktrees (`.git` is a file in worktrees, not a dir)
|
|
22
|
+
- **Fixes:** Issue #158
|
|
23
|
+
- **Action:** Review diff → merge
|
|
24
|
+
|
|
25
|
+
### PR #144 - Remove confirmation prompt when creating git worktrees
|
|
26
|
+
- **Author:** XSAM | **Files:** 1 | **+0/-8**
|
|
27
|
+
- **What:** Removes interactive `read -r` confirmation that breaks Claude's ability to create worktrees
|
|
28
|
+
- **Related:** Same file as #159 (merge #159 first)
|
|
29
|
+
- **Action:** Review diff → merge
|
|
30
|
+
|
|
31
|
+
### PR #150 - fix(compound): prevent subagents from writing intermediary files
|
|
32
|
+
- **Author:** tmchow | **Files:** 1 | **+64/-27**
|
|
33
|
+
- **What:** Restructures `/workflows:compound` into 2-phase orchestration to prevent subagents from writing temp files
|
|
34
|
+
- **Action:** Review diff → merge
|
|
35
|
+
|
|
36
|
+
### PR #148 - Fix: resolve_pr_parallel uses non-existent scripts
|
|
37
|
+
- **Author:** ajrobertsonio | **Files:** 1 | **+20/-7**
|
|
38
|
+
- **What:** Replaces references to non-existent `bin/get-pr-comments` with standard `gh` CLI commands
|
|
39
|
+
- **Fixes:** Issues #147, #54
|
|
40
|
+
- **Action:** Review diff → merge
|
|
41
|
+
|
|
42
|
+
## Group 2: Documentation (clean, low-risk)
|
|
43
|
+
|
|
44
|
+
### PR #133 - Fix terminology: third person → passive voice
|
|
45
|
+
- **Author:** FauxReal9999 | **Files:** 13 | docs-only
|
|
46
|
+
- **What:** Corrects "third person" to "passive voice" across docs (accurate fix)
|
|
47
|
+
- **Action:** Review diff → merge
|
|
48
|
+
|
|
49
|
+
### PR #108 - Note new repository URL
|
|
50
|
+
- **Author:** akx | **Files:** 5 | docs-only
|
|
51
|
+
- **What:** Updates URLs from `kieranklaassen/compound-engineering-plugin` to `EveryInc/compound-engineering-plugin`
|
|
52
|
+
- **Action:** Review diff → merge
|
|
53
|
+
|
|
54
|
+
### PR #113 - docs: add brainstorm command to workflow documentation
|
|
55
|
+
- **Author:** tmchow | docs-only
|
|
56
|
+
- **What:** Adds brainstorming skill and learnings-researcher agent to README, fixes component counts
|
|
57
|
+
- **Action:** Review diff → merge
|
|
58
|
+
|
|
59
|
+
### PR #80 - docs: Add LSP prioritization guidance
|
|
60
|
+
- **Author:** kevinold | **Files:** 1 | docs-only
|
|
61
|
+
- **What:** Adds docs showing users how to customize agent behavior via project CLAUDE.md to prioritize LSP
|
|
62
|
+
- **Action:** Review diff → merge
|
|
63
|
+
|
|
64
|
+
## Group 3: Enhancements (likely merge)
|
|
65
|
+
|
|
66
|
+
### PR #119 - fix: backup existing config files before overwriting
|
|
67
|
+
- **Author:** jzw | **Files:** 5 | **+90/-3** | has tests
|
|
68
|
+
- **What:** Adds `backupFile()` utility to create timestamped backups before overwriting Codex/OpenCode configs
|
|
69
|
+
- **Fixes:** Issue #125
|
|
70
|
+
- **Action:** Review diff → merge
|
|
71
|
+
|
|
72
|
+
### PR #112 - feat(skills): add document-review skill
|
|
73
|
+
- **Author:** tmchow | enhancement
|
|
74
|
+
- **What:** Adds document-review skill for brainstorm/plan refinement, renames `/plan_review` → `/technical_review`
|
|
75
|
+
- **Note:** Breaking rename - needs review
|
|
76
|
+
- **Action:** Review diff → decide
|
|
77
|
+
|
|
78
|
+
## Group 4: Needs Discussion (comment and leave open)
|
|
79
|
+
|
|
80
|
+
### PR #157 - Rewrite workflows:review with context-managed map-reduce
|
|
81
|
+
- **Author:** Drewx-Design | large rewrite
|
|
82
|
+
- **What:** Complete rewrite of review command with file-based map-reduce architecture
|
|
83
|
+
- **Comment:** Acknowledge quality, note it's a big change that needs dedicated review session
|
|
84
|
+
|
|
85
|
+
### PR #131 - feat: add vmark-mcp plugin
|
|
86
|
+
- **Author:** xiaolai | new plugin
|
|
87
|
+
- **What:** Adds entirely new VMark markdown editor plugin to marketplace
|
|
88
|
+
- **Comment:** Ask for more context on fit with marketplace scope
|
|
89
|
+
|
|
90
|
+
### PR #124 - feat(commands): add /compound-engineering-setup
|
|
91
|
+
- **Author:** internal | config
|
|
92
|
+
- **What:** Interactive setup command for configuring review agents per project
|
|
93
|
+
- **Comment:** Note overlap with #103, needs unified config strategy
|
|
94
|
+
|
|
95
|
+
### PR #123 - feat: Add sync command for Claude Code personal config
|
|
96
|
+
- **Author:** terry-li-hm | config
|
|
97
|
+
- **What:** Sync personal Claude config across machines/editors
|
|
98
|
+
- **Comment:** Note overlap with #124 and #103, needs unified config strategy
|
|
99
|
+
|
|
100
|
+
### PR #103 - Add /compound:configure with persistent user preferences
|
|
101
|
+
- **Author:** aviflombaum | **+36,866** lines
|
|
102
|
+
- **What:** Massive architectural change adding persistent config with build system
|
|
103
|
+
- **Comment:** Too large, suggest breaking into smaller PRs
|
|
104
|
+
|
|
105
|
+
## Group 5: Close
|
|
106
|
+
|
|
107
|
+
### PR #122 - [EXPERIMENTAL] add /slfg and /swarm-status
|
|
108
|
+
- **Label:** duplicate
|
|
109
|
+
- **What:** Already merged in v2.30.0 (commit e4ff6a8)
|
|
110
|
+
- **Action:** Comment explaining it's been superseded, close
|
|
111
|
+
|
|
112
|
+
### PR #68 - Improve all 13 skills to 90%+ grades
|
|
113
|
+
- **Label:** wontfix
|
|
114
|
+
- **What:** Massive stale PR (Jan 6), based on 13 skills when we now have 16+
|
|
115
|
+
- **Action:** Comment thanking contributor, suggest fresh PR against current main, close
|
|
116
|
+
|
|
117
|
+
## Post-Merge Cleanup
|
|
118
|
+
|
|
119
|
+
After merging:
|
|
120
|
+
- [ ] Close issues fixed by merged PRs (#158, #147, #54, #125)
|
|
121
|
+
- [ ] Close spam issues (#98, #56)
|
|
122
|
+
- [ ] Run `/release-docs` to update documentation site with new component counts
|
|
123
|
+
- [ ] Bump version in plugin.json if needed
|
|
124
|
+
|
|
125
|
+
## References
|
|
126
|
+
|
|
127
|
+
- PR list: https://github.com/EveryInc/compound-engineering-plugin/pulls
|
|
128
|
+
- Issues: https://github.com/EveryInc/compound-engineering-plugin/issues
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "compound-engineering",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "AI-powered development tools.
|
|
3
|
+
"version": "2.30.0",
|
|
4
|
+
"description": "AI-powered development tools. 29 agents, 25 commands, 16 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",
|
|
8
8
|
"url": "https://github.com/kieranklaassen"
|
|
9
9
|
},
|
|
10
10
|
"homepage": "https://every.to/source-code/my-ai-had-already-fixed-the-code-before-i-saw-it",
|
|
11
|
-
"repository": "https://github.com/
|
|
11
|
+
"repository": "https://github.com/EveryInc/compound-engineering-plugin",
|
|
12
12
|
"license": "MIT",
|
|
13
13
|
"keywords": [
|
|
14
14
|
"ai-powered",
|
|
@@ -5,6 +5,38 @@ 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.30.0] - 2026-02-05
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **`orchestrating-swarms` skill** - Comprehensive guide to multi-agent orchestration
|
|
13
|
+
- Covers primitives: Agent, Team, Teammate, Leader, Task, Inbox, Message, Backend
|
|
14
|
+
- Documents two spawning methods: subagents vs teammates
|
|
15
|
+
- Explains all 13 TeammateTool operations
|
|
16
|
+
- Includes orchestration patterns: Parallel Specialists, Pipeline, Self-Organizing Swarm
|
|
17
|
+
- Details spawn backends: in-process, tmux, iterm2
|
|
18
|
+
- Provides complete workflow examples
|
|
19
|
+
- **`/slfg` command** - Swarm-enabled variant of `/lfg` that uses swarm mode for parallel execution
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
|
|
23
|
+
- **`/workflows:work` command** - Added optional Swarm Mode section for parallel execution with coordinated agents
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## [2.29.0] - 2026-02-04
|
|
28
|
+
|
|
29
|
+
### Added
|
|
30
|
+
|
|
31
|
+
- **`schema-drift-detector` agent** - Detects unrelated schema.rb changes in PRs
|
|
32
|
+
- Compares schema.rb diff against migrations in the PR
|
|
33
|
+
- Catches columns, indexes, and tables from other branches
|
|
34
|
+
- Prevents accidental inclusion of local database state
|
|
35
|
+
- Provides clear fix instructions (checkout + migrate)
|
|
36
|
+
- Essential pre-merge check for any PR with database changes
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
8
40
|
## [2.28.0] - 2026-01-21
|
|
9
41
|
|
|
10
42
|
### Added
|
|
@@ -59,7 +59,7 @@ When adding or modifying skills, verify compliance with skill-creator spec:
|
|
|
59
59
|
### YAML Frontmatter (Required)
|
|
60
60
|
|
|
61
61
|
- [ ] `name:` present and matches directory name (lowercase-with-hyphens)
|
|
62
|
-
- [ ] `description:` present and
|
|
62
|
+
- [ ] `description:` present and describes **what it does and when to use it** (per official spec: "Explains code with diagrams. Use when exploring how code works.")
|
|
63
63
|
|
|
64
64
|
### Reference Links (Required if references/ exists)
|
|
65
65
|
|
|
@@ -80,9 +80,8 @@ When adding or modifying skills, verify compliance with skill-creator spec:
|
|
|
80
80
|
grep -E '`(references|assets|scripts)/[^`]+`' skills/*/SKILL.md
|
|
81
81
|
# Should return nothing if all refs are properly linked
|
|
82
82
|
|
|
83
|
-
# Check description format
|
|
84
|
-
grep -E '^description:' skills/*/SKILL.md
|
|
85
|
-
# Should return nothing if all use third person
|
|
83
|
+
# Check description format - should describe what + when
|
|
84
|
+
grep -E '^description:' skills/*/SKILL.md
|
|
86
85
|
```
|
|
87
86
|
|
|
88
87
|
## Documentation
|