@event4u/agent-config 1.38.0 → 1.40.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/.agent-src/commands/onboard.md +131 -50
- package/.agent-src/commands/orchestrate.md +123 -0
- package/.agent-src/commands/sync-gitignore/fix.md +135 -0
- package/.agent-src/commands/sync-gitignore.md +31 -5
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +30 -2
- package/.agent-src/skills/subagent-orchestration/SKILL.md +9 -0
- package/.agent-src/skills/using-git-worktrees/SKILL.md +25 -0
- package/.agent-src/templates/agent-settings.md +9 -0
- package/.agent-src/templates/agents/agent-project-settings.example.yml +9 -2
- package/.agent-src/templates/scripts/work_engine/_lib/__init__.py +7 -0
- package/.agent-src/templates/scripts/work_engine/_lib/agent_settings.py +168 -0
- package/.agent-src/templates/scripts/work_engine/hooks/settings.py +18 -19
- package/.agent-src/templates/scripts/work_engine/orchestration.py +168 -0
- package/.claude-plugin/marketplace.json +3 -1
- package/AGENTS.md +4 -4
- package/CHANGELOG.md +76 -0
- package/README.md +17 -6
- package/bin/install.php +13 -6
- package/config/agent-settings.template.yml +21 -0
- package/docs/DISTRIBUTION_CHECKLIST.md +169 -0
- package/docs/architecture.md +1 -1
- package/docs/catalog.md +3 -2
- package/docs/contracts/audit-log-v1.md +142 -0
- package/docs/contracts/command-clusters.md +2 -0
- package/docs/contracts/file-ownership-matrix.json +20 -0
- package/docs/contracts/orchestration-dsl-v1.md +152 -0
- package/docs/customization.md +45 -0
- package/docs/getting-started.md +1 -1
- package/docs/guidelines/agent-infra/layered-settings.md +54 -17
- package/docs/installation.md +132 -0
- package/docs/setup/mcp-client-config.md +152 -0
- package/docs/setup/mcp-cloud-endpoints.md +16 -0
- package/docs/setup/per-ide/aider.md +48 -0
- package/docs/setup/per-ide/claude-code.md +108 -0
- package/docs/setup/per-ide/claude-desktop.md +148 -0
- package/docs/setup/per-ide/cline.md +43 -0
- package/docs/setup/per-ide/codex.md +46 -0
- package/docs/setup/per-ide/copilot.md +80 -0
- package/docs/setup/per-ide/cursor.md +125 -0
- package/docs/setup/per-ide/gemini-cli.md +45 -0
- package/docs/setup/per-ide/windsurf.md +120 -0
- package/package.json +1 -1
- package/scripts/_lib/agent_settings.py +168 -0
- package/scripts/compress.py +153 -1
- package/scripts/extract_audit_patterns.py +202 -0
- package/scripts/install +156 -1
- package/scripts/install.py +270 -10
- package/scripts/install.sh +52 -7
- package/scripts/lint_orchestration_dsl.py +214 -0
- package/scripts/skill_linter.py +9 -0
- package/scripts/sync_gitignore.py +56 -1
- package/templates/claude_desktop_config.json.template +21 -0
- package/templates/cursor-rule.mdc.j2 +7 -0
- package/templates/global-install-manifest.yml +91 -0
- package/templates/marketing-copy.yml +64 -0
- package/templates/windsurf-rule.md.j2 +7 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# Claude Desktop — agent-config setup
|
|
2
|
+
|
|
3
|
+
The fastest path to running our skills, rules, and (optionally) the MCP
|
|
4
|
+
server inside Claude Desktop. macOS / Windows / Linux. ~5 minutes.
|
|
5
|
+
|
|
6
|
+
> **TL;DR** — install the package globally with `--global` so the
|
|
7
|
+
> kernel rules and the curated top-N skills land in `~/.claude/`,
|
|
8
|
+
> then restart Claude Desktop. The slash-command menu picks them up
|
|
9
|
+
> automatically.
|
|
10
|
+
|
|
11
|
+
## Prerequisites
|
|
12
|
+
|
|
13
|
+
- Claude Desktop installed (free or paid plan — same install path).
|
|
14
|
+
- Node ≥ 18 *or* a clone of the `event4u/agent-config` repo
|
|
15
|
+
(either route can run `--global`).
|
|
16
|
+
- 5 minutes.
|
|
17
|
+
|
|
18
|
+
## Step 1 — global install
|
|
19
|
+
|
|
20
|
+
Pick whichever entrypoint matches your environment. Both seed the same
|
|
21
|
+
files under `~/.claude/`.
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Node — no clone needed.
|
|
25
|
+
npx @event4u/create-agent-config --global --tools=claude-code
|
|
26
|
+
|
|
27
|
+
# Or via curl (no Node).
|
|
28
|
+
curl -fsSL https://raw.githubusercontent.com/event4u/agent-config/main/setup.sh \
|
|
29
|
+
| bash -s -- --global --tools=claude-code
|
|
30
|
+
|
|
31
|
+
# Or from a local clone.
|
|
32
|
+
bash scripts/install --global --tools=claude-code
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
> `--tools=claude-code` covers both Claude Code **and** Claude
|
|
36
|
+
> Desktop — the two surfaces share `~/.claude/`. Pass
|
|
37
|
+
> `--tools=claude-code,cursor,windsurf` if you want Cursor / Windsurf
|
|
38
|
+
> globally seeded in the same run.
|
|
39
|
+
|
|
40
|
+
After the install you'll have:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
~/.claude/
|
|
44
|
+
├── rules/event4u/ # 9 kernel rules (Iron-Law set)
|
|
45
|
+
└── skills/event4u/ # 15 curated top-N skills
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Curation lives in
|
|
49
|
+
[`templates/global-install-manifest.yml`](../../../templates/global-install-manifest.yml).
|
|
50
|
+
Edit and re-run `--global` to grow or shrink the set.
|
|
51
|
+
|
|
52
|
+
## Step 2 — verify
|
|
53
|
+
|
|
54
|
+
1. Restart Claude Desktop (full quit, not just window close).
|
|
55
|
+
2. Open a new conversation.
|
|
56
|
+
3. Type `/` — the curated skills (`/work`, `/commit`, `/create-pr`,
|
|
57
|
+
`/quality-fix`, `/review-changes`, `/agent-handoff`,
|
|
58
|
+
`/project-analyze`, …) appear in the slash-command menu.
|
|
59
|
+
4. Open Settings → Connectors. The kernel rules count appears under
|
|
60
|
+
"rules loaded".
|
|
61
|
+
|
|
62
|
+
If the menu is empty:
|
|
63
|
+
|
|
64
|
+
- Check `ls ~/.claude/skills/event4u/` — should list 15 directories.
|
|
65
|
+
- Quit Claude Desktop (`Cmd+Q` on macOS, **not** just close the
|
|
66
|
+
window — the menubar process keeps the old skills cached).
|
|
67
|
+
- Re-open and try `/` again.
|
|
68
|
+
|
|
69
|
+
## Step 3 — optional MCP server
|
|
70
|
+
|
|
71
|
+
Claude Desktop also speaks MCP. Wiring up the hosted `agent-config-mcp`
|
|
72
|
+
Worker exposes the **full** skill / rule / command catalog (~480 items)
|
|
73
|
+
on demand, on top of the 15 you installed in Step 1.
|
|
74
|
+
|
|
75
|
+
Edit `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
76
|
+
(macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows /
|
|
77
|
+
Linux is `~/.config/Claude/claude_desktop_config.json`):
|
|
78
|
+
|
|
79
|
+
```json
|
|
80
|
+
{
|
|
81
|
+
"mcpServers": {
|
|
82
|
+
"agent-config": {
|
|
83
|
+
"command": "npx",
|
|
84
|
+
"args": ["-y", "mcp-remote", "https://agent-config-mcp.event4u.workers.dev"]
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
A pre-wired template ships at
|
|
91
|
+
[`templates/claude_desktop_config.json.template`](../../../templates/claude_desktop_config.json.template) —
|
|
92
|
+
copy + uncomment the MCP block.
|
|
93
|
+
|
|
94
|
+
Restart Claude Desktop. The 🔌 icon shows the connector under
|
|
95
|
+
**Settings → Connectors**. Full transport details (mcp-remote vs.
|
|
96
|
+
native HTTP) live in
|
|
97
|
+
[`../mcp-client-config.md`](../mcp-client-config.md).
|
|
98
|
+
|
|
99
|
+
## Claude Desktop ↔ Claude Code config sharing
|
|
100
|
+
|
|
101
|
+
Both surfaces read **the same `~/.claude/` directory**. Anything you
|
|
102
|
+
install for one is automatically available in the other:
|
|
103
|
+
|
|
104
|
+
| File / dir | Shared by Desktop & Code? |
|
|
105
|
+
| -------------------------------- | ------------------------- |
|
|
106
|
+
| `~/.claude/CLAUDE.md` | yes — global system prompt |
|
|
107
|
+
| `~/.claude/rules/event4u/` | yes — installed by `--global` |
|
|
108
|
+
| `~/.claude/skills/event4u/` | yes — installed by `--global` |
|
|
109
|
+
| `~/.claude/commands/` | yes — slash commands |
|
|
110
|
+
| `~/.claude/hooks/` | yes — lifecycle hooks |
|
|
111
|
+
| `claude_desktop_config.json` | Desktop only (MCP) |
|
|
112
|
+
| `~/.claude.json` (CLI config) | Code only |
|
|
113
|
+
|
|
114
|
+
Translation: run `--global` once, both clients pick the files up.
|
|
115
|
+
Cross-link to [`claude-code.md`](claude-code.md) for the CLI-side
|
|
116
|
+
view.
|
|
117
|
+
|
|
118
|
+
## Claude Cowork
|
|
119
|
+
|
|
120
|
+
Claude Cowork (paid plans only — Pro / Max / Team) **shares the
|
|
121
|
+
Desktop config**. Once Step 1 + Step 3 are done in Desktop:
|
|
122
|
+
|
|
123
|
+
- Skills and rules under `~/.claude/` are picked up automatically.
|
|
124
|
+
- MCP servers under `claude_desktop_config.json` are available
|
|
125
|
+
inside Cowork sessions without a separate install.
|
|
126
|
+
- Cowork-specific limit (per Anthropic docs): MCP tools that write to
|
|
127
|
+
the local filesystem are sandboxed — read-only tools (the entire
|
|
128
|
+
hosted `agent-config-mcp` surface) work fine.
|
|
129
|
+
|
|
130
|
+
If a feature works in Desktop but not in Cowork, check that you're on
|
|
131
|
+
a paid plan — Cowork is gated, Desktop's free tier has the full
|
|
132
|
+
client-side feature set.
|
|
133
|
+
|
|
134
|
+
## Uninstall
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
bash scripts/install --global --uninstall --tools=claude-code
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Removes only `~/.claude/{rules,skills}/event4u/`. Anything you added
|
|
141
|
+
under sibling paths (custom rules, your own slash commands) stays.
|
|
142
|
+
|
|
143
|
+
## See also
|
|
144
|
+
|
|
145
|
+
- Project-local install — [`../../installation.md`](../../installation.md)
|
|
146
|
+
- Global install reference — [`../../installation.md#global-user-level-install---global`](../../installation.md#global-user-level-install---global)
|
|
147
|
+
- MCP client transports — [`../mcp-client-config.md`](../mcp-client-config.md)
|
|
148
|
+
- Curation manifest — [`../../../templates/global-install-manifest.yml`](../../../templates/global-install-manifest.yml)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Cline Setup
|
|
2
|
+
|
|
3
|
+
Cline (formerly Claude Dev) reads `.clinerules` (single-file aggregate)
|
|
4
|
+
and `AGENTS.md`.
|
|
5
|
+
|
|
6
|
+
## Prerequisites
|
|
7
|
+
|
|
8
|
+
- Cline VS Code extension: <https://github.com/cline/cline>.
|
|
9
|
+
- Node.js ≥ 18.
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx @event4u/create-agent-config init --tools=cline
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Populates:
|
|
18
|
+
|
|
19
|
+
- `.clinerules` — single-file aggregate (rules)
|
|
20
|
+
- `AGENTS.md` — agent self-orientation
|
|
21
|
+
- `.agent-settings.yml` — per-project knobs
|
|
22
|
+
|
|
23
|
+
## Verification
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
test -f .clinerules
|
|
27
|
+
test -f AGENTS.md
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
In VS Code: open the Cline panel — it should pick up the rules
|
|
31
|
+
automatically. Run `/help` in the chat to verify rule loading.
|
|
32
|
+
|
|
33
|
+
## Troubleshooting
|
|
34
|
+
|
|
35
|
+
| Symptom | Fix |
|
|
36
|
+
|---|---|
|
|
37
|
+
| Rules not picked up | Reload VS Code window after `task generate-tools`. |
|
|
38
|
+
| `.clinerules` missing | Re-run `npx @event4u/create-agent-config init --tools=cline`. |
|
|
39
|
+
|
|
40
|
+
## Cross-references
|
|
41
|
+
|
|
42
|
+
- [`AGENTS.md`](../../../AGENTS.md) — canonical agent self-orientation.
|
|
43
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# OpenAI Codex CLI Setup
|
|
2
|
+
|
|
3
|
+
OpenAI's Codex CLI (the `codex` command) reads `AGENTS.md` from the
|
|
4
|
+
repo root for project context.
|
|
5
|
+
|
|
6
|
+
## Prerequisites
|
|
7
|
+
|
|
8
|
+
- Codex CLI installed: <https://github.com/openai/codex>.
|
|
9
|
+
- Node.js ≥ 18 (for the install entrypoints).
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx @event4u/create-agent-config init --tools=codex
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Populates:
|
|
18
|
+
|
|
19
|
+
- `AGENTS.md` — agent self-orientation (Codex auto-loads)
|
|
20
|
+
- `.agent-settings.yml` — per-project knobs
|
|
21
|
+
|
|
22
|
+
Codex CLI reads `AGENTS.md` automatically when invoked from the repo
|
|
23
|
+
root. No additional configuration needed.
|
|
24
|
+
|
|
25
|
+
## Verification
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
test -f AGENTS.md
|
|
29
|
+
codex --help # confirm CLI installed
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
In a Codex CLI session, the loaded `AGENTS.md` content informs every
|
|
33
|
+
turn — verify by asking *"what is this repo?"* and confirming the
|
|
34
|
+
answer matches `AGENTS.md`'s emergency-triage block.
|
|
35
|
+
|
|
36
|
+
## Troubleshooting
|
|
37
|
+
|
|
38
|
+
| Symptom | Fix |
|
|
39
|
+
|---|---|
|
|
40
|
+
| Codex ignores `AGENTS.md` | Run from repo root, not a subdirectory. |
|
|
41
|
+
| Out-of-date context | `codex` re-reads on each session start — quit and restart. |
|
|
42
|
+
|
|
43
|
+
## Cross-references
|
|
44
|
+
|
|
45
|
+
- [`AGENTS.md`](../../../AGENTS.md) — canonical agent self-orientation.
|
|
46
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# GitHub Copilot Setup
|
|
2
|
+
|
|
3
|
+
GitHub Copilot Chat (VS Code, JetBrains, Neovim, `gh copilot` CLI)
|
|
4
|
+
reads `.github/copilot-instructions.md` for project-level guidance and
|
|
5
|
+
falls back to `AGENTS.md` where supported.
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
- GitHub Copilot subscription (Individual, Business, or Enterprise).
|
|
10
|
+
- Copilot Chat enabled in your IDE.
|
|
11
|
+
- Node.js ≥ 18 for the install entrypoints.
|
|
12
|
+
|
|
13
|
+
## Install
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npx @event4u/create-agent-config init --tools=copilot
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Populates:
|
|
20
|
+
|
|
21
|
+
- `.github/copilot-instructions.md` — Copilot's project-level prompt
|
|
22
|
+
- `AGENTS.md` — canonical agent self-orientation
|
|
23
|
+
- `.agent-settings.yml` — per-project knobs
|
|
24
|
+
|
|
25
|
+
The package keeps `.github/copilot-instructions.md` deliberately thin
|
|
26
|
+
(it points back to `AGENTS.md`) so all surfaces share a single source
|
|
27
|
+
of truth.
|
|
28
|
+
|
|
29
|
+
## VS Code Copilot Chat
|
|
30
|
+
|
|
31
|
+
Auto-loads `.github/copilot-instructions.md` once you reload the VS
|
|
32
|
+
Code window after install. Verify in the Copilot Chat panel —
|
|
33
|
+
*"What is this repo?"* should answer using the AGENTS.md emergency
|
|
34
|
+
triage block.
|
|
35
|
+
|
|
36
|
+
## JetBrains Copilot
|
|
37
|
+
|
|
38
|
+
JetBrains Copilot 1.5+ reads the same `.github/copilot-instructions.md`
|
|
39
|
+
file. No extra steps; reload the project after install.
|
|
40
|
+
|
|
41
|
+
## Neovim Copilot
|
|
42
|
+
|
|
43
|
+
`copilot.lua` and `CopilotChat.nvim` honor
|
|
44
|
+
`.github/copilot-instructions.md`. No extra config needed.
|
|
45
|
+
|
|
46
|
+
## `gh copilot` CLI
|
|
47
|
+
|
|
48
|
+
The `gh copilot` plugin (`gh extension install github/gh-copilot`)
|
|
49
|
+
reads the repo context including `AGENTS.md` and
|
|
50
|
+
`.github/copilot-instructions.md` when invoked from the repo root.
|
|
51
|
+
|
|
52
|
+
## Suppressing Copilot PR review noise
|
|
53
|
+
|
|
54
|
+
Copilot's PR auto-review can flag the package's own kernel rules as
|
|
55
|
+
"unusual phrasing". The package ships a Copilot-suppression rule
|
|
56
|
+
([`augment-portability`](../../../.augment/rules/augment-portability.md))
|
|
57
|
+
that documents this trade-off.
|
|
58
|
+
|
|
59
|
+
## Verification
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
test -f .github/copilot-instructions.md
|
|
63
|
+
test -f AGENTS.md
|
|
64
|
+
gh copilot --version # if you want CLI plugin
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Troubleshooting
|
|
68
|
+
|
|
69
|
+
| Symptom | Fix |
|
|
70
|
+
|---|---|
|
|
71
|
+
| Copilot ignores the file | Reload the IDE window after install. |
|
|
72
|
+
| File missing after install | Re-run `npx @event4u/create-agent-config init --tools=copilot`. |
|
|
73
|
+
| Copilot PR review too noisy | See the `copilot-config` skill for suppression patterns. |
|
|
74
|
+
|
|
75
|
+
## Cross-references
|
|
76
|
+
|
|
77
|
+
- [`AGENTS.md`](../../../AGENTS.md) — canonical agent self-orientation.
|
|
78
|
+
- [`.augment/skills/copilot-config/SKILL.md`](../../../.augment/skills/copilot-config/SKILL.md)
|
|
79
|
+
— tuning Copilot output and suppressing review noise.
|
|
80
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# Cursor Setup
|
|
2
|
+
|
|
3
|
+
Cursor reads two rule formats:
|
|
4
|
+
|
|
5
|
+
- **Modern (`.mdc`)** — `.cursor/rules/<rule>.mdc` with YAML frontmatter
|
|
6
|
+
(`description`, `globs`, `alwaysApply`). Preferred for any 2025+
|
|
7
|
+
Cursor build.
|
|
8
|
+
- **Legacy (`.cursorrules`)** — single-file aggregate at the repo root.
|
|
9
|
+
Still read by older Cursor versions; the package keeps it for
|
|
10
|
+
backward compatibility.
|
|
11
|
+
|
|
12
|
+
The package ships **both** so you don't have to pick.
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- Cursor 0.45+ (any 2025/2026 build): <https://cursor.com>.
|
|
17
|
+
- Node.js ≥ 18.
|
|
18
|
+
|
|
19
|
+
## Project install
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @event4u/create-agent-config init --tools=cursor
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
This populates:
|
|
26
|
+
|
|
27
|
+
- `.cursor/rules/*.mdc` — one file per rule, modern frontmatter format
|
|
28
|
+
- `.cursor/commands/*.md` — slash commands mirrored from `.agent-src/commands/`
|
|
29
|
+
- `.cursorrules` — legacy single-file aggregate
|
|
30
|
+
- `.agent-settings.yml` — per-project knobs
|
|
31
|
+
|
|
32
|
+
Combine surfaces if you use both Cursor and Claude Code:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npx @event4u/create-agent-config init --tools=cursor,claude-code
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Global install
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npx @event4u/agent-config global --tools=cursor
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Seeds `~/.cursor/rules/imported/event4u/` with the curated kernel +
|
|
45
|
+
top-N skills. Cursor merges global + workspace rules — workspace wins
|
|
46
|
+
on conflicts.
|
|
47
|
+
|
|
48
|
+
## Modern `.mdc` frontmatter
|
|
49
|
+
|
|
50
|
+
Each `.mdc` file has the Cursor-shaped header:
|
|
51
|
+
|
|
52
|
+
```mdc
|
|
53
|
+
---
|
|
54
|
+
description: Scope control — no unsolicited architectural changes
|
|
55
|
+
globs:
|
|
56
|
+
alwaysApply: true
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
# Scope Control
|
|
60
|
+
...
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
- `alwaysApply: true` ↔ source `type: "always"` (kernel rules).
|
|
64
|
+
- `alwaysApply: false` ↔ Cursor model decides per turn (auto rules).
|
|
65
|
+
- `globs:` is intentionally empty in the package's projection — apply
|
|
66
|
+
per-rule if you need path-scoped rules in your fork.
|
|
67
|
+
|
|
68
|
+
## Cursor commands
|
|
69
|
+
|
|
70
|
+
`.cursor/commands/<slug>.md` mirrors `.claude/commands/`. Nested
|
|
71
|
+
clusters (e.g. `council/default.md`) flatten to `council-default.md` so
|
|
72
|
+
Cursor's command palette stays flat.
|
|
73
|
+
|
|
74
|
+
## Marketplace install (planned — Phase 7 / S35)
|
|
75
|
+
|
|
76
|
+
The Cursor marketplace listing is filed in
|
|
77
|
+
`road-to-simplicity-and-everywhere.md` Phase 7. Once accepted you'll
|
|
78
|
+
be able to install via Cursor's Extensions panel without `npx`.
|
|
79
|
+
|
|
80
|
+
## MCP block (when MCP Phase 3 ships)
|
|
81
|
+
|
|
82
|
+
Add to `.cursor/mcp.json` (Cursor's project-scoped MCP config):
|
|
83
|
+
|
|
84
|
+
```json
|
|
85
|
+
{
|
|
86
|
+
"mcpServers": {
|
|
87
|
+
"event4u-agent-config": {
|
|
88
|
+
"command": "npx",
|
|
89
|
+
"args": ["-y", "@event4u/agent-config-mcp"]
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Track <https://github.com/event4u-app/agent-config> for the actual
|
|
96
|
+
release tag — until `road-to-mcp-full-coverage` Phase 3 ships, this
|
|
97
|
+
block is informational.
|
|
98
|
+
|
|
99
|
+
## Verification
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
ls -la .cursor/rules/ | head -5 # *.mdc files exist
|
|
103
|
+
ls -la .cursor/commands/| head -5 # *.md command files exist
|
|
104
|
+
test -f .cursorrules # legacy aggregate exists
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
In Cursor itself: open the chat panel — settings should show the rules
|
|
108
|
+
under **Project Rules**.
|
|
109
|
+
|
|
110
|
+
## Troubleshooting
|
|
111
|
+
|
|
112
|
+
| Symptom | Fix |
|
|
113
|
+
|---|---|
|
|
114
|
+
| Rules not picked up | Cursor < 0.45 — upgrade or rely on `.cursorrules`. |
|
|
115
|
+
| Modern + legacy duplicate triggers | Disable `.cursorrules` in Cursor settings. |
|
|
116
|
+
| Command missing in palette | `task generate-tools` then reload Cursor window. |
|
|
117
|
+
| Global rules ignored | Cursor needs `~/.cursor/rules/` — check OS path expansion. |
|
|
118
|
+
|
|
119
|
+
## Cross-references
|
|
120
|
+
|
|
121
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
122
|
+
- [`AGENTS.md`](../../../AGENTS.md) — package self-orientation; Cursor
|
|
123
|
+
reads it via the projected rules.
|
|
124
|
+
- [`templates/cursor-rule.mdc.j2`](../../../templates/cursor-rule.mdc.j2) —
|
|
125
|
+
template used by the projection generator.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Gemini CLI Setup
|
|
2
|
+
|
|
3
|
+
Google's Gemini CLI reads `GEMINI.md` (which is a symlink to `AGENTS.md`
|
|
4
|
+
in the package's projection) for project context.
|
|
5
|
+
|
|
6
|
+
## Prerequisites
|
|
7
|
+
|
|
8
|
+
- Gemini CLI installed: <https://github.com/google-gemini/gemini-cli>.
|
|
9
|
+
- Node.js ≥ 18 (for the install entrypoints).
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx @event4u/create-agent-config init --tools=gemini
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Populates:
|
|
18
|
+
|
|
19
|
+
- `GEMINI.md` → `AGENTS.md` — symlink so Gemini CLI loads the same
|
|
20
|
+
self-orientation as Codex / Aider / Augment.
|
|
21
|
+
- `AGENTS.md` — canonical content (single source of truth).
|
|
22
|
+
- `.agent-settings.yml` — per-project knobs.
|
|
23
|
+
|
|
24
|
+
## Verification
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
test -L GEMINI.md && readlink GEMINI.md # → AGENTS.md
|
|
28
|
+
gemini --version # confirm CLI installed
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
In a Gemini CLI session: `GEMINI.md` informs every turn — verify by
|
|
32
|
+
asking *"what is this repo?"* and confirming the answer matches
|
|
33
|
+
`AGENTS.md`'s emergency-triage block.
|
|
34
|
+
|
|
35
|
+
## Troubleshooting
|
|
36
|
+
|
|
37
|
+
| Symptom | Fix |
|
|
38
|
+
|---|---|
|
|
39
|
+
| Gemini CLI doesn't see `GEMINI.md` | Some Gemini versions require absolute paths — `gemini --context $(pwd)/GEMINI.md`. |
|
|
40
|
+
| Symlink broken on Windows | Re-run installer; on Windows the projection may emit a copy instead of a symlink. |
|
|
41
|
+
|
|
42
|
+
## Cross-references
|
|
43
|
+
|
|
44
|
+
- [`AGENTS.md`](../../../AGENTS.md) — canonical agent self-orientation.
|
|
45
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# Windsurf Setup
|
|
2
|
+
|
|
3
|
+
Windsurf reads two rule formats:
|
|
4
|
+
|
|
5
|
+
- **Wave-8 (`.windsurf/rules/`)** — per-rule `.md` files with
|
|
6
|
+
`trigger`, `description`, `globs` frontmatter. Preferred for
|
|
7
|
+
Windsurf 1.5+.
|
|
8
|
+
- **Legacy (`.windsurfrules`)** — single-file aggregate at the repo
|
|
9
|
+
root. Older Windsurf builds and the Cascade chat fallback both still
|
|
10
|
+
read it.
|
|
11
|
+
|
|
12
|
+
The package ships **both**.
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- Windsurf 1.0+ (Codeium): <https://codeium.com/windsurf>.
|
|
17
|
+
- Node.js ≥ 18.
|
|
18
|
+
|
|
19
|
+
## Project install
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @event4u/create-agent-config init --tools=windsurf
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Populates:
|
|
26
|
+
|
|
27
|
+
- `.windsurf/rules/*.md` — modern Wave-8 per-rule files
|
|
28
|
+
- `.windsurf/workflows/*.md` — slash-command workflows
|
|
29
|
+
- `.windsurfrules` — legacy single-file aggregate
|
|
30
|
+
- `.agent-settings.yml` — per-project knobs
|
|
31
|
+
|
|
32
|
+
Combine with other surfaces:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npx @event4u/create-agent-config init --tools=windsurf,claude-code,cursor
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Global install
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npx @event4u/agent-config global --tools=windsurf
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Seeds `~/.codeium/windsurf/global_workflows/` with the curated
|
|
45
|
+
workflow set (see [`templates/global-install-manifest.yml`](../../../templates/global-install-manifest.yml)).
|
|
46
|
+
Available across every project; per-workspace `.windsurf/workflows/`
|
|
47
|
+
takes precedence on slug collisions.
|
|
48
|
+
|
|
49
|
+
## Wave-8 frontmatter
|
|
50
|
+
|
|
51
|
+
Each rule under `.windsurf/rules/` has the Windsurf-shaped header:
|
|
52
|
+
|
|
53
|
+
```md
|
|
54
|
+
---
|
|
55
|
+
trigger: always_on
|
|
56
|
+
description: Scope control — no unsolicited architectural changes
|
|
57
|
+
globs:
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
# Scope Control
|
|
61
|
+
...
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
- `trigger: always_on` ↔ source `type: "always"` (kernel rules).
|
|
65
|
+
- `trigger: model_decision` ↔ Cascade decides per turn (auto rules).
|
|
66
|
+
- `globs:` is intentionally empty in the package's projection — set
|
|
67
|
+
per-rule in your fork if you want path-scoped triggering.
|
|
68
|
+
|
|
69
|
+
## Workflows
|
|
70
|
+
|
|
71
|
+
`.windsurf/workflows/<slug>.md` mirrors `.claude/commands/`. Cluster
|
|
72
|
+
commands flatten to `<cluster>-<name>.md`. Cascade lists all workflow
|
|
73
|
+
files in its workflow palette.
|
|
74
|
+
|
|
75
|
+
## Cascade integration
|
|
76
|
+
|
|
77
|
+
Cascade (Windsurf's built-in agent) reads `.windsurf/rules/` and
|
|
78
|
+
`.windsurf/workflows/` automatically. No separate registration step is
|
|
79
|
+
needed once the files are on disk.
|
|
80
|
+
|
|
81
|
+
When Cascade asks a clarifying question, the package's `user-interaction`
|
|
82
|
+
rule (kernel, `always_on`) applies — Cascade will surface numbered
|
|
83
|
+
options with a single recommendation.
|
|
84
|
+
|
|
85
|
+
## Workspace vs global precedence
|
|
86
|
+
|
|
87
|
+
| Layer | Path | Precedence |
|
|
88
|
+
|---|---|---|
|
|
89
|
+
| Workspace | `.windsurf/rules/` + `.windsurf/workflows/` | wins on conflicts |
|
|
90
|
+
| Global | `~/.codeium/windsurf/global_workflows/` | falls back when workspace silent |
|
|
91
|
+
|
|
92
|
+
Reuse the same `--tools=windsurf` flag for both — `init` writes
|
|
93
|
+
workspace, `global` writes user-level.
|
|
94
|
+
|
|
95
|
+
## Verification
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
ls .windsurf/rules/ | head -5 # *.md per-rule files
|
|
99
|
+
ls .windsurf/workflows/ | head -5 # *.md workflow files
|
|
100
|
+
test -f .windsurfrules # legacy aggregate exists
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
In Windsurf itself: open Cascade → Workflows panel — listed workflows
|
|
104
|
+
should match `ls .windsurf/workflows/`.
|
|
105
|
+
|
|
106
|
+
## Troubleshooting
|
|
107
|
+
|
|
108
|
+
| Symptom | Fix |
|
|
109
|
+
|---|---|
|
|
110
|
+
| Rules not picked up | Windsurf < 1.0 — upgrade or rely on `.windsurfrules`. |
|
|
111
|
+
| Workflow not in Cascade panel | Reload window after `task generate-tools`. |
|
|
112
|
+
| Global workflows missing | Check `~/.codeium/windsurf/global_workflows/` exists. |
|
|
113
|
+
| Frontmatter parse error | Re-run `python3 scripts/compress.py --generate-tools`. |
|
|
114
|
+
|
|
115
|
+
## Cross-references
|
|
116
|
+
|
|
117
|
+
- [`docs/installation.md`](../../installation.md) — install matrix index.
|
|
118
|
+
- [`templates/windsurf-rule.md.j2`](../../../templates/windsurf-rule.md.j2)
|
|
119
|
+
— template used by the projection generator.
|
|
120
|
+
- [`AGENTS.md`](../../../AGENTS.md) — package self-orientation.
|
package/package.json
CHANGED