@rungs/cli 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 +43 -21
- package/dist/cli.js +2270 -0
- package/dist/cli.js.map +7 -0
- package/modules/README.md +30 -5
- package/modules/ci/files/{{workflow_path}} +1 -1
- package/modules/findings/gates/findings.toml +28 -0
- package/modules/findings/module.toml +9 -1
- package/modules/gates/gates/structural.toml +14 -0
- package/modules/instructions/files/AGENTS.md +0 -6
- package/modules/instructions/fragments/AGENTS.md +12 -0
- package/modules/instructions/module.toml +11 -3
- package/modules/session/files/{{path}} +2 -1
- package/modules/session/fragments/AGENTS.md +4 -1
- package/modules/session/module.toml +6 -3
- package/modules/session/skills/close-session/SKILL.md +4 -0
- package/modules/skills/fragments/AGENTS.md +1 -1
- package/modules/skills/module.toml +6 -3
- package/modules/skills/rules/skill-authoring.md +8 -0
- package/modules/workflows/fragments/AGENTS.md +1 -1
- package/modules/workflows/module.toml +13 -2
- package/modules/workflows/rules/bounded-invocation.md +21 -0
- package/modules/workflows/rules/invocation-boundaries.md +27 -0
- package/modules/workflows/skills/decompose/SKILL.md +9 -1
- package/package.json +14 -5
- package/src/add.ts +8 -1
- package/src/check.ts +2 -1
- package/src/cli.ts +203 -24
- package/src/engines.ts +14 -6
- package/src/engines2.ts +70 -0
- package/src/lifecycle.ts +4 -4
- package/src/substitute.ts +41 -10
package/README.md
CHANGED
|
@@ -14,12 +14,12 @@ then keeps checking that they still say what they said.
|
|
|
14
14
|
$ rungs init . tracked
|
|
15
15
|
instructions 3 create
|
|
16
16
|
gates 1 create · 1 skill · 2 merge
|
|
17
|
-
backlog
|
|
17
|
+
backlog 5 create · 1 rule · 2 skill · 1 merge
|
|
18
18
|
findings 1 create · 1 skill · 1 merge
|
|
19
19
|
adr 2 create · 1 merge
|
|
20
20
|
session 2 create · 1 skill · 1 merge
|
|
21
21
|
|
|
22
|
-
registered
|
|
22
|
+
registered 19 gates from 6 module(s)
|
|
23
23
|
rendered 2 file(s) · 0 degraded → .ai/render-report.md
|
|
24
24
|
|
|
25
25
|
$ rungs check
|
|
@@ -39,8 +39,8 @@ Every rule in here was **paid for once already**.
|
|
|
39
39
|
|
|
40
40
|
The content is extracted from four repositories built over six months in
|
|
41
41
|
different stacks — a .NET ingestion platform, a 105-package Angular monorepo, a
|
|
42
|
-
set of reference apps, and a full-stack product
|
|
43
|
-
branches. Each solved part of this by hand. Each also failed in ways the others
|
|
42
|
+
set of reference apps, and a full-stack product whose refreshed candidate measured
|
|
43
|
+
3,585 commits across 433 branches on 2026-08-15. Each solved part of this by hand. Each also failed in ways the others
|
|
44
44
|
did too.
|
|
45
45
|
|
|
46
46
|
So rungs does not ship a good idea about how to work. It ships **what four repos
|
|
@@ -58,22 +58,29 @@ so you don't install rung 5 at rung 1.
|
|
|
58
58
|
|
|
59
59
|
## Install
|
|
60
60
|
|
|
61
|
-
Not published yet. For now:
|
|
62
|
-
|
|
63
61
|
```bash
|
|
64
|
-
|
|
65
|
-
node src/cli.ts --help
|
|
62
|
+
npx @rungs/cli doctor
|
|
66
63
|
```
|
|
67
64
|
|
|
68
|
-
|
|
65
|
+
It reports what your repo already has, installed or not, and ends by naming one
|
|
66
|
+
command to run next. Once you have run that:
|
|
67
|
+
**[your first hour](docs/getting-started.md)** — which of the new files matter,
|
|
68
|
+
what the installed skills are for, and what to do when a gate goes red.
|
|
69
|
+
|
|
70
|
+
Requires **Node 22.18+**. The published package ships a bundled JavaScript entry point; the source
|
|
71
|
+
checkout still runs the TypeScript sources directly with `node`.
|
|
69
72
|
|
|
70
|
-
Published as **`@rungs/cli
|
|
71
|
-
one edit
|
|
72
|
-
The tool, the command and everything it writes are still `rungs
|
|
73
|
-
package identifier differs
|
|
73
|
+
Published as **`@rungs/cli`**, not `rungs`: the unscoped name is unpublishable,
|
|
74
|
+
being one edit from both `rung` and `runjs`, which npm's typosquat filter
|
|
75
|
+
refuses. The tool, the command, and everything it writes are still `rungs` —
|
|
76
|
+
only the package identifier differs. After a global install the command is
|
|
77
|
+
plain `rungs`.
|
|
78
|
+
|
|
79
|
+
From source:
|
|
74
80
|
|
|
75
81
|
```bash
|
|
76
|
-
|
|
82
|
+
git clone https://github.com/ThroughTheWind/rungs && cd rungs && npm install
|
|
83
|
+
node src/cli.ts --help
|
|
77
84
|
```
|
|
78
85
|
|
|
79
86
|
## What you get
|
|
@@ -98,7 +105,7 @@ reported as diverged and left alone.
|
|
|
98
105
|
|
|
99
106
|
## Commands
|
|
100
107
|
|
|
101
|
-
| | |
|
|
108
|
+
| Command | Description |
|
|
102
109
|
| --- | --- |
|
|
103
110
|
| `rungs init [path] [profile]` | Scaffold — `minimal` · `tracked` · `disciplined` · `hardened` · `fleet` |
|
|
104
111
|
| `rungs doctor [path]` | What does this repo already have? Works on repos that never installed anything |
|
|
@@ -110,7 +117,19 @@ reported as diverged and left alone.
|
|
|
110
117
|
| `rungs setup git [path]` | Install the merge drivers `.gitattributes` names |
|
|
111
118
|
| `rungs modules` | List the set and audit the manifests |
|
|
112
119
|
|
|
113
|
-
|
|
120
|
+
| Option | Effect |
|
|
121
|
+
| --- | --- |
|
|
122
|
+
| `--dry-run` | Report what would happen, write nothing. Any write command |
|
|
123
|
+
| `--into <path>` | `add`: install into this repo rather than the working directory |
|
|
124
|
+
| `--set <module>.<param>=<value>` | `add` / `init`: override a module parameter. Repeatable, and `--set m.p=v` works too |
|
|
125
|
+
| `--confirm-threshold` | `add`: install a module whose rung is above this repo |
|
|
126
|
+
| `--apply` | `upgrade`: write the changes rather than preview them |
|
|
127
|
+
| `--fast` / `--full` | `check`: pick the gate tier, as the positional also does |
|
|
128
|
+
| `--copilot` | Also emit Copilot instruction files |
|
|
129
|
+
|
|
130
|
+
`rungs --help` prints the same two tables. For module parameters run `rungs
|
|
131
|
+
modules --params`, which renders them from the manifests; what a parameter *is*
|
|
132
|
+
and how to set one is [`docs/design/parameters.md`](docs/design/parameters.md).
|
|
114
133
|
|
|
115
134
|
## Modules
|
|
116
135
|
|
|
@@ -163,12 +182,15 @@ Four promises that shape everything else:
|
|
|
163
182
|
|
|
164
183
|
## Status
|
|
165
184
|
|
|
166
|
-
**
|
|
185
|
+
**Release candidate, v0.1.1** — prepared locally as
|
|
186
|
+
[`@rungs/cli`](https://www.npmjs.com/package/@rungs/cli); the public `latest` tag remains v0.1.0
|
|
187
|
+
until registry credentials are available.
|
|
167
188
|
|
|
168
189
|
rungs is installed in its own repo and its gates run on every change — 20 pass,
|
|
169
|
-
0 fail.
|
|
170
|
-
|
|
171
|
-
|
|
190
|
+
0 fail (`rungs check`, 2026-08-15). A clean consumer has also installed the packed
|
|
191
|
+
artifact and completed the doctor → init → add → check → render → upgrade/eject
|
|
192
|
+
journey locally. Detection is [verified against all four source repos](docs/design/detection-verification.md).
|
|
193
|
+
Not yet done: an install from the public registry and a cross-platform release matrix.
|
|
172
194
|
|
|
173
195
|
Expect module *contents* to move. The command surface is settled.
|
|
174
196
|
|
|
@@ -183,7 +205,7 @@ nobody paid for does not ship.
|
|
|
183
205
|
|
|
184
206
|
## Repository
|
|
185
207
|
|
|
186
|
-
| | |
|
|
208
|
+
| Location | Contents |
|
|
187
209
|
| --- | --- |
|
|
188
210
|
| [`docs/research/`](docs/research/README.md) | The four repo autopsies, the synthesis, the pattern catalogue |
|
|
189
211
|
| [`docs/design/`](docs/design/README.md) | Product brief, module catalogue, verification |
|