@protonspy/csdd 0.1.0 → 0.1.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/README.md +11 -6
- package/bin/csdd.js +16 -1
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -6,16 +6,19 @@
|
|
|
6
6
|
workflow for [Claude Code](https://claude.com/claude-code) into a contract that
|
|
7
7
|
is validated mechanically — for humans *and* AI agents.
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Run
|
|
10
|
+
|
|
11
|
+
No install needed — `npx` fetches the right prebuilt binary for your platform:
|
|
10
12
|
|
|
11
13
|
```bash
|
|
12
|
-
|
|
14
|
+
npx @protonspy/csdd --help
|
|
15
|
+
npx @protonspy/csdd # interactive TUI
|
|
13
16
|
```
|
|
14
17
|
|
|
15
|
-
|
|
18
|
+
Prefer the short `csdd` command on your `PATH`? Install it globally:
|
|
16
19
|
|
|
17
20
|
```bash
|
|
18
|
-
|
|
21
|
+
npm install -g @protonspy/csdd # then: csdd
|
|
19
22
|
```
|
|
20
23
|
|
|
21
24
|
This package ships a thin launcher; the native binary for your platform is
|
|
@@ -25,10 +28,12 @@ download at install time). Prebuilt for linux, macOS, and Windows on x64/arm64.
|
|
|
25
28
|
## Usage
|
|
26
29
|
|
|
27
30
|
```bash
|
|
28
|
-
csdd # interactive TUI
|
|
29
|
-
csdd spec generate photo-albums --artifact requirements # headless / CI
|
|
31
|
+
npx @protonspy/csdd # interactive TUI
|
|
32
|
+
npx @protonspy/csdd spec generate photo-albums --artifact requirements # headless / CI
|
|
30
33
|
```
|
|
31
34
|
|
|
35
|
+
> Installed globally? Drop the `npx @protonspy/` prefix and just call `csdd`.
|
|
36
|
+
|
|
32
37
|
See the [full documentation](https://github.com/protonspy/csdd#readme).
|
|
33
38
|
|
|
34
39
|
## License
|
package/bin/csdd.js
CHANGED
|
@@ -38,7 +38,22 @@ try {
|
|
|
38
38
|
process.exit(1);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
// When invoked via `npx @protonspy/csdd` (which is `npm exec` under the hood),
|
|
42
|
+
// echo that exact spelling in the binary's --help / usage output. A global
|
|
43
|
+
// install runs this same launcher as the bare `csdd` command — there npm is not
|
|
44
|
+
// in the picture (npm_command is unset), so the binary keeps its default name.
|
|
45
|
+
// An explicit CSDD_PROG always wins.
|
|
46
|
+
const env = { ...process.env };
|
|
47
|
+
if (!env.CSDD_PROG) {
|
|
48
|
+
const argv1 = process.argv[1] || "";
|
|
49
|
+
const viaNpx =
|
|
50
|
+
process.env.npm_command === "exec" ||
|
|
51
|
+
argv1.includes("/_npx/") ||
|
|
52
|
+
argv1.includes("\\_npx\\");
|
|
53
|
+
if (viaNpx) env.CSDD_PROG = "npx @protonspy/csdd";
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const child = spawn(binPath, process.argv.slice(2), { stdio: "inherit", env });
|
|
42
57
|
|
|
43
58
|
// Forward terminating signals so the TUI shuts down cleanly.
|
|
44
59
|
for (const sig of ["SIGINT", "SIGTERM", "SIGHUP"]) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@protonspy/csdd",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Claude Spec-Driven Development — a single Go binary that turns the SDD workflow into a mechanically validated contract for humans and AI agents.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude",
|
|
@@ -32,10 +32,10 @@
|
|
|
32
32
|
"node": ">=16"
|
|
33
33
|
},
|
|
34
34
|
"optionalDependencies": {
|
|
35
|
-
"@protonspy/csdd-linux-x64": "0.1.
|
|
36
|
-
"@protonspy/csdd-linux-arm64": "0.1.
|
|
37
|
-
"@protonspy/csdd-darwin-x64": "0.1.
|
|
38
|
-
"@protonspy/csdd-darwin-arm64": "0.1.
|
|
39
|
-
"@protonspy/csdd-win32-x64": "0.1.
|
|
35
|
+
"@protonspy/csdd-linux-x64": "0.1.2",
|
|
36
|
+
"@protonspy/csdd-linux-arm64": "0.1.2",
|
|
37
|
+
"@protonspy/csdd-darwin-x64": "0.1.2",
|
|
38
|
+
"@protonspy/csdd-darwin-arm64": "0.1.2",
|
|
39
|
+
"@protonspy/csdd-win32-x64": "0.1.2"
|
|
40
40
|
}
|
|
41
41
|
}
|