enigma-cli 1.16.1 → 1.16.3
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/assets/skills/anti-overengineering-policy/skill.json +1 -1
- package/assets/skills/anti-overengineering-review/skill.json +1 -1
- package/assets/skills/backend-policy/skill.json +1 -1
- package/assets/skills/ciphera-style-policy/skill.json +1 -1
- package/assets/skills/code-review-policy/skill.json +1 -1
- package/assets/skills/core-engineering-policy/skill.json +1 -1
- package/assets/skills/database-expert/skill.json +1 -1
- package/assets/skills/debugging-policy/skill.json +1 -1
- package/assets/skills/dependency-policy/skill.json +1 -1
- package/assets/skills/frontend-design/skill.json +1 -1
- package/assets/skills/frontend-policy/skill.json +1 -1
- package/assets/skills/git-policy/skill.json +1 -1
- package/assets/skills/security-policy/skill.json +1 -1
- package/assets/skills/skill-creator/skill.json +1 -1
- package/assets/skills/task-completion-policy/skill.json +1 -1
- package/assets/skills/testing-policy/skill.json +1 -1
- package/assets/skills/validation-policy/skill.json +1 -1
- package/bin/checksums.json +4 -4
- package/bin/download.mjs +33 -3
- package/package.json +1 -1
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.1.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Minimal-code discipline - YAGNI ladder, deletion over addition, no unrequested abstractions, and the enigma: shortcut-marking convention; intensity via the minimal-code setting.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "3469a7e554b63a5ae3b1a4a127a0765d760649511fa9dfa9cdbcb04b4431fd64"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "On-demand over-engineering review - diff review, whole-repo audit, and enigma: debt-marker ledger (tags delete/stdlib/native/yagni/shrink, line/dep scoring); lists cuts, applies nothing.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "f742a2be3f328b9ea1ff9a35a449177c2cbec35ad16e46f7054b7a873a2ab017"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.1.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Backend/API architecture: controller-service-repository layering, API and request optimization, server-side caching (Redis), and Zod boundary validation.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "a46c3cd00aa5f47adb1e7907f1d2bc6f5562f7a272890dee9b1121976ac04ae1"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.1.1",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Ciphera code style conventions (formatting, naming, imports, comments, code-level anti-patterns; TypeScript-first, language-agnostic).",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "74f638aec13e8c93257fe1ad604c28b07e9a7c456796a4ceefcc99217d9e7039"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Pre-delivery self-review gate, prioritized review dimensions, and change-quality criteria.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "3d3bbe0602d5bbb4afe37648fe3c2fa39376b1bcbac5d8c441f01fad1e866ed0"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.9.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Core engineering execution policy and harness orchestration (highest-authority rules).",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "82d246faa4770248a36f143926fbf06bd3ffc082959014184548b57193770fab"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.1.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Senior database architecture policy: query optimization, anti-duplication/normalization, scalability, and RGPD/GDPR encryption.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "2883bcecb3202683ae6f81b073c3d6a9cec9c55029e011bdd06ba7ac3537297e"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Reproduce-isolate-fix debugging methodology with root-cause discipline and regression verification.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "14b0064c8b33a0dc85e51464b05005cf5801c756b1101789a6924b9548420f6b"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Dependency and supply-chain security: lockfiles and reproducible installs, version pinning, vulnerability auditing, vetting/minimizing packages, vendoring, and SBOM/provenance.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "6375d835c2aef2c9bd31ce116444dc3d796f510f9970a213aa3ac4696d7e21b9"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "431645565aec8a4ab4cd17247139f78c377a9bcfcfc4ee1d6f252199c332d86f"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.3.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Frontend architecture: reusable components, abstraction thresholds, state management, no-op save detection, large-list rendering (infinite scroll/pagination, virtualization, skeletons, progressive loading), and optimistic UI with rollback.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "26962db5a8b607e95098a6d88977aee59a10bd14e03afe97245f2b013fd21a9a"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Application and AI-agent security: secrets, authn/authz (least privilege), OWASP Top 10, transport/crypto baseline, secure logging, and agent/MCP/tool-use safety.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "9971e9d9127397d0152e89d24aad3191e2935e55a8483db7fd15f5d4d7a60e7a"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Create new skills, modify and improve existing skills, and measure skill performance with evals and benchmarks.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "699586cce82ec0a5458288b598ee7e5ebdddb3dfcf19db354d8bc5e85e47c1c7"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.1.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Exhaustive completion discipline for long/multi-item tasks - inventory, coverage ledger, verified done.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "6e3facba307eb2b55cefbab2e4b2a346a2b82f93c3ef47e11ebeb78c3c9453a8"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.2.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Test strategy, coverage gates, deterministic tests, mocking discipline, regression-first bug fixing, and test-suite organization (layout by type/domain, mirrored paths, file naming, fixture/helper placement).",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "3bdf591057b760f674fb2b1425f63acb426cda2c4f042e1a74c5a5d3807df664"
|
|
8
8
|
}
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"provider": "FJRG2007/enigma",
|
|
5
5
|
"description": "Strict frontend + backend schema validation, schema consistency, and safe client-facing error handling.",
|
|
6
|
-
"cliVersion": "1.16.
|
|
6
|
+
"cliVersion": "1.16.3",
|
|
7
7
|
"sha": "a33622a2f810ee4cea39824cb1a7ca34b355a917d4224025df50d77dd74f0b3a"
|
|
8
8
|
}
|
package/bin/checksums.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"enigma-darwin-arm64": "
|
|
3
|
-
"enigma-linux-arm64": "
|
|
4
|
-
"enigma-linux-x64": "
|
|
5
|
-
"enigma-win32-x64.exe": "
|
|
2
|
+
"enigma-darwin-arm64": "2a3f446515dde107ccdf92d0ff75decf81682a7793db65acbaeabfc823269d52",
|
|
3
|
+
"enigma-linux-arm64": "d211de605cd49db07eda9fb611a2b8b9b998058416a49b67bd8aa331b5f9c4f9",
|
|
4
|
+
"enigma-linux-x64": "5badb7fb1b84ab4ffccad8463c82414e4d70bef8e3ed6c5c81890b51cdc8db38",
|
|
5
|
+
"enigma-win32-x64.exe": "f4097f0501be0413837c15e0cd9091b9e6dcd90a18ce16082133036bda0e9661"
|
|
6
6
|
}
|
package/bin/download.mjs
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { dirname } from "node:path";
|
|
15
15
|
import { createHash } from "node:crypto";
|
|
16
|
-
import { chmodSync, existsSync, mkdirSync, renameSync, unlinkSync, writeFileSync } from "node:fs";
|
|
16
|
+
import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from "node:fs";
|
|
17
17
|
|
|
18
18
|
import {
|
|
19
19
|
ARCH,
|
|
@@ -47,10 +47,36 @@ function assetUrl(asset) {
|
|
|
47
47
|
return url;
|
|
48
48
|
};
|
|
49
49
|
|
|
50
|
-
/**
|
|
50
|
+
/** Sidecar recording the sha256 of the currently-installed binary (next to the binary). */
|
|
51
|
+
function sidecarPath() {
|
|
52
|
+
return `${binTargetPath()}.sha256`;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/** The sha256 this package version expects for the host's asset, or null if none is known. */
|
|
56
|
+
function expectedSha() {
|
|
57
|
+
const choice = selectAsset();
|
|
58
|
+
return choice ? choice.sha256 : null;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Returns the installed binary path only if it is present AND matches the sha256 this
|
|
63
|
+
* package version expects (recorded in the sidecar at download time). Returns null when
|
|
64
|
+
* the binary is missing, has no sidecar, or the sidecar does not match - i.e. it is stale
|
|
65
|
+
* after a package update - so the caller re-downloads the correct one. This is what makes
|
|
66
|
+
* `npm install -g enigma-cli@latest` actually swap a binary that npm left in place (the
|
|
67
|
+
* binary is not in the tarball; npm does not track or remove it on update). When there are
|
|
68
|
+
* no checksums (a source checkout / workspace install), trust whatever binary is present.
|
|
69
|
+
*/
|
|
51
70
|
export function installedBinary() {
|
|
52
71
|
const target = binTargetPath();
|
|
53
|
-
|
|
72
|
+
if (!existsSync(target)) return null;
|
|
73
|
+
const expected = expectedSha();
|
|
74
|
+
if (!expected) return target;
|
|
75
|
+
try {
|
|
76
|
+
return readFileSync(sidecarPath(), "utf8").trim() === expected ? target : null;
|
|
77
|
+
} catch {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
54
80
|
};
|
|
55
81
|
|
|
56
82
|
/**
|
|
@@ -86,6 +112,10 @@ export async function downloadBinary({ log = () => {} } = {}) {
|
|
|
86
112
|
// rename is atomic on POSIX; on Windows it fails over an existing file, so drop it first.
|
|
87
113
|
if (existsSync(target)) try { unlinkSync(target); } catch { /* in use; rename will surface the error */ }
|
|
88
114
|
renameSync(tmp, target);
|
|
115
|
+
// Record the installed sha so installedBinary() can detect a stale binary after an
|
|
116
|
+
// update without re-hashing the whole file on every launch. Best-effort: a missing
|
|
117
|
+
// sidecar just triggers one extra re-download next time.
|
|
118
|
+
try { writeFileSync(sidecarPath(), choice.sha256); } catch { /* sidecar is best-effort */ }
|
|
89
119
|
log(`Installed ${choice.asset} -> ${target}`);
|
|
90
120
|
return target;
|
|
91
121
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "enigma-cli",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.3",
|
|
4
4
|
"description": "Everything you need to work with a coding agent: install shared policy skills for Claude Code, OpenAI Codex and opencode, and set up portable git security hooks.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|