@outcomeeng/spx 0.1.0 → 0.1.5

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 CHANGED
@@ -1,8 +1,6 @@
1
- # spx
1
+ # @outcomeeng/spx
2
2
 
3
- Fast, deterministic CLI tool for spec workflow management.
4
-
5
- > **Note**: This tool will be published to a registry when it reaches a more mature state. For now, install directly from GitHub.
3
+ Developer CLI for code validation and session management.
6
4
 
7
5
  ## What is spx?
8
6
 
@@ -14,24 +12,21 @@ Fast, deterministic CLI tool for spec workflow management.
14
12
  - **Session management**: Queue, claim, and hand off work between agents
15
13
  - **Multiple formats**: Text, JSON output for CI and automation
16
14
 
17
- ## Installation
15
+ All commands are domain-scoped (e.g., `spx validation`, `spx session`) and support `--quiet` and `--json` flags for CI and automation.
18
16
 
19
- ### From GitHub (Latest)
17
+ ## Installation
20
18
 
21
19
  ```bash
22
- # Clone and install
23
- git clone https://github.com/simonheimlicher/spx-cli.git
24
- cd spx-cli
25
- pnpm install
26
- pnpm run build
27
- pnpm link --global # Makes 'spx' available globally
20
+ pnpm add -g @outcomeeng/spx
28
21
  ```
29
22
 
30
- ### From Registry (Coming Soon)
23
+ ### From Source
31
24
 
32
25
  ```bash
33
- # Will be available when published
34
- pnpm add -g spx
26
+ git clone https://github.com/outcomeeng/spx.git
27
+ cd spx
28
+ pnpm install && pnpm run build
29
+ pnpm link --global
35
30
  ```
36
31
 
37
32
  ## Usage
@@ -53,7 +48,7 @@ spx validation knip # Unused code detection
53
48
  spx validation all --scope production
54
49
  ```
55
50
 
56
- All commands support `--quiet` for CI and `--json` for machine-readable output.
51
+ All validation commands support `--quiet` for CI and `--json` for machine-readable output.
57
52
 
58
53
  ### Session Management
59
54
 
@@ -98,23 +93,41 @@ See [Session Recipes](docs/how-to/session/common-tasks.md) for detailed usage pa
98
93
 
99
94
  ## Development
100
95
 
96
+ ### Setup
97
+
101
98
  ```bash
102
- # Install dependencies
99
+ git clone https://github.com/outcomeeng/spx.git
100
+ cd spx
103
101
  pnpm install
102
+ pnpm run build
103
+ pnpm link --global # Optional: makes 'spx' available in your shell
104
+ ```
104
105
 
105
- # Run tests
106
- pnpm test
106
+ ### Build and Test
107
107
 
108
- # Run validation (required before commits)
109
- pnpm run validate # or: spx validation all
108
+ ```bash
109
+ pnpm run build # Build with tsup
110
+ pnpm run dev # Build in watch mode
111
+ pnpm test # Run all tests
112
+ pnpm run test:watch # Run tests in watch mode
113
+ pnpm run test:unit # Unit tests only
114
+ pnpm run test:e2e # End-to-end tests only
115
+ pnpm run test:coverage # Tests with coverage
116
+ ```
110
117
 
111
- # Build
112
- pnpm run build
118
+ ### Validation (Required Before Commits)
113
119
 
114
- # Run locally
115
- node bin/spx.js --help
120
+ ```bash
121
+ pnpm run validate # Full pipeline: circular deps → ESLint → TypeScript
122
+ pnpm run lint # ESLint only
123
+ pnpm run lint:fix # ESLint with auto-fix
124
+ pnpm run typecheck # TypeScript only
125
+ pnpm run circular # Circular dependency detection
126
+ pnpm run knip # Unused code detection
116
127
  ```
117
128
 
129
+ The `pnpm run` scripts use `node bin/spx.js` internally, so they work without a global link. Once linked, you can also use `spx validation all` etc. directly.
130
+
118
131
  ## Technical Stack
119
132
 
120
133
  - **TypeScript** - Type-safe implementation
package/dist/cli.js CHANGED
@@ -5,6 +5,7 @@ import {
5
5
 
6
6
  // src/cli.ts
7
7
  import { Command } from "commander";
8
+ import { createRequire as createRequire2 } from "module";
8
9
 
9
10
  // src/commands/claude/init.ts
10
11
  import { execa } from "execa";
@@ -4013,8 +4014,10 @@ var validationDomain = {
4013
4014
  };
4014
4015
 
4015
4016
  // src/cli.ts
4017
+ var require3 = createRequire2(import.meta.url);
4018
+ var { version } = require3("../package.json");
4016
4019
  var program = new Command();
4017
- program.name("spx").description("Fast, deterministic CLI tool for spec workflow management").version("0.2.0");
4020
+ program.name("spx").description("Fast, deterministic CLI tool for spec workflow management").version(version);
4018
4021
  claudeDomain.register(program);
4019
4022
  sessionDomain.register(program);
4020
4023
  specDomain.register(program);