fundamentum-cli 0.5.0 → 0.6.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.
Files changed (3) hide show
  1. package/README.md +6 -0
  2. package/install.js +10 -1
  3. package/package.json +6 -6
package/README.md CHANGED
@@ -102,6 +102,12 @@ Built for solo devs and small teams who want their repos to feel like they were
102
102
 
103
103
  A GitHub token with `repo` scope (classic) or Contents + Metadata + Administration (fine-grained) — via `GITHUB_TOKEN` or `--token`.
104
104
 
105
+ ## Agent use
106
+
107
+ `fundamentum mcp` runs a Model Context Protocol server over stdio so a coding agent can drive the same commands (`plan`, `audit`, `apply`). `apply` is mutating — run `plan` first and confirm with the operator. See the [repo README](https://github.com/jpvelasco/fundamentum#agent-use-fundamentum-mcp).
108
+
109
+ > **Disclaimer.** fundamentum is free open-source software, provided **as-is** with no warranty of any kind. It changes your repository's configuration. Whether you run it yourself or have an agent run it for you, **you are responsible for every change made to your repos.**
110
+
105
111
  ## License
106
112
 
107
113
  MIT — see [LICENSE](https://github.com/jpvelasco/fundamentum/blob/main/LICENSE).
package/install.js CHANGED
@@ -202,8 +202,17 @@ function extract(buffer, archiveName, binDir) {
202
202
  }
203
203
  }
204
204
 
205
+ // A single-letter drive prefix (C: or C:evil) is a Windows drive-relative or
206
+ // absolute path, so it is rejected on every host, not only on win32.
207
+ const driveLetterPrefix = /^[A-Za-z]:/;
208
+
205
209
  function isPathEscape(name) {
206
- return path.isAbsolute(name) || name.split(/[\\/]/).includes("..");
210
+ return (
211
+ path.isAbsolute(name) ||
212
+ path.win32.isAbsolute(name) ||
213
+ driveLetterPrefix.test(name) ||
214
+ name.split(/[\\/]/).includes("..")
215
+ );
207
216
  }
208
217
 
209
218
  function listMembers(archivePath, isZip) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fundamentum-cli",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Bootstrap and harden GitHub repos for OSS collaboration — community files, branch protection, security features, and starter workflows in one command.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -58,10 +58,10 @@
58
58
  "bin/"
59
59
  ],
60
60
  "binaryChecksums": {
61
- "fundamentum_0.5.0_darwin_amd64.tar.gz": "ffdaa906e25271a494e5bb0dca12e8c5752cc31c059ef7c58791c407e655d6a9",
62
- "fundamentum_0.5.0_darwin_arm64.tar.gz": "06b02b92edfa48fc1f79e4160cd829ec902bfe965d34a92ff3bb783cf1377dba",
63
- "fundamentum_0.5.0_linux_amd64.tar.gz": "ae10a326c76514ace3218d2855987019907a49b3048ee55da078c4c425d28991",
64
- "fundamentum_0.5.0_linux_arm64.tar.gz": "70d94c1d55f08c015ae3a9fcc23c57dc18a5855fb33a1e8e4a30194a6660e7e4",
65
- "fundamentum_0.5.0_windows_amd64.zip": "569832f3666d804a8aac4415ed870700eb263795e869a9bfcc3f1c725746a877"
61
+ "fundamentum_0.6.0_darwin_amd64.tar.gz": "f15df4b25eb475747ca32d84b6bc77222ed6681a0e399f24c37803f156c46f70",
62
+ "fundamentum_0.6.0_darwin_arm64.tar.gz": "e169758383767bf51508d315e7e3906af7b742714aa61897d6aa4001cd30fc60",
63
+ "fundamentum_0.6.0_linux_amd64.tar.gz": "2d7315965e82a04bee2ddeb06fec1047c8326441efd8d1340756dd52a8c25fc5",
64
+ "fundamentum_0.6.0_linux_arm64.tar.gz": "5ab0196b5f6044ffa66cd05801d85f4e0e2002a68eb29bada8c8dc87f49ecf27",
65
+ "fundamentum_0.6.0_windows_amd64.zip": "28a4d32baa4915c4e11d0c9bd20e27cb9a309b8a4f588448472f8b9853381ec8"
66
66
  }
67
67
  }