Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docs/vendor/freddie/.version
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"package": "freddie",
"version": "0.0.122",
"refreshedAt": "2026-06-07T08:41:27.903Z",
"source": "local:C:\\dev\\freddie"
"version": "0.0.121",
"refreshedAt": "2026-06-08T10:23:46.745Z",
"source": "npm:freddie@latest"
}
6 changes: 3 additions & 3 deletions docs/vendor/gm/.version
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"package": "gm-plugkit",
"version": "0.1.635",
"pkgVersion": "2.0.1530",
"refreshedAt": "2026-06-05T07:10:56.385Z",
"version": "0.1.637",
"pkgVersion": "2.0.1538",
"refreshedAt": "2026-06-08T10:23:49.961Z",
"source": "npm:gm-plugkit@latest"
}
39 changes: 38 additions & 1 deletion docs/vendor/gm/plugkit-wasm-wrapper.js
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -3668,7 +3668,44 @@ async function tryInstantiate(wasmPath) {
return { instance, instanceRef };
}

(async () => {
// In-process API. Lets a host (e.g. freddie) drive memorize/recall/auto-recall against
// .gm/rs-learn.db WITHOUT running the spool daemon loop: the wasm instance is created once
// and cached, and dispatch() returns parsed JSON. The wasm host functions resolve the project
// .gm dir from CLAUDE_PROJECT_DIR/cwd, so set those in the host process before first dispatch.
let _sharedPlugkit = null;
export async function createPlugkit(opts = {}) {
if (_sharedPlugkit && !opts.fresh) return _sharedPlugkit;
const wasmPath = opts.wasmPath || path.join(GM_TOOLS_ROOT, 'plugkit.wasm');
if (!fs.existsSync(wasmPath)) throw new Error(`plugkit wasm not installed at ${wasmPath} -- run: bun x gm-plugkit@latest spool`);
let instance;
try {
({ instance } = await tryInstantiate(wasmPath));
} catch (e) {
const healed = await selfHeal(`${e && e.name || 'instantiate'}: ${e && e.message}`);
if (!healed) throw e;
({ instance } = await tryInstantiate(wasmPath));
}
const api = {
dispatch(verb, body) {
const raw = dispatchVerbToWasmInternal(instance, verb, typeof body === 'string' ? body : JSON.stringify(body || {}));
if (raw == null) return null;
try { return JSON.parse(raw); } catch (_) { return raw; }
},
version() { return resolveVersion(instance); },
_instance: instance,
};
if (!opts.fresh) _sharedPlugkit = api;
return api;
}

const _isCliEntry = (() => {
try {
if (!process.argv[1]) return false;
return path.resolve(fileURLToPath(import.meta.url)) === path.resolve(process.argv[1]);
} catch (_) { return false; }
})();

if (_isCliEntry) (async () => {
try {
const wasmPath = path.join(GM_TOOLS_ROOT, 'plugkit.wasm');

Expand Down
2 changes: 1 addition & 1 deletion docs/vendor/gm/plugkit.version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.1.635
0.1.637
2 changes: 1 addition & 1 deletion docs/vendor/gm/plugkit.wasm.sha256
Original file line number Diff line number Diff line change
@@ -1 +1 @@
eaef35fadc535e11a1e1d2030e8cad3014fd7dd5fc032a79ab5c16ccac44252d plugkit.wasm
0c7d689305fca07017df5c8897fecaa5a9883a3c278e7d32535c42c6731e64e8 plugkit.wasm
6 changes: 3 additions & 3 deletions docs/vendor/kits/os/.version
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"package": "anentrypoint-design",
"version": "0.0.197",
"refreshedAt": "2026-06-07T09:39:24.369Z",
"source": "local:C:\\dev\\anentrypoint-design"
"version": "0.0.198",
"refreshedAt": "2026-06-08T10:23:45.167Z",
"source": "npm:anentrypoint-design@latest"
}