maestro-flow 0.3.33 → 0.3.35
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/.claude/commands/maestro-ralph-execute.md +135 -176
- package/.claude/commands/maestro-ralph.md +291 -325
- package/.codex/skills/maestro-ralph/SKILL.md +374 -469
- package/README.md +83 -221
- package/README.zh-CN.md +94 -241
- package/dashboard/dist-server/src/config/cli-tools-config.d.ts +6 -0
- package/dashboard/dist-server/src/config/cli-tools-config.js +26 -20
- package/dashboard/dist-server/src/config/cli-tools-config.js.map +1 -1
- package/dashboard/dist-server/src/config/cli-tools-defaults.json +17 -0
- package/dist/src/commands/config.d.ts.map +1 -1
- package/dist/src/commands/config.js +168 -32
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/hooks.d.ts +9 -0
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +1 -1
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/install.js +1 -1
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/overlay.js +1 -1
- package/dist/src/commands/overlay.js.map +1 -1
- package/dist/src/commands/tools.d.ts.map +1 -1
- package/dist/src/commands/tools.js +7 -17
- package/dist/src/commands/tools.js.map +1 -1
- package/dist/src/commands/uninstall.js +1 -1
- package/dist/src/commands/uninstall.js.map +1 -1
- package/dist/src/config/cli-tools-config.d.ts +6 -0
- package/dist/src/config/cli-tools-config.d.ts.map +1 -1
- package/dist/src/config/cli-tools-config.js +26 -20
- package/dist/src/config/cli-tools-config.js.map +1 -1
- package/dist/src/config/cli-tools-defaults.json +17 -0
- package/dist/src/tui/config-ui/ConfigHub.d.ts +14 -0
- package/dist/src/tui/config-ui/ConfigHub.d.ts.map +1 -0
- package/dist/src/tui/config-ui/ConfigHub.js +125 -0
- package/dist/src/tui/config-ui/ConfigHub.js.map +1 -0
- package/dist/src/tui/config-ui/ConfigSourcesView.d.ts +6 -0
- package/dist/src/tui/config-ui/ConfigSourcesView.d.ts.map +1 -0
- package/dist/src/tui/config-ui/ConfigSourcesView.js +25 -0
- package/dist/src/tui/config-ui/ConfigSourcesView.js.map +1 -0
- package/dist/src/tui/config-ui/HooksPanel.d.ts +6 -0
- package/dist/src/tui/config-ui/HooksPanel.d.ts.map +1 -0
- package/dist/src/tui/config-ui/HooksPanel.js +92 -0
- package/dist/src/tui/config-ui/HooksPanel.js.map +1 -0
- package/dist/src/tui/config-ui/SkillConfigDashboard.d.ts +9 -0
- package/dist/src/tui/config-ui/SkillConfigDashboard.d.ts.map +1 -0
- package/dist/src/tui/config-ui/SkillConfigDashboard.js +64 -0
- package/dist/src/tui/config-ui/SkillConfigDashboard.js.map +1 -0
- package/dist/src/tui/config-ui/SkillParamEditor.d.ts +12 -0
- package/dist/src/tui/config-ui/SkillParamEditor.d.ts.map +1 -0
- package/dist/src/tui/config-ui/SkillParamEditor.js +162 -0
- package/dist/src/tui/config-ui/SkillParamEditor.js.map +1 -0
- package/dist/src/tui/config-ui/SkillsList.d.ts +12 -0
- package/dist/src/tui/config-ui/SkillsList.d.ts.map +1 -0
- package/dist/src/tui/config-ui/SkillsList.js +91 -0
- package/dist/src/tui/config-ui/SkillsList.js.map +1 -0
- package/dist/src/tui/config-ui/SpecPanel.d.ts +6 -0
- package/dist/src/tui/config-ui/SpecPanel.d.ts.map +1 -0
- package/dist/src/tui/config-ui/SpecPanel.js +79 -0
- package/dist/src/tui/config-ui/SpecPanel.js.map +1 -0
- package/dist/src/tui/config-ui/index.d.ts +23 -0
- package/dist/src/tui/config-ui/index.d.ts.map +1 -0
- package/dist/src/tui/config-ui/index.js +34 -0
- package/dist/src/tui/config-ui/index.js.map +1 -0
- package/dist/src/tui/index.d.ts +7 -0
- package/dist/src/tui/index.d.ts.map +1 -0
- package/dist/src/tui/index.js +10 -0
- package/dist/src/tui/index.js.map +1 -0
- package/dist/src/tui/install-ui/BackupConfig.d.ts +10 -0
- package/dist/src/tui/install-ui/BackupConfig.d.ts.map +1 -0
- package/dist/src/tui/install-ui/BackupConfig.js +46 -0
- package/dist/src/tui/install-ui/BackupConfig.js.map +1 -0
- package/dist/src/tui/install-ui/BlueprintPreview.d.ts +9 -0
- package/dist/src/tui/install-ui/BlueprintPreview.d.ts.map +1 -0
- package/dist/src/tui/install-ui/BlueprintPreview.js +65 -0
- package/dist/src/tui/install-ui/BlueprintPreview.js.map +1 -0
- package/dist/src/tui/install-ui/BlueprintPreview.logic.d.ts +33 -0
- package/dist/src/tui/install-ui/BlueprintPreview.logic.d.ts.map +1 -0
- package/dist/src/tui/install-ui/BlueprintPreview.logic.js +51 -0
- package/dist/src/tui/install-ui/BlueprintPreview.logic.js.map +1 -0
- package/dist/src/tui/install-ui/ComponentGrid.d.ts +13 -0
- package/dist/src/tui/install-ui/ComponentGrid.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ComponentGrid.js +75 -0
- package/dist/src/tui/install-ui/ComponentGrid.js.map +1 -0
- package/dist/src/tui/install-ui/ComponentGrid.logic.d.ts +31 -0
- package/dist/src/tui/install-ui/ComponentGrid.logic.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ComponentGrid.logic.js +58 -0
- package/dist/src/tui/install-ui/ComponentGrid.logic.js.map +1 -0
- package/dist/src/tui/install-ui/ConfigPanel.d.ts +11 -0
- package/dist/src/tui/install-ui/ConfigPanel.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ConfigPanel.js +35 -0
- package/dist/src/tui/install-ui/ConfigPanel.js.map +1 -0
- package/dist/src/tui/install-ui/CyberItem.d.ts +18 -0
- package/dist/src/tui/install-ui/CyberItem.d.ts.map +1 -0
- package/dist/src/tui/install-ui/CyberItem.js +33 -0
- package/dist/src/tui/install-ui/CyberItem.js.map +1 -0
- package/dist/src/tui/install-ui/CyberdeckBlueprint.d.ts +7 -0
- package/dist/src/tui/install-ui/CyberdeckBlueprint.d.ts.map +1 -0
- package/dist/src/tui/install-ui/CyberdeckBlueprint.js +91 -0
- package/dist/src/tui/install-ui/CyberdeckBlueprint.js.map +1 -0
- package/dist/src/tui/install-ui/ExecutionView.d.ts +12 -0
- package/dist/src/tui/install-ui/ExecutionView.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ExecutionView.js +154 -0
- package/dist/src/tui/install-ui/ExecutionView.js.map +1 -0
- package/dist/src/tui/install-ui/GradientHeader.d.ts +8 -0
- package/dist/src/tui/install-ui/GradientHeader.d.ts.map +1 -0
- package/dist/src/tui/install-ui/GradientHeader.js +18 -0
- package/dist/src/tui/install-ui/GradientHeader.js.map +1 -0
- package/dist/src/tui/install-ui/HooksConfig.d.ts +8 -0
- package/dist/src/tui/install-ui/HooksConfig.d.ts.map +1 -0
- package/dist/src/tui/install-ui/HooksConfig.js +35 -0
- package/dist/src/tui/install-ui/HooksConfig.js.map +1 -0
- package/dist/src/tui/install-ui/InstallConfirm.d.ts +27 -0
- package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -0
- package/dist/src/tui/install-ui/InstallConfirm.js +25 -0
- package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -0
- package/dist/src/tui/install-ui/InstallExecution.d.ts +21 -0
- package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -0
- package/dist/src/tui/install-ui/InstallExecution.js +154 -0
- package/dist/src/tui/install-ui/InstallExecution.js.map +1 -0
- package/dist/src/tui/install-ui/InstallFlow.d.ts +14 -0
- package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -0
- package/dist/src/tui/install-ui/InstallFlow.js +186 -0
- package/dist/src/tui/install-ui/InstallFlow.js.map +1 -0
- package/dist/src/tui/install-ui/InstallHub.d.ts +33 -0
- package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -0
- package/dist/src/tui/install-ui/InstallHub.js +97 -0
- package/dist/src/tui/install-ui/InstallHub.js.map +1 -0
- package/dist/src/tui/install-ui/InstallResult.d.ts +7 -0
- package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -0
- package/dist/src/tui/install-ui/InstallResult.js +15 -0
- package/dist/src/tui/install-ui/InstallResult.js.map +1 -0
- package/dist/src/tui/install-ui/McpConfig.d.ts +12 -0
- package/dist/src/tui/install-ui/McpConfig.d.ts.map +1 -0
- package/dist/src/tui/install-ui/McpConfig.js +69 -0
- package/dist/src/tui/install-ui/McpConfig.js.map +1 -0
- package/dist/src/tui/install-ui/ResultDashboard.d.ts +8 -0
- package/dist/src/tui/install-ui/ResultDashboard.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ResultDashboard.js +17 -0
- package/dist/src/tui/install-ui/ResultDashboard.js.map +1 -0
- package/dist/src/tui/install-ui/ReviewPanel.d.ts +19 -0
- package/dist/src/tui/install-ui/ReviewPanel.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ReviewPanel.js +25 -0
- package/dist/src/tui/install-ui/ReviewPanel.js.map +1 -0
- package/dist/src/tui/install-ui/ShortcutFooter.d.ts +7 -0
- package/dist/src/tui/install-ui/ShortcutFooter.d.ts.map +1 -0
- package/dist/src/tui/install-ui/ShortcutFooter.js +15 -0
- package/dist/src/tui/install-ui/ShortcutFooter.js.map +1 -0
- package/dist/src/tui/install-ui/StatuslineConfig.d.ts +11 -0
- package/dist/src/tui/install-ui/StatuslineConfig.d.ts.map +1 -0
- package/dist/src/tui/install-ui/StatuslineConfig.js +39 -0
- package/dist/src/tui/install-ui/StatuslineConfig.js.map +1 -0
- package/dist/src/tui/install-ui/StepSelector.d.ts +14 -0
- package/dist/src/tui/install-ui/StepSelector.d.ts.map +1 -0
- package/dist/src/tui/install-ui/StepSelector.js +46 -0
- package/dist/src/tui/install-ui/StepSelector.js.map +1 -0
- package/dist/src/tui/install-ui/index.d.ts +8 -0
- package/dist/src/tui/install-ui/index.d.ts.map +1 -0
- package/dist/src/tui/install-ui/index.js +10 -0
- package/dist/src/tui/install-ui/index.js.map +1 -0
- package/dist/src/tui/install-ui/types.d.ts +35 -0
- package/dist/src/tui/install-ui/types.d.ts.map +1 -0
- package/dist/src/tui/install-ui/types.js +25 -0
- package/dist/src/tui/install-ui/types.js.map +1 -0
- package/dist/src/tui/overlay-ui/OverlayList.d.ts +37 -0
- package/dist/src/tui/overlay-ui/OverlayList.d.ts.map +1 -0
- package/dist/src/tui/overlay-ui/OverlayList.js +146 -0
- package/dist/src/tui/overlay-ui/OverlayList.js.map +1 -0
- package/dist/src/tui/overlay-ui/index.d.ts +18 -0
- package/dist/src/tui/overlay-ui/index.d.ts.map +1 -0
- package/dist/src/tui/overlay-ui/index.js +204 -0
- package/dist/src/tui/overlay-ui/index.js.map +1 -0
- package/dist/src/tui/render.d.ts +13 -0
- package/dist/src/tui/render.d.ts.map +1 -0
- package/dist/src/tui/render.js +31 -0
- package/dist/src/tui/render.js.map +1 -0
- package/dist/src/tui/tools-ui/CommandReference.d.ts +7 -0
- package/dist/src/tui/tools-ui/CommandReference.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/CommandReference.js +33 -0
- package/dist/src/tui/tools-ui/CommandReference.js.map +1 -0
- package/dist/src/tui/tools-ui/ConfigSources.d.ts +6 -0
- package/dist/src/tui/tools-ui/ConfigSources.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/ConfigSources.js +27 -0
- package/dist/src/tui/tools-ui/ConfigSources.js.map +1 -0
- package/dist/src/tui/tools-ui/RegisterSettings.d.ts +8 -0
- package/dist/src/tui/tools-ui/RegisterSettings.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/RegisterSettings.js +125 -0
- package/dist/src/tui/tools-ui/RegisterSettings.js.map +1 -0
- package/dist/src/tui/tools-ui/RoleMappings.d.ts +9 -0
- package/dist/src/tui/tools-ui/RoleMappings.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/RoleMappings.js +104 -0
- package/dist/src/tui/tools-ui/RoleMappings.js.map +1 -0
- package/dist/src/tui/tools-ui/ToolsDashboard.d.ts +8 -0
- package/dist/src/tui/tools-ui/ToolsDashboard.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/ToolsDashboard.js +75 -0
- package/dist/src/tui/tools-ui/ToolsDashboard.js.map +1 -0
- package/dist/src/tui/tools-ui/ToolsOverview.d.ts +9 -0
- package/dist/src/tui/tools-ui/ToolsOverview.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/ToolsOverview.js +113 -0
- package/dist/src/tui/tools-ui/ToolsOverview.js.map +1 -0
- package/dist/src/tui/tools-ui/index.d.ts +3 -0
- package/dist/src/tui/tools-ui/index.d.ts.map +1 -0
- package/dist/src/tui/tools-ui/index.js +6 -0
- package/dist/src/tui/tools-ui/index.js.map +1 -0
- package/dist/src/tui/uninstall-ui/UninstallFlow.d.ts +7 -0
- package/dist/src/tui/uninstall-ui/UninstallFlow.d.ts.map +1 -0
- package/dist/src/tui/uninstall-ui/UninstallFlow.js +189 -0
- package/dist/src/tui/uninstall-ui/UninstallFlow.js.map +1 -0
- package/dist/src/tui/uninstall-ui/index.d.ts +3 -0
- package/dist/src/tui/uninstall-ui/index.d.ts.map +1 -0
- package/dist/src/tui/uninstall-ui/index.js +6 -0
- package/dist/src/tui/uninstall-ui/index.js.map +1 -0
- package/package.json +1 -1
- package/.codex/skills/maestro-ralph-execute/SKILL.md +0 -219
|
@@ -1,27 +1,18 @@
|
|
|
1
1
|
// ---------------------------------------------------------------------------
|
|
2
|
-
// `maestro delegate-config` —
|
|
2
|
+
// `maestro delegate-config` — alias for `maestro config delegate`
|
|
3
3
|
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
// maestro delegate-config list → tools overview (TUI)
|
|
8
|
-
// maestro delegate-config roles → role mappings (TUI)
|
|
9
|
-
// maestro delegate-config register → register settings file (TUI)
|
|
10
|
-
// maestro delegate-config ref → command reference (TUI)
|
|
11
|
-
// maestro delegate-config config → global/workspace config sources (TUI)
|
|
4
|
+
// Kept for backward compatibility. All logic now lives in config.ts;
|
|
5
|
+
// this module just re-routes to `config delegate` TUI/CLI via the
|
|
6
|
+
// unified config-ui entry point.
|
|
12
7
|
// ---------------------------------------------------------------------------
|
|
13
8
|
async function launchTui(initialView = 'dashboard') {
|
|
14
|
-
const {
|
|
15
|
-
|
|
16
|
-
const { ToolsDashboard } = await import('./tools-ui/ToolsDashboard.js');
|
|
17
|
-
const { waitUntilExit } = render(React.createElement(ToolsDashboard, { workDir: process.cwd(), initialView }));
|
|
18
|
-
await waitUntilExit();
|
|
9
|
+
const { runDelegateConfigTui } = await import('../tui/config-ui/index.js');
|
|
10
|
+
await runDelegateConfigTui(initialView);
|
|
19
11
|
}
|
|
20
12
|
async function printShow(json) {
|
|
21
13
|
const { loadCliToolsConfig, selectToolByRole, getDefaultRoleMappings, DELEGATE_ROLES } = await import('../config/cli-tools-config.js');
|
|
22
14
|
const config = await loadCliToolsConfig(process.cwd());
|
|
23
15
|
const tools = Object.entries(config.tools);
|
|
24
|
-
const roles = getDefaultRoleMappings();
|
|
25
16
|
const userRoles = config.roles ?? {};
|
|
26
17
|
if (json) {
|
|
27
18
|
const out = {
|
|
@@ -39,7 +30,6 @@ async function printShow(json) {
|
|
|
39
30
|
console.log(JSON.stringify(out, null, 2));
|
|
40
31
|
return;
|
|
41
32
|
}
|
|
42
|
-
// Text output
|
|
43
33
|
console.log('Tools:');
|
|
44
34
|
if (tools.length === 0) {
|
|
45
35
|
console.log(' (none configured)');
|
|
@@ -64,7 +54,7 @@ export function registerToolsCommand(program) {
|
|
|
64
54
|
const cmd = program
|
|
65
55
|
.command('delegate-config')
|
|
66
56
|
.alias('dc')
|
|
67
|
-
.description('
|
|
57
|
+
.description('Delegate tool configuration (alias for: maestro config delegate)')
|
|
68
58
|
.action(async () => launchTui('dashboard'));
|
|
69
59
|
cmd.command('show').description('Print tools & roles summary (non-interactive)')
|
|
70
60
|
.option('--json', 'Output as JSON')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/commands/tools.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/commands/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import { getAllManifests, cleanManifestFiles, deleteManifest, } from '../core/ma
|
|
|
13
13
|
import { deleteOverlayManifest } from '../core/overlay/applier.js';
|
|
14
14
|
import { removeMcpServer } from './install-backend.js';
|
|
15
15
|
import { removeMaestroHooks, loadClaudeSettings, getClaudeSettingsPath, } from './hooks.js';
|
|
16
|
-
import { runUninstallFlow } from '
|
|
16
|
+
import { runUninstallFlow } from '../tui/uninstall-ui/index.js';
|
|
17
17
|
import { t } from '../i18n/index.js';
|
|
18
18
|
// ---------------------------------------------------------------------------
|
|
19
19
|
// Helpers (used by --all -y non-interactive path)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wEAAwE;AACxE,EAAE;AACF,yEAAyE;AACzE,0CAA0C;AAC1C,8EAA8E;AAG9E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wEAAwE;AACxE,EAAE;AACF,yEAAyE;AACzE,0CAA0C;AAC1C,8EAA8E;AAG9E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAErC,8EAA8E;AAC9E,kDAAkD;AAClD,8EAA8E;AAE9E,SAAS,cAAc,CAAC,CAAW;IACjC,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,aAAa,IAAI,GAAG,CAAC;AACvF,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAkB;IAC3C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAE1D,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;IACjF,qBAAqB,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAEjE,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,KAAK,QAAQ;QAC9C,CAAC,CAAC,qBAAqB,EAAE;QACzB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAE1D,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAClC,IAAI,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC,UAAU,CAAC;QAClF,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK;YAAE,KAAK,GAAG,IAAI,CAAC;QAC9C,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,cAAc,CAAC,QAAQ,CAAC,CAAC;IACzB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CAAC,OAAO,EAAE,sCAAsC,CAAC;SACvD,MAAM,CAAC,WAAW,EAAE,2BAA2B,CAAC;SAChD,MAAM,CAAC,KAAK,EAAE,IAAsC,EAAE,EAAE;QACvD,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;QAEpC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,SAAS,SAAS,CAAC,MAAM,mBAAmB,CAAC,CAAC;YAC5D,KAAK,MAAM,CAAC,IAAI,SAAS;gBAAE,OAAO,CAAC,KAAK,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAEnE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC;wBACvB,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAC/E,OAAO,EAAE,KAAK;qBACf,CAAC,CAAC;oBACH,IAAI,CAAC,EAAE,EAAE,CAAC;wBAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;wBAAC,OAAO;oBAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;wBAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;wBAAC,OAAO;oBAAC,CAAC;oBAC5E,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxC,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC;gBACvC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC;gBACxD,IAAI,CAAC,CAAC,GAAG;oBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACrC,IAAI,CAAC,CAAC,KAAK;oBAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACzC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -78,6 +78,12 @@ export declare function loadConfigSources(workDir?: string): Promise<{
|
|
|
78
78
|
workspacePath: string | null;
|
|
79
79
|
workspace: Partial<CliToolsConfig> | null;
|
|
80
80
|
}>;
|
|
81
|
+
/**
|
|
82
|
+
* Reset ~/.maestro/cli-tools.json to defaults.
|
|
83
|
+
* Re-detects CLI availability and overwrites the existing file.
|
|
84
|
+
* Returns the new config.
|
|
85
|
+
*/
|
|
86
|
+
export declare function resetCliToolsConfig(): Promise<CliToolsConfig>;
|
|
81
87
|
/**
|
|
82
88
|
* Initialize ~/.maestro/cli-tools.json with auto-detected tool availability.
|
|
83
89
|
* No-op if the file already exists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-tools-config.d.ts","sourceRoot":"","sources":["../../../src/config/cli-tools-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli-tools-config.d.ts","sourceRoot":"","sources":["../../../src/config/cli-tools-config.ts"],"names":[],"mappings":"AAiBA,+CAA+C;AAC/C,eAAO,MAAM,WAAW,oFAEd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sGAAsG;IACtG,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACrC;AAMD,oCAAoC;AACpC,eAAO,MAAM,cAAc,0FAEjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAkB3D;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA6BlF;AAMD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,cAAc,GACrB,YAAY,GAAG,SAAS,CAc1B;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,cAAc,GACrB,YAAY,GAAG,SAAS,CAqB1B;AAMD;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,EAC/B,KAAK,EAAE,QAAQ,GAAG,WAAW,EAC7B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAMD,oDAAoD;AACpD,wBAAgB,sBAAsB,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAEpE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,GACrB,YAAY,EAAE,CAkBhB;AAED,kFAAkF;AAClF,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;IACvC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;CAC3C,CAAC,CAaD;AAmBD;;;;GAIG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,cAAc,CAAC,CAgBnE;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAuB3D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAkBhD"}
|
|
@@ -8,6 +8,7 @@ import { writeFileSync, mkdirSync, existsSync } from 'node:fs';
|
|
|
8
8
|
import { execSync } from 'node:child_process';
|
|
9
9
|
import { homedir } from 'node:os';
|
|
10
10
|
import { join, dirname } from 'node:path';
|
|
11
|
+
import cliToolsDefaults from './cli-tools-defaults.json' with { type: 'json' };
|
|
11
12
|
// ---------------------------------------------------------------------------
|
|
12
13
|
// Types
|
|
13
14
|
// ---------------------------------------------------------------------------
|
|
@@ -22,19 +23,8 @@ export const DOMAIN_TAGS = [
|
|
|
22
23
|
export const DELEGATE_ROLES = [
|
|
23
24
|
'analyze', 'explore', 'review', 'implement', 'plan', 'brainstorm', 'research',
|
|
24
25
|
];
|
|
25
|
-
//
|
|
26
|
-
|
|
27
|
-
// gemini — analyze, plan, frontend, brainstorm, research
|
|
28
|
-
// claude — analyze, plan, implement
|
|
29
|
-
const DEFAULT_ROLE_MAPPINGS = {
|
|
30
|
-
analyze: { fallbackChain: ['codex', 'gemini', 'claude'] },
|
|
31
|
-
explore: { fallbackChain: ['codex', 'gemini', 'claude'] },
|
|
32
|
-
review: { fallbackChain: ['codex', 'gemini', 'claude'] },
|
|
33
|
-
implement: { fallbackChain: ['codex', 'claude', 'gemini'] },
|
|
34
|
-
plan: { fallbackChain: ['codex', 'gemini', 'claude'] },
|
|
35
|
-
brainstorm: { fallbackChain: ['gemini', 'codex', 'claude'] },
|
|
36
|
-
research: { fallbackChain: ['gemini', 'codex', 'claude'] },
|
|
37
|
-
};
|
|
26
|
+
// Loaded from cli-tools-defaults.json — edit that file to change defaults.
|
|
27
|
+
const DEFAULT_ROLE_MAPPINGS = cliToolsDefaults.roleMappings;
|
|
38
28
|
// ---------------------------------------------------------------------------
|
|
39
29
|
// Defaults
|
|
40
30
|
// ---------------------------------------------------------------------------
|
|
@@ -220,13 +210,8 @@ export async function loadConfigSources(workDir) {
|
|
|
220
210
|
// ---------------------------------------------------------------------------
|
|
221
211
|
// Initialization
|
|
222
212
|
// ---------------------------------------------------------------------------
|
|
223
|
-
/** CLI tool definitions
|
|
224
|
-
const TOOL_DEFS =
|
|
225
|
-
{ name: 'gemini', cmd: 'gemini', primaryModel: 'gemini-2.5-pro', tags: ['fullstack', 'frontend'], type: 'builtin' },
|
|
226
|
-
{ name: 'claude', cmd: 'claude', primaryModel: 'claude-sonnet-4-20250514', tags: ['fullstack'], type: 'builtin' },
|
|
227
|
-
{ name: 'codex', cmd: 'codex', primaryModel: 'o3', tags: ['fullstack', 'backend'], type: 'builtin' },
|
|
228
|
-
{ name: 'opencode', cmd: 'opencode', primaryModel: '', tags: ['fullstack'], type: 'builtin' },
|
|
229
|
-
];
|
|
213
|
+
/** CLI tool definitions — loaded from cli-tools-defaults.json. */
|
|
214
|
+
const TOOL_DEFS = cliToolsDefaults.tools;
|
|
230
215
|
function isCliAvailable(cmd) {
|
|
231
216
|
try {
|
|
232
217
|
execSync(`${cmd} --version`, { stdio: 'ignore', timeout: 5000 });
|
|
@@ -236,6 +221,27 @@ function isCliAvailable(cmd) {
|
|
|
236
221
|
return false;
|
|
237
222
|
}
|
|
238
223
|
}
|
|
224
|
+
/**
|
|
225
|
+
* Reset ~/.maestro/cli-tools.json to defaults.
|
|
226
|
+
* Re-detects CLI availability and overwrites the existing file.
|
|
227
|
+
* Returns the new config.
|
|
228
|
+
*/
|
|
229
|
+
export async function resetCliToolsConfig() {
|
|
230
|
+
const tools = {};
|
|
231
|
+
for (const def of TOOL_DEFS) {
|
|
232
|
+
tools[def.name] = {
|
|
233
|
+
enabled: isCliAvailable(def.cmd),
|
|
234
|
+
primaryModel: def.primaryModel,
|
|
235
|
+
tags: def.tags,
|
|
236
|
+
type: def.type,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
const config = { version: '1.1.0', tools };
|
|
240
|
+
const configPath = join(homedir(), '.maestro', 'cli-tools.json');
|
|
241
|
+
await mkdir(dirname(configPath), { recursive: true });
|
|
242
|
+
await writeFile(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
243
|
+
return config;
|
|
244
|
+
}
|
|
239
245
|
/**
|
|
240
246
|
* Initialize ~/.maestro/cli-tools.json with auto-detected tool availability.
|
|
241
247
|
* No-op if the file already exists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-tools-config.js","sourceRoot":"","sources":["../../../src/config/cli-tools-config.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,iCAAiC;AACjC,wEAAwE;AACxE,2EAA2E;AAC3E,8EAA8E;AAE9E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAgB,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-tools-config.js","sourceRoot":"","sources":["../../../src/config/cli-tools-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"tools": [
|
|
3
|
+
{ "name": "gemini", "cmd": "gemini", "primaryModel": "gemini-3.1-pro-preview", "tags": ["fullstack", "frontend"], "type": "builtin" },
|
|
4
|
+
{ "name": "claude", "cmd": "claude", "primaryModel": "claude-sonnet-4-6", "tags": ["fullstack"], "type": "builtin" },
|
|
5
|
+
{ "name": "codex", "cmd": "codex", "primaryModel": "gpt-5.5", "tags": ["fullstack", "backend"], "type": "builtin" },
|
|
6
|
+
{ "name": "opencode", "cmd": "opencode", "primaryModel": "", "tags": ["fullstack"], "type": "builtin" }
|
|
7
|
+
],
|
|
8
|
+
"roleMappings": {
|
|
9
|
+
"analyze": { "fallbackChain": ["codex", "gemini", "claude"] },
|
|
10
|
+
"explore": { "fallbackChain": ["codex", "gemini", "claude"] },
|
|
11
|
+
"review": { "fallbackChain": ["codex", "gemini", "claude"] },
|
|
12
|
+
"implement": { "fallbackChain": ["codex", "claude", "gemini"] },
|
|
13
|
+
"plan": { "fallbackChain": ["codex", "gemini", "claude"] },
|
|
14
|
+
"brainstorm": { "fallbackChain": ["gemini", "codex", "claude"] },
|
|
15
|
+
"research": { "fallbackChain": ["gemini", "codex", "claude"] }
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
declare const TABS: readonly ["Skills", "Delegate", "Hooks", "Overlay", "Specs", "Install"];
|
|
2
|
+
type Tab = (typeof TABS)[number];
|
|
3
|
+
export interface ConfigHubProps {
|
|
4
|
+
workDir: string;
|
|
5
|
+
initialTab?: Tab;
|
|
6
|
+
/** Pass-through: jump directly into a skills sub-view */
|
|
7
|
+
skillsInitialView?: 'dashboard' | 'skills' | 'editor' | 'sources';
|
|
8
|
+
editSkill?: string;
|
|
9
|
+
/** Pass-through: jump directly into a delegate sub-view */
|
|
10
|
+
delegateInitialView?: 'dashboard' | 'tools' | 'roles' | 'register' | 'reference' | 'sources';
|
|
11
|
+
}
|
|
12
|
+
export declare function ConfigHub({ workDir, initialTab, skillsInitialView, editSkill, delegateInitialView, }: ConfigHubProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=ConfigHub.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigHub.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/ConfigHub.tsx"],"names":[],"mappings":"AAOA,QAAA,MAAM,IAAI,yEAA0E,CAAC;AACrF,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAWjC,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;CAC9F;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,UAAqB,EACrB,iBAAiB,EACjB,SAAS,EACT,mBAAmB,GACpB,EAAE,cAAc,2CA4EhB"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import { Box, Text, useInput, useApp } from 'ink';
|
|
4
|
+
import { SkillConfigDashboard } from './SkillConfigDashboard.js';
|
|
5
|
+
import { ToolsDashboard } from '../tools-ui/ToolsDashboard.js';
|
|
6
|
+
import { HooksPanel } from './HooksPanel.js';
|
|
7
|
+
import { SpecPanel } from './SpecPanel.js';
|
|
8
|
+
const TABS = ['Skills', 'Delegate', 'Hooks', 'Overlay', 'Specs', 'Install'];
|
|
9
|
+
const TAB_DESCRIPTIONS = {
|
|
10
|
+
Skills: 'Skill parameter defaults — configure default flag values for slash commands.',
|
|
11
|
+
Delegate: 'Delegate tool configuration — manage CLI tools, role mappings, and settings.',
|
|
12
|
+
Hooks: 'Hook installation status — Claude Code subprocess hooks and toggles.',
|
|
13
|
+
Overlay: 'Command overlays — non-invasive patches for .claude/commands and .codex/skills.',
|
|
14
|
+
Specs: 'Spec system — project knowledge (coding, arch, debug, test conventions).',
|
|
15
|
+
Install: 'Install / uninstall maestro assets — components, hooks, MCP server.',
|
|
16
|
+
};
|
|
17
|
+
export function ConfigHub({ workDir, initialTab = 'Skills', skillsInitialView, editSkill, delegateInitialView, }) {
|
|
18
|
+
const { exit } = useApp();
|
|
19
|
+
const [tabIdx, setTabIdx] = useState(TABS.indexOf(initialTab));
|
|
20
|
+
const tab = TABS[tabIdx];
|
|
21
|
+
// Once the user enters a sub-dashboard, hand off input to it
|
|
22
|
+
const [entered, setEntered] = useState(!!(skillsInitialView || editSkill || delegateInitialView));
|
|
23
|
+
useInput((input, key) => {
|
|
24
|
+
if (entered)
|
|
25
|
+
return;
|
|
26
|
+
if (key.leftArrow)
|
|
27
|
+
setTabIdx(i => (i > 0 ? i - 1 : TABS.length - 1));
|
|
28
|
+
if (key.rightArrow || input === '\t')
|
|
29
|
+
setTabIdx(i => (i < TABS.length - 1 ? i + 1 : 0));
|
|
30
|
+
if (key.return)
|
|
31
|
+
setEntered(true);
|
|
32
|
+
if (input === 'q' || key.escape)
|
|
33
|
+
exit();
|
|
34
|
+
});
|
|
35
|
+
if (entered) {
|
|
36
|
+
const backToHub = () => setEntered(false);
|
|
37
|
+
if (tab === 'Skills') {
|
|
38
|
+
return (_jsx(SkillConfigDashboard, { workDir: workDir, initialView: skillsInitialView, editSkill: editSkill }));
|
|
39
|
+
}
|
|
40
|
+
if (tab === 'Delegate') {
|
|
41
|
+
return (_jsx(ToolsDashboard, { workDir: workDir, initialView: delegateInitialView }));
|
|
42
|
+
}
|
|
43
|
+
if (tab === 'Hooks') {
|
|
44
|
+
return _jsx(HooksPanel, { workDir: workDir, onBack: backToHub });
|
|
45
|
+
}
|
|
46
|
+
if (tab === 'Overlay') {
|
|
47
|
+
return _jsx(OverlayLauncher, { onBack: backToHub });
|
|
48
|
+
}
|
|
49
|
+
if (tab === 'Specs') {
|
|
50
|
+
return _jsx(SpecPanel, { workDir: workDir, onBack: backToHub });
|
|
51
|
+
}
|
|
52
|
+
if (tab === 'Install') {
|
|
53
|
+
return _jsx(InstallLauncher, { onBack: backToHub });
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { borderStyle: "round", borderColor: "cyan", flexDirection: "column", paddingX: 2, paddingY: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "MAESTRO CONFIG" }), _jsx(Text, { children: " " }), _jsx(Box, { gap: 1, children: TABS.map((t, i) => (_jsx(Box, { paddingX: 1, children: i === tabIdx
|
|
57
|
+
? _jsx(Text, { bold: true, inverse: true, color: "cyan", children: ` ${t} ` })
|
|
58
|
+
: _jsx(Text, { dimColor: true, children: ` ${t} ` }) }, t))) }), _jsx(Text, { children: " " }), _jsx(Text, { children: TAB_DESCRIPTIONS[tab] }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " \u2190/\u2192 switch tab \u21B5 enter [q] quit" })] }) }));
|
|
59
|
+
}
|
|
60
|
+
// ---------------------------------------------------------------------------
|
|
61
|
+
// Overlay panel — embeds OverlayList directly with live data
|
|
62
|
+
// ---------------------------------------------------------------------------
|
|
63
|
+
function OverlayLauncher({ onBack }) {
|
|
64
|
+
const [OverlayList, setOverlayList] = useState(null);
|
|
65
|
+
const [data, setData] = useState(null);
|
|
66
|
+
const [error, setError] = useState(null);
|
|
67
|
+
React.useEffect(() => {
|
|
68
|
+
(async () => {
|
|
69
|
+
const { prepareOverlayData } = await import('../overlay-ui/index.js');
|
|
70
|
+
const { OverlayList: OL } = await import('../overlay-ui/OverlayList.js');
|
|
71
|
+
const d = prepareOverlayData();
|
|
72
|
+
if (!d) {
|
|
73
|
+
setError('No overlays installed.');
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
setData(d);
|
|
77
|
+
setOverlayList(() => OL);
|
|
78
|
+
}
|
|
79
|
+
})();
|
|
80
|
+
}, []);
|
|
81
|
+
if (error) {
|
|
82
|
+
return _jsx(OverlayFallback, { message: error, onBack: onBack });
|
|
83
|
+
}
|
|
84
|
+
if (!OverlayList || !data) {
|
|
85
|
+
return _jsx(Text, { dimColor: true, children: "Loading overlays..." });
|
|
86
|
+
}
|
|
87
|
+
return React.createElement(OverlayList, {
|
|
88
|
+
overlays: data.overlays,
|
|
89
|
+
errors: data.errors,
|
|
90
|
+
appliedState: data.appliedState,
|
|
91
|
+
targets: data.targets,
|
|
92
|
+
interactive: !!process.stdin.isTTY,
|
|
93
|
+
onDelete: data.handleDelete,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function OverlayFallback({ message, onBack }) {
|
|
97
|
+
useInput((input, key) => {
|
|
98
|
+
if (input === 'q' || key.escape)
|
|
99
|
+
onBack();
|
|
100
|
+
});
|
|
101
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { borderStyle: "round", borderColor: "cyan", flexDirection: "column", paddingX: 2, paddingY: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "OVERLAY MANAGER" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: message }), _jsx(Text, { children: " " }), _jsxs(Text, { dimColor: true, children: [" CLI: maestro overlay add ", '<', "file", '>'] }), _jsx(Text, { dimColor: true, children: " maestro overlay apply" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " [q] back to hub" })] }) }));
|
|
102
|
+
}
|
|
103
|
+
// ---------------------------------------------------------------------------
|
|
104
|
+
// Install launcher — entry to install/uninstall flows
|
|
105
|
+
// ---------------------------------------------------------------------------
|
|
106
|
+
function InstallLauncher({ onBack }) {
|
|
107
|
+
const [choice, setChoice] = useState('menu');
|
|
108
|
+
const [cursor, setCursor] = useState(0);
|
|
109
|
+
const options = ['Install (full wizard)', 'Uninstall'];
|
|
110
|
+
useInput((input, key) => {
|
|
111
|
+
if (choice !== 'menu')
|
|
112
|
+
return;
|
|
113
|
+
if (key.upArrow)
|
|
114
|
+
setCursor(c => Math.max(0, c - 1));
|
|
115
|
+
if (key.downArrow)
|
|
116
|
+
setCursor(c => Math.min(options.length - 1, c + 1));
|
|
117
|
+
if (key.return) {
|
|
118
|
+
setChoice(cursor === 0 ? 'install' : 'uninstall');
|
|
119
|
+
}
|
|
120
|
+
if (input === 'q' || key.escape)
|
|
121
|
+
onBack();
|
|
122
|
+
});
|
|
123
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { borderStyle: "round", borderColor: "cyan", flexDirection: "column", paddingX: 2, paddingY: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "INSTALL / UNINSTALL" }), _jsx(Text, { children: " " }), _jsx(Text, { children: "Launch the install or uninstall wizard from the CLI:" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " CLI: maestro install \u2014 interactive install wizard" }), _jsx(Text, { dimColor: true, children: " maestro install wizard \u2014 full TUI wizard" }), _jsx(Text, { dimColor: true, children: " maestro uninstall \u2014 remove installed assets" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " [q] back to hub" })] }) }));
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=ConfigHub.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigHub.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/ConfigHub.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigSourcesView.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/ConfigSourcesView.tsx"],"names":[],"mappings":"AAOA,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,sBAAsB,2CA0C5E"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useEffect } from 'react';
|
|
3
|
+
import { Box, Text, useInput } from 'ink';
|
|
4
|
+
import { loadSkillConfigSources, } from '../../config/skill-config.js';
|
|
5
|
+
export function ConfigSourcesView({ workDir, onBack }) {
|
|
6
|
+
const [data, setData] = useState(null);
|
|
7
|
+
useEffect(() => { setData(loadSkillConfigSources(workDir)); }, []);
|
|
8
|
+
useInput((_input, key) => { if (key.escape)
|
|
9
|
+
onBack(); });
|
|
10
|
+
if (!data)
|
|
11
|
+
return _jsx(Text, { dimColor: true, children: "Loading..." });
|
|
12
|
+
return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "Skill Config Sources" }), _jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "Global" }), _jsxs(Text, { dimColor: true, children: [" ", data.globalPath] }), data.global ? (_jsx(SkillConfigSection, { config: data.global, indent: 2 })) : (_jsx(Text, { dimColor: true, color: "yellow", children: " (not found)" })), _jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "Workspace" }), _jsxs(Text, { dimColor: true, children: [" ", data.workspacePath ?? `${workDir}/.maestro/skill-config.json`] }), data.workspace ? (_jsx(SkillConfigSection, { config: data.workspace, indent: 2 })) : (_jsx(Text, { dimColor: true, color: "yellow", children: " (not found)" })), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: "Workspace overrides global (per-skill, params deep-merged). [Esc] Back" })] }));
|
|
13
|
+
}
|
|
14
|
+
function SkillConfigSection({ config, indent }) {
|
|
15
|
+
const pad = ' '.repeat(indent);
|
|
16
|
+
const skills = Object.entries(config.skills);
|
|
17
|
+
if (skills.length === 0) {
|
|
18
|
+
return _jsxs(Text, { dimColor: true, children: [pad, "(no skills configured)"] });
|
|
19
|
+
}
|
|
20
|
+
return (_jsx(Box, { flexDirection: "column", children: skills.map(([name, defaults]) => {
|
|
21
|
+
const params = Object.entries(defaults.params);
|
|
22
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { children: pad }), _jsx(Text, { color: "green", children: "\u25CF" }), _jsx(Text, { bold: true, children: name }), _jsxs(Text, { dimColor: true, children: ["(", params.length, " param", params.length !== 1 ? 's' : '', ")"] })] }), params.map(([param, value]) => (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { children: [pad, " "] }), _jsx(Text, { color: "yellow", children: param }), _jsxs(Text, { children: ["= ", String(value)] })] }, param)))] }, name));
|
|
23
|
+
}) }));
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=ConfigSourcesView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigSourcesView.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/ConfigSourcesView.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EACL,sBAAsB,GAEvB,MAAM,8BAA8B,CAAC;AAOtC,MAAM,UAAU,iBAAiB,CAAC,EAAE,OAAO,EAAE,MAAM,EAA0B;IAC3E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAKtB,IAAI,CAAC,CAAC;IAEhB,SAAS,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM;QAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzD,IAAI,CAAC,IAAI;QAAE,OAAO,KAAC,IAAI,IAAC,QAAQ,iCAAkB,CAAC;IAEnD,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACrC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,qCAA4B,EACnD,KAAC,IAAI,oBAAS,EAGd,KAAC,IAAI,IAAC,IAAI,6BAAc,EACxB,MAAC,IAAI,IAAC,QAAQ,yBAAI,IAAI,CAAC,UAAU,IAAQ,EACxC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACb,KAAC,kBAAkB,IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAI,CACvD,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,QAAQ,QAAC,KAAK,EAAC,QAAQ,8BAAqB,CACnD,EAED,KAAC,IAAI,oBAAS,EAGd,KAAC,IAAI,IAAC,IAAI,gCAAiB,EAC3B,MAAC,IAAI,IAAC,QAAQ,yBAAI,IAAI,CAAC,aAAa,IAAI,GAAG,OAAO,6BAA6B,IAAQ,EACtF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAChB,KAAC,kBAAkB,IAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,GAAI,CAC1D,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,QAAQ,QAAC,KAAK,EAAC,QAAQ,8BAAqB,CACnD,EAED,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,6FAA8E,IACxF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,MAAM,EAAE,MAAM,EAA+C;IACzF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,MAAC,IAAI,IAAC,QAAQ,mBAAE,GAAG,8BAA8B,CAAC;IAC3D,CAAC;IAED,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC/C,OAAO,CACL,MAAC,GAAG,IAAY,aAAa,EAAC,QAAQ,aACpC,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,cAAE,GAAG,GAAQ,EAClB,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,uBAAS,EAC5B,KAAC,IAAI,IAAC,IAAI,kBAAE,IAAI,GAAQ,EACxB,MAAC,IAAI,IAAC,QAAQ,wBAAG,MAAM,CAAC,MAAM,YAAQ,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,IACzE,EACL,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC9B,MAAC,GAAG,IAAa,GAAG,EAAE,CAAC,aACrB,MAAC,IAAI,eAAE,GAAG,UAAU,EACpB,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,KAAK,GAAQ,EACnC,MAAC,IAAI,qBAAI,MAAM,CAAC,KAAK,CAAC,IAAQ,KAHtB,KAAK,CAIT,CACP,CAAC,KAbM,IAAI,CAcR,CACP,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HooksPanel.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/HooksPanel.tsx"],"names":[],"mappings":"AAaA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,eAAe,2CA+H9D"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useEffect } from 'react';
|
|
3
|
+
import { Box, Text, useInput, useApp } from 'ink';
|
|
4
|
+
export function HooksPanel({ workDir, onBack }) {
|
|
5
|
+
const { exit } = useApp();
|
|
6
|
+
const [hooks, setHooks] = useState([]);
|
|
7
|
+
const [globalInstalled, setGlobalInstalled] = useState(false);
|
|
8
|
+
const [cursor, setCursor] = useState(0);
|
|
9
|
+
const [statusLine, setStatusLine] = useState(false);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
loadStatus();
|
|
12
|
+
}, []);
|
|
13
|
+
async function loadStatus() {
|
|
14
|
+
const { HOOK_DEFS, HOOK_LEVEL_DESCRIPTIONS, getClaudeSettingsPath, loadClaudeSettings, } = await import('../../commands/hooks.js');
|
|
15
|
+
const { loadHooksConfig } = await import('../../config/index.js');
|
|
16
|
+
const settingsPath = getClaudeSettingsPath();
|
|
17
|
+
const settings = loadClaudeSettings(settingsPath);
|
|
18
|
+
const config = loadHooksConfig();
|
|
19
|
+
const hasStatusline = settings.statusLine?.command?.includes('maestro') || false;
|
|
20
|
+
setStatusLine(hasStatusline);
|
|
21
|
+
setGlobalInstalled(!!settings.hooks);
|
|
22
|
+
const items = [];
|
|
23
|
+
for (const [name, def] of Object.entries(HOOK_DEFS)) {
|
|
24
|
+
// Check if installed in settings
|
|
25
|
+
const installed = findHook(settings, name);
|
|
26
|
+
// Check toggle
|
|
27
|
+
const toggleKey = name.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
|
|
28
|
+
const enabled = config.toggles[toggleKey] !== false;
|
|
29
|
+
items.push({
|
|
30
|
+
name,
|
|
31
|
+
event: def.event,
|
|
32
|
+
matcher: def.matcher,
|
|
33
|
+
level: def.level,
|
|
34
|
+
installed,
|
|
35
|
+
enabled,
|
|
36
|
+
requiresWorkspace: !!def.requiresWorkspace,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
setHooks(items);
|
|
40
|
+
}
|
|
41
|
+
useInput((input, key) => {
|
|
42
|
+
if (input === 'q' || key.escape) {
|
|
43
|
+
if (onBack)
|
|
44
|
+
onBack();
|
|
45
|
+
else
|
|
46
|
+
exit();
|
|
47
|
+
}
|
|
48
|
+
if (key.upArrow)
|
|
49
|
+
setCursor(c => Math.max(0, c - 1));
|
|
50
|
+
if (key.downArrow)
|
|
51
|
+
setCursor(c => Math.min(hooks.length - 1, c + 1));
|
|
52
|
+
});
|
|
53
|
+
if (hooks.length === 0) {
|
|
54
|
+
return _jsx(Text, { dimColor: true, children: "Loading hooks status..." });
|
|
55
|
+
}
|
|
56
|
+
const selected = hooks[cursor];
|
|
57
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { borderStyle: "round", borderColor: "cyan", flexDirection: "column", paddingX: 2, paddingY: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "HOOKS STATUS" }), _jsx(Text, { children: " " }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Statusline:" }), statusLine
|
|
58
|
+
? _jsx(Text, { bold: true, color: "green", children: "installed" })
|
|
59
|
+
: _jsx(Text, { bold: true, color: "red", children: "not installed" })] }), _jsx(Text, { children: " " }), _jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { dimColor: true, children: pad('', 2) }), _jsx(Text, { dimColor: true, bold: true, children: pad('Hook', 24) }), _jsx(Text, { dimColor: true, bold: true, children: pad('Event', 20) }), _jsx(Text, { dimColor: true, bold: true, children: pad('Level', 10) }), _jsx(Text, { dimColor: true, bold: true, children: pad('Status', 12) })] }), hooks.map((h, i) => {
|
|
60
|
+
const isCurrent = i === cursor;
|
|
61
|
+
const icon = h.installed
|
|
62
|
+
? (h.enabled ? '✓' : '○')
|
|
63
|
+
: '✗';
|
|
64
|
+
const iconColor = h.installed
|
|
65
|
+
? (h.enabled ? 'green' : 'yellow')
|
|
66
|
+
: 'red';
|
|
67
|
+
const matcher = h.matcher ? ` [${h.matcher}]` : '';
|
|
68
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: "cyan", children: isCurrent ? '›' : ' ' }), _jsx(Text, { color: iconColor, children: icon }), _jsx(Text, { bold: isCurrent, children: pad(h.name, 23) }), _jsx(Text, { dimColor: !isCurrent, children: pad(`${h.event}${matcher}`, 20) }), _jsx(Text, { dimColor: !isCurrent, children: pad(h.level, 10) }), _jsx(Text, { color: iconColor, children: h.installed ? (h.enabled ? 'active' : 'disabled') : 'not installed' })] }, h.name));
|
|
69
|
+
})] }), selected && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: selected.requiresWorkspace ? '⚑ Requires workspace' : '' })] })), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " \u2191/\u2193 navigate [q] back" }), _jsxs(Text, { dimColor: true, children: [" CLI: maestro hooks install --level ", '<', "minimal|standard|full", '>'] })] }) }));
|
|
70
|
+
}
|
|
71
|
+
function pad(s, width) {
|
|
72
|
+
return s.length >= width ? s : s + ' '.repeat(width - s.length);
|
|
73
|
+
}
|
|
74
|
+
function findHook(settings, name) {
|
|
75
|
+
if (!settings.hooks)
|
|
76
|
+
return false;
|
|
77
|
+
for (const eventKey of ['PreToolUse', 'PostToolUse', 'UserPromptSubmit', 'Notification', 'Stop']) {
|
|
78
|
+
const groups = settings.hooks[eventKey];
|
|
79
|
+
if (!Array.isArray(groups))
|
|
80
|
+
continue;
|
|
81
|
+
for (const group of groups) {
|
|
82
|
+
if (Array.isArray(group.hooks)) {
|
|
83
|
+
for (const h of group.hooks) {
|
|
84
|
+
if (h.command?.includes(name))
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return false;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=HooksPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HooksPanel.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/HooksPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type View = 'dashboard' | 'skills' | 'editor' | 'sources';
|
|
2
|
+
export interface SkillConfigDashboardProps {
|
|
3
|
+
workDir: string;
|
|
4
|
+
initialView?: View;
|
|
5
|
+
editSkill?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function SkillConfigDashboard({ workDir, initialView, editSkill }: SkillConfigDashboardProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=SkillConfigDashboard.d.ts.map
|