@lyellr88/buddy-mcp 1.1.0
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 +219 -0
- package/dist/config/claude-config.d.ts +7 -0
- package/dist/config/claude-config.d.ts.map +1 -0
- package/dist/config/claude-config.js +107 -0
- package/dist/config/claude-config.js.map +1 -0
- package/dist/config/hooks.d.ts +22 -0
- package/dist/config/hooks.d.ts.map +1 -0
- package/dist/config/hooks.js +58 -0
- package/dist/config/hooks.js.map +1 -0
- package/dist/config/index.d.ts +4 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +6 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/pet-config.d.ts +12 -0
- package/dist/config/pet-config.d.ts.map +1 -0
- package/dist/config/pet-config.js +150 -0
- package/dist/config/pet-config.js.map +1 -0
- package/dist/constants.d.ts +24 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +94 -0
- package/dist/constants.js.map +1 -0
- package/dist/finder/estimator.d.ts +3 -0
- package/dist/finder/estimator.d.ts.map +1 -0
- package/dist/finder/estimator.js +27 -0
- package/dist/finder/estimator.js.map +1 -0
- package/dist/finder/index.d.ts +3 -0
- package/dist/finder/index.d.ts.map +1 -0
- package/dist/finder/index.js +3 -0
- package/dist/finder/index.js.map +1 -0
- package/dist/finder/orchestrator.d.ts +8 -0
- package/dist/finder/orchestrator.d.ts.map +1 -0
- package/dist/finder/orchestrator.js +163 -0
- package/dist/finder/orchestrator.js.map +1 -0
- package/dist/finder/worker.d.ts +3 -0
- package/dist/finder/worker.d.ts.map +1 -0
- package/dist/finder/worker.js +130 -0
- package/dist/finder/worker.js.map +1 -0
- package/dist/generation/hash.d.ts +5 -0
- package/dist/generation/hash.d.ts.map +1 -0
- package/dist/generation/hash.js +37 -0
- package/dist/generation/hash.js.map +1 -0
- package/dist/generation/index.d.ts +4 -0
- package/dist/generation/index.d.ts.map +1 -0
- package/dist/generation/index.js +4 -0
- package/dist/generation/index.js.map +1 -0
- package/dist/generation/rng.d.ts +4 -0
- package/dist/generation/rng.d.ts.map +1 -0
- package/dist/generation/rng.js +14 -0
- package/dist/generation/rng.js.map +1 -0
- package/dist/generation/roll.d.ts +7 -0
- package/dist/generation/roll.d.ts.map +1 -0
- package/dist/generation/roll.js +51 -0
- package/dist/generation/roll.js.map +1 -0
- package/dist/mcp/index.d.ts +5 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +273 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/persistence.d.ts +6 -0
- package/dist/mcp/persistence.d.ts.map +1 -0
- package/dist/mcp/persistence.js +129 -0
- package/dist/mcp/persistence.js.map +1 -0
- package/dist/mcp/state.d.ts +74 -0
- package/dist/mcp/state.d.ts.map +1 -0
- package/dist/mcp/state.js +20 -0
- package/dist/mcp/state.js.map +1 -0
- package/dist/mcp/tools/auto.d.ts +4 -0
- package/dist/mcp/tools/auto.d.ts.map +1 -0
- package/dist/mcp/tools/auto.js +15 -0
- package/dist/mcp/tools/auto.js.map +1 -0
- package/dist/mcp/tools/core.d.ts +2 -0
- package/dist/mcp/tools/core.d.ts.map +1 -0
- package/dist/mcp/tools/core.js +350 -0
- package/dist/mcp/tools/core.js.map +1 -0
- package/dist/mcp/tools/export.d.ts +2 -0
- package/dist/mcp/tools/export.d.ts.map +1 -0
- package/dist/mcp/tools/export.js +161 -0
- package/dist/mcp/tools/export.js.map +1 -0
- package/dist/mcp/tools/interact.d.ts +2 -0
- package/dist/mcp/tools/interact.d.ts.map +1 -0
- package/dist/mcp/tools/interact.js +56 -0
- package/dist/mcp/tools/interact.js.map +1 -0
- package/dist/mcp/tools/stats.d.ts +4 -0
- package/dist/mcp/tools/stats.d.ts.map +1 -0
- package/dist/mcp/tools/stats.js +87 -0
- package/dist/mcp/tools/stats.js.map +1 -0
- package/dist/mcp/watcher.d.ts +3 -0
- package/dist/mcp/watcher.d.ts.map +1 -0
- package/dist/mcp/watcher.js +117 -0
- package/dist/mcp/watcher.js.map +1 -0
- package/dist/patcher/binary-finder.d.ts +3 -0
- package/dist/patcher/binary-finder.d.ts.map +1 -0
- package/dist/patcher/binary-finder.js +169 -0
- package/dist/patcher/binary-finder.js.map +1 -0
- package/dist/patcher/index.d.ts +5 -0
- package/dist/patcher/index.d.ts.map +1 -0
- package/dist/patcher/index.js +5 -0
- package/dist/patcher/index.js.map +1 -0
- package/dist/patcher/patch.d.ts +5 -0
- package/dist/patcher/patch.d.ts.map +1 -0
- package/dist/patcher/patch.js +148 -0
- package/dist/patcher/patch.js.map +1 -0
- package/dist/patcher/preflight.d.ts +5 -0
- package/dist/patcher/preflight.d.ts.map +1 -0
- package/dist/patcher/preflight.js +145 -0
- package/dist/patcher/preflight.js.map +1 -0
- package/dist/patcher/salt-ops.d.ts +18 -0
- package/dist/patcher/salt-ops.d.ts.map +1 -0
- package/dist/patcher/salt-ops.js +93 -0
- package/dist/patcher/salt-ops.js.map +1 -0
- package/dist/personalities.d.ts +10 -0
- package/dist/personalities.d.ts.map +1 -0
- package/dist/personalities.js +295 -0
- package/dist/personalities.js.map +1 -0
- package/dist/presets.d.ts +11 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.js +207 -0
- package/dist/presets.js.map +1 -0
- package/dist/sprites/data.d.ts +4 -0
- package/dist/sprites/data.d.ts.map +1 -0
- package/dist/sprites/data.js +103 -0
- package/dist/sprites/data.js.map +1 -0
- package/dist/sprites/index.d.ts +3 -0
- package/dist/sprites/index.d.ts.map +1 -0
- package/dist/sprites/index.js +3 -0
- package/dist/sprites/index.js.map +1 -0
- package/dist/sprites/render.d.ts +15 -0
- package/dist/sprites/render.d.ts.map +1 -0
- package/dist/sprites/render.js +77 -0
- package/dist/sprites/render.js.map +1 -0
- package/dist/tui/animator.d.ts +13 -0
- package/dist/tui/animator.d.ts.map +1 -0
- package/dist/tui/animator.js +39 -0
- package/dist/tui/animator.js.map +1 -0
- package/dist/tui/apply/index.d.ts +9 -0
- package/dist/tui/apply/index.d.ts.map +1 -0
- package/dist/tui/apply/index.js +553 -0
- package/dist/tui/apply/index.js.map +1 -0
- package/dist/tui/builder/colors.d.ts +15 -0
- package/dist/tui/builder/colors.d.ts.map +1 -0
- package/dist/tui/builder/colors.js +20 -0
- package/dist/tui/builder/colors.js.map +1 -0
- package/dist/tui/builder/index.d.ts +6 -0
- package/dist/tui/builder/index.d.ts.map +1 -0
- package/dist/tui/builder/index.js +172 -0
- package/dist/tui/builder/index.js.map +1 -0
- package/dist/tui/builder/keyboard.d.ts +17 -0
- package/dist/tui/builder/keyboard.d.ts.map +1 -0
- package/dist/tui/builder/keyboard.js +76 -0
- package/dist/tui/builder/keyboard.js.map +1 -0
- package/dist/tui/builder/preview-panel.d.ts +9 -0
- package/dist/tui/builder/preview-panel.d.ts.map +1 -0
- package/dist/tui/builder/preview-panel.js +103 -0
- package/dist/tui/builder/preview-panel.js.map +1 -0
- package/dist/tui/builder/selection-panel.d.ts +11 -0
- package/dist/tui/builder/selection-panel.d.ts.map +1 -0
- package/dist/tui/builder/selection-panel.js +446 -0
- package/dist/tui/builder/selection-panel.js.map +1 -0
- package/dist/tui/builder/stat-bars.d.ts +4 -0
- package/dist/tui/builder/stat-bars.d.ts.map +1 -0
- package/dist/tui/builder/stat-bars.js +46 -0
- package/dist/tui/builder/stat-bars.js.map +1 -0
- package/dist/tui/builder/state.d.ts +22 -0
- package/dist/tui/builder/state.d.ts.map +1 -0
- package/dist/tui/builder/state.js +92 -0
- package/dist/tui/builder/state.js.map +1 -0
- package/dist/tui/cli.d.ts +3 -0
- package/dist/tui/cli.d.ts.map +1 -0
- package/dist/tui/cli.js +26 -0
- package/dist/tui/cli.js.map +1 -0
- package/dist/tui/commands/buddies.d.ts +2 -0
- package/dist/tui/commands/buddies.d.ts.map +1 -0
- package/dist/tui/commands/buddies.js +172 -0
- package/dist/tui/commands/buddies.js.map +1 -0
- package/dist/tui/commands/current.d.ts +2 -0
- package/dist/tui/commands/current.d.ts.map +1 -0
- package/dist/tui/commands/current.js +35 -0
- package/dist/tui/commands/current.js.map +1 -0
- package/dist/tui/commands/interactive.d.ts +6 -0
- package/dist/tui/commands/interactive.d.ts.map +1 -0
- package/dist/tui/commands/interactive.js +385 -0
- package/dist/tui/commands/interactive.js.map +1 -0
- package/dist/tui/commands/preview.d.ts +3 -0
- package/dist/tui/commands/preview.d.ts.map +1 -0
- package/dist/tui/commands/preview.js +94 -0
- package/dist/tui/commands/preview.js.map +1 -0
- package/dist/tui/commands/rehatch.d.ts +2 -0
- package/dist/tui/commands/rehatch.d.ts.map +1 -0
- package/dist/tui/commands/rehatch.js +30 -0
- package/dist/tui/commands/rehatch.js.map +1 -0
- package/dist/tui/commands/restore.d.ts +2 -0
- package/dist/tui/commands/restore.d.ts.map +1 -0
- package/dist/tui/commands/restore.js +52 -0
- package/dist/tui/commands/restore.js.map +1 -0
- package/dist/tui/commands/share.d.ts +2 -0
- package/dist/tui/commands/share.d.ts.map +1 -0
- package/dist/tui/commands/share.js +105 -0
- package/dist/tui/commands/share.js.map +1 -0
- package/dist/tui/commands/start-screen.d.ts +3 -0
- package/dist/tui/commands/start-screen.d.ts.map +1 -0
- package/dist/tui/commands/start-screen.js +93 -0
- package/dist/tui/commands/start-screen.js.map +1 -0
- package/dist/tui/display.d.ts +5 -0
- package/dist/tui/display.d.ts.map +1 -0
- package/dist/tui/display.js +33 -0
- package/dist/tui/display.js.map +1 -0
- package/dist/tui/format.d.ts +5 -0
- package/dist/tui/format.d.ts.map +1 -0
- package/dist/tui/format.js +21 -0
- package/dist/tui/format.js.map +1 -0
- package/dist/tui/gallery/index.d.ts +12 -0
- package/dist/tui/gallery/index.d.ts.map +1 -0
- package/dist/tui/gallery/index.js +153 -0
- package/dist/tui/gallery/index.js.map +1 -0
- package/dist/tui/gallery/keyboard.d.ts +15 -0
- package/dist/tui/gallery/keyboard.d.ts.map +1 -0
- package/dist/tui/gallery/keyboard.js +41 -0
- package/dist/tui/gallery/keyboard.js.map +1 -0
- package/dist/tui/gallery/profile-list-panel.d.ts +10 -0
- package/dist/tui/gallery/profile-list-panel.d.ts.map +1 -0
- package/dist/tui/gallery/profile-list-panel.js +66 -0
- package/dist/tui/gallery/profile-list-panel.js.map +1 -0
- package/dist/tui/gallery/profile-preview-panel.d.ts +9 -0
- package/dist/tui/gallery/profile-preview-panel.d.ts.map +1 -0
- package/dist/tui/gallery/profile-preview-panel.js +121 -0
- package/dist/tui/gallery/profile-preview-panel.js.map +1 -0
- package/dist/tui/gallery/state.d.ts +13 -0
- package/dist/tui/gallery/state.d.ts.map +1 -0
- package/dist/tui/gallery/state.js +33 -0
- package/dist/tui/gallery/state.js.map +1 -0
- package/dist/tui/index.d.ts +9 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +9 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/launcher.d.ts +3 -0
- package/dist/tui/launcher.d.ts.map +1 -0
- package/dist/tui/launcher.js +24 -0
- package/dist/tui/launcher.js.map +1 -0
- package/dist/tui/presets/index.d.ts +3 -0
- package/dist/tui/presets/index.d.ts.map +1 -0
- package/dist/tui/presets/index.js +202 -0
- package/dist/tui/presets/index.js.map +1 -0
- package/dist/tui/presets/preset-list-panel.d.ts +9 -0
- package/dist/tui/presets/preset-list-panel.d.ts.map +1 -0
- package/dist/tui/presets/preset-list-panel.js +52 -0
- package/dist/tui/presets/preset-list-panel.js.map +1 -0
- package/dist/tui/prompts.d.ts +13 -0
- package/dist/tui/prompts.d.ts.map +1 -0
- package/dist/tui/prompts.js +126 -0
- package/dist/tui/prompts.js.map +1 -0
- package/dist/tui/start/index.d.ts +3 -0
- package/dist/tui/start/index.d.ts.map +1 -0
- package/dist/tui/start/index.js +170 -0
- package/dist/tui/start/index.js.map +1 -0
- package/dist/types.d.ts +113 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +82 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/tui/cli.ts"],"names":[],"mappings":""}
|
package/dist/tui/cli.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { runStartScreen } from './commands/start-screen.js';
|
|
3
|
+
import { runRestore } from './commands/restore.js';
|
|
4
|
+
import { runRehatch } from './commands/rehatch.js';
|
|
5
|
+
import { runCurrent } from './commands/current.js';
|
|
6
|
+
import { runPreview } from './commands/preview.js';
|
|
7
|
+
import { runShare } from './commands/share.js';
|
|
8
|
+
const cmd = process.argv[2];
|
|
9
|
+
const dispatch = {
|
|
10
|
+
restore: runRestore,
|
|
11
|
+
rehatch: runRehatch,
|
|
12
|
+
current: runCurrent,
|
|
13
|
+
preview: () => runPreview({}),
|
|
14
|
+
share: runShare,
|
|
15
|
+
};
|
|
16
|
+
const handler = cmd ? dispatch[cmd] : null;
|
|
17
|
+
if (cmd && !handler) {
|
|
18
|
+
console.error(`Unknown command: ${cmd}`);
|
|
19
|
+
console.error('Available commands: restore, rehatch, current, preview, share');
|
|
20
|
+
process.exit(1);
|
|
21
|
+
}
|
|
22
|
+
(handler ?? runStartScreen)().catch((err) => {
|
|
23
|
+
console.error(err.message);
|
|
24
|
+
process.exit(1);
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/tui/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE5B,MAAM,QAAQ,GAAwC;IACpD,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;IAC7B,KAAK,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE3C,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IACpB,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,CAAC,OAAO,IAAI,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACnD,OAAO,CAAC,KAAK,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buddies.d.ts","sourceRoot":"","sources":["../../../src/tui/commands/buddies.ts"],"names":[],"mappings":"AAiDA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAmKhD"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { select } from '@inquirer/prompts';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
import { join, dirname } from 'path';
|
|
5
|
+
import { ORIGINAL_SALT, RARITY_STARS } from '../../constants.js';
|
|
6
|
+
import { roll } from '../../generation/index.js';
|
|
7
|
+
import { DEFAULT_PERSONALITIES } from '../../personalities.js';
|
|
8
|
+
import { isNodeRuntime, verifySalt, isClaudeRunning, getMinSaltCount } from '../../patcher/salt-ops.js';
|
|
9
|
+
import { patchBinary } from '../../patcher/patch.js';
|
|
10
|
+
import { runPreflight } from '../../patcher/preflight.js';
|
|
11
|
+
import { loadPetConfigV2, savePetConfigV2, switchToProfile, saveProfile, deleteProfile, isHookInstalled, installHook, getCompanionName, renameCompanion, getCompanionPersonality, setCompanionPersonality, } from '../../config/index.js';
|
|
12
|
+
import { banner, showPet, warnCodesign } from '../../tui/display.js';
|
|
13
|
+
import { buildGalleryEntries, activeEntryIndex, DEFAULT_PROFILE, } from '../../tui/gallery/state.js';
|
|
14
|
+
async function selectBuddyFallback(entries) {
|
|
15
|
+
const choices = entries.map((entry) => {
|
|
16
|
+
const dot = entry.isActive ? '●' : '○';
|
|
17
|
+
const stars = RARITY_STARS[entry.bones.rarity];
|
|
18
|
+
return {
|
|
19
|
+
name: `${dot} ${entry.name} — ${entry.bones.species} ${stars}`,
|
|
20
|
+
value: entry.salt,
|
|
21
|
+
};
|
|
22
|
+
});
|
|
23
|
+
const choice = await select({
|
|
24
|
+
message: 'Choose a buddy',
|
|
25
|
+
choices,
|
|
26
|
+
});
|
|
27
|
+
return choice;
|
|
28
|
+
}
|
|
29
|
+
export async function runBuddies() {
|
|
30
|
+
banner();
|
|
31
|
+
const preflight = runPreflight({ requireBinary: true });
|
|
32
|
+
if (!preflight.ok || !preflight.binaryPath) {
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
const config = loadPetConfigV2();
|
|
36
|
+
const profiles = config?.profiles ?? {};
|
|
37
|
+
if (Object.keys(profiles).length === 0) {
|
|
38
|
+
console.log(chalk.dim(' No saved buddies. Run buddy-mcp-build to create one.\n'));
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
const userId = preflight.userId;
|
|
42
|
+
const binaryPath = preflight.binaryPath;
|
|
43
|
+
const entries = buildGalleryEntries(userId, binaryPath);
|
|
44
|
+
const startIndex = activeEntryIndex(entries);
|
|
45
|
+
// Try OpenTUI gallery, fallback to sequential
|
|
46
|
+
let selectedName = null;
|
|
47
|
+
try {
|
|
48
|
+
const { canUseGalleryTUI, runGalleryTUI } = await import("../gallery/index.js");
|
|
49
|
+
if (await canUseGalleryTUI()) {
|
|
50
|
+
const result = await runGalleryTUI(entries, startIndex, (name) => {
|
|
51
|
+
deleteProfile(name);
|
|
52
|
+
return buildGalleryEntries(userId, binaryPath);
|
|
53
|
+
});
|
|
54
|
+
if (result.action === 'cancel') {
|
|
55
|
+
console.log(chalk.dim('\n Cancelled.\n'));
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
selectedName = result.profileName;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
// OpenTUI not available — fall through
|
|
63
|
+
}
|
|
64
|
+
if (selectedName === null) {
|
|
65
|
+
try {
|
|
66
|
+
selectedName = await selectBuddyFallback(entries);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
console.log(chalk.dim('\n Cancelled.\n'));
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (!selectedName) {
|
|
74
|
+
console.log(chalk.dim('\n Cancelled.\n'));
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
// selectedName is now a salt (or DEFAULT_PROFILE)
|
|
78
|
+
const selectedSalt = selectedName;
|
|
79
|
+
// Skip if already active
|
|
80
|
+
const selectedEntry = entries.find((e) => e.salt === selectedSalt);
|
|
81
|
+
if (selectedEntry?.isActive) {
|
|
82
|
+
console.log(chalk.dim('\n Already active.\n'));
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
// Snapshot outgoing profile's companion identity
|
|
86
|
+
const activeSalt = config?.activeProfile;
|
|
87
|
+
if (activeSalt && config?.profiles[activeSalt]) {
|
|
88
|
+
const outgoing = config.profiles[activeSalt];
|
|
89
|
+
outgoing.name = getCompanionName() ?? outgoing.name;
|
|
90
|
+
outgoing.personality = getCompanionPersonality() ?? outgoing.personality;
|
|
91
|
+
saveProfile(outgoing);
|
|
92
|
+
}
|
|
93
|
+
// Find the old salt in binary
|
|
94
|
+
const oldSalt = config?.salt ?? ORIGINAL_SALT;
|
|
95
|
+
const isDefault = selectedSalt === DEFAULT_PROFILE;
|
|
96
|
+
const newSalt = isDefault ? ORIGINAL_SALT : selectedSalt;
|
|
97
|
+
if (!isDefault && !config?.profiles[selectedSalt]) {
|
|
98
|
+
console.error(chalk.red('\n Buddy not found.\n'));
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
// Patch binary
|
|
102
|
+
let patched = false;
|
|
103
|
+
for (const trySalt of [oldSalt, ORIGINAL_SALT]) {
|
|
104
|
+
if (!trySalt)
|
|
105
|
+
continue;
|
|
106
|
+
const check = verifySalt(binaryPath, trySalt);
|
|
107
|
+
if (check.found >= getMinSaltCount(binaryPath)) {
|
|
108
|
+
const patchResult = patchBinary(binaryPath, trySalt, newSalt);
|
|
109
|
+
const displayName = selectedEntry?.name ?? 'Unknown';
|
|
110
|
+
console.log(chalk.green(`\n Switched to "${displayName}"! (${patchResult.replacements} replacements)`));
|
|
111
|
+
warnCodesign(patchResult, binaryPath);
|
|
112
|
+
patched = true;
|
|
113
|
+
break;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (!patched) {
|
|
117
|
+
console.error(chalk.red('\n Could not find known salt in binary. Try running: buddy-mcp-build restore'));
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
// Update config — reload fresh before writing to avoid clobbering saveProfile(outgoing) above
|
|
121
|
+
if (isDefault) {
|
|
122
|
+
// Reload fresh so we don't clobber profile writes made by saveProfile(outgoing) above
|
|
123
|
+
const freshConfig = loadPetConfigV2();
|
|
124
|
+
if (freshConfig) {
|
|
125
|
+
freshConfig.previousSalt = freshConfig.salt;
|
|
126
|
+
freshConfig.activeProfile = null;
|
|
127
|
+
freshConfig.salt = newSalt;
|
|
128
|
+
freshConfig.appliedAt = new Date().toISOString();
|
|
129
|
+
savePetConfigV2(freshConfig);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
switchToProfile(selectedSalt);
|
|
134
|
+
}
|
|
135
|
+
// Auto-install hook so the buddy survives Claude Code auto-updates
|
|
136
|
+
if (!isHookInstalled()) {
|
|
137
|
+
const mcpPath = join(dirname(fileURLToPath(import.meta.url)), '..', '..', 'mcp', 'index.js');
|
|
138
|
+
installHook(mcpPath);
|
|
139
|
+
console.log(chalk.dim(' SessionStart hook installed — pet auto-re-applies after Claude Code updates.'));
|
|
140
|
+
}
|
|
141
|
+
// Restore incoming profile's companion identity — reload fresh to get switchToProfile's write
|
|
142
|
+
if (!isDefault) {
|
|
143
|
+
const freshConfig = loadPetConfigV2();
|
|
144
|
+
const incoming = freshConfig?.profiles[selectedSalt];
|
|
145
|
+
if (incoming?.name) {
|
|
146
|
+
try {
|
|
147
|
+
renameCompanion(incoming.name);
|
|
148
|
+
}
|
|
149
|
+
catch (err) {
|
|
150
|
+
console.log(chalk.dim(` Could not restore name: ${err.message}`));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
const personality = incoming?.personality ?? DEFAULT_PERSONALITIES[incoming?.species ?? 'duck'] ?? null;
|
|
154
|
+
if (personality) {
|
|
155
|
+
try {
|
|
156
|
+
setCompanionPersonality(personality);
|
|
157
|
+
}
|
|
158
|
+
catch (err) {
|
|
159
|
+
console.log(chalk.dim(` Could not restore personality: ${err.message}`));
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
// Show the new pet
|
|
164
|
+
const useNodeHash = isNodeRuntime(binaryPath);
|
|
165
|
+
const newBones = roll(userId, newSalt, { useNodeHash }).bones;
|
|
166
|
+
showPet(newBones, 'Active pet');
|
|
167
|
+
if (isClaudeRunning(binaryPath)) {
|
|
168
|
+
console.log(chalk.yellow(' Restart Claude Code for the change to take effect.'));
|
|
169
|
+
}
|
|
170
|
+
console.log();
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=buddies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buddies.js","sourceRoot":"","sources":["../../../src/tui/commands/buddies.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current.d.ts","sourceRoot":"","sources":["../../../src/tui/commands/current.ts"],"names":[],"mappings":"AASA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA0BhD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { ORIGINAL_SALT } from '../../constants.js';
|
|
3
|
+
import { roll } from '../../generation/index.js';
|
|
4
|
+
import { findClaudeBinary } from '../../patcher/binary-finder.js';
|
|
5
|
+
import { isNodeRuntime } from '../../patcher/salt-ops.js';
|
|
6
|
+
import { runPreflight } from '../../patcher/preflight.js';
|
|
7
|
+
import { loadPetConfig } from '../../config/index.js';
|
|
8
|
+
import { banner, showPet } from "../display.js";
|
|
9
|
+
export async function runCurrent() {
|
|
10
|
+
banner();
|
|
11
|
+
const preflight = runPreflight({ requireBinary: false });
|
|
12
|
+
if (!preflight.ok)
|
|
13
|
+
process.exit(1);
|
|
14
|
+
const userId = preflight.userId;
|
|
15
|
+
console.log(chalk.dim(` User ID: ${userId.slice(0, 12)}...`));
|
|
16
|
+
let useNodeHash = false;
|
|
17
|
+
try {
|
|
18
|
+
const bp = findClaudeBinary();
|
|
19
|
+
useNodeHash = isNodeRuntime(bp);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
/* ignore — binary not required for current */
|
|
23
|
+
}
|
|
24
|
+
if (useNodeHash) {
|
|
25
|
+
console.log(chalk.dim(' Runtime: Node (FNV-1a hash)'));
|
|
26
|
+
}
|
|
27
|
+
const origResult = roll(userId, ORIGINAL_SALT, { useNodeHash });
|
|
28
|
+
showPet(origResult.bones, 'Default pet (original salt)');
|
|
29
|
+
const config = loadPetConfig();
|
|
30
|
+
if (config?.salt && config.salt !== ORIGINAL_SALT) {
|
|
31
|
+
const patchedResult = roll(userId, config.salt, { useNodeHash });
|
|
32
|
+
showPet(patchedResult.bones, 'Active pet (patched)');
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=current.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current.js","sourceRoot":"","sources":["../../../src/tui/commands/current.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,EAAE,CAAC;IACT,MAAM,SAAS,GAAG,YAAY,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/D,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC;QAC9B,WAAW,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,8CAA8C;IAChD,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;IAEzD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,IAAI,MAAM,EAAE,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAClD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CliFlags, DesiredTraits } from '../../types.js';
|
|
2
|
+
export declare function runInteractive(flags?: CliFlags, { skipBanner }?: {
|
|
3
|
+
skipBanner?: boolean;
|
|
4
|
+
}): Promise<void>;
|
|
5
|
+
export declare function runInteractiveWithTraits(desired: DesiredTraits, flags?: CliFlags): Promise<void>;
|
|
6
|
+
//# sourceMappingURL=interactive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../../src/tui/commands/interactive.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAoM1D,wBAAsB,cAAc,CAClC,KAAK,GAAE,QAAa,EACpB,EAAE,UAAkB,EAAE,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GACpD,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,aAAa,EACtB,KAAK,GAAE,QAAa,GACnB,OAAO,CAAC,IAAI,CAAC,CAGf"}
|