feat(effort): /effort 无参时挂载 EffortPanel 交互面板

- 无参 → <EffortPanelWrapper> 透传 AppState.effortValue
- current/status → 仍显示文本(不变)
- 有参 → 直跳 executeEffort(不变)
- help/-h/--help → 不变

Co-Authored-By: glm-5.2 <zai-org@claude-code-best.win>
This commit is contained in:
claude-code-best
2026-06-14 14:30:18 +08:00
parent 7806d9f32e
commit 10cf60989a

View File

@@ -1,4 +1,5 @@
import * as React from 'react';
import { EffortPanel } from '../../components/EffortPanel/EffortPanel.js';
import { useMainLoopModel } from '../../hooks/useMainLoopModel.js';
import {
type AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS,
@@ -161,9 +162,18 @@ export async function call(onDone: LocalJSXCommandOnDone, _context: unknown, arg
}
if (!args || args === 'current' || args === 'status') {
return <ShowCurrentEffort onDone={onDone} />;
if (args === 'current' || args === 'status') {
return <ShowCurrentEffort onDone={onDone} />;
}
// 完全无参 → 打开交互面板
return <EffortPanelWrapper onDone={onDone} />;
}
const result = executeEffort(args);
return <ApplyEffortAndClose result={result} onDone={onDone} />;
}
function EffortPanelWrapper({ onDone }: { onDone: (result: string) => void }): React.ReactNode {
const effortValue = useAppState(s => s.effortValue);
return <EffortPanel appStateEffort={effortValue} onDone={onDone} />;
}