@cejel/cejel 0.1.4 → 0.1.6

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
@@ -20,6 +20,10 @@ certificate + badge over all of them. See "Aggregate your scanners" below.
20
20
  > monorepo — the ten-product studio it was built inside — which it currently scores
21
21
  > 3.1/4.0 ("Conditional"). We score ourselves before asking you to score yourself.
22
22
 
23
+ The reusable Barg Labs listing mark is kept at [`brand/barg-icon.png`](./brand/barg-icon.png)
24
+ for directories and registries that accept a custom image. GitHub Actions Marketplace uses
25
+ GitHub's predefined `action.yml` branding icons instead.
26
+
23
27
  ## Install
24
28
 
25
29
  No account, no key, no signup.
@@ -27,7 +31,15 @@ No account, no key, no signup.
27
31
  **Single-file binary.** One file. No Node, no npm, no `node_modules`, nothing installed.
28
32
 
29
33
  ```bash
30
- curl -fsSL https://github.com/BargLabs/cejel/releases/latest/download/cejel-$(uname -s)-$(uname -m) -o cejel
34
+ asset="cejel-$(uname -s)-$(uname -m)"
35
+ curl -fsSL "https://github.com/BargLabs/cejel/releases/latest/download/$asset" -o "$asset"
36
+ curl -fsSL https://github.com/BargLabs/cejel/releases/latest/download/SHA256SUMS -o SHA256SUMS
37
+ if command -v sha256sum >/dev/null; then
38
+ grep " $asset$" SHA256SUMS | sha256sum -c -
39
+ else
40
+ grep " $asset$" SHA256SUMS | shasum -a 256 -c -
41
+ fi
42
+ mv "$asset" cejel
31
43
  chmod +x cejel
32
44
  ./cejel .
33
45
  ```
@@ -41,15 +53,13 @@ product, and you can falsify it in ten seconds:
41
53
  docker run --rm --network=none -v "$PWD:/w" -w /w -v "$PWD/cejel:/cejel:ro" debian:stable-slim /cejel .
42
54
  ```
43
55
 
44
- **npm (scoped package).**
56
+ **npm.**
45
57
 
46
58
  ```bash
47
- npx --yes --package @cejel/cejel cejel .
59
+ npx @cejel/cejel .
48
60
  ```
49
61
 
50
- The package is published under the `@cejel` scope while the unscoped name is under npm
51
- registry review. The installed executable remains `cejel`. For a global install, run
52
- `npm install --global @cejel/cejel`, then invoke `cejel .`.
62
+ The npm package is scoped as `@cejel/cejel`; its executable remains the short command `cejel`.
53
63
 
54
64
  **GitHub Action** — score every PR and publish the badge:
55
65
 
@@ -67,9 +77,34 @@ pnpm install && pnpm build
67
77
  node dist/index.js .
68
78
  ```
69
79
 
70
- Released binaries: `cejel-Darwin-arm64`, `cejel-Linux-x86_64`. A Homebrew tap and the
71
- remaining architectures are in progress; they are not listed here because they do not exist
72
- yet.
80
+ Released binaries: `cejel-Darwin-arm64`, `cejel-Darwin-x86_64`, `cejel-Linux-aarch64`, and
81
+ `cejel-Linux-x86_64`. The release also carries `SHA256SUMS`; each binary is executed against
82
+ the source build and with networking denied before attachment. Releases from v0.1.6 also
83
+ carry a Sigstore bundle containing GitHub's signed build-provenance attestation for all four
84
+ binaries. Verify a downloaded binary with:
85
+
86
+ ```bash
87
+ gh attestation verify ./cejel-Darwin-arm64 -R BargLabs/cejel
88
+ ```
89
+
90
+ This is cryptographically signed provenance. It is distinct from Apple Developer ID or
91
+ Microsoft Authenticode code-signing.
92
+
93
+ **Docker / OCI.** The same MCP server is published as a non-root, multi-platform image:
94
+
95
+ ```bash
96
+ docker run --rm -i -v "$PWD:/workspace:ro" ghcr.io/barglabs/cejel:0.1.6
97
+ ```
98
+
99
+ The image defaults to `cejel-mcp` over stdio. To use the CLI instead:
100
+
101
+ ```bash
102
+ docker run --rm -v "$PWD:/workspace:ro" --entrypoint cejel ghcr.io/barglabs/cejel:0.1.6 .
103
+ ```
104
+
105
+ The OCI image carries an SBOM, maximum-mode build provenance, and a signed registry
106
+ attestation. It is also the package referenced by [`server.json`](./server.json) for the
107
+ Official MCP Registry.
73
108
 
74
109
  ## Leaderboard
75
110
 
@@ -78,7 +113,7 @@ corpus scored and published in the open — elite OSS projects, Cejel itself, an
78
113
  studio monorepo Cejel was built inside — with a per-repository evidence report for every
79
114
  row under [`leaderboard/reports/`](./leaderboard/reports/). The board is also hosted at
80
115
  [cejel.dev](https://cejel.dev). Every score on this board is produced by the same sealed
81
- public scorer used by `npx cejel .` — check out the source commit printed in the
116
+ public scorer used by `npx @cejel/cejel .` — check out the source commit printed in the
82
117
  report, run the tool, and you will get this number. A required guard does exactly that for
83
118
  every corpus row and compares score, verdict, measured coverage, and evidence. No private
84
119
  domain collector contributes to any published score, ours included; nobody is exempt.
@@ -123,7 +158,8 @@ better-evidenced rows.
123
158
  Scores the current directory with sensible defaults: no flags, no signup, fully offline.
124
159
  Prints a concise terminal certificate and writes to `.cejel/`:
125
160
 
126
- - `report.json` — the full structured report
161
+ - `report.json` — the full structured report; scored runs carry numeric headline scores and a
162
+ score-band `verdict`, while abstained runs carry `null` scores and `verdict: "insufficient_source"`
127
163
  - `attestation.json` — an unsigned in-toto statement binding the report digest, repository
128
164
  revision, rubric, and scored-or-abstained outcome; ready for an external signer
129
165
  - `certificate.html` — a self-contained HTML certificate (no external assets)
@@ -141,8 +177,9 @@ or provenance system signs it, `assurance.status` is `unsigned` and `issuer` is
141
177
  - `<path>` — repo to score (default: current directory)
142
178
  - `--out <dir>` — where to write report/certificate/badge files (default: `.cejel`;
143
179
  `--out-dir` remains available as a compatibility alias)
144
- - `--min-score <n>` — exit non-zero if the overall score is below `n` (0–4); used by the
145
- GitHub Action's optional threshold gate
180
+ - `--min-score <n>` — exit non-zero if the overall score is below `n` (0–4), or if Cejel
181
+ abstains and therefore cannot evaluate the threshold; used by the GitHub Action's optional
182
+ threshold gate
146
183
  - `--ingest <file|glob>` — fold another scanner's output into the score (repeatable). Accepts
147
184
  SARIF, OpenSSF Scorecard JSON, or the generic Cejel external-signal shape — format is
148
185
  auto-detected. See "Aggregate your scanners" below.
@@ -168,9 +205,10 @@ honestly rather than guessing:
168
205
  - **Not yet recognised** — other ecosystems, including COBOL, Fortran, and MATLAB. Cejel does
169
206
  not score these as "source" at all: a repository with zero
170
207
  recognised-extension files gets the `unrecognised_ecosystem` archetype, an explicit
171
- `insufficient_data` status, and **no verdict** — never a confident numeric score, and never
172
- the word "Unverified" for the sole reason that cejel cannot read the language. The
173
- certificate states plainly which of the 11 dimensions were and were not measured.
208
+ `insufficient_data` criterion status, `null` headline scores, and an explicit machine verdict
209
+ of `insufficient_source` — never a numeric score-band verdict, and never the word
210
+ "Unverified" for the sole reason that cejel cannot read the language. The certificate states
211
+ plainly which of the 11 dimensions were and were not measured.
174
212
 
175
213
  This list will grow. It will never be "any codebase" — that claim is a promise the parser
176
214
  cannot keep, and an honest support matrix is worth more than a marketing line the code
@@ -271,6 +309,10 @@ server over stdio, so any MCP client (Claude Code, Cowork, Cursor, Codex) can re
271
309
  trust certificate as a tool call. It wraps the exact same scan the CLI runs — same scores,
272
310
  same verdict — and is listed on Smithery via the repo's `smithery.yaml`.
273
311
 
312
+ The canonical discovery manifest is [`server.json`](./server.json), published under
313
+ `io.github.BargLabs/cejel` in the Official MCP Registry. Its npm ownership metadata,
314
+ OCI ownership label, image version, and registry version are checked together before release.
315
+
274
316
  Add it to an MCP client config:
275
317
 
276
318
  ```json
@@ -278,7 +320,7 @@ Add it to an MCP client config:
278
320
  "mcpServers": {
279
321
  "cejel": {
280
322
  "command": "npx",
281
- "args": ["-y", "--package=cejel", "cejel-mcp"]
323
+ "args": ["-y", "--package=@cejel/cejel", "cejel-mcp"]
282
324
  }
283
325
  }
284
326
  }
@@ -299,7 +341,7 @@ and the server writes no files.
299
341
  ## What "offline" means here
300
342
 
301
343
  Scoring a repo — `cejel .` itself, and the Action's scoring step — makes zero network
302
- calls: no telemetry, no signup, no model call. Fetching the `cejel` package the
344
+ calls: no telemetry, no signup, no model call. Fetching the `@cejel/cejel` package the
303
345
  first time (like any npm-distributed CLI, including this Action's own dependency install)
304
346
  does need network; that's a one-time install cost, not part of the scoring guarantee.
305
347