@hachej/boring-workspace 0.1.76 → 0.1.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/plugin.d.ts CHANGED
@@ -268,6 +268,8 @@ interface WorkspaceShellCapabilities {
268
268
  openDetachedChat(sessionId: string, options?: {
269
269
  anchor?: WorkspaceShellAnchorRect;
270
270
  title?: string;
271
+ initialDraft?: string;
272
+ composingEnabled?: boolean;
271
273
  }): WorkspaceShellCapabilityResult;
272
274
  }
273
275
  declare function useWorkspaceShellCapabilities(): WorkspaceShellCapabilities;
@@ -1,8 +1,13 @@
1
1
  import { Dispatch, SetStateAction } from 'react';
2
2
  import { DispatchContext } from '../../front/bridge';
3
3
  import { WorkspaceShellCapabilities } from '../../front/shell/WorkspaceShellCapabilitiesContext';
4
- export declare function useWorkspaceShellCapabilitiesController({ setFloatingChatSessionId, openChatPane, surfaceDispatch, }: {
5
- setFloatingChatSessionId: Dispatch<SetStateAction<string | null>>;
4
+ export declare function useWorkspaceShellCapabilitiesController({ setFloatingChatSession, openChatPane, surfaceDispatch, }: {
5
+ setFloatingChatSession: Dispatch<SetStateAction<{
6
+ sessionId: string;
7
+ title?: string;
8
+ initialDraft?: string;
9
+ composingEnabled?: boolean;
10
+ } | null>>;
6
11
  openChatPane: (sessionId: string) => void;
7
12
  surfaceDispatch: DispatchContext;
8
13
  }): WorkspaceShellCapabilities;
@@ -35,6 +35,8 @@ export interface WorkspaceShellCapabilities {
35
35
  openDetachedChat(sessionId: string, options?: {
36
36
  anchor?: WorkspaceShellAnchorRect;
37
37
  title?: string;
38
+ initialDraft?: string;
39
+ composingEnabled?: boolean;
38
40
  }): WorkspaceShellCapabilityResult;
39
41
  }
40
42
  export declare function WorkspaceShellCapabilitiesProvider({ value, children, }: {
@@ -48,6 +48,13 @@ The two tiers differ by **provenance and trust**, not just lifecycle:
48
48
  | Server/routes/tools | Full power: Fastify routes, static `agentTools`, providers, domain APIs | Route-free; no `boring.server`; backend work goes through Pi tools |
49
49
  | Reload | Restart/redeploy | `/reload` hot-swaps front + Pi resources |
50
50
 
51
+ App-owned boot composition may inject narrowly scoped trusted host
52
+ capabilities, such as `WorkspaceAgentDispatcher`, into an app/internal
53
+ integration. The host must verify the workspace actor before injection; the
54
+ dispatcher trusts the supplied `{ workspaceId, userId }` and performs no
55
+ authorization. Runtime/generated plugins never receive this capability and do
56
+ not gain backend services, routes, runtime bindings, or raw filesystem paths.
57
+
51
58
  Plugin tools' `execute()` run in the **host Node process and bypass the
52
59
  sandbox by design**; plugin loading is local-mode-only (skipped under
53
60
  `vercel-sandbox`). Hosted/marketplace plugins — untrusted external code that
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hachej/boring-workspace",
3
- "version": "0.1.76",
3
+ "version": "0.1.77",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "Workspace UI, plugin, and bridge package for composing chat, files, catalogs, editors, and app-specific panes.",
@@ -139,9 +139,9 @@
139
139
  "tailwind-merge": "^2.0.0",
140
140
  "zod": "^3.23.0",
141
141
  "zustand": "^5.0.14",
142
- "@hachej/boring-agent": "0.1.76",
143
- "@hachej/boring-ui-kit": "0.1.76",
144
- "@hachej/boring-ui-plugin-cli": "0.1.76"
142
+ "@hachej/boring-agent": "0.1.77",
143
+ "@hachej/boring-ui-kit": "0.1.77",
144
+ "@hachej/boring-ui-plugin-cli": "0.1.77"
145
145
  },
146
146
  "devDependencies": {
147
147
  "@tailwindcss/postcss": "^4.3.1",