gm-skill 2.0.1326 → 2.0.1328
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/bin/plugkit.version +1 -1
- package/bin/plugkit.wasm.sha256 +1 -1
- package/gm-plugkit/bootstrap.js +61 -0
- package/gm-plugkit/package.json +1 -1
- package/gm.json +2 -2
- package/package.json +1 -1
package/bin/plugkit.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.1.
|
|
1
|
+
0.1.499
|
package/bin/plugkit.wasm.sha256
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
4ec8e1dd841083495bc5668223ca4da20eee8afc3c0100231ff1e98e54472ca7 plugkit.wasm
|
package/gm-plugkit/bootstrap.js
CHANGED
|
@@ -661,6 +661,65 @@ function ensureWrapperFresh() {
|
|
|
661
661
|
} catch (_) { return false; }
|
|
662
662
|
}
|
|
663
663
|
|
|
664
|
+
function ensureSkillMdFresh() {
|
|
665
|
+
try {
|
|
666
|
+
const candidates = [
|
|
667
|
+
path.join(__dirname, '..', 'gm-skill', 'skills', 'gm-skill', 'SKILL.md'),
|
|
668
|
+
path.join(__dirname, '..', '..', 'gm-skill', 'skills', 'gm-skill', 'SKILL.md'),
|
|
669
|
+
path.join(__dirname, '..', 'skills', 'gm-skill', 'SKILL.md'),
|
|
670
|
+
];
|
|
671
|
+
const bundledPath = candidates.find(p => {
|
|
672
|
+
try { return fs.existsSync(p); } catch (_) { return false; }
|
|
673
|
+
});
|
|
674
|
+
if (!bundledPath) {
|
|
675
|
+
try {
|
|
676
|
+
obsEvent('bootstrap', 'skill-md.refresh.bundled-not-found', { searched: candidates });
|
|
677
|
+
} catch (_) {}
|
|
678
|
+
return { skipped: 'bundled-not-found' };
|
|
679
|
+
}
|
|
680
|
+
const bundled = fs.readFileSync(bundledPath, 'utf-8');
|
|
681
|
+
const crypto = require('crypto');
|
|
682
|
+
const bundledHash = crypto.createHash('sha256').update(bundled).digest('hex');
|
|
683
|
+
const home = process.env.HOME || process.env.USERPROFILE || require('os').homedir();
|
|
684
|
+
const targets = [
|
|
685
|
+
path.join(home, '.agents', 'skills', 'gm-skill', 'SKILL.md'),
|
|
686
|
+
path.join(home, '.claude', 'skills', 'gm-skill', 'SKILL.md'),
|
|
687
|
+
];
|
|
688
|
+
const refreshed = [];
|
|
689
|
+
for (const target of targets) {
|
|
690
|
+
try {
|
|
691
|
+
let needsWrite = true;
|
|
692
|
+
if (fs.existsSync(target)) {
|
|
693
|
+
const existing = fs.readFileSync(target, 'utf-8');
|
|
694
|
+
const existingHash = crypto.createHash('sha256').update(existing).digest('hex');
|
|
695
|
+
if (existingHash === bundledHash) needsWrite = false;
|
|
696
|
+
}
|
|
697
|
+
if (needsWrite) {
|
|
698
|
+
fs.mkdirSync(path.dirname(target), { recursive: true });
|
|
699
|
+
const tmp = target + '.tmp';
|
|
700
|
+
fs.writeFileSync(tmp, bundled);
|
|
701
|
+
fs.renameSync(tmp, target);
|
|
702
|
+
refreshed.push(target);
|
|
703
|
+
}
|
|
704
|
+
} catch (e) {
|
|
705
|
+
try {
|
|
706
|
+
obsEvent('bootstrap', 'skill-md.refresh.target-failed', { target, error: e.message });
|
|
707
|
+
} catch (_) {}
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
if (refreshed.length > 0) {
|
|
711
|
+
log(`SKILL.md refreshed (sha=${bundledHash.slice(0, 12)}): ${refreshed.length} target(s)`);
|
|
712
|
+
try {
|
|
713
|
+
obsEvent('bootstrap', 'skill-md.refreshed', { hash: bundledHash.slice(0, 12), targets: refreshed, source: bundledPath });
|
|
714
|
+
} catch (_) {}
|
|
715
|
+
}
|
|
716
|
+
return { refreshed, bundledHash, source: bundledPath };
|
|
717
|
+
} catch (e) {
|
|
718
|
+
try { obsEvent('bootstrap', 'skill-md.refresh.failed', { error: e.message }); } catch (_) {}
|
|
719
|
+
return { error: e.message };
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
|
|
664
723
|
function installedVersionAtTools() {
|
|
665
724
|
try {
|
|
666
725
|
const p = path.join(gmToolsDir(), 'plugkit.version');
|
|
@@ -704,6 +763,7 @@ async function ensureReady(opts) {
|
|
|
704
763
|
if (isReady() && !versionDrift) {
|
|
705
764
|
const wasmPath = getWasmPath();
|
|
706
765
|
const wrapperUpdated = ensureWrapperFresh();
|
|
766
|
+
ensureSkillMdFresh();
|
|
707
767
|
return { ok: true, wasmPath, binaryPath: wasmPath, status: wrapperUpdated ? 'wrapper-refreshed' : 'already-ready', version: installed };
|
|
708
768
|
}
|
|
709
769
|
if (versionDrift) {
|
|
@@ -720,6 +780,7 @@ async function ensureReady(opts) {
|
|
|
720
780
|
|
|
721
781
|
const wasmPath = await bootstrap();
|
|
722
782
|
ensureWrapperFresh();
|
|
783
|
+
ensureSkillMdFresh();
|
|
723
784
|
return { ok: true, wasmPath, binaryPath: wasmPath, status: 'bootstrapped', version: targetVersion || installed };
|
|
724
785
|
}
|
|
725
786
|
|
package/gm-plugkit/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-plugkit",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1328",
|
|
4
4
|
"description": "Bootstrap and daemon-spawn tool for gm plugkit binary. Downloads the correct platform binary, verifies SHA256, and starts the spool watcher daemon. Includes plugkit-wasm-wrapper for WASM-based spool watching.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
package/gm.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1328",
|
|
4
4
|
"description": "Spool-dispatch orchestration engine with unified state machine, skills, and automated git enforcement",
|
|
5
5
|
"author": "AnEntrypoint",
|
|
6
6
|
"license": "MIT",
|
|
@@ -17,5 +17,5 @@
|
|
|
17
17
|
"publishConfig": {
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
20
|
-
"plugkitVersion": "0.1.
|
|
20
|
+
"plugkitVersion": "0.1.499"
|
|
21
21
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-skill",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1328",
|
|
4
4
|
"description": "Canonical universal harness — AI-native software engineering via skill-driven orchestration; bootstraps plugkit for task execution and session isolation. Install in any AI coding agent host.",
|
|
5
5
|
"author": "AnEntrypoint",
|
|
6
6
|
"license": "MIT",
|