kimi-code/packages/protocol/src/index.ts
Haozhe ceb27f5e44
Some checks are pending
CI / build (push) Waiting to run
CI / test (push) Waiting to run
CI / test-windows (push) Waiting to run
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
Nix Build / Check flake.nix workspace sync (push) Waiting to run
Nix Build / nix build .#kimi-code (push) Blocked by required conditions
Release / Deploy docs (push) Blocked by required conditions
Release / Native release artifact (push) Blocked by required conditions
Release / Publish native release assets (push) Blocked by required conditions
Release / Release (push) Waiting to run
feat(server): add GUI store API mirroring localStorage (#1231)
* feat(server): add GUI store API mirroring localStorage

- add /api/v1/gui/store/* endpoints (getItem/setItem/removeItem/clear/length) mirroring the browser localStorage interface
- add IGuiStoreService persisting opaque string values to ~/.kimi-code/gui.toml via smol-toml with atomic writes and an in-process write lock
- wire protocol schema, service, routes, and DI registration; add e2e tests and update the API surface snapshot

* chore: add changeset for gui store api

* fix(server): harden GUI store key handling and file permissions

- use a null-prototype record and an own-property check so keys that exist on Object.prototype (toString, constructor, __proto__) behave like ordinary keys
- write gui.toml with 0600 permissions so unsent drafts and input history stay private to the owning user
2026-06-30 21:04:59 +08:00

43 lines
1.2 KiB
TypeScript

export * from './envelope';
export * from './error-codes';
export * from './pagination';
export * from './time';
export * from './request-id';
export * from './events';
export * from './display';
export * from './ws-control';
export * from './asyncapi';
export * from './session';
export * from './workspace';
export * from './message';
export * from './approval';
export * from './question';
export * from './tool';
export * from './skill';
export * from './task';
export * from './fs';
export * from './file';
export * from './modelCatalog';
export * from './rest/meta';
export * from './rest/auth';
export * from './rest/oauth';
export * from './rest/session';
export * from './rest/snapshot';
export * from './rest/workspace';
export * from './rest/fsBrowse';
export * from './rest/message';
export * from './rest/prompt';
export * from './rest/approval';
export * from './rest/question';
export * from './rest/tool';
export * from './rest/skill';
export * from './rest/task';
export * from './rest/fs';
export * from './rest/file';
export * from './rest/modelCatalog';
export * from './rest/config';
export * from './rest/terminal';
export * from './rest/connection';
export * from './rest/guiStore';