leapfrog-mcp 0.7.1 → 0.7.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/dist/humanize-typing.js +9 -5
- package/dist/index.js +3 -3
- package/dist/session-hud.js +5 -7
- package/package.json +1 -1
package/dist/humanize-typing.js
CHANGED
|
@@ -126,7 +126,15 @@ export function humanTypeString(text, opts = {}) {
|
|
|
126
126
|
}
|
|
127
127
|
// ── Compute inter-key delay (flight time) ──────────────────────
|
|
128
128
|
let delay;
|
|
129
|
-
if (
|
|
129
|
+
if (char === "\n") {
|
|
130
|
+
// Line break: cognitive pause (always, even during bursts)
|
|
131
|
+
delay = logNormalDelay(400, 0.5, 150);
|
|
132
|
+
if (burstRemaining > 0) {
|
|
133
|
+
burstRemaining = 0;
|
|
134
|
+
inBurst = false;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
else if (burstRemaining > 0) {
|
|
130
138
|
// Burst: 50% of base delay, still log-normal distributed
|
|
131
139
|
delay = logNormalDelay(Math.round(baseDelay * 0.5), 0.35, 25);
|
|
132
140
|
burstRemaining--;
|
|
@@ -141,10 +149,6 @@ export function humanTypeString(text, opts = {}) {
|
|
|
141
149
|
// Punctuation: slightly longer pause
|
|
142
150
|
delay = logNormalDelay(200, 0.4, 80);
|
|
143
151
|
}
|
|
144
|
-
else if (char === "\n") {
|
|
145
|
-
// Line break: cognitive pause
|
|
146
|
-
delay = logNormalDelay(400, 0.5, 150);
|
|
147
|
-
}
|
|
148
152
|
else {
|
|
149
153
|
// Regular character: log-normal around baseDelay with bigram adjustment
|
|
150
154
|
const multiplier = prevChar ? bigramMultiplier(prevChar, lower) : 1.0;
|
package/dist/index.js
CHANGED
|
@@ -129,9 +129,9 @@ if (LEAP_TILE && LEAP_TILE !== "false") {
|
|
|
129
129
|
const defaultW = LEAP_SCREEN_WIDTH > 0 ? LEAP_SCREEN_WIDTH : detectedScreen?.width ?? 1920;
|
|
130
130
|
const defaultH = LEAP_SCREEN_HEIGHT > 0 ? LEAP_SCREEN_HEIGHT : detectedScreen?.height ?? 1080;
|
|
131
131
|
tilesCoord = new TilesCoordinator(defaultW, defaultH);
|
|
132
|
-
//
|
|
133
|
-
//
|
|
134
|
-
tilesCoord.
|
|
132
|
+
// Reap dead PIDs on startup — clean up crashed/killed instances.
|
|
133
|
+
// Do NOT purge other live PIDs — they're other terminals we want to tile with.
|
|
134
|
+
tilesCoord.reapDeadSlots().catch(() => { });
|
|
135
135
|
// File watcher only needed for multi-terminal mode (multiple Leapfrog instances).
|
|
136
136
|
// In single-instance mode, the watcher causes spurious reflows that fight
|
|
137
137
|
// with external monitor positioning. Only enable when explicitly requested.
|
package/dist/session-hud.js
CHANGED
|
@@ -143,23 +143,20 @@ export function getAgentEyesInitScript() {
|
|
|
143
143
|
style.textContent = \`
|
|
144
144
|
#leapfrog-cursor {
|
|
145
145
|
position: fixed;
|
|
146
|
-
width:
|
|
147
|
-
height:
|
|
148
|
-
border-radius: 50%;
|
|
149
|
-
background: rgba(34, 197, 94, 0.8);
|
|
150
|
-
box-shadow: 0 0 12px rgba(34, 197, 94, 0.5), 0 0 4px rgba(34, 197, 94, 0.8);
|
|
146
|
+
width: 28px;
|
|
147
|
+
height: 28px;
|
|
151
148
|
pointer-events: none;
|
|
152
149
|
z-index: 2147483646;
|
|
153
|
-
transform: translate(-50%, -50%);
|
|
154
150
|
transition: left 0.04s linear, top 0.04s linear, opacity 0.3s ease;
|
|
155
151
|
opacity: 0;
|
|
152
|
+
filter: drop-shadow(0 1px 3px rgba(0,0,0,0.4)) drop-shadow(0 0 8px rgba(34,197,94,0.3));
|
|
156
153
|
}
|
|
157
154
|
#leapfrog-cursor-ring {
|
|
158
155
|
position: fixed;
|
|
159
156
|
width: 36px;
|
|
160
157
|
height: 36px;
|
|
161
158
|
border-radius: 50%;
|
|
162
|
-
border: 2px solid rgba(34, 197, 94, 0.
|
|
159
|
+
border: 2px solid rgba(34, 197, 94, 0.3);
|
|
163
160
|
pointer-events: none;
|
|
164
161
|
z-index: 2147483646;
|
|
165
162
|
transform: translate(-50%, -50%);
|
|
@@ -191,6 +188,7 @@ export function getAgentEyesInitScript() {
|
|
|
191
188
|
var cursor = document.createElement('div');
|
|
192
189
|
cursor.id = 'leapfrog-cursor';
|
|
193
190
|
cursor.setAttribute('data-leapfrog', 'true');
|
|
191
|
+
cursor.innerHTML = '<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 2L12 26L15 15L26 12L2 2Z" fill="#22c55e" stroke="#166534" stroke-width="1.5" stroke-linejoin="round"/></svg>';
|
|
194
192
|
(document.body || document.documentElement).appendChild(cursor);
|
|
195
193
|
|
|
196
194
|
var ring = document.createElement('div');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "leapfrog-mcp",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.3",
|
|
4
4
|
"description": "Multi-session browser MCP for AI agents — 36 tools, stealth, persistent auth, code-first scripts, API sniffer, agent intelligence",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|