@mfjjs/ruflo-setup 0.2.7 → 0.2.9
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/CHANGELOG.md +16 -0
- package/README.md +65 -4
- package/package.json +1 -1
- package/src/setup.js +414 -380
- package/src/utils.js +120 -120
- package/templates/ruflo-setup.md +92 -90
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [0.2.9](///compare/v0.2.8...v0.2.9) (2026-03-31)
|
|
6
|
+
|
|
7
|
+
### [0.2.8](///compare/v0.2.7...v0.2.8) (2026-03-31)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* **docs:** add related documentation b67343a
|
|
13
|
+
* **docs:** add RuFlo enabled session notes and usage checklist bd9d96a
|
|
14
|
+
* enhance setup process with .gitignore updates and cross-platform compatibility for .mcp.json 4b44558
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* update toPlatformMcpConfig to use npx instead of pnpm for cross-platform compatibility e7cf99f
|
|
20
|
+
|
|
5
21
|
### [0.2.7](///compare/v0.2.6...v0.2.7) (2026-03-20)
|
|
6
22
|
|
|
7
23
|
|
package/README.md
CHANGED
|
@@ -74,8 +74,9 @@ ruflo-setup
|
|
|
74
74
|
That's it for most users. The command will:
|
|
75
75
|
1. Check for a newer version of itself and offer to update before proceeding
|
|
76
76
|
2. Install `ruflo@latest` globally and run `ruflo init --full` to scaffold your project
|
|
77
|
-
3. Write a platform-aware `.mcp.json`
|
|
78
|
-
4.
|
|
77
|
+
3. Write a platform-aware `.mcp.json` (MCP servers use `npx` for cross-platform compatibility)
|
|
78
|
+
4. Add `.mcp.json` and `.claude/settings.json` to the project's `.gitignore`
|
|
79
|
+
5. Install a global Claude Code `SessionStart` hook
|
|
79
80
|
|
|
80
81
|
Additional options:
|
|
81
82
|
|
|
@@ -152,7 +153,7 @@ ruflo-setup cleanup --dry-run
|
|
|
152
153
|
- `package.json`: npm metadata, scripts, and `bin` mapping
|
|
153
154
|
- `bin/ruflo-setup.js`: executable entry file the shell runs
|
|
154
155
|
- `src/cli.js`: command router and argument handling
|
|
155
|
-
- `src/setup.js`: setup workflow (`init`, `.mcp.json`, template copy)
|
|
156
|
+
- `src/setup.js`: setup workflow (`init`, `.mcp.json`, `.gitignore`, template copy)
|
|
156
157
|
- `src/status.js`: layer-by-layer feature status checker (Layers 0–8)
|
|
157
158
|
- `src/hooks.js`: global `check-ruflo` hook install/status
|
|
158
159
|
- `src/utils.js`: reusable filesystem and argument helpers
|
|
@@ -185,7 +186,8 @@ Flow:
|
|
|
185
186
|
5. `src/setup.js` runs setup steps:
|
|
186
187
|
- checks for a newer version of itself and prompts to update
|
|
187
188
|
- optional `pnpm add -g ruflo@latest` then `ruflo init --full`
|
|
188
|
-
- writes platform-aware `.mcp.json`
|
|
189
|
+
- writes platform-aware `.mcp.json` (MCP servers invoked via `npx` for cross-platform compatibility)
|
|
190
|
+
- adds `.mcp.json` and `.claude/settings.json` to the project's `.gitignore`
|
|
189
191
|
- copies `templates/CLAUDE.md`
|
|
190
192
|
- installs global SessionStart hook (unless skipped)
|
|
191
193
|
|
|
@@ -239,3 +241,62 @@ This tests exactly what users get from a package install.
|
|
|
239
241
|
- `claude-hooks/check-ruflo.cjs`
|
|
240
242
|
|
|
241
243
|
It merges into existing global settings instead of replacing them, and creates a backup of the settings file before writing.
|
|
244
|
+
|
|
245
|
+
## 🖥️ Windows vs Linux/WSL differences
|
|
246
|
+
|
|
247
|
+
`ruflo-setup` supports both Windows and Linux (including WSL), but there are important platform differences to be aware of.
|
|
248
|
+
|
|
249
|
+
### Platform-specific generated files
|
|
250
|
+
|
|
251
|
+
The `.mcp.json` and `.claude/settings.json` files generated by `ruflo-setup` contain **platform-specific commands and paths**. For this reason, both files are excluded from version control via `.gitignore`:
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
.mcp.json
|
|
255
|
+
.claude/settings.json
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
**Practical implications:**
|
|
259
|
+
|
|
260
|
+
- These files are not committed and will not be present after cloning a repository.
|
|
261
|
+
- You must rerun `ruflo-setup --force` (or `ruflo-setup --yes`) after cloning into any new folder, especially when switching platforms (e.g. cloning on Windows after previously working on Linux/WSL, or vice versa).
|
|
262
|
+
- Each developer generates their own local copy of these files tailored to their platform.
|
|
263
|
+
|
|
264
|
+
### Git file permission changes
|
|
265
|
+
|
|
266
|
+
When switching from Windows to Linux/WSL (or vice versa), you may notice that `git status` shows files as modified even though their content has not changed. This is a **file mode change**: tools such as Claude Code, git, or `ruflo-setup` may have updated the Unix permission bits of tracked files — for example from `0644` (non-executable) to `0755` (executable) — under the hood.
|
|
267
|
+
|
|
268
|
+
You can confirm this with:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
git diff --summary
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
Which will show lines like:
|
|
275
|
+
|
|
276
|
+
```
|
|
277
|
+
mode change 100644 => 100755 some/file.js
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
If these mode changes are unintentional, you can discard them with:
|
|
281
|
+
|
|
282
|
+
```bash
|
|
283
|
+
git checkout -- .
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
Or suppress mode tracking for the repository entirely:
|
|
287
|
+
|
|
288
|
+
```bash
|
|
289
|
+
git config core.fileMode false
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
Note that `core.fileMode false` is a local config setting and is not committed — each developer must set it on their own clone if needed.
|
|
293
|
+
|
|
294
|
+
### Summary
|
|
295
|
+
|
|
296
|
+
| Concern | Windows | Linux / WSL |
|
|
297
|
+
|---|---|---|
|
|
298
|
+
| `.mcp.json` commands | Windows-style paths / `cmd.exe` shims | Unix paths / shell commands |
|
|
299
|
+
| `.claude/settings.json` | Windows-native format | Unix format |
|
|
300
|
+
| Git mode changes (0644→0755) | Not tracked by default | May appear as unexpected diffs |
|
|
301
|
+
| Git tracking | Excluded via `.gitignore` | Excluded via `.gitignore` |
|
|
302
|
+
| After cloning | Rerun `ruflo-setup --force` | Rerun `ruflo-setup --force` |
|