mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
The browse interaction also presents a dialog (the in-app modal), so 'dialog' failed to discriminate the two capability kinds; 'native' names where the chooser runs. Package directory-picker-dialog -> directory-picker-native, kind 'dialog' -> 'native', with every seam/gateway/client/doc reference updated and the seam Agent Note's naming rationale rewritten to match.
34 lines
1.4 KiB
TypeScript
34 lines
1.4 KiB
TypeScript
/**
|
|
* Native backend of the directory-picker seam: registers `ctx.directoryPicker`
|
|
* with the `native` capability, opening one native OS chooser on the host
|
|
* display per pick (macOS `osascript`, Windows STA PowerShell
|
|
* `FolderBrowserDialog`, Linux Zenity with a KDialog fallback). Only viable
|
|
* when the operator sits at the host's screen; remote deployments compose the
|
|
* browse backend instead.
|
|
* @module @deepseek-ai/dsh-host-directory-picker-native
|
|
*/
|
|
|
|
import { DirectoryPicker } from '@deepseek-ai/dsh-host-directory-picker'
|
|
import type { DirectoryPickerCapability } from '@deepseek-ai/dsh-host-directory-picker'
|
|
import { pickNativeDirectory } from './native-picker.ts'
|
|
|
|
export type { DirectoryPickerInternals, DirectoryPickerRunner } from './native-picker.ts'
|
|
export { pickNativeDirectory } from './native-picker.ts'
|
|
|
|
/** The `ctx.directoryPicker` native implementation (stable capability object per service life). */
|
|
export default class NativeDirectoryPicker extends DirectoryPicker {
|
|
private readonly nativeCapability: DirectoryPickerCapability = {
|
|
kind: 'native',
|
|
/* v8 ignore next -- pure forward to pickNativeDirectory (its spec owns behavior); invoking here opens a real chooser. */
|
|
pick: signal => pickNativeDirectory(signal),
|
|
}
|
|
|
|
/**
|
|
* The native interaction capability.
|
|
* @returns the stable `native` capability object.
|
|
*/
|
|
capability(): DirectoryPickerCapability {
|
|
return this.nativeCapability
|
|
}
|
|
}
|