shortcutxl 0.2.12 → 0.2.13
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 +26 -26
- package/agent-docs/README.md +397 -397
- package/agent-docs/docs/compaction.md +390 -390
- package/agent-docs/docs/custom-provider.md +580 -580
- package/agent-docs/docs/extensions.md +1971 -1971
- package/agent-docs/docs/packages.md +209 -209
- package/agent-docs/docs/rpc.md +1317 -1317
- package/agent-docs/docs/sdk.md +962 -962
- package/agent-docs/docs/session.md +412 -412
- package/agent-docs/docs/termux.md +127 -127
- package/agent-docs/docs/tui.md +887 -887
- package/agent-docs/examples/README.md +25 -25
- package/agent-docs/examples/extensions/README.md +205 -205
- package/agent-docs/examples/extensions/antigravity-image-gen.ts +447 -447
- package/agent-docs/examples/extensions/auto-commit-on-exit.ts +49 -49
- package/agent-docs/examples/extensions/bash-spawn-hook.ts +30 -30
- package/agent-docs/examples/extensions/bookmark.ts +50 -50
- package/agent-docs/examples/extensions/built-in-tool-renderer.ts +256 -256
- package/agent-docs/examples/extensions/claude-rules.ts +86 -86
- package/agent-docs/examples/extensions/commands.ts +75 -75
- package/agent-docs/examples/extensions/confirm-destructive.ts +59 -59
- package/agent-docs/examples/extensions/custom-compaction.ts +126 -126
- package/agent-docs/examples/extensions/custom-footer.ts +63 -63
- package/agent-docs/examples/extensions/custom-header.ts +73 -73
- package/agent-docs/examples/extensions/custom-provider-anthropic/index.ts +660 -660
- package/agent-docs/examples/extensions/custom-provider-gitlab-duo/index.ts +362 -362
- package/agent-docs/examples/extensions/custom-provider-gitlab-duo/test.ts +88 -88
- package/agent-docs/examples/extensions/custom-provider-qwen-cli/index.ts +349 -349
- package/agent-docs/examples/extensions/dirty-repo-guard.ts +56 -56
- package/agent-docs/examples/extensions/doom-overlay/doom-component.ts +133 -133
- package/agent-docs/examples/extensions/doom-overlay/doom-keys.ts +108 -108
- package/agent-docs/examples/extensions/doom-overlay/index.ts +74 -74
- package/agent-docs/examples/extensions/dynamic-resources/index.ts +15 -15
- package/agent-docs/examples/extensions/dynamic-tools.ts +77 -77
- package/agent-docs/examples/extensions/event-bus.ts +43 -43
- package/agent-docs/examples/extensions/file-trigger.ts +41 -41
- package/agent-docs/examples/extensions/git-checkpoint.ts +53 -53
- package/agent-docs/examples/extensions/handoff.ts +155 -155
- package/agent-docs/examples/extensions/hello.ts +25 -25
- package/agent-docs/examples/extensions/inline-bash.ts +94 -94
- package/agent-docs/examples/extensions/input-transform.ts +43 -43
- package/agent-docs/examples/extensions/interactive-shell.ts +209 -209
- package/agent-docs/examples/extensions/mac-system-theme.ts +47 -47
- package/agent-docs/examples/extensions/message-renderer.ts +59 -59
- package/agent-docs/examples/extensions/minimal-mode.ts +430 -430
- package/agent-docs/examples/extensions/modal-editor.ts +90 -90
- package/agent-docs/examples/extensions/model-status.ts +31 -31
- package/agent-docs/examples/extensions/notify.ts +55 -55
- package/agent-docs/examples/extensions/overlay-qa-tests.ts +936 -936
- package/agent-docs/examples/extensions/overlay-test.ts +159 -159
- package/agent-docs/examples/extensions/permission-gate.ts +37 -37
- package/agent-docs/examples/extensions/pirate.ts +47 -47
- package/agent-docs/examples/extensions/plan-mode/index.ts +363 -363
- package/agent-docs/examples/extensions/preset.ts +418 -418
- package/agent-docs/examples/extensions/protected-paths.ts +30 -30
- package/agent-docs/examples/extensions/qna.ts +122 -122
- package/agent-docs/examples/extensions/question.ts +278 -278
- package/agent-docs/examples/extensions/questionnaire.ts +440 -440
- package/agent-docs/examples/extensions/rainbow-editor.ts +90 -90
- package/agent-docs/examples/extensions/reload-runtime.ts +37 -37
- package/agent-docs/examples/extensions/rpc-demo.ts +124 -124
- package/agent-docs/examples/extensions/sandbox/index.ts +324 -324
- package/agent-docs/examples/extensions/send-user-message.ts +97 -97
- package/agent-docs/examples/extensions/session-name.ts +27 -27
- package/agent-docs/examples/extensions/shutdown-command.ts +69 -69
- package/agent-docs/examples/extensions/snake.ts +343 -343
- package/agent-docs/examples/extensions/space-invaders.ts +566 -566
- package/agent-docs/examples/extensions/ssh.ts +233 -233
- package/agent-docs/examples/extensions/status-line.ts +40 -40
- package/agent-docs/examples/extensions/subagent/agents.ts +130 -130
- package/agent-docs/examples/extensions/subagent/index.ts +1068 -1068
- package/agent-docs/examples/extensions/summarize.ts +206 -206
- package/agent-docs/examples/extensions/system-prompt-header.ts +17 -17
- package/agent-docs/examples/extensions/timed-confirm.ts +72 -72
- package/agent-docs/examples/extensions/titlebar-spinner.ts +58 -58
- package/agent-docs/examples/extensions/todo.ts +314 -314
- package/agent-docs/examples/extensions/tool-override.ts +146 -146
- package/agent-docs/examples/extensions/tools.ts +145 -145
- package/agent-docs/examples/extensions/trigger-compact.ts +40 -40
- package/agent-docs/examples/extensions/truncated-tool.ts +194 -194
- package/agent-docs/examples/extensions/widget-placement.ts +17 -17
- package/agent-docs/examples/extensions/with-deps/index.ts +37 -37
- package/agent-docs/examples/rpc-extension-ui.ts +654 -654
- package/agent-docs/examples/sdk/01-minimal.ts +22 -22
- package/agent-docs/examples/sdk/02-custom-model.ts +48 -48
- package/agent-docs/examples/sdk/03-custom-prompt.ts +55 -55
- package/agent-docs/examples/sdk/04-skills.ts +53 -53
- package/agent-docs/examples/sdk/05-tools.ts +56 -56
- package/agent-docs/examples/sdk/06-extensions.ts +88 -88
- package/agent-docs/examples/sdk/07-context-files.ts +40 -40
- package/agent-docs/examples/sdk/08-prompt-templates.ts +47 -47
- package/agent-docs/examples/sdk/09-api-keys-and-oauth.ts +48 -48
- package/agent-docs/examples/sdk/10-settings.ts +54 -54
- package/agent-docs/examples/sdk/11-sessions.ts +48 -48
- package/agent-docs/examples/sdk/12-full-control.ts +82 -82
- package/agent-docs/examples/sdk/README.md +144 -144
- package/agent-docs/xll-spec.md +110 -110
- package/dist/core/auth-storage.js +21 -2
- package/package.json +1 -1
- package/xll/ShortcutXL.xll +0 -0
- package/xll/modules/debug_render.py +272 -272
- package/xll/modules/gameboy.py +241 -241
- package/xll/modules/pong.py +188 -188
- package/xll/modules/shortcut_xl/_diff_highlight.py +176 -0
- package/xll/modules/shortcut_xl/_log.py +12 -12
- package/xll/modules/shortcut_xl/_registry.py +44 -44
- package/xll/modules/stocks.py +100 -100
- /package/skills/{com-advanced-api → COM-advanced-api}/SKILL.md +0 -0
- /package/skills/{com-advanced-api → COM-advanced-api}/excel-type-library.py +0 -0
- /package/skills/{com-advanced-api → COM-advanced-api}/office-type-library.py +0 -0
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Titlebar Spinner Extension
|
|
3
|
-
*
|
|
4
|
-
* Shows a braille spinner animation in the terminal title while the agent is working.
|
|
5
|
-
* Uses `ctx.ui.setTitle()` to update the terminal title via the extension API.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* shortcut --extension examples/extensions/titlebar-spinner.ts
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
import path from 'node:path';
|
|
12
|
-
import type { ExtensionAPI, ExtensionContext } from 'shortcutxl';
|
|
13
|
-
|
|
14
|
-
const BRAILLE_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
|
|
15
|
-
|
|
16
|
-
function getBaseTitle(shortcut: ExtensionAPI): string {
|
|
17
|
-
const cwd = path.basename(process.cwd());
|
|
18
|
-
const session = shortcut.getSessionName();
|
|
19
|
-
return session ? `π - ${session} - ${cwd}` : `π - ${cwd}`;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export default function (shortcut: ExtensionAPI) {
|
|
23
|
-
let timer: ReturnType<typeof setInterval> | null = null;
|
|
24
|
-
let frameIndex = 0;
|
|
25
|
-
|
|
26
|
-
function stopAnimation(ctx: ExtensionContext) {
|
|
27
|
-
if (timer) {
|
|
28
|
-
clearInterval(timer);
|
|
29
|
-
timer = null;
|
|
30
|
-
}
|
|
31
|
-
frameIndex = 0;
|
|
32
|
-
ctx.ui.setTitle(getBaseTitle(shortcut));
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function startAnimation(ctx: ExtensionContext) {
|
|
36
|
-
stopAnimation(ctx);
|
|
37
|
-
timer = setInterval(() => {
|
|
38
|
-
const frame = BRAILLE_FRAMES[frameIndex % BRAILLE_FRAMES.length];
|
|
39
|
-
const cwd = path.basename(process.cwd());
|
|
40
|
-
const session = shortcut.getSessionName();
|
|
41
|
-
const title = session ? `${frame} π - ${session} - ${cwd}` : `${frame} π - ${cwd}`;
|
|
42
|
-
ctx.ui.setTitle(title);
|
|
43
|
-
frameIndex++;
|
|
44
|
-
}, 80);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
shortcut.on('agent_start', async (_event, ctx) => {
|
|
48
|
-
startAnimation(ctx);
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
shortcut.on('agent_end', async (_event, ctx) => {
|
|
52
|
-
stopAnimation(ctx);
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
shortcut.on('session_shutdown', async (_event, ctx) => {
|
|
56
|
-
stopAnimation(ctx);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Titlebar Spinner Extension
|
|
3
|
+
*
|
|
4
|
+
* Shows a braille spinner animation in the terminal title while the agent is working.
|
|
5
|
+
* Uses `ctx.ui.setTitle()` to update the terminal title via the extension API.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* shortcut --extension examples/extensions/titlebar-spinner.ts
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import path from 'node:path';
|
|
12
|
+
import type { ExtensionAPI, ExtensionContext } from 'shortcutxl';
|
|
13
|
+
|
|
14
|
+
const BRAILLE_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
|
|
15
|
+
|
|
16
|
+
function getBaseTitle(shortcut: ExtensionAPI): string {
|
|
17
|
+
const cwd = path.basename(process.cwd());
|
|
18
|
+
const session = shortcut.getSessionName();
|
|
19
|
+
return session ? `π - ${session} - ${cwd}` : `π - ${cwd}`;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export default function (shortcut: ExtensionAPI) {
|
|
23
|
+
let timer: ReturnType<typeof setInterval> | null = null;
|
|
24
|
+
let frameIndex = 0;
|
|
25
|
+
|
|
26
|
+
function stopAnimation(ctx: ExtensionContext) {
|
|
27
|
+
if (timer) {
|
|
28
|
+
clearInterval(timer);
|
|
29
|
+
timer = null;
|
|
30
|
+
}
|
|
31
|
+
frameIndex = 0;
|
|
32
|
+
ctx.ui.setTitle(getBaseTitle(shortcut));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function startAnimation(ctx: ExtensionContext) {
|
|
36
|
+
stopAnimation(ctx);
|
|
37
|
+
timer = setInterval(() => {
|
|
38
|
+
const frame = BRAILLE_FRAMES[frameIndex % BRAILLE_FRAMES.length];
|
|
39
|
+
const cwd = path.basename(process.cwd());
|
|
40
|
+
const session = shortcut.getSessionName();
|
|
41
|
+
const title = session ? `${frame} π - ${session} - ${cwd}` : `${frame} π - ${cwd}`;
|
|
42
|
+
ctx.ui.setTitle(title);
|
|
43
|
+
frameIndex++;
|
|
44
|
+
}, 80);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
shortcut.on('agent_start', async (_event, ctx) => {
|
|
48
|
+
startAnimation(ctx);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
shortcut.on('agent_end', async (_event, ctx) => {
|
|
52
|
+
stopAnimation(ctx);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
shortcut.on('session_shutdown', async (_event, ctx) => {
|
|
56
|
+
stopAnimation(ctx);
|
|
57
|
+
});
|
|
58
|
+
}
|