mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
The read side becomes the 'permissions' session projection: src/types.ts is the key declaration's one home (PermissionSelect = whole select: table options in declaration order plus a current-only 'custom'), served through ./types and the ./client re-export. The unit folds the three whole-value knob events (permission/preset, sandbox/mode, approval/policy) into a plain KnobState and views the select over the composition defaults the service already owns; current() shares the same derive step, so the fold exists once. The write side becomes the /permission command (the /plan registration shape): bare invocation reports the current preset and the table, a preset argument switches through set() immediately — no turn anchoring (knob events need no enclosure), no dedicated RPC. Both children activate only when their registry is composed.
11 lines
380 B
TypeScript
11 lines
380 B
TypeScript
/**
|
|
* Client-namespace projection of the permission domain: a pure re-export of
|
|
* the package's types outlet. Client code imports ONLY the client namespace
|
|
* (repo discipline), so `./client` projects the same single-source content
|
|
* `./types` serves to host consumers — zero duplication.
|
|
*
|
|
* @module @deepseek-ai/dsh-permission/client
|
|
*/
|
|
|
|
export type * from './types.ts'
|