qwen-code/packages/web-shell/client/subagentDetailsContext.tsx
ytahdn 80863c0858
feat(web-shell): show subagent sessions in detail panel (#7380)
* feat(web-shell): show subagent sessions in detail panel

* fix(web-shell): harden subagent session details

* chore(sdk): account for subagent client APIs

* fix(core): keep subagent resume history valid

* fix(subagents): stabilize detail session streaming

* test(cli): update telemetry route count

* fix(subagents): address review feedback

* fix(subagents): harden transcript refresh state

* fix(subagents): address maintainer review

* fix(subagents): preserve compact status details

* fix(subagents): address review feedback round 3 (#7380)

* fix(subagents): address remaining detail review feedback

---------

Co-authored-by: ytahdn <ytahdn@gmail.com>
Co-authored-by: 钉萁 <dingqi.jww@alibaba-inc.com>
Co-authored-by: Qwen Code Autofix <qwen-code-autofix@users.noreply.github.com>
2026-07-22 02:31:08 +00:00

30 lines
749 B
TypeScript

import { createContext, useContext, type ReactNode } from 'react';
import type { ACPToolCall } from './adapters/types';
export type OpenSubagentDetails = (tool: ACPToolCall) => void;
interface SubagentDetailsContextValue {
onOpen: OpenSubagentDetails;
}
const SubagentDetailsContext = createContext<
SubagentDetailsContextValue | undefined
>(undefined);
export function SubagentDetailsProvider({
onOpen,
children,
}: {
onOpen: OpenSubagentDetails;
children: ReactNode;
}) {
return (
<SubagentDetailsContext.Provider value={{ onOpen }}>
{children}
</SubagentDetailsContext.Provider>
);
}
export function useSubagentDetails(): SubagentDetailsContextValue | undefined {
return useContext(SubagentDetailsContext);
}