feat(goal): add TypeRT gateway example
This commit is contained in:
@@ -495,7 +495,7 @@ export interface Config {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Source: [`packages/goal/goal/src/index.ts:114`](../packages/goal/goal/src/index.ts)
|
Source: [`packages/goal/goal/src/index.ts:116`](../packages/goal/goal/src/index.ts)
|
||||||
|
|
||||||
## `@deepseek-ai/dsh-headless`
|
## `@deepseek-ai/dsh-headless`
|
||||||
|
|
||||||
@@ -2522,6 +2522,7 @@ These load from a `cordis.yml` entry with no `config:` block; they declare no co
|
|||||||
- `@deepseek-ai/dsh-agent` ([`packages/core/agent/src/index.ts`](../packages/core/agent/src/index.ts))
|
- `@deepseek-ai/dsh-agent` ([`packages/core/agent/src/index.ts`](../packages/core/agent/src/index.ts))
|
||||||
- `@deepseek-ai/dsh-client-locale` ([`packages/client/locale/src/index.ts`](../packages/client/locale/src/index.ts))
|
- `@deepseek-ai/dsh-client-locale` ([`packages/client/locale/src/index.ts`](../packages/client/locale/src/index.ts))
|
||||||
- `@deepseek-ai/dsh-client-modules` — requires `httpServer` · `loader` ([`packages/client/modules/src/index.ts`](../packages/client/modules/src/index.ts))
|
- `@deepseek-ai/dsh-client-modules` — requires `httpServer` · `loader` ([`packages/client/modules/src/index.ts`](../packages/client/modules/src/index.ts))
|
||||||
|
- `@deepseek-ai/dsh-client-remotes` ([`packages/client/remotes/src/index.ts`](../packages/client/remotes/src/index.ts))
|
||||||
- `@deepseek-ai/dsh-client-runtime` ([`packages/client/runtime/src/index.ts`](../packages/client/runtime/src/index.ts))
|
- `@deepseek-ai/dsh-client-runtime` ([`packages/client/runtime/src/index.ts`](../packages/client/runtime/src/index.ts))
|
||||||
- `@deepseek-ai/dsh-client-ui-command` ([`packages/client/ui-command/src/index.ts`](../packages/client/ui-command/src/index.ts))
|
- `@deepseek-ai/dsh-client-ui-command` ([`packages/client/ui-command/src/index.ts`](../packages/client/ui-command/src/index.ts))
|
||||||
- `@deepseek-ai/dsh-client-ui-conversation` ([`packages/client/ui-conversation/src/index.ts`](../packages/client/ui-conversation/src/index.ts))
|
- `@deepseek-ai/dsh-client-ui-conversation` ([`packages/client/ui-conversation/src/index.ts`](../packages/client/ui-conversation/src/index.ts))
|
||||||
|
|||||||
@@ -472,7 +472,7 @@ Goal mutation accepted by one live agent. The matching `goal/change` session eve
|
|||||||
|
|
||||||
Types: [Agent](../core-data-structures/core.md) · [GoalChanged](../core-data-structures/goal.md) · [Scoped](../core-data-structures/scope.md)
|
Types: [Agent](../core-data-structures/core.md) · [GoalChanged](../core-data-structures/goal.md) · [Scoped](../core-data-structures/scope.md)
|
||||||
|
|
||||||
Source: [`packages/goal/goal/src/domain.ts:141`](../../packages/goal/goal/src/domain.ts)
|
Source: [`packages/goal/goal/src/domain.ts:114`](../../packages/goal/goal/src/domain.ts)
|
||||||
|
|
||||||
## `llm/*`
|
## `llm/*`
|
||||||
|
|
||||||
|
|||||||
@@ -761,11 +761,60 @@ block(agent: Agent, ref: GoalRef, reason: GoalBlockReason): GoalView
|
|||||||
* @returns the tombstone ref whose revision is one past the cleared snapshot.
|
* @returns the tombstone ref whose revision is one past the cleared snapshot.
|
||||||
*/
|
*/
|
||||||
clear(agent: Agent, ref: GoalRef): GoalRef
|
clear(agent: Agent, ref: GoalRef): GoalRef
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create one Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param request - objective and optional round cap.
|
||||||
|
* @returns the created Goal identity.
|
||||||
|
*/
|
||||||
|
@Remote('create') remoteExportCreate(agent: Agent, request: CreateGoalRequest): CreateGoalResult
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Edit one Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param ref - expected current revision.
|
||||||
|
* @param request - replacement fields.
|
||||||
|
* @returns the edited Goal view.
|
||||||
|
*/
|
||||||
|
@Remote('edit') remoteExportEdit(agent: Agent, ref: GoalRef, request: EditGoalRequest): GoalView
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pause one Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param ref - expected current revision.
|
||||||
|
* @returns the paused Goal view.
|
||||||
|
*/
|
||||||
|
@Remote('pause') remoteExportPause(agent: Agent, ref: GoalRef): GoalView
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resume one Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param ref - expected current revision.
|
||||||
|
* @returns the resumed Goal view.
|
||||||
|
*/
|
||||||
|
@Remote('resume') remoteExportResume(agent: Agent, ref: GoalRef): GoalView
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Complete one Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param ref - expected current revision.
|
||||||
|
* @returns the completed Goal view.
|
||||||
|
*/
|
||||||
|
@Remote('complete') remoteExportComplete(agent: Agent, ref: GoalRef): GoalView
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clear one terminal Goal through the remote boundary.
|
||||||
|
* @param agent - exact live Agent resolved from the wire identity.
|
||||||
|
* @param ref - expected current revision.
|
||||||
|
* @returns the committed clear revision.
|
||||||
|
*/
|
||||||
|
@Remote('clear') remoteExportClear(agent: Agent, ref: GoalRef): GoalRef
|
||||||
```
|
```
|
||||||
|
|
||||||
Types: [Agent](../core-data-structures/core.md) · [CreateGoalRequest](../core-data-structures/goal.md) · [EditGoalRequest](../core-data-structures/goal.md) · [GoalBlockReason](../core-data-structures/goal.md) · [GoalRef](../core-data-structures/goal.md) · [GoalView](../core-data-structures/goal.md)
|
Types: [Agent](../core-data-structures/core.md) · [CreateGoalRequest](../core-data-structures/goal.md) · [CreateGoalResult](../core-data-structures/goal.md) · [EditGoalRequest](../core-data-structures/goal.md) · [GoalBlockReason](../core-data-structures/goal.md) · [GoalRef](../core-data-structures/goal.md) · [GoalView](../core-data-structures/goal.md)
|
||||||
|
|
||||||
Source: [`packages/goal/goal/src/index.ts:181`](../../packages/goal/goal/src/index.ts)
|
Source: [`packages/goal/goal/src/index.ts:183`](../../packages/goal/goal/src/index.ts)
|
||||||
|
|
||||||
## `ctx.httpServer` — `HttpServerService`
|
## `ctx.httpServer` — `HttpServerService`
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ This matrix shows which packages dispatch each harness-owned event and which pac
|
|||||||
| `fs/edit-intent` | `waterfall` | [`packages/fs/fs/src/index.ts:62`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`waterfall`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`waterfall`) | [`fs-policy`](../packages/fs/fs-policy) |
|
| `fs/edit-intent` | `waterfall` | [`packages/fs/fs/src/index.ts:62`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`waterfall`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`waterfall`) | [`fs-policy`](../packages/fs/fs-policy) |
|
||||||
| `fs/observed` | `emit` | [`packages/fs/fs/src/index.ts:71`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`emit`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`emit`) | [`fs-policy`](../packages/fs/fs-policy), [`skill-local`](../packages/skill/skill-local) |
|
| `fs/observed` | `emit` | [`packages/fs/fs/src/index.ts:71`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`emit`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`emit`) | [`fs-policy`](../packages/fs/fs-policy), [`skill-local`](../packages/skill/skill-local) |
|
||||||
| `fs/write-intent` | `waterfall` | [`packages/fs/fs/src/index.ts:54`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`waterfall`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`waterfall`) | [`fs-policy`](../packages/fs/fs-policy) |
|
| `fs/write-intent` | `waterfall` | [`packages/fs/fs/src/index.ts:54`](../packages/fs/fs/src/index.ts) | [`tool-fs`](../packages/fs/tool-fs) (`waterfall`), [`tool-str-replace-editor`](../packages/fs/tool-str-replace-editor) (`waterfall`) | [`fs-policy`](../packages/fs/fs-policy) |
|
||||||
| `goal/changed` | `emit` | [`packages/goal/goal/src/domain.ts:141`](../packages/goal/goal/src/domain.ts) | [`goal`](../packages/goal/goal) (`emit`) | [`goal-session`](../packages/goal/goal-session) |
|
| `goal/changed` | `emit` | [`packages/goal/goal/src/domain.ts:114`](../packages/goal/goal/src/domain.ts) | [`goal`](../packages/goal/goal) (`emit`) | [`goal-session`](../packages/goal/goal-session) |
|
||||||
| `llm/adapters-updated` | `emit` | [`packages/llm/llm/src/index.ts:73`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`events.dispatch`) | `apiproxy`, [`llm`](../packages/llm/llm) |
|
| `llm/adapters-updated` | `emit` | [`packages/llm/llm/src/index.ts:73`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`events.dispatch`) | `apiproxy`, [`llm`](../packages/llm/llm) |
|
||||||
| `llm/stream` | `waterfall` | [`packages/llm/llm/src/index.ts:62`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`waterfall`) | [`agent-loop`](../packages/core/agent-loop), [`llm`](../packages/llm/llm), [`llm-replay`](../packages/support/llm-replay), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-title`](../packages/session-title/session-title) |
|
| `llm/stream` | `waterfall` | [`packages/llm/llm/src/index.ts:62`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`waterfall`) | [`agent-loop`](../packages/core/agent-loop), [`llm`](../packages/llm/llm), [`llm-replay`](../packages/support/llm-replay), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-title`](../packages/session-title/session-title) |
|
||||||
| `session/created` | `emit` | [`packages/core/session/src/index.ts:73`](../packages/core/session/src/index.ts) | [`session`](../packages/core/session) (`events.dispatch`) | `apiproxy`, [`compact`](../packages/compact/compact), [`goal`](../packages/goal/goal), [`hook-protocol`](../packages/hooks/hook-protocol), [`jsonrpc`](../packages/ui/jsonrpc), [`llm-retry`](../packages/llm/llm-retry), [`permission`](../packages/ui/permission), [`plan-mode`](../packages/plan/plan-mode), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`session-telemetry`](../packages/telemetry/session-telemetry), [`tools`](../packages/core/tools), [`user-approval`](../packages/ui/user-approval) |
|
| `session/created` | `emit` | [`packages/core/session/src/index.ts:73`](../packages/core/session/src/index.ts) | [`session`](../packages/core/session) (`events.dispatch`) | `apiproxy`, [`compact`](../packages/compact/compact), [`goal`](../packages/goal/goal), [`hook-protocol`](../packages/hooks/hook-protocol), [`jsonrpc`](../packages/ui/jsonrpc), [`llm-retry`](../packages/llm/llm-retry), [`permission`](../packages/ui/permission), [`plan-mode`](../packages/plan/plan-mode), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`session-telemetry`](../packages/telemetry/session-telemetry), [`tools`](../packages/core/tools), [`user-approval`](../packages/ui/user-approval) |
|
||||||
|
|||||||
+188
-124
@@ -156,6 +156,7 @@ flowchart TD
|
|||||||
pkg_client_hmr["client-hmr"]
|
pkg_client_hmr["client-hmr"]
|
||||||
pkg_client_locale["client-locale"]
|
pkg_client_locale["client-locale"]
|
||||||
pkg_client_modules["client-modules"]
|
pkg_client_modules["client-modules"]
|
||||||
|
pkg_client_remotes["client-remotes"]
|
||||||
pkg_client_runtime["client-runtime"]
|
pkg_client_runtime["client-runtime"]
|
||||||
pkg_client_schema_form["client-schema-form"]
|
pkg_client_schema_form["client-schema-form"]
|
||||||
pkg_client_test_runtime["client-test-runtime"]
|
pkg_client_test_runtime["client-test-runtime"]
|
||||||
@@ -300,7 +301,6 @@ flowchart TD
|
|||||||
pkg_loader_smoke --> pkg_invariants
|
pkg_loader_smoke --> pkg_invariants
|
||||||
pkg_base --> pkg_invariants
|
pkg_base --> pkg_invariants
|
||||||
pkg_client_modules --> pkg_invariants
|
pkg_client_modules --> pkg_invariants
|
||||||
pkg_client_runtime --> pkg_invariants
|
|
||||||
pkg_client_schema_form --> pkg_invariants
|
pkg_client_schema_form --> pkg_invariants
|
||||||
pkg_client_ui_primitives --> pkg_invariants
|
pkg_client_ui_primitives --> pkg_invariants
|
||||||
pkg_client_ui_slots --> pkg_invariants
|
pkg_client_ui_slots --> pkg_invariants
|
||||||
@@ -324,22 +324,6 @@ flowchart TD
|
|||||||
pkg_client_hmr --> pkg_client_modules
|
pkg_client_hmr --> pkg_client_modules
|
||||||
pkg_client_hmr --> pkg_host_webserver
|
pkg_client_hmr --> pkg_host_webserver
|
||||||
pkg_client_hmr --> pkg_invariants
|
pkg_client_hmr --> pkg_invariants
|
||||||
pkg_client_locale --> pkg_client_runtime
|
|
||||||
pkg_client_locale --> pkg_client_ui_primitives
|
|
||||||
pkg_client_locale --> pkg_client_ui_slots
|
|
||||||
pkg_client_locale --> pkg_invariants
|
|
||||||
pkg_client_test_runtime --> pkg_client_runtime
|
|
||||||
pkg_client_test_runtime --> pkg_client_ui_slots
|
|
||||||
pkg_client_test_runtime --> pkg_client_web_react
|
|
||||||
pkg_client_test_runtime --> pkg_host_apiproxy
|
|
||||||
pkg_client_test_runtime --> pkg_invariants
|
|
||||||
pkg_client_ui_settings --> pkg_client_runtime
|
|
||||||
pkg_client_ui_settings --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_settings --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_settings --> pkg_invariants
|
|
||||||
pkg_client_ui_trajectory --> pkg_client_runtime
|
|
||||||
pkg_client_ui_trajectory --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_trajectory --> pkg_invariants
|
|
||||||
pkg_credentials --> pkg_brand
|
pkg_credentials --> pkg_brand
|
||||||
pkg_credentials --> pkg_invariants
|
pkg_credentials --> pkg_invariants
|
||||||
pkg_frontend_static --> pkg_host_webserver
|
pkg_frontend_static --> pkg_host_webserver
|
||||||
@@ -383,43 +367,6 @@ flowchart TD
|
|||||||
pkg_system_prompt --> pkg_scope
|
pkg_system_prompt --> pkg_scope
|
||||||
pkg_web --> pkg_invariants
|
pkg_web --> pkg_invariants
|
||||||
pkg_web --> pkg_llm
|
pkg_web --> pkg_llm
|
||||||
pkg_client_ui_models --> pkg_client_connection
|
|
||||||
pkg_client_ui_models --> pkg_client_runtime
|
|
||||||
pkg_client_ui_models --> pkg_client_schema_form
|
|
||||||
pkg_client_ui_models --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_models --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_models --> pkg_client_web_react
|
|
||||||
pkg_client_ui_models --> pkg_invariants
|
|
||||||
pkg_client_ui_question --> pkg_client_locale
|
|
||||||
pkg_client_ui_question --> pkg_invariants
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_connection
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_locale
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_runtime
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_ui_settings
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_settings_general --> pkg_client_web_react
|
|
||||||
pkg_client_ui_settings_general --> pkg_invariants
|
|
||||||
pkg_client_ui_sidebar --> pkg_client_locale
|
|
||||||
pkg_client_ui_sidebar --> pkg_client_runtime
|
|
||||||
pkg_client_ui_sidebar --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_sidebar --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_sidebar --> pkg_invariants
|
|
||||||
pkg_client_ui_slash --> pkg_client_locale
|
|
||||||
pkg_client_ui_slash --> pkg_client_runtime
|
|
||||||
pkg_client_ui_slash --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_slash --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_slash --> pkg_invariants
|
|
||||||
pkg_client_ui_theme --> pkg_client_locale
|
|
||||||
pkg_client_ui_theme --> pkg_client_runtime
|
|
||||||
pkg_client_ui_theme --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_theme --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_theme --> pkg_invariants
|
|
||||||
pkg_client_ui_workspace --> pkg_client_locale
|
|
||||||
pkg_client_ui_workspace --> pkg_client_runtime
|
|
||||||
pkg_client_ui_workspace --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_workspace --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_workspace --> pkg_invariants
|
|
||||||
pkg_credentials_local --> pkg_atomic_write
|
pkg_credentials_local --> pkg_atomic_write
|
||||||
pkg_credentials_local --> pkg_credentials
|
pkg_credentials_local --> pkg_credentials
|
||||||
pkg_credentials_local --> pkg_invariants
|
pkg_credentials_local --> pkg_invariants
|
||||||
@@ -472,24 +419,17 @@ flowchart TD
|
|||||||
pkg_app_boot --> pkg_invariants
|
pkg_app_boot --> pkg_invariants
|
||||||
pkg_app_boot --> pkg_paths
|
pkg_app_boot --> pkg_paths
|
||||||
pkg_app_boot --> pkg_system_prompt
|
pkg_app_boot --> pkg_system_prompt
|
||||||
|
<<<<<<< HEAD
|
||||||
pkg_client_ui_layout --> pkg_client_runtime
|
pkg_client_ui_layout --> pkg_client_runtime
|
||||||
pkg_client_ui_layout --> pkg_client_ui_slots
|
pkg_client_ui_layout --> pkg_client_ui_slots
|
||||||
pkg_client_ui_layout --> pkg_client_ui_theme
|
pkg_client_ui_layout --> pkg_client_ui_theme
|
||||||
pkg_client_ui_layout --> pkg_invariants
|
pkg_client_ui_layout --> pkg_invariants
|
||||||
|
=======
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
pkg_code_runtime_worker --> pkg_code_runtime
|
pkg_code_runtime_worker --> pkg_code_runtime
|
||||||
pkg_code_runtime_worker --> pkg_invariants
|
pkg_code_runtime_worker --> pkg_invariants
|
||||||
pkg_code_runtime_worker --> pkg_session
|
pkg_code_runtime_worker --> pkg_session
|
||||||
pkg_code_runtime_worker --> pkg_timeout
|
pkg_code_runtime_worker --> pkg_timeout
|
||||||
pkg_host_directory_picker_browse --> pkg_client_locale
|
|
||||||
pkg_host_directory_picker_browse --> pkg_client_runtime
|
|
||||||
pkg_host_directory_picker_browse --> pkg_client_ui_primitives
|
|
||||||
pkg_host_directory_picker_browse --> pkg_client_ui_slots
|
|
||||||
pkg_host_directory_picker_browse --> pkg_client_ui_workspace
|
|
||||||
pkg_host_directory_picker_browse --> pkg_invariants
|
|
||||||
pkg_host_directory_picker_native --> pkg_client_runtime
|
|
||||||
pkg_host_directory_picker_native --> pkg_client_ui_slots
|
|
||||||
pkg_host_directory_picker_native --> pkg_client_ui_workspace
|
|
||||||
pkg_host_directory_picker_native --> pkg_invariants
|
|
||||||
pkg_lsp_local --> pkg_brand
|
pkg_lsp_local --> pkg_brand
|
||||||
pkg_lsp_local --> pkg_invariants
|
pkg_lsp_local --> pkg_invariants
|
||||||
pkg_lsp_local --> pkg_llm
|
pkg_lsp_local --> pkg_llm
|
||||||
@@ -518,6 +458,7 @@ flowchart TD
|
|||||||
pkg_goal --> pkg_scope
|
pkg_goal --> pkg_scope
|
||||||
pkg_goal --> pkg_session
|
pkg_goal --> pkg_session
|
||||||
pkg_goal --> pkg_session_projection
|
pkg_goal --> pkg_session_projection
|
||||||
|
pkg_goal --> pkg_type_meta
|
||||||
pkg_bash_local --> pkg_bash
|
pkg_bash_local --> pkg_bash
|
||||||
pkg_bash_local --> pkg_invariants
|
pkg_bash_local --> pkg_invariants
|
||||||
pkg_bash_local --> pkg_subprocess
|
pkg_bash_local --> pkg_subprocess
|
||||||
@@ -582,10 +523,6 @@ flowchart TD
|
|||||||
pkg_tmux_context --> pkg_bash
|
pkg_tmux_context --> pkg_bash
|
||||||
pkg_tmux_context --> pkg_invariants
|
pkg_tmux_context --> pkg_invariants
|
||||||
pkg_tmux_context --> pkg_session
|
pkg_tmux_context --> pkg_session
|
||||||
pkg_host_directory_picker_auto --> pkg_host_directory_picker_browse
|
|
||||||
pkg_host_directory_picker_auto --> pkg_host_directory_picker_native
|
|
||||||
pkg_host_directory_picker_auto --> pkg_host_webserver
|
|
||||||
pkg_host_directory_picker_auto --> pkg_invariants
|
|
||||||
pkg_pty --> pkg_agent
|
pkg_pty --> pkg_agent
|
||||||
pkg_pty --> pkg_brand
|
pkg_pty --> pkg_brand
|
||||||
pkg_pty --> pkg_invariants
|
pkg_pty --> pkg_invariants
|
||||||
@@ -677,6 +614,7 @@ flowchart TD
|
|||||||
pkg_permission --> pkg_session_projection
|
pkg_permission --> pkg_session_projection
|
||||||
pkg_permission --> pkg_settings
|
pkg_permission --> pkg_settings
|
||||||
pkg_permission --> pkg_user_approval
|
pkg_permission --> pkg_user_approval
|
||||||
|
<<<<<<< HEAD
|
||||||
pkg_client_ui_conversation --> pkg_client_locale
|
pkg_client_ui_conversation --> pkg_client_locale
|
||||||
pkg_client_ui_conversation --> pkg_client_runtime
|
pkg_client_ui_conversation --> pkg_client_runtime
|
||||||
pkg_client_ui_conversation --> pkg_client_ui_primitives
|
pkg_client_ui_conversation --> pkg_client_ui_primitives
|
||||||
@@ -687,6 +625,11 @@ flowchart TD
|
|||||||
pkg_command_feedback --> pkg_commands
|
pkg_command_feedback --> pkg_commands
|
||||||
pkg_command_feedback --> pkg_invariants
|
pkg_command_feedback --> pkg_invariants
|
||||||
pkg_command_feedback --> pkg_session
|
pkg_command_feedback --> pkg_session
|
||||||
|
=======
|
||||||
|
pkg_client_remotes --> pkg_goal
|
||||||
|
pkg_client_remotes --> pkg_host_api_gateway
|
||||||
|
pkg_client_remotes --> pkg_invariants
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
pkg_pty_local --> pkg_agent
|
pkg_pty_local --> pkg_agent
|
||||||
pkg_pty_local --> pkg_invariants
|
pkg_pty_local --> pkg_invariants
|
||||||
pkg_pty_local --> pkg_pty
|
pkg_pty_local --> pkg_pty
|
||||||
@@ -840,6 +783,7 @@ flowchart TD
|
|||||||
pkg_tool_ask_user --> pkg_invariants
|
pkg_tool_ask_user --> pkg_invariants
|
||||||
pkg_tool_ask_user --> pkg_tools
|
pkg_tool_ask_user --> pkg_tools
|
||||||
pkg_tool_ask_user --> pkg_user_interaction
|
pkg_tool_ask_user --> pkg_user_interaction
|
||||||
|
<<<<<<< HEAD
|
||||||
pkg_client_ui_command --> pkg_client_connection
|
pkg_client_ui_command --> pkg_client_connection
|
||||||
pkg_client_ui_command --> pkg_client_locale
|
pkg_client_ui_command --> pkg_client_locale
|
||||||
pkg_client_ui_command --> pkg_client_runtime
|
pkg_client_ui_command --> pkg_client_runtime
|
||||||
@@ -869,6 +813,12 @@ flowchart TD
|
|||||||
pkg_client_ui_skill --> pkg_client_ui_slash
|
pkg_client_ui_skill --> pkg_client_ui_slash
|
||||||
pkg_client_ui_skill --> pkg_client_ui_slots
|
pkg_client_ui_skill --> pkg_client_ui_slots
|
||||||
pkg_client_ui_skill --> pkg_invariants
|
pkg_client_ui_skill --> pkg_invariants
|
||||||
|
=======
|
||||||
|
pkg_client_runtime --> pkg_client_remotes
|
||||||
|
pkg_client_runtime --> pkg_invariants
|
||||||
|
pkg_client_runtime --> pkg_type_meta
|
||||||
|
pkg_client_runtime --> pkg_typert_registry
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
pkg_session_reference --> pkg_agent
|
pkg_session_reference --> pkg_agent
|
||||||
pkg_session_reference --> pkg_compact
|
pkg_session_reference --> pkg_compact
|
||||||
pkg_session_reference --> pkg_invariants
|
pkg_session_reference --> pkg_invariants
|
||||||
@@ -1000,42 +950,29 @@ flowchart TD
|
|||||||
pkg_web_app --> pkg_bash_env
|
pkg_web_app --> pkg_bash_env
|
||||||
pkg_web_app --> pkg_invariants
|
pkg_web_app --> pkg_invariants
|
||||||
pkg_web_app --> pkg_system_prompt
|
pkg_web_app --> pkg_system_prompt
|
||||||
pkg_client_ui_model --> pkg_client_connection
|
pkg_client_locale --> pkg_client_runtime
|
||||||
pkg_client_ui_model --> pkg_client_locale
|
pkg_client_locale --> pkg_client_ui_primitives
|
||||||
pkg_client_ui_model --> pkg_client_runtime
|
pkg_client_locale --> pkg_client_ui_slots
|
||||||
pkg_client_ui_model --> pkg_client_ui_command
|
pkg_client_locale --> pkg_invariants
|
||||||
pkg_client_ui_model --> pkg_client_ui_conversation
|
pkg_client_test_runtime --> pkg_client_runtime
|
||||||
pkg_client_ui_model --> pkg_client_ui_primitives
|
pkg_client_test_runtime --> pkg_client_ui_slots
|
||||||
pkg_client_ui_model --> pkg_client_ui_slash
|
pkg_client_test_runtime --> pkg_client_web_react
|
||||||
pkg_client_ui_model --> pkg_client_ui_slots
|
pkg_client_test_runtime --> pkg_host_apiproxy
|
||||||
pkg_client_ui_model --> pkg_invariants
|
pkg_client_test_runtime --> pkg_invariants
|
||||||
pkg_client_ui_permission --> pkg_client_connection
|
pkg_client_ui_models --> pkg_client_connection
|
||||||
pkg_client_ui_permission --> pkg_client_locale
|
pkg_client_ui_models --> pkg_client_runtime
|
||||||
pkg_client_ui_permission --> pkg_client_runtime
|
pkg_client_ui_models --> pkg_client_schema_form
|
||||||
pkg_client_ui_permission --> pkg_client_schema_form
|
pkg_client_ui_models --> pkg_client_ui_primitives
|
||||||
pkg_client_ui_permission --> pkg_client_ui_command
|
pkg_client_ui_models --> pkg_client_ui_slots
|
||||||
pkg_client_ui_permission --> pkg_client_ui_primitives
|
pkg_client_ui_models --> pkg_client_web_react
|
||||||
pkg_client_ui_permission --> pkg_client_ui_slash
|
pkg_client_ui_models --> pkg_invariants
|
||||||
pkg_client_ui_permission --> pkg_client_ui_slots
|
pkg_client_ui_settings --> pkg_client_runtime
|
||||||
pkg_client_ui_permission --> pkg_invariants
|
pkg_client_ui_settings --> pkg_client_ui_primitives
|
||||||
pkg_client_ui_permission --> pkg_permission
|
pkg_client_ui_settings --> pkg_client_ui_slots
|
||||||
pkg_client_ui_plan --> pkg_client_connection
|
pkg_client_ui_settings --> pkg_invariants
|
||||||
pkg_client_ui_plan --> pkg_client_locale
|
pkg_client_ui_trajectory --> pkg_client_runtime
|
||||||
pkg_client_ui_plan --> pkg_client_runtime
|
pkg_client_ui_trajectory --> pkg_client_ui_primitives
|
||||||
pkg_client_ui_plan --> pkg_client_ui_conversation
|
pkg_client_ui_trajectory --> pkg_invariants
|
||||||
pkg_client_ui_plan --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_plan --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_plan --> pkg_invariants
|
|
||||||
pkg_client_ui_plan --> pkg_plan_mode
|
|
||||||
pkg_client_ui_subagent --> pkg_client_locale
|
|
||||||
pkg_client_ui_subagent --> pkg_client_runtime
|
|
||||||
pkg_client_ui_subagent --> pkg_client_ui_conversation
|
|
||||||
pkg_client_ui_subagent --> pkg_client_ui_primitives
|
|
||||||
pkg_client_ui_subagent --> pkg_client_ui_slash
|
|
||||||
pkg_client_ui_subagent --> pkg_client_ui_slots
|
|
||||||
pkg_client_ui_subagent --> pkg_invariants
|
|
||||||
pkg_client_ui_subagent --> pkg_subagent
|
|
||||||
pkg_client_ui_subagent --> pkg_token_meter
|
|
||||||
pkg_sdk_protocol --> pkg_invariants
|
pkg_sdk_protocol --> pkg_invariants
|
||||||
pkg_sdk_protocol --> pkg_llm
|
pkg_sdk_protocol --> pkg_llm
|
||||||
pkg_sdk_protocol --> pkg_session
|
pkg_sdk_protocol --> pkg_session
|
||||||
@@ -1078,6 +1015,36 @@ flowchart TD
|
|||||||
pkg_jsonrpc --> pkg_sdk_protocol
|
pkg_jsonrpc --> pkg_sdk_protocol
|
||||||
pkg_jsonrpc --> pkg_session
|
pkg_jsonrpc --> pkg_session
|
||||||
pkg_jsonrpc --> pkg_subagent
|
pkg_jsonrpc --> pkg_subagent
|
||||||
|
pkg_client_ui_question --> pkg_client_locale
|
||||||
|
pkg_client_ui_question --> pkg_invariants
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_connection
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_locale
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_runtime
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_ui_settings
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_settings_general --> pkg_client_web_react
|
||||||
|
pkg_client_ui_settings_general --> pkg_invariants
|
||||||
|
pkg_client_ui_sidebar --> pkg_client_locale
|
||||||
|
pkg_client_ui_sidebar --> pkg_client_runtime
|
||||||
|
pkg_client_ui_sidebar --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_sidebar --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_sidebar --> pkg_invariants
|
||||||
|
pkg_client_ui_slash --> pkg_client_locale
|
||||||
|
pkg_client_ui_slash --> pkg_client_runtime
|
||||||
|
pkg_client_ui_slash --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_slash --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_slash --> pkg_invariants
|
||||||
|
pkg_client_ui_theme --> pkg_client_locale
|
||||||
|
pkg_client_ui_theme --> pkg_client_runtime
|
||||||
|
pkg_client_ui_theme --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_theme --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_theme --> pkg_invariants
|
||||||
|
pkg_client_ui_workspace --> pkg_client_locale
|
||||||
|
pkg_client_ui_workspace --> pkg_client_runtime
|
||||||
|
pkg_client_ui_workspace --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_workspace --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_workspace --> pkg_invariants
|
||||||
pkg_agent_spine_demo --> pkg_agent
|
pkg_agent_spine_demo --> pkg_agent
|
||||||
pkg_agent_spine_demo --> pkg_agent_loop
|
pkg_agent_spine_demo --> pkg_agent_loop
|
||||||
pkg_agent_spine_demo --> pkg_bash_env
|
pkg_agent_spine_demo --> pkg_bash_env
|
||||||
@@ -1111,6 +1078,22 @@ flowchart TD
|
|||||||
pkg_subagent_dsh_sdk --> pkg_session
|
pkg_subagent_dsh_sdk --> pkg_session
|
||||||
pkg_subagent_dsh_sdk --> pkg_subagent
|
pkg_subagent_dsh_sdk --> pkg_subagent
|
||||||
pkg_subagent_dsh_sdk --> pkg_subprocess
|
pkg_subagent_dsh_sdk --> pkg_subprocess
|
||||||
|
pkg_client_ui_conversation --> pkg_client_locale
|
||||||
|
pkg_client_ui_conversation --> pkg_client_runtime
|
||||||
|
pkg_client_ui_conversation --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_conversation --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_conversation --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_conversation --> pkg_invariants
|
||||||
|
pkg_client_ui_conversation --> pkg_token_meter
|
||||||
|
pkg_client_ui_layout --> pkg_client_runtime
|
||||||
|
pkg_client_ui_layout --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_layout --> pkg_client_ui_theme
|
||||||
|
pkg_client_ui_layout --> pkg_invariants
|
||||||
|
pkg_client_ui_skill --> pkg_client_connection
|
||||||
|
pkg_client_ui_skill --> pkg_client_runtime
|
||||||
|
pkg_client_ui_skill --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_skill --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_skill --> pkg_invariants
|
||||||
pkg_acp_demo --> pkg_acp
|
pkg_acp_demo --> pkg_acp
|
||||||
pkg_acp_demo --> pkg_agent_spine_demo
|
pkg_acp_demo --> pkg_agent_spine_demo
|
||||||
pkg_acp_demo --> pkg_app_boot
|
pkg_acp_demo --> pkg_app_boot
|
||||||
@@ -1131,6 +1114,72 @@ flowchart TD
|
|||||||
pkg_cli_demo --> pkg_session_persistence_jsonl
|
pkg_cli_demo --> pkg_session_persistence_jsonl
|
||||||
pkg_cli_demo --> pkg_tools
|
pkg_cli_demo --> pkg_tools
|
||||||
pkg_cli_demo --> pkg_workspace_context
|
pkg_cli_demo --> pkg_workspace_context
|
||||||
|
pkg_host_directory_picker_browse --> pkg_client_locale
|
||||||
|
pkg_host_directory_picker_browse --> pkg_client_runtime
|
||||||
|
pkg_host_directory_picker_browse --> pkg_client_ui_primitives
|
||||||
|
pkg_host_directory_picker_browse --> pkg_client_ui_slots
|
||||||
|
pkg_host_directory_picker_browse --> pkg_client_ui_workspace
|
||||||
|
pkg_host_directory_picker_browse --> pkg_invariants
|
||||||
|
pkg_host_directory_picker_native --> pkg_client_runtime
|
||||||
|
pkg_host_directory_picker_native --> pkg_client_ui_slots
|
||||||
|
pkg_host_directory_picker_native --> pkg_client_ui_workspace
|
||||||
|
pkg_host_directory_picker_native --> pkg_invariants
|
||||||
|
pkg_client_ui_command --> pkg_client_connection
|
||||||
|
pkg_client_ui_command --> pkg_client_locale
|
||||||
|
pkg_client_ui_command --> pkg_client_runtime
|
||||||
|
pkg_client_ui_command --> pkg_client_ui_conversation
|
||||||
|
pkg_client_ui_command --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_command --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_command --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_command --> pkg_invariants
|
||||||
|
pkg_client_ui_goal --> pkg_client_connection
|
||||||
|
pkg_client_ui_goal --> pkg_client_locale
|
||||||
|
pkg_client_ui_goal --> pkg_client_runtime
|
||||||
|
pkg_client_ui_goal --> pkg_client_ui_conversation
|
||||||
|
pkg_client_ui_goal --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_goal --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_goal --> pkg_goal
|
||||||
|
pkg_client_ui_goal --> pkg_invariants
|
||||||
|
pkg_client_ui_plan --> pkg_client_connection
|
||||||
|
pkg_client_ui_plan --> pkg_client_locale
|
||||||
|
pkg_client_ui_plan --> pkg_client_runtime
|
||||||
|
pkg_client_ui_plan --> pkg_client_ui_conversation
|
||||||
|
pkg_client_ui_plan --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_plan --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_plan --> pkg_invariants
|
||||||
|
pkg_client_ui_plan --> pkg_plan_mode
|
||||||
|
pkg_client_ui_subagent --> pkg_client_locale
|
||||||
|
pkg_client_ui_subagent --> pkg_client_runtime
|
||||||
|
pkg_client_ui_subagent --> pkg_client_ui_conversation
|
||||||
|
pkg_client_ui_subagent --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_subagent --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_subagent --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_subagent --> pkg_invariants
|
||||||
|
pkg_client_ui_subagent --> pkg_subagent
|
||||||
|
pkg_client_ui_subagent --> pkg_token_meter
|
||||||
|
pkg_host_directory_picker_auto --> pkg_host_directory_picker_browse
|
||||||
|
pkg_host_directory_picker_auto --> pkg_host_directory_picker_native
|
||||||
|
pkg_host_directory_picker_auto --> pkg_host_webserver
|
||||||
|
pkg_host_directory_picker_auto --> pkg_invariants
|
||||||
|
pkg_client_ui_model --> pkg_client_connection
|
||||||
|
pkg_client_ui_model --> pkg_client_locale
|
||||||
|
pkg_client_ui_model --> pkg_client_runtime
|
||||||
|
pkg_client_ui_model --> pkg_client_ui_command
|
||||||
|
pkg_client_ui_model --> pkg_client_ui_conversation
|
||||||
|
pkg_client_ui_model --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_model --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_model --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_model --> pkg_invariants
|
||||||
|
pkg_client_ui_permission --> pkg_client_connection
|
||||||
|
pkg_client_ui_permission --> pkg_client_locale
|
||||||
|
pkg_client_ui_permission --> pkg_client_runtime
|
||||||
|
pkg_client_ui_permission --> pkg_client_schema_form
|
||||||
|
pkg_client_ui_permission --> pkg_client_ui_command
|
||||||
|
pkg_client_ui_permission --> pkg_client_ui_primitives
|
||||||
|
pkg_client_ui_permission --> pkg_client_ui_slash
|
||||||
|
pkg_client_ui_permission --> pkg_client_ui_slots
|
||||||
|
pkg_client_ui_permission --> pkg_invariants
|
||||||
|
pkg_client_ui_permission --> pkg_permission
|
||||||
```
|
```
|
||||||
|
|
||||||
| Package | Group | Depends on |
|
| Package | Group | Depends on |
|
||||||
@@ -1149,7 +1198,6 @@ flowchart TD
|
|||||||
| [`loader-smoke`](../packages/support/loader-smoke) | `support` | [`invariants`](../packages/support/invariants) |
|
| [`loader-smoke`](../packages/support/loader-smoke) | `support` | [`invariants`](../packages/support/invariants) |
|
||||||
| [`base`](../packages/bundle/base) | `bundle` | [`invariants`](../packages/support/invariants) |
|
| [`base`](../packages/bundle/base) | `bundle` | [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-modules`](../packages/client/modules) | `client` | [`invariants`](../packages/support/invariants) |
|
| [`client-modules`](../packages/client/modules) | `client` | [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-runtime`](../packages/client/runtime) | `client` | [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-schema-form`](../packages/client/schema-form) | `client` | [`invariants`](../packages/support/invariants) |
|
| [`client-schema-form`](../packages/client/schema-form) | `client` | [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-primitives`](../packages/client/ui-primitives) | `client` | [`invariants`](../packages/support/invariants) |
|
| [`client-ui-primitives`](../packages/client/ui-primitives) | `client` | [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-slots`](../packages/client/ui-slots) | `client` | [`invariants`](../packages/support/invariants) |
|
| [`client-ui-slots`](../packages/client/ui-slots) | `client` | [`invariants`](../packages/support/invariants) |
|
||||||
@@ -1168,10 +1216,6 @@ flowchart TD
|
|||||||
| [`llm`](../packages/llm/llm) | `llm` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`timeout`](../packages/util/timeout) |
|
| [`llm`](../packages/llm/llm) | `llm` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`timeout`](../packages/util/timeout) |
|
||||||
| [`client-connection`](../packages/client/connection) | `client` | [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
| [`client-connection`](../packages/client/connection) | `client` | [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-hmr`](../packages/client/hmr) | `client` | [`client-modules`](../packages/client/modules), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
| [`client-hmr`](../packages/client/hmr) | `client` | [`client-modules`](../packages/client/modules), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-locale`](../packages/client/locale) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-test-runtime`](../packages/client/test-runtime) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`host-apiproxy`](../packages/host/apiproxy), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-settings`](../packages/client/ui-settings) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-trajectory`](../packages/client/ui-trajectory) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`credentials`](../packages/credentials/credentials) | `credentials` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants) |
|
| [`credentials`](../packages/credentials/credentials) | `credentials` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants) |
|
||||||
| [`frontend-static`](../packages/host/frontend-static) | `host` | [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
| [`frontend-static`](../packages/host/frontend-static) | `host` | [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
||||||
| [`helper`](../packages/sdk/helper) | `sdk` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess) |
|
| [`helper`](../packages/sdk/helper) | `sdk` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess) |
|
||||||
@@ -1187,13 +1231,6 @@ flowchart TD
|
|||||||
| [`session`](../packages/core/session) | `core` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`type-meta`](../packages/typert/type-meta) |
|
| [`session`](../packages/core/session) | `core` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`type-meta`](../packages/typert/type-meta) |
|
||||||
| [`system-prompt`](../packages/core/system-prompt) | `core` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope) |
|
| [`system-prompt`](../packages/core/system-prompt) | `core` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope) |
|
||||||
| [`web`](../packages/web/web) | `web` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm) |
|
| [`web`](../packages/web/web) | `web` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm) |
|
||||||
| [`client-ui-models`](../packages/client/ui-models) | `client` | [`client-connection`](../packages/client/connection), [`client-runtime`](../packages/client/runtime), [`client-schema-form`](../packages/client/schema-form), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-question`](../packages/client/ui-question) | `client` | [`client-locale`](../packages/client/locale), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-settings-general`](../packages/client/ui-settings-general) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-settings`](../packages/client/ui-settings), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-sidebar`](../packages/client/ui-sidebar) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-slash`](../packages/client/ui-slash) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-theme`](../packages/client/ui-theme) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`client-ui-workspace`](../packages/client/ui-workspace) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`credentials-local`](../packages/credentials/credentials-local) | `credentials` | [`atomic-write`](../packages/util/atomic-write), [`credentials`](../packages/credentials/credentials), [`invariants`](../packages/support/invariants), [`paths`](../packages/util/paths) |
|
| [`credentials-local`](../packages/credentials/credentials-local) | `credentials` | [`atomic-write`](../packages/util/atomic-write), [`credentials`](../packages/credentials/credentials), [`invariants`](../packages/support/invariants), [`paths`](../packages/util/paths) |
|
||||||
| [`host-api-gateway`](../packages/host/api-gateway) | `host` | [`client-connection`](../packages/client/connection), [`invariants`](../packages/support/invariants), [`typert-registry`](../packages/typert/registry) |
|
| [`host-api-gateway`](../packages/host/api-gateway) | `host` | [`client-connection`](../packages/client/connection), [`invariants`](../packages/support/invariants), [`typert-registry`](../packages/typert/registry) |
|
||||||
| [`lsp`](../packages/lsp/lsp) | `lsp` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm) |
|
| [`lsp`](../packages/lsp/lsp) | `lsp` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm) |
|
||||||
@@ -1210,16 +1247,17 @@ flowchart TD
|
|||||||
| [`session-persistence`](../packages/session-persistence/session-persistence) | `session-persistence` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`session-persistence`](../packages/session-persistence/session-persistence) | `session-persistence` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
| [`llm-replay`](../packages/support/llm-replay) | `support` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session) |
|
| [`llm-replay`](../packages/support/llm-replay) | `support` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session) |
|
||||||
| [`app-boot`](../packages/ui/app-boot) | `ui` | [`invariants`](../packages/support/invariants), [`paths`](../packages/util/paths), [`system-prompt`](../packages/core/system-prompt) |
|
| [`app-boot`](../packages/ui/app-boot) | `ui` | [`invariants`](../packages/support/invariants), [`paths`](../packages/util/paths), [`system-prompt`](../packages/core/system-prompt) |
|
||||||
|
<<<<<<< HEAD
|
||||||
| [`client-ui-layout`](../packages/client/ui-layout) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-theme`](../packages/client/ui-theme), [`invariants`](../packages/support/invariants) |
|
| [`client-ui-layout`](../packages/client/ui-layout) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-theme`](../packages/client/ui-theme), [`invariants`](../packages/support/invariants) |
|
||||||
|
=======
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
| [`code-runtime-worker`](../packages/code-runtime/code-runtime-worker) | `code-runtime` | [`code-runtime`](../packages/code-runtime/code-runtime), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`timeout`](../packages/util/timeout) |
|
| [`code-runtime-worker`](../packages/code-runtime/code-runtime-worker) | `code-runtime` | [`code-runtime`](../packages/code-runtime/code-runtime), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`timeout`](../packages/util/timeout) |
|
||||||
| [`host-directory-picker-browse`](../packages/host/directory-picker-browse) | `host` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-workspace`](../packages/client/ui-workspace), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`host-directory-picker-native`](../packages/host/directory-picker-native) | `host` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-workspace`](../packages/client/ui-workspace), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`lsp-local`](../packages/lsp/lsp-local) | `lsp` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`lsp`](../packages/lsp/lsp), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
| [`lsp-local`](../packages/lsp/lsp-local) | `lsp` | [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`lsp`](../packages/lsp/lsp), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
||||||
| [`sandbox-local`](../packages/sandbox/sandbox-local) | `sandbox` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sandbox`](../packages/sandbox/sandbox) |
|
| [`sandbox-local`](../packages/sandbox/sandbox-local) | `sandbox` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sandbox`](../packages/sandbox/sandbox) |
|
||||||
| [`session-projection`](../packages/session-projection/session-projection) | `session-projection` | [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`session-projection`](../packages/session-projection/session-projection) | `session-projection` | [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
| [`llm-retry`](../packages/llm/llm-retry) | `llm` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`timeout`](../packages/util/timeout) |
|
| [`llm-retry`](../packages/llm/llm-retry) | `llm` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`timeout`](../packages/util/timeout) |
|
||||||
| [`token-meter`](../packages/llm/token-meter) | `llm` | [`compact`](../packages/compact/compact), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection) |
|
| [`token-meter`](../packages/llm/token-meter) | `llm` | [`compact`](../packages/compact/compact), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection) |
|
||||||
| [`goal`](../packages/goal/goal) | `goal` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection) |
|
| [`goal`](../packages/goal/goal) | `goal` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection), [`type-meta`](../packages/typert/type-meta) |
|
||||||
| [`bash-local`](../packages/bash/bash-local) | `bash` | [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
| [`bash-local`](../packages/bash/bash-local) | `bash` | [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
||||||
| [`pwsh-local`](../packages/bash/pwsh-local) | `bash` | [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
| [`pwsh-local`](../packages/bash/pwsh-local) | `bash` | [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`subprocess`](../packages/subprocess/subprocess), [`timeout`](../packages/util/timeout) |
|
||||||
| [`fs-local`](../packages/fs/fs-local) | `fs` | [`fs`](../packages/fs/fs), [`invariants`](../packages/support/invariants) |
|
| [`fs-local`](../packages/fs/fs-local) | `fs` | [`fs`](../packages/fs/fs), [`invariants`](../packages/support/invariants) |
|
||||||
@@ -1237,7 +1275,6 @@ flowchart TD
|
|||||||
| [`headless`](../packages/bundle/headless) | `bundle` | [`agent`](../packages/core/agent), [`host-apiproxy`](../packages/host/apiproxy), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`headless`](../packages/bundle/headless) | `bundle` | [`agent`](../packages/core/agent), [`host-apiproxy`](../packages/host/apiproxy), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
| [`time-context`](../packages/context/time-context) | `context` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`time-context`](../packages/context/time-context) | `context` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
| [`tmux-context`](../packages/context/tmux-context) | `context` | [`agent`](../packages/core/agent), [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`tmux-context`](../packages/context/tmux-context) | `context` | [`agent`](../packages/core/agent), [`bash`](../packages/bash/bash), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
| [`host-directory-picker-auto`](../packages/host/directory-picker-auto) | `host` | [`host-directory-picker-browse`](../packages/host/directory-picker-browse), [`host-directory-picker-native`](../packages/host/directory-picker-native), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
|
||||||
| [`pty`](../packages/pty/pty) | `pty` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants) |
|
| [`pty`](../packages/pty/pty) | `pty` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants) |
|
||||||
| [`sandbox-policy`](../packages/sandbox/sandbox-policy) | `sandbox` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`sandbox`](../packages/sandbox/sandbox), [`session`](../packages/core/session), [`system-prompt`](../packages/core/system-prompt) |
|
| [`sandbox-policy`](../packages/sandbox/sandbox-policy) | `sandbox` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`sandbox`](../packages/sandbox/sandbox), [`session`](../packages/core/session), [`system-prompt`](../packages/core/system-prompt) |
|
||||||
| [`scripts`](../packages/sdk/scripts) | `sdk` | [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants) |
|
| [`scripts`](../packages/sdk/scripts) | `sdk` | [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants) |
|
||||||
@@ -1257,8 +1294,12 @@ flowchart TD
|
|||||||
| [`session-title-llm`](../packages/session-title/session-title-llm) | `session-title` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`timeout`](../packages/util/timeout) |
|
| [`session-title-llm`](../packages/session-title/session-title-llm) | `session-title` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`timeout`](../packages/util/timeout) |
|
||||||
| [`acp`](../packages/acp/acp) | `acp` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`user-approval`](../packages/ui/user-approval) |
|
| [`acp`](../packages/acp/acp) | `acp` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`user-approval`](../packages/ui/user-approval) |
|
||||||
| [`permission`](../packages/ui/permission) | `ui` | [`bash`](../packages/bash/bash), [`commands`](../packages/ui/commands), [`invariants`](../packages/support/invariants), [`sandbox`](../packages/sandbox/sandbox), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection), [`settings`](../packages/settings/settings), [`user-approval`](../packages/ui/user-approval) |
|
| [`permission`](../packages/ui/permission) | `ui` | [`bash`](../packages/bash/bash), [`commands`](../packages/ui/commands), [`invariants`](../packages/support/invariants), [`sandbox`](../packages/sandbox/sandbox), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`session-projection`](../packages/session-projection/session-projection), [`settings`](../packages/settings/settings), [`user-approval`](../packages/ui/user-approval) |
|
||||||
|
<<<<<<< HEAD
|
||||||
| [`client-ui-conversation`](../packages/client/ui-conversation) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`token-meter`](../packages/llm/token-meter) |
|
| [`client-ui-conversation`](../packages/client/ui-conversation) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`token-meter`](../packages/llm/token-meter) |
|
||||||
| [`command-feedback`](../packages/feedback/command-feedback) | `feedback` | [`commands`](../packages/ui/commands), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
| [`command-feedback`](../packages/feedback/command-feedback) | `feedback` | [`commands`](../packages/ui/commands), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session) |
|
||||||
|
=======
|
||||||
|
| [`client-remotes`](../packages/client/remotes) | `client` | [`goal`](../packages/goal/goal), [`host-api-gateway`](../packages/host/api-gateway), [`invariants`](../packages/support/invariants) |
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
| [`pty-local`](../packages/pty/pty-local) | `pty` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`pty`](../packages/pty/pty), [`sandbox`](../packages/sandbox/sandbox), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`subprocess`](../packages/subprocess/subprocess) |
|
| [`pty-local`](../packages/pty/pty-local) | `pty` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`pty`](../packages/pty/pty), [`sandbox`](../packages/sandbox/sandbox), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`subprocess`](../packages/subprocess/subprocess) |
|
||||||
| [`tasks-local`](../packages/tasks/tasks-local) | `tasks` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tasks`](../packages/tasks/tasks), [`timeout`](../packages/util/timeout) |
|
| [`tasks-local`](../packages/tasks/tasks-local) | `tasks` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tasks`](../packages/tasks/tasks), [`timeout`](../packages/util/timeout) |
|
||||||
| [`agent-loop`](../packages/core/agent-loop) | `core` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
| [`agent-loop`](../packages/core/agent-loop) | `core` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
||||||
@@ -1284,10 +1325,14 @@ flowchart TD
|
|||||||
| [`session-title-first-message-llm`](../packages/session-title/session-title-first-message-llm) | `session-title` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`session-title-llm`](../packages/session-title/session-title-llm) |
|
| [`session-title-first-message-llm`](../packages/session-title/session-title-first-message-llm) | `session-title` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`session-title-llm`](../packages/session-title/session-title-llm) |
|
||||||
| [`agent-loop-testkit`](../packages/support/agent-loop-testkit) | `support` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
| [`agent-loop-testkit`](../packages/support/agent-loop-testkit) | `support` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
||||||
| [`tool-ask-user`](../packages/ui/tool-ask-user) | `ui` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tools`](../packages/core/tools), [`user-interaction`](../packages/ui/user-interaction) |
|
| [`tool-ask-user`](../packages/ui/tool-ask-user) | `ui` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tools`](../packages/core/tools), [`user-interaction`](../packages/ui/user-interaction) |
|
||||||
|
<<<<<<< HEAD
|
||||||
| [`client-ui-command`](../packages/client/ui-command) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
| [`client-ui-command`](../packages/client/ui-command) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-deliverables`](../packages/client/ui-deliverables) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
| [`client-ui-deliverables`](../packages/client/ui-deliverables) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-goal`](../packages/client/ui-goal) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`goal`](../packages/goal/goal), [`invariants`](../packages/support/invariants) |
|
| [`client-ui-goal`](../packages/client/ui-goal) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`goal`](../packages/goal/goal), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-skill`](../packages/client/ui-skill) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
| [`client-ui-skill`](../packages/client/ui-skill) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
=======
|
||||||
|
| [`client-runtime`](../packages/client/runtime) | `client` | [`client-remotes`](../packages/client/remotes), [`invariants`](../packages/support/invariants), [`type-meta`](../packages/typert/type-meta), [`typert-registry`](../packages/typert/registry) |
|
||||||
|
>>>>>>> d6e02ebbcc (feat(goal): add TypeRT gateway example)
|
||||||
| [`session-reference`](../packages/context/session-reference) | `context` | [`agent`](../packages/core/agent), [`compact`](../packages/compact/compact), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`retention`](../packages/util/retention), [`session`](../packages/core/session), [`session-query`](../packages/session-query/session-query) |
|
| [`session-reference`](../packages/context/session-reference) | `context` | [`agent`](../packages/core/agent), [`compact`](../packages/compact/compact), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`retention`](../packages/util/retention), [`session`](../packages/core/session), [`session-query`](../packages/session-query/session-query) |
|
||||||
| [`workspace-context`](../packages/context/workspace-context) | `context` | [`agent`](../packages/core/agent), [`fs`](../packages/fs/fs), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`paths`](../packages/util/paths), [`session`](../packages/core/session), [`tools`](../packages/core/tools) |
|
| [`workspace-context`](../packages/context/workspace-context) | `context` | [`agent`](../packages/core/agent), [`fs`](../packages/fs/fs), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`paths`](../packages/util/paths), [`session`](../packages/core/session), [`tools`](../packages/core/tools) |
|
||||||
| [`repeat-tool-guard`](../packages/guard/repeat-tool-guard) | `guard` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tools`](../packages/core/tools) |
|
| [`repeat-tool-guard`](../packages/guard/repeat-tool-guard) | `guard` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`tools`](../packages/core/tools) |
|
||||||
@@ -1309,10 +1354,11 @@ flowchart TD
|
|||||||
| [`repository-plugin`](../packages/cordis/repository-plugin) | `cordis` | [`invariants`](../packages/support/invariants), [`mcp-client`](../packages/mcp/mcp-client), [`paths`](../packages/util/paths), [`skill-local`](../packages/skill/skill-local) |
|
| [`repository-plugin`](../packages/cordis/repository-plugin) | `cordis` | [`invariants`](../packages/support/invariants), [`mcp-client`](../packages/mcp/mcp-client), [`paths`](../packages/util/paths), [`skill-local`](../packages/skill/skill-local) |
|
||||||
| [`hooks-claude`](../packages/hooks/hooks-claude) | `hooks` | [`agent`](../packages/core/agent), [`hook-protocol`](../packages/hooks/hook-protocol), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`subagent`](../packages/subagent/subagent), [`tools`](../packages/core/tools) |
|
| [`hooks-claude`](../packages/hooks/hooks-claude) | `hooks` | [`agent`](../packages/core/agent), [`hook-protocol`](../packages/hooks/hook-protocol), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-persistence`](../packages/session-persistence/session-persistence), [`subagent`](../packages/subagent/subagent), [`tools`](../packages/core/tools) |
|
||||||
| [`web-app`](../packages/bundle/web-app) | `bundle` | [`bash-env`](../packages/bash/bash-env), [`invariants`](../packages/support/invariants), [`system-prompt`](../packages/core/system-prompt) |
|
| [`web-app`](../packages/bundle/web-app) | `bundle` | [`bash-env`](../packages/bash/bash-env), [`invariants`](../packages/support/invariants), [`system-prompt`](../packages/core/system-prompt) |
|
||||||
| [`client-ui-model`](../packages/client/ui-model) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-command`](../packages/client/ui-command), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
| [`client-locale`](../packages/client/locale) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-permission`](../packages/client/ui-permission) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-schema-form`](../packages/client/schema-form), [`client-ui-command`](../packages/client/ui-command), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`permission`](../packages/ui/permission) |
|
| [`client-test-runtime`](../packages/client/test-runtime) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`host-apiproxy`](../packages/host/apiproxy), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-plan`](../packages/client/ui-plan) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`plan-mode`](../packages/plan/plan-mode) |
|
| [`client-ui-models`](../packages/client/ui-models) | `client` | [`client-connection`](../packages/client/connection), [`client-runtime`](../packages/client/runtime), [`client-schema-form`](../packages/client/schema-form), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`invariants`](../packages/support/invariants) |
|
||||||
| [`client-ui-subagent`](../packages/client/ui-subagent) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`subagent`](../packages/subagent/subagent), [`token-meter`](../packages/llm/token-meter) |
|
| [`client-ui-settings`](../packages/client/ui-settings) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-trajectory`](../packages/client/ui-trajectory) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`invariants`](../packages/support/invariants) |
|
||||||
| [`sdk-protocol`](../packages/sdk/sdk-protocol) | `sdk` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent) |
|
| [`sdk-protocol`](../packages/sdk/sdk-protocol) | `sdk` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent) |
|
||||||
| [`tool-ralph`](../packages/workflow/tool-ralph) | `workflow` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`subagent`](../packages/subagent/subagent), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`workflow`](../packages/workflow/workflow) |
|
| [`tool-ralph`](../packages/workflow/tool-ralph) | `workflow` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`subagent`](../packages/subagent/subagent), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`workflow`](../packages/workflow/workflow) |
|
||||||
| [`workflow-workerthread`](../packages/workflow/workflow-workerthread) | `workflow` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`tools`](../packages/core/tools), [`workflow`](../packages/workflow/workflow) |
|
| [`workflow-workerthread`](../packages/workflow/workflow-workerthread) | `workflow` | [`agent`](../packages/core/agent), [`brand`](../packages/util/brand), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`tools`](../packages/core/tools), [`workflow`](../packages/workflow/workflow) |
|
||||||
@@ -1320,8 +1366,26 @@ flowchart TD
|
|||||||
| [`subagent-fork`](../packages/subagent/subagent-fork) | `subagent` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`subagent-inprocess`](../packages/subagent/subagent-inprocess) |
|
| [`subagent-fork`](../packages/subagent/subagent-fork) | `subagent` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`subagent-inprocess`](../packages/subagent/subagent-inprocess) |
|
||||||
| [`subagent-spawn`](../packages/subagent/subagent-spawn) | `subagent` | [`invariants`](../packages/support/invariants), [`subagent`](../packages/subagent/subagent), [`subagent-inprocess`](../packages/subagent/subagent-inprocess) |
|
| [`subagent-spawn`](../packages/subagent/subagent-spawn) | `subagent` | [`invariants`](../packages/support/invariants), [`subagent`](../packages/subagent/subagent), [`subagent-inprocess`](../packages/subagent/subagent-inprocess) |
|
||||||
| [`jsonrpc`](../packages/ui/jsonrpc) | `ui` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`llm-deepseek`](../packages/llm/llm-deepseek), [`scope`](../packages/core/scope), [`sdk-protocol`](../packages/sdk/sdk-protocol), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent) |
|
| [`jsonrpc`](../packages/ui/jsonrpc) | `ui` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`llm-deepseek`](../packages/llm/llm-deepseek), [`scope`](../packages/core/scope), [`sdk-protocol`](../packages/sdk/sdk-protocol), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent) |
|
||||||
|
| [`client-ui-question`](../packages/client/ui-question) | `client` | [`client-locale`](../packages/client/locale), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-settings-general`](../packages/client/ui-settings-general) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-settings`](../packages/client/ui-settings), [`client-ui-slots`](../packages/client/ui-slots), [`client-web-react`](../packages/client/web-react), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-sidebar`](../packages/client/ui-sidebar) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-slash`](../packages/client/ui-slash) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-theme`](../packages/client/ui-theme) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-workspace`](../packages/client/ui-workspace) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
| [`agent-spine-demo`](../packages/examples/agent-spine-demo) | `examples` | [`agent`](../packages/core/agent), [`agent-loop`](../packages/core/agent-loop), [`bash-env`](../packages/bash/bash-env), [`goal`](../packages/goal/goal), [`goal-session`](../packages/goal/goal-session), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`llm-retry`](../packages/llm/llm-retry), [`paths`](../packages/util/paths), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`skill`](../packages/skill/skill), [`skill-local`](../packages/skill/skill-local), [`system-prompt`](../packages/core/system-prompt), [`tasks-local`](../packages/tasks/tasks-local), [`tool-bash`](../packages/bash/tool-bash), [`tool-goal`](../packages/goal/tool-goal), [`tool-skill`](../packages/skill/tool-skill), [`tool-tasks`](../packages/tasks/tool-tasks), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
| [`agent-spine-demo`](../packages/examples/agent-spine-demo) | `examples` | [`agent`](../packages/core/agent), [`agent-loop`](../packages/core/agent-loop), [`bash-env`](../packages/bash/bash-env), [`goal`](../packages/goal/goal), [`goal-session`](../packages/goal/goal-session), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`llm-retry`](../packages/llm/llm-retry), [`paths`](../packages/util/paths), [`scope`](../packages/core/scope), [`session`](../packages/core/session), [`session-title`](../packages/session-title/session-title), [`skill`](../packages/skill/skill), [`skill-local`](../packages/skill/skill-local), [`system-prompt`](../packages/core/system-prompt), [`tasks-local`](../packages/tasks/tasks-local), [`tool-bash`](../packages/bash/tool-bash), [`tool-goal`](../packages/goal/tool-goal), [`tool-skill`](../packages/skill/tool-skill), [`tool-tasks`](../packages/tasks/tool-tasks), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
||||||
| [`sdk-client`](../packages/sdk/sdk-client) | `sdk` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sdk-protocol`](../packages/sdk/sdk-protocol), [`session`](../packages/core/session) |
|
| [`sdk-client`](../packages/sdk/sdk-client) | `sdk` | [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sdk-protocol`](../packages/sdk/sdk-protocol), [`session`](../packages/core/session) |
|
||||||
| [`subagent-dsh-sdk`](../packages/subagent/subagent-dsh-sdk) | `subagent` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sdk-client`](../packages/sdk/sdk-client), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`subprocess`](../packages/subprocess/subprocess) |
|
| [`subagent-dsh-sdk`](../packages/subagent/subagent-dsh-sdk) | `subagent` | [`agent`](../packages/core/agent), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`sdk-client`](../packages/sdk/sdk-client), [`session`](../packages/core/session), [`subagent`](../packages/subagent/subagent), [`subprocess`](../packages/subprocess/subprocess) |
|
||||||
|
| [`client-ui-conversation`](../packages/client/ui-conversation) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`token-meter`](../packages/llm/token-meter) |
|
||||||
|
| [`client-ui-layout`](../packages/client/ui-layout) | `client` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-theme`](../packages/client/ui-theme), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-skill`](../packages/client/ui-skill) | `client` | [`client-connection`](../packages/client/connection), [`client-runtime`](../packages/client/runtime), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
| [`acp-demo`](../packages/examples/acp-demo) | `examples` | [`acp`](../packages/acp/acp), [`agent-spine-demo`](../packages/examples/agent-spine-demo), [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-persistence-jsonl`](../packages/session-persistence/session-persistence-jsonl), [`session-query`](../packages/session-query/session-query), [`session-query-sqlite`](../packages/session-query/session-query-sqlite), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
| [`acp-demo`](../packages/examples/acp-demo) | `examples` | [`acp`](../packages/acp/acp), [`agent-spine-demo`](../packages/examples/agent-spine-demo), [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-persistence-jsonl`](../packages/session-persistence/session-persistence-jsonl), [`session-query`](../packages/session-query/session-query), [`session-query-sqlite`](../packages/session-query/session-query-sqlite), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
||||||
| [`cli-demo`](../packages/examples/cli-demo) | `examples` | [`agent`](../packages/core/agent), [`agent-spine-demo`](../packages/examples/agent-spine-demo), [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-persistence-jsonl`](../packages/session-persistence/session-persistence-jsonl), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
| [`cli-demo`](../packages/examples/cli-demo) | `examples` | [`agent`](../packages/core/agent), [`agent-spine-demo`](../packages/examples/agent-spine-demo), [`app-boot`](../packages/ui/app-boot), [`invariants`](../packages/support/invariants), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-checkpoint-policy`](../packages/session-persistence/session-checkpoint-policy), [`session-persistence-jsonl`](../packages/session-persistence/session-persistence-jsonl), [`tools`](../packages/core/tools), [`workspace-context`](../packages/context/workspace-context) |
|
||||||
|
| [`host-directory-picker-browse`](../packages/host/directory-picker-browse) | `host` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-workspace`](../packages/client/ui-workspace), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`host-directory-picker-native`](../packages/host/directory-picker-native) | `host` | [`client-runtime`](../packages/client/runtime), [`client-ui-slots`](../packages/client/ui-slots), [`client-ui-workspace`](../packages/client/ui-workspace), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-command`](../packages/client/ui-command) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-goal`](../packages/client/ui-goal) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`goal`](../packages/goal/goal), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-plan`](../packages/client/ui-plan) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`plan-mode`](../packages/plan/plan-mode) |
|
||||||
|
| [`client-ui-subagent`](../packages/client/ui-subagent) | `client` | [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`subagent`](../packages/subagent/subagent), [`token-meter`](../packages/llm/token-meter) |
|
||||||
|
| [`host-directory-picker-auto`](../packages/host/directory-picker-auto) | `host` | [`host-directory-picker-browse`](../packages/host/directory-picker-browse), [`host-directory-picker-native`](../packages/host/directory-picker-native), [`host-webserver`](../packages/host/webserver), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-model`](../packages/client/ui-model) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-ui-command`](../packages/client/ui-command), [`client-ui-conversation`](../packages/client/ui-conversation), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants) |
|
||||||
|
| [`client-ui-permission`](../packages/client/ui-permission) | `client` | [`client-connection`](../packages/client/connection), [`client-locale`](../packages/client/locale), [`client-runtime`](../packages/client/runtime), [`client-schema-form`](../packages/client/schema-form), [`client-ui-command`](../packages/client/ui-command), [`client-ui-primitives`](../packages/client/ui-primitives), [`client-ui-slash`](../packages/client/ui-slash), [`client-ui-slots`](../packages/client/ui-slots), [`invariants`](../packages/support/invariants), [`permission`](../packages/ui/permission) |
|
||||||
@@ -340,7 +340,7 @@ Source: [`packages/feedback/command-feedback/src/index.ts:24`](../packages/feedb
|
|||||||
'goal/change': GoalChangeMeta
|
'goal/change': GoalChangeMeta
|
||||||
```
|
```
|
||||||
|
|
||||||
Source: [`packages/goal/goal/src/domain.ts:81`](../packages/goal/goal/src/domain.ts)
|
Source: [`packages/goal/goal/src/domain.ts:66`](../packages/goal/goal/src/domain.ts)
|
||||||
|
|
||||||
### `hook/*`
|
### `hook/*`
|
||||||
|
|
||||||
|
|||||||
@@ -115,6 +115,15 @@
|
|||||||
"tests/**/*.ts"
|
"tests/**/*.ts"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"packages/client/remotes": {
|
||||||
|
"entry": [
|
||||||
|
"tests/**/*.e2e.ts"
|
||||||
|
],
|
||||||
|
"project": [
|
||||||
|
"src/**/*.ts",
|
||||||
|
"tests/**/*.ts"
|
||||||
|
]
|
||||||
|
},
|
||||||
"packages/client/ui-primitives": {
|
"packages/client/ui-primitives": {
|
||||||
"entry": [
|
"entry": [
|
||||||
"tests/**/*.spec.tsx"
|
"tests/**/*.spec.tsx"
|
||||||
|
|||||||
@@ -124,6 +124,9 @@
|
|||||||
- id: connection
|
- id: connection
|
||||||
name: '@deepseek-ai/dsh-client-connection'
|
name: '@deepseek-ai/dsh-client-connection'
|
||||||
|
|
||||||
|
- id: client-remotes
|
||||||
|
name: '@deepseek-ai/dsh-client-remotes'
|
||||||
|
|
||||||
- id: client-runtime
|
- id: client-runtime
|
||||||
name: '@deepseek-ai/dsh-client-runtime'
|
name: '@deepseek-ai/dsh-client-runtime'
|
||||||
|
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
"@deepseek-ai/dsh-client-hmr": "workspace:^",
|
"@deepseek-ai/dsh-client-hmr": "workspace:^",
|
||||||
"@deepseek-ai/dsh-client-locale": "workspace:^",
|
"@deepseek-ai/dsh-client-locale": "workspace:^",
|
||||||
"@deepseek-ai/dsh-client-modules": "workspace:^",
|
"@deepseek-ai/dsh-client-modules": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-client-remotes": "workspace:^",
|
||||||
"@deepseek-ai/dsh-client-runtime": "workspace:^",
|
"@deepseek-ai/dsh-client-runtime": "workspace:^",
|
||||||
"@deepseek-ai/dsh-client-ui-command": "workspace:^",
|
"@deepseek-ai/dsh-client-ui-command": "workspace:^",
|
||||||
"@deepseek-ai/dsh-client-ui-conversation": "workspace:^",
|
"@deepseek-ai/dsh-client-ui-conversation": "workspace:^",
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
# Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
|
||||||
|
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
||||||
|
# after editing either side, bring the other along and re-record with:
|
||||||
|
# pnpm run verify-translation-pairing --write packages/client/remotes/README.md
|
||||||
|
README.md: e29188b8e3ae5ecefe194f1355558e9bdeaae7dd
|
||||||
|
README.zh.md: e6425ab190a28e0a38c3713c4e21645789a8f00c
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# @deepseek-ai/dsh-client-remotes
|
||||||
|
|
||||||
|
English | [中文](README.zh.md)
|
||||||
|
|
||||||
|
Platform-neutral Client facade for Host Remote capabilities selected by this application. Its Client entry imports generated `/remote` artifacts as runtime values, mounts each contribution through `ctx.api`, and re-exports their declaration merges. Client business packages depend on this facade rather than the Host API Gateway or individual Remote runtime entries.
|
||||||
|
|
||||||
|
The current assembly mounts only the Goal Remote contribution. Cordis effect ownership withdraws every contribution when this assembly unloads, while the Client face of `@deepseek-ai/dsh-host-api-gateway` owns descriptor validation, concrete root and scoped methods, invocation, and cancellation.
|
||||||
|
|
||||||
|
This package contains no transport or Host discovery logic. It can be reused by Web or a future TUI Client that provides the same React-free `ctx.api` contract.
|
||||||
|
|
||||||
|
## Model Experience
|
||||||
|
|
||||||
|
None, as this Client assembly selects Remote application methods and registers no model surface.
|
||||||
|
|
||||||
|
#### KV Cache effect
|
||||||
|
|
||||||
|
No direct effect; mounted Host capabilities own any model-visible behavior they trigger.
|
||||||
|
|
||||||
|
## Known Limitations and Deferred Work
|
||||||
|
|
||||||
|
- The capability set is fixed by explicit build-time value imports; the Client does not discover the Host's active Services or Remote definitions at runtime.
|
||||||
|
- Additional capabilities require an explicit `/remote` value import and mount in this assembly.
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# @deepseek-ai/dsh-client-remotes
|
||||||
|
|
||||||
|
[English](README.md) | 中文
|
||||||
|
|
||||||
|
为本应用选定的 Host Remote 能力提供平台无关的 Client 外观。其 Client 入口以运行时值形式导入生成的 `/remote` 产物,通过 `ctx.api` 挂载每项贡献,并重新导出对应的声明合并。Client 业务包依赖此外观,而不依赖 Host API Gateway 或单独的 Remote 运行时入口。
|
||||||
|
|
||||||
|
当前组合仅挂载 Goal Remote 贡献。该组合卸载时,Cordis effect 的所有权机制会撤回所有贡献;`@deepseek-ai/dsh-host-api-gateway` 的 Client 侧负责描述符校验、具体的根级方法和作用域方法、调用与取消。
|
||||||
|
|
||||||
|
本包不包含传输逻辑或 Host 发现逻辑。Web 和未来的 TUI Client 只要提供同一份不依赖 React 的 `ctx.api` 契约,均可复用本包。
|
||||||
|
|
||||||
|
## 模型体验
|
||||||
|
|
||||||
|
无,因为此 Client 组合只选择应用的 Remote 方法,不注册任何模型接口。
|
||||||
|
|
||||||
|
#### KV Cache 影响
|
||||||
|
|
||||||
|
无直接影响;其触发的任何模型可见行为均由已挂载的 Host 能力负责。
|
||||||
|
|
||||||
|
## 已知限制与暂缓事项
|
||||||
|
|
||||||
|
- 能力集合由构建时显式导入的值固定确定;Client 不会在运行时发现 Host 中已启用的服务或 Remote 定义。
|
||||||
|
- 若要增加能力,必须显式导入相应的 `/remote` 值并在此组合中挂载。
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"name": "@deepseek-ai/dsh-client-remotes",
|
||||||
|
"description": "Platform-neutral assembly of explicitly selected Host Remote contributions",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"private": true,
|
||||||
|
"type": "module",
|
||||||
|
"main": "lib/index.js",
|
||||||
|
"types": "lib/types/index.d.ts",
|
||||||
|
"exports": {
|
||||||
|
".": {
|
||||||
|
"types": "./lib/types/index.d.ts",
|
||||||
|
"default": "./lib/index.js"
|
||||||
|
},
|
||||||
|
"./invariant": {
|
||||||
|
"types": "./lib/types/invariant.d.ts",
|
||||||
|
"default": "./lib/invariant.js"
|
||||||
|
},
|
||||||
|
"./client": {
|
||||||
|
"types": "./lib/types/client/index.d.ts",
|
||||||
|
"default": "./lib/client.js"
|
||||||
|
},
|
||||||
|
"./src/*": "./src/*",
|
||||||
|
"./package.json": "./package.json"
|
||||||
|
},
|
||||||
|
"dshClient": {
|
||||||
|
"inject": [
|
||||||
|
"@deepseek-ai/dsh-host-api-gateway"
|
||||||
|
],
|
||||||
|
"platform": "web",
|
||||||
|
"immediately": true
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"bundle": "tsdown",
|
||||||
|
"watch": "tsdown --watch"
|
||||||
|
},
|
||||||
|
"license": "BSD-3-Clause",
|
||||||
|
"files": [
|
||||||
|
"lib/index.js",
|
||||||
|
"lib/invariant.js",
|
||||||
|
"lib/client.js",
|
||||||
|
"lib/types/**/*.d.ts"
|
||||||
|
],
|
||||||
|
"peerDependencies": {
|
||||||
|
"@deepseek-ai/dsh-host-api-gateway": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-goal": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
||||||
|
"cordis": "^4.0.0-rc.7"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@deepseek-ai/dsh-host-api-gateway": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-goal": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-invariants": "workspace:^",
|
||||||
|
"cordis": "^4.0.0-rc.7"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
/** Platform-neutral assembly of generated Host Remote contributions. */
|
||||||
|
|
||||||
|
import type { Context } from 'cordis'
|
||||||
|
import type {} from '@deepseek-ai/dsh-host-api-gateway/client'
|
||||||
|
import goalsRemote from '@deepseek-ai/dsh-goal/remote'
|
||||||
|
|
||||||
|
export type { ClientApi } from '@deepseek-ai/dsh-host-api-gateway/client'
|
||||||
|
export type {} from '@deepseek-ai/dsh-goal/remote'
|
||||||
|
|
||||||
|
/** Required service: the typed Client API contribution mount. */
|
||||||
|
export const inject = ['api']
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mount the Host capabilities explicitly selected for this Client assembly.
|
||||||
|
* @param ctx - Client Cordis root carrying the typed API service.
|
||||||
|
*/
|
||||||
|
export function apply(ctx: Context): void {
|
||||||
|
ctx.api.mount(goalsRemote)
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
/** Host Loader entry for the Client Remote contribution assembly. */
|
||||||
|
|
||||||
|
/** Host plugin body; the selected contributions mount only in Client environments. */
|
||||||
|
export function apply(): void {}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
/** Package-owned invariant companion for `@deepseek-ai/dsh-client-remotes`. */
|
||||||
|
|
||||||
|
/* jscpd:ignore-start */
|
||||||
|
import type { Context } from 'cordis'
|
||||||
|
import type { InvariantInstaller } from '@deepseek-ai/dsh-invariants'
|
||||||
|
|
||||||
|
const PACKAGE_NAME = '@deepseek-ai/dsh-client-remotes'
|
||||||
|
|
||||||
|
/** Cordis companion plugin name. */
|
||||||
|
export const name = 'client-remotes-invariant'
|
||||||
|
/** Service required before the companion can reserve package ownership. */
|
||||||
|
export const inject = ['invariants']
|
||||||
|
|
||||||
|
/** No runtime invariant: the API service owns contribution and method lifecycle atomically. */
|
||||||
|
const install: InvariantInstaller = () => {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Register this package's invariant companion.
|
||||||
|
* @param ctx - Cordis context carrying the invariant service.
|
||||||
|
* @returns the installed registration's disposer after setup succeeds.
|
||||||
|
*/
|
||||||
|
export const apply = (ctx: Context): Promise<() => void> =>
|
||||||
|
Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install))
|
||||||
|
/* jscpd:ignore-end */
|
||||||
@@ -0,0 +1,214 @@
|
|||||||
|
import { execFile } from 'node:child_process'
|
||||||
|
import { existsSync } from 'node:fs'
|
||||||
|
import { join, resolve } from 'node:path'
|
||||||
|
import { fileURLToPath, pathToFileURL } from 'node:url'
|
||||||
|
import { describe, expect, it } from 'vitest'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Built-artifact smoke for the first generated Remote: plain Node boots the
|
||||||
|
* Host and Browser bundle handoffs, then crosses the real `/api2` HTTP route.
|
||||||
|
*/
|
||||||
|
|
||||||
|
const packageDir = fileURLToPath(new URL('..', import.meta.url))
|
||||||
|
const root = resolve(packageDir, '../../..')
|
||||||
|
const artifact = (path: string): string => join(root, path)
|
||||||
|
const artifactUrl = (path: string): string => pathToFileURL(artifact(path)).href
|
||||||
|
|
||||||
|
const requiredArtifacts = [
|
||||||
|
'packages/client/connection/lib/client.js',
|
||||||
|
'packages/client/connection/lib/index.js',
|
||||||
|
'packages/client/remotes/lib/client.js',
|
||||||
|
'packages/core/agent/lib/index.js',
|
||||||
|
'packages/core/session/lib/index.js',
|
||||||
|
'packages/goal/goal/lib/index.js',
|
||||||
|
'packages/goal/goal/lib/typert.host.js',
|
||||||
|
'packages/host/api-gateway/lib/client.js',
|
||||||
|
'packages/host/api-gateway/lib/index.js',
|
||||||
|
'packages/typert/registry/lib/client.js',
|
||||||
|
'packages/typert/registry/lib/index.js',
|
||||||
|
].every(path => existsSync(artifact(path)))
|
||||||
|
|
||||||
|
describe.skipIf(!requiredArtifacts)('Goal Remote built LIB chain', () => {
|
||||||
|
it('runs root and Agent-scoped calls through generated bundles and real HTTP', async () => {
|
||||||
|
const urls = Object.fromEntries(Object.entries({
|
||||||
|
agent: 'packages/core/agent/lib/index.js',
|
||||||
|
apiGatewayClient: 'packages/host/api-gateway/lib/client.js',
|
||||||
|
apiGatewayHost: 'packages/host/api-gateway/lib/index.js',
|
||||||
|
connectionClient: 'packages/client/connection/lib/client.js',
|
||||||
|
connectionHost: 'packages/client/connection/lib/index.js',
|
||||||
|
goal: 'packages/goal/goal/lib/index.js',
|
||||||
|
goalTypert: 'packages/goal/goal/lib/typert.host.js',
|
||||||
|
registryClient: 'packages/typert/registry/lib/client.js',
|
||||||
|
registryHost: 'packages/typert/registry/lib/index.js',
|
||||||
|
remotesClient: 'packages/client/remotes/lib/client.js',
|
||||||
|
session: 'packages/core/session/lib/index.js',
|
||||||
|
}).map(([key, path]) => [key, artifactUrl(path)]))
|
||||||
|
const script = `
|
||||||
|
import { createServer } from 'node:http'
|
||||||
|
import * as cordis from 'cordis'
|
||||||
|
|
||||||
|
const urls = ${JSON.stringify(urls)}
|
||||||
|
const { Context } = cordis
|
||||||
|
const { default: AgentRegistry } = await import(urls.agent)
|
||||||
|
const connectionHost = await import(urls.connectionHost)
|
||||||
|
const { default: TypertGatewayService } = await import(urls.apiGatewayHost)
|
||||||
|
const { default: GoalService } = await import(urls.goal)
|
||||||
|
const { TYPERT } = await import(urls.goalTypert)
|
||||||
|
const { default: TypertRegistry } = await import(urls.registryHost)
|
||||||
|
const { Session, SessionId } = await import(urls.session)
|
||||||
|
|
||||||
|
const routes = []
|
||||||
|
const host = new Context()
|
||||||
|
host.provide('httpServer', {
|
||||||
|
register(route) {
|
||||||
|
routes.push(route)
|
||||||
|
return () => { routes.splice(routes.indexOf(route), 1) }
|
||||||
|
},
|
||||||
|
tapIndex() { return () => {} },
|
||||||
|
port: 0,
|
||||||
|
})
|
||||||
|
await host.plugin({ inject: connectionHost.inject, apply: connectionHost.apply })
|
||||||
|
await host.plugin(TypertRegistry)
|
||||||
|
await host.plugin(AgentRegistry)
|
||||||
|
await host.plugin(TypertGatewayService)
|
||||||
|
await host.plugin(GoalService)
|
||||||
|
host.typert.register(TYPERT)
|
||||||
|
|
||||||
|
const makeAgent = rawId => {
|
||||||
|
const session = new Session(SessionId(rawId))
|
||||||
|
return {
|
||||||
|
id: session.id,
|
||||||
|
options: {},
|
||||||
|
session,
|
||||||
|
ctx: host.extend(),
|
||||||
|
status: 'idle',
|
||||||
|
acceptsNextStep: false,
|
||||||
|
send() {},
|
||||||
|
updateInbox() { return 'not-found' },
|
||||||
|
followup() {},
|
||||||
|
steer() { return { outcome: Promise.resolve({ status: 'rejected' }) } },
|
||||||
|
inject(input) { session.append('user/message', input, { surfaceOp: 'append' }) },
|
||||||
|
reserveTurnAdmission() {},
|
||||||
|
cancel() {},
|
||||||
|
whenIdle() { return Promise.resolve() },
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const rootAgent = makeAgent('built-root-agent')
|
||||||
|
const scopedAgent = makeAgent('built-scoped-agent')
|
||||||
|
host.agents.register(rootAgent)
|
||||||
|
host.agents.register(scopedAgent)
|
||||||
|
|
||||||
|
if (routes.length !== 1) throw new Error('Gateway did not register exactly one /api2 route')
|
||||||
|
const server = createServer((request, response) => { void routes[0].handler(request, response) })
|
||||||
|
await new Promise(resolveListen => server.listen(0, '127.0.0.1', resolveListen))
|
||||||
|
const address = server.address()
|
||||||
|
if (address === null || typeof address === 'string') throw new Error('HTTP server has no TCP address')
|
||||||
|
const origin = 'http://127.0.0.1:' + String(address.port)
|
||||||
|
|
||||||
|
const handoffs = new Map()
|
||||||
|
globalThis.window = {
|
||||||
|
__ModuleLoader__: {
|
||||||
|
load(handoff) { handoffs.set(handoff.id, handoff) },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
globalThis.location = { hostname: '127.0.0.1', origin, search: '' }
|
||||||
|
await import(urls.registryClient)
|
||||||
|
await import(urls.connectionClient)
|
||||||
|
await import(urls.apiGatewayClient)
|
||||||
|
await import(urls.remotesClient)
|
||||||
|
|
||||||
|
const instantiate = id => {
|
||||||
|
const handoff = handoffs.get(id)
|
||||||
|
if (handoff === undefined) throw new Error('missing Client bundle handoff ' + id)
|
||||||
|
return handoff.factory(specifier => {
|
||||||
|
if (specifier === 'cordis') return cordis
|
||||||
|
throw new Error('unexpected Client external ' + specifier)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const client = new Context()
|
||||||
|
for (const id of [
|
||||||
|
'@deepseek-ai/dsh-typert-registry',
|
||||||
|
'@deepseek-ai/dsh-client-connection',
|
||||||
|
'@deepseek-ai/dsh-host-api-gateway',
|
||||||
|
'@deepseek-ai/dsh-client-remotes',
|
||||||
|
]) {
|
||||||
|
const plugin = instantiate(id)
|
||||||
|
await client.plugin({ inject: plugin.inject, apply: plugin.apply })
|
||||||
|
}
|
||||||
|
client.typert.contexts.registerClient('agent', {
|
||||||
|
identity: candidate => candidate.builtAgentId,
|
||||||
|
})
|
||||||
|
|
||||||
|
let invalidRejected = false
|
||||||
|
try {
|
||||||
|
await client.api.goals.create(rootAgent.id, { objective: 1 })
|
||||||
|
} catch {
|
||||||
|
invalidRejected = true
|
||||||
|
}
|
||||||
|
const rootResult = await client.api.goals.create(rootAgent.id, { objective: 'root goal' })
|
||||||
|
const agentContext = client.extend({ builtAgentId: scopedAgent.id })
|
||||||
|
const scopedResult = await agentContext.goals.create({ objective: 'scoped goal', maxGoalRounds: 3 })
|
||||||
|
const result = {
|
||||||
|
invalidRejected,
|
||||||
|
rootResult,
|
||||||
|
scopedResult,
|
||||||
|
rootGoal: host.goals.get(rootAgent)?.objective,
|
||||||
|
scopedGoal: host.goals.get(scopedAgent)?.objective,
|
||||||
|
rootEvents: rootAgent.session.events.length,
|
||||||
|
scopedEvents: scopedAgent.session.events.length,
|
||||||
|
}
|
||||||
|
|
||||||
|
await client.fiber.dispose()
|
||||||
|
await new Promise((resolveClose, rejectClose) => server.close(error => {
|
||||||
|
if (error === undefined) resolveClose()
|
||||||
|
else rejectClose(error)
|
||||||
|
}))
|
||||||
|
await host.fiber.dispose()
|
||||||
|
console.log(JSON.stringify(result))
|
||||||
|
`
|
||||||
|
|
||||||
|
const result = await runPlainNode(script)
|
||||||
|
expect(result.exitCode, `stderr:\n${result.stderr}`).toBe(0)
|
||||||
|
const output = JSON.parse(result.stdout.trim().split('\n').at(-1) ?? '{}') as {
|
||||||
|
invalidRejected: boolean
|
||||||
|
rootResult: { ref: { id: string; revision: number } }
|
||||||
|
scopedResult: { ref: { id: string; revision: number } }
|
||||||
|
rootGoal: string
|
||||||
|
scopedGoal: string
|
||||||
|
rootEvents: number
|
||||||
|
scopedEvents: number
|
||||||
|
}
|
||||||
|
expect(output).toMatchObject({
|
||||||
|
invalidRejected: true,
|
||||||
|
rootResult: { ref: { revision: 1 } },
|
||||||
|
scopedResult: { ref: { revision: 1 } },
|
||||||
|
rootGoal: 'root goal',
|
||||||
|
scopedGoal: 'scoped goal',
|
||||||
|
rootEvents: 1,
|
||||||
|
scopedEvents: 1,
|
||||||
|
})
|
||||||
|
expect(output.rootResult.ref.id).toMatch(/^goal-/)
|
||||||
|
expect(output.scopedResult.ref.id).toMatch(/^goal-/)
|
||||||
|
}, 60_000)
|
||||||
|
})
|
||||||
|
|
||||||
|
/** Execute one ESM script without tsx or a TypeScript loader. */
|
||||||
|
function runPlainNode(script: string): Promise<{
|
||||||
|
readonly exitCode: number | null
|
||||||
|
readonly stdout: string
|
||||||
|
readonly stderr: string
|
||||||
|
}> {
|
||||||
|
return new Promise((resolveRun) => {
|
||||||
|
execFile(process.execPath, ['--input-type=module', '-e', script], {
|
||||||
|
cwd: packageDir,
|
||||||
|
encoding: 'utf8',
|
||||||
|
timeout: 55_000,
|
||||||
|
}, (error, stdout, stderr) => {
|
||||||
|
resolveRun({
|
||||||
|
exitCode: error === null ? 0 : typeof error.code === 'number' ? error.code : null,
|
||||||
|
stdout,
|
||||||
|
stderr,
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"extends": "../../../tsconfig.base.client.json",
|
||||||
|
"compilerOptions": {
|
||||||
|
"rootDir": "src",
|
||||||
|
"outDir": "lib/types"
|
||||||
|
},
|
||||||
|
"include": [
|
||||||
|
"src"
|
||||||
|
],
|
||||||
|
"references": [
|
||||||
|
{
|
||||||
|
"path": "../../../vendor/cordis"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../host/api-gateway"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../ui/commands"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../goal/goal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../session-title/session-title"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../support/invariants"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
import { clientBundle } from '../tsdown.client.ts'
|
||||||
|
|
||||||
|
export default clientBundle('@deepseek-ai/dsh-client-remotes', ['lib/types/index.js', 'lib/types/invariant.js'])
|
||||||
@@ -24,7 +24,9 @@
|
|||||||
},
|
},
|
||||||
"dshClient": {
|
"dshClient": {
|
||||||
"inject": [
|
"inject": [
|
||||||
"@deepseek-ai/dsh-client-connection"
|
"@deepseek-ai/dsh-client-connection",
|
||||||
|
"@deepseek-ai/dsh-client-remotes",
|
||||||
|
"@deepseek-ai/dsh-typert-registry"
|
||||||
],
|
],
|
||||||
"platform": "web",
|
"platform": "web",
|
||||||
"immediately": true
|
"immediately": true
|
||||||
@@ -47,11 +49,17 @@
|
|||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-client-remotes": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-type-meta": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-typert-registry": "^0.0.1",
|
||||||
"cordis": "^4.0.0-rc.7"
|
"cordis": "^4.0.0-rc.7"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@deepseek-ai/dsh-invariants": "workspace:^",
|
"@deepseek-ai/dsh-invariants": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-client-remotes": "workspace:^",
|
||||||
"@deepseek-ai/dsh-timeout": "workspace:^",
|
"@deepseek-ai/dsh-timeout": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-type-meta": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-typert-registry": "workspace:^",
|
||||||
"@types/react": "~18.3.1",
|
"@types/react": "~18.3.1",
|
||||||
"cordis": "^4.0.0-rc.7"
|
"cordis": "^4.0.0-rc.7"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
import { Context as CordisContext } from 'cordis'
|
import { Context as CordisContext } from 'cordis'
|
||||||
import type { Context, Fiber } from 'cordis'
|
import type { Context, Fiber } from 'cordis'
|
||||||
import type { SessionId } from '@deepseek-ai/dsh-client-connection/client'
|
import type { SessionId } from '@deepseek-ai/dsh-client-connection/client'
|
||||||
|
import type { TypeRTRemoteContextApi } from '@deepseek-ai/dsh-type-meta'
|
||||||
|
|
||||||
/** Context tag written by {@link createScope}. */
|
/** Context tag written by {@link createScope}. */
|
||||||
const kScope = Symbol('dsh.client.scope')
|
const kScope = Symbol('dsh.client.scope')
|
||||||
@@ -29,7 +30,7 @@ export interface AgentScopeHandle {
|
|||||||
* through it (passing it as the dispatch subject routes to this agent's
|
* through it (passing it as the dispatch subject routes to this agent's
|
||||||
* tagged listeners plus every untagged one).
|
* tagged listeners plus every untagged one).
|
||||||
*/
|
*/
|
||||||
ctx: Context
|
ctx: Context & TypeRTRemoteContextApi<'agent'>
|
||||||
/** Backing fiber (dispose tears down every scope-owned registration). */
|
/** Backing fiber (dispose tears down every scope-owned registration). */
|
||||||
fiber: Fiber
|
fiber: Fiber
|
||||||
}
|
}
|
||||||
@@ -48,15 +49,16 @@ function agentScope(): void {}
|
|||||||
*/
|
*/
|
||||||
export function createScope(ctx: Context, key: SessionId): AgentScopeHandle {
|
export function createScope(ctx: Context, key: SessionId): AgentScopeHandle {
|
||||||
const fiber = ctx.plugin(agentScope)
|
const fiber = ctx.plugin(agentScope)
|
||||||
|
const scoped = fiber.ctx.extend({
|
||||||
|
[kScope]: key,
|
||||||
|
[CordisContext.filter](listenerCtx: Context): boolean {
|
||||||
|
const tag = scopeOf(listenerCtx)
|
||||||
|
return tag === undefined || tag === key
|
||||||
|
},
|
||||||
|
}) as Context & TypeRTRemoteContextApi<'agent'>
|
||||||
return {
|
return {
|
||||||
fiber,
|
fiber,
|
||||||
ctx: fiber.ctx.extend({
|
ctx: scoped,
|
||||||
[kScope]: key,
|
|
||||||
[CordisContext.filter](listenerCtx: Context): boolean {
|
|
||||||
const tag = scopeOf(listenerCtx)
|
|
||||||
return tag === undefined || tag === key
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import type { Context } from 'cordis'
|
|||||||
import type {
|
import type {
|
||||||
RpcResult, SessionId, SubagentAddress,
|
RpcResult, SessionId, SubagentAddress,
|
||||||
} from '@deepseek-ai/dsh-client-connection/client'
|
} from '@deepseek-ai/dsh-client-connection/client'
|
||||||
|
import type { TypeRTRemoteContextApi } from '@deepseek-ai/dsh-type-meta'
|
||||||
import type { HostObservable, SessionMaybeProvideInfo } from '@deepseek-ai/dsh-client-ui-slots'
|
import type { HostObservable, SessionMaybeProvideInfo } from '@deepseek-ai/dsh-client-ui-slots'
|
||||||
import type { SessionSearchResultItem } from '../sessions/manager.ts'
|
import type { SessionSearchResultItem } from '../sessions/manager.ts'
|
||||||
import type {
|
import type {
|
||||||
@@ -19,6 +20,9 @@ import type {
|
|||||||
import type { SessionFace } from './session.ts'
|
import type { SessionFace } from './session.ts'
|
||||||
import type { ObservableSnapshot } from './store.ts'
|
import type { ObservableSnapshot } from './store.ts'
|
||||||
|
|
||||||
|
/** Client Cordis Context carrying one Agent identity and its generated Remote namespaces. */
|
||||||
|
export type AgentContext = Context & TypeRTRemoteContextApi<'agent'>
|
||||||
|
|
||||||
/** The sessions-service face injected as `ctx.sessions`. */
|
/** The sessions-service face injected as `ctx.sessions`. */
|
||||||
export interface ISessions {
|
export interface ISessions {
|
||||||
/** The useSessions standard feed (list rows + current selection; read face — writes stay inside the domain). */
|
/** The useSessions standard feed (list rows + current selection; read face — writes stay inside the domain). */
|
||||||
@@ -95,7 +99,7 @@ export interface ISessions {
|
|||||||
* @param id - session id.
|
* @param id - session id.
|
||||||
* @returns scoped ctx, or undefined for a session neither listed nor already scoped.
|
* @returns scoped ctx, or undefined for a session neither listed nor already scoped.
|
||||||
*/
|
*/
|
||||||
scope(id: SessionId): Context | undefined
|
scope(id: SessionId): AgentContext | undefined
|
||||||
/**
|
/**
|
||||||
* Read the Agent scope tag off a context (service-method seam: fetch
|
* Read the Agent scope tag off a context (service-method seam: fetch
|
||||||
* bundles must reach scope resolution through ctx.sessions).
|
* bundles must reach scope resolution through ctx.sessions).
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
/** Browser runtime services for slots, sessions, workspaces, and connection-stream delivery. */
|
/** Browser runtime services for slots, sessions, workspaces, and connection-stream delivery. */
|
||||||
import type { Context } from 'cordis'
|
import type { Context } from 'cordis'
|
||||||
import type { ConnectionHandle, SessionId } from '@deepseek-ai/dsh-client-connection/client'
|
import type { ConnectionHandle, SessionId } from '@deepseek-ai/dsh-client-connection/client'
|
||||||
|
import type {} from '@deepseek-ai/dsh-client-remotes/client'
|
||||||
|
import type { TypeRTContext } from '@deepseek-ai/dsh-type-meta'
|
||||||
import type { MaybeSnapshotSelectorHook, SnapshotSelectorHook } from '@deepseek-ai/dsh-client-ui-slots'
|
import type { MaybeSnapshotSelectorHook, SnapshotSelectorHook } from '@deepseek-ai/dsh-client-ui-slots'
|
||||||
import { SlotsService } from './slots.ts'
|
import { SlotsService } from './slots.ts'
|
||||||
import { SessionsService } from './sessions/service.ts'
|
import { SessionsService } from './sessions/service.ts'
|
||||||
@@ -26,7 +28,7 @@ export type { ISession, ProjectionsFace, SessionFace } from './contract/session.
|
|||||||
export type {
|
export type {
|
||||||
ISessionHistory, SessionHistoryFace, SessionHistorySnapshot,
|
ISessionHistory, SessionHistoryFace, SessionHistorySnapshot,
|
||||||
} from './contract/session-history.ts'
|
} from './contract/session-history.ts'
|
||||||
export type { ISessions } from './contract/sessions.ts'
|
export type { AgentContext, ISessions } from './contract/sessions.ts'
|
||||||
export type { IWorkspaces } from './contract/workspaces.ts'
|
export type { IWorkspaces } from './contract/workspaces.ts'
|
||||||
export type {
|
export type {
|
||||||
SessionBinding, SessionListState, SessionProvideContribution, SessionProvideDescriptor, SessionSummary,
|
SessionBinding, SessionListState, SessionProvideContribution, SessionProvideDescriptor, SessionSummary,
|
||||||
@@ -75,6 +77,13 @@ export type { SessionId } from '@deepseek-ai/dsh-client-connection/client'
|
|||||||
/** Client-side Cordis context after declaration merging. */
|
/** Client-side Cordis context after declaration merging. */
|
||||||
export type ClientContext = Context
|
export type ClientContext = Context
|
||||||
|
|
||||||
|
declare module '@deepseek-ai/dsh-type-meta' {
|
||||||
|
interface TypeRTContextMap {
|
||||||
|
/** Client Agent scope identity; the agent and session share one wire id. */
|
||||||
|
agent: TypeRTContext<SessionId>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/** The conversation-snapshot selector hook (ConvViewProps/ToolRowProps take this). */
|
/** The conversation-snapshot selector hook (ConvViewProps/ToolRowProps take this). */
|
||||||
export type UseConversationSession = SnapshotSelectorHook<ConversationSnapshot>
|
export type UseConversationSession = SnapshotSelectorHook<ConversationSnapshot>
|
||||||
|
|
||||||
@@ -170,8 +179,8 @@ declare module 'cordis' {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Required services: the wire handle mounted by the connection plugin. */
|
/** Required services: the typed Remote API, wire handle, and Client TypeRT registry. */
|
||||||
export const inject = ['connection']
|
export const inject = ['api', 'connection', 'typert']
|
||||||
|
|
||||||
/** Mounts the browser runtime services and connection stream.
|
/** Mounts the browser runtime services and connection stream.
|
||||||
* @param ctx - Client Cordis context.
|
* @param ctx - Client Cordis context.
|
||||||
@@ -180,6 +189,9 @@ export function apply(ctx: Context): void {
|
|||||||
ctx.plugin(SlotsService)
|
ctx.plugin(SlotsService)
|
||||||
const connection = ctx.get('connection') as ConnectionHandle
|
const connection = ctx.get('connection') as ConnectionHandle
|
||||||
const sessions = new SessionsService(ctx, connection.api)
|
const sessions = new SessionsService(ctx, connection.api)
|
||||||
|
ctx.typert.contexts.registerClient('agent', {
|
||||||
|
identity: candidate => sessions.scopeOf(candidate),
|
||||||
|
})
|
||||||
const sessionHistory = new SessionHistoryService(ctx, connection.api)
|
const sessionHistory = new SessionHistoryService(ctx, connection.api)
|
||||||
const workspaces = new WorkspacesService(ctx, connection.api, sessions)
|
const workspaces = new WorkspacesService(ctx, connection.api, sessions)
|
||||||
ctx.effect(
|
ctx.effect(
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import type { SessionProjectionMap } from '@deepseek-ai/dsh-session-projection/t
|
|||||||
import type { SnapshotStore } from '../contract/store.ts'
|
import type { SnapshotStore } from '../contract/store.ts'
|
||||||
import { createSnapshotStore } from '../contract/store.ts'
|
import { createSnapshotStore } from '../contract/store.ts'
|
||||||
import type { SessionFace } from '../contract/session.ts'
|
import type { SessionFace } from '../contract/session.ts'
|
||||||
import type { ISessions } from '../contract/sessions.ts'
|
import type { AgentContext, ISessions } from '../contract/sessions.ts'
|
||||||
import { createScope, scopeOf as scopeTagOf } from '../agents/scope.ts'
|
import { createScope, scopeOf as scopeTagOf } from '../agents/scope.ts'
|
||||||
import { SessionManager } from './manager.ts'
|
import { SessionManager } from './manager.ts'
|
||||||
import type { SessionListPhase, SessionSearchResultItem, SubagentCatalogSnapshot } from './manager.ts'
|
import type { SessionListPhase, SessionSearchResultItem, SubagentCatalogSnapshot } from './manager.ts'
|
||||||
@@ -127,7 +127,7 @@ export interface SessionBinding {
|
|||||||
readonly sessionId: SessionId
|
readonly sessionId: SessionId
|
||||||
/** The outward session face only — feature code never sees the concrete class. */
|
/** The outward session face only — feature code never sees the concrete class. */
|
||||||
readonly session: SessionFace
|
readonly session: SessionFace
|
||||||
readonly ctx: Context
|
readonly ctx: AgentContext
|
||||||
}
|
}
|
||||||
|
|
||||||
// Scope primitives live in ../agents/scope.ts (the client mirror of host
|
// Scope primitives live in ../agents/scope.ts (the client mirror of host
|
||||||
@@ -182,7 +182,7 @@ function increasedForkTitle(title: string): string {
|
|||||||
|
|
||||||
interface ScopeRecord {
|
interface ScopeRecord {
|
||||||
fiber: Fiber
|
fiber: Fiber
|
||||||
ctx: Context
|
ctx: AgentContext
|
||||||
binding: SessionBinding
|
binding: SessionBinding
|
||||||
/** The concrete Session for runtime-internal entry points (staging open()); the binding carries only the outward face. */
|
/** The concrete Session for runtime-internal entry points (staging open()); the binding carries only the outward face. */
|
||||||
session: Session
|
session: Session
|
||||||
@@ -483,7 +483,7 @@ export class SessionsService implements ISessions {
|
|||||||
* @param id - session id (the agent identity — 1:1 same axis).
|
* @param id - session id (the agent identity — 1:1 same axis).
|
||||||
* @returns scoped ctx, or undefined for a session neither listed nor already scoped.
|
* @returns scoped ctx, or undefined for a session neither listed nor already scoped.
|
||||||
*/
|
*/
|
||||||
scope(id: SessionId): Context | undefined {
|
scope(id: SessionId): AgentContext | undefined {
|
||||||
return this.resolve(id)?.ctx
|
return this.resolve(id)?.ctx
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import { describe, expect, it } from 'vitest'
|
|||||||
import type { ConnectionHandle } from '@deepseek-ai/dsh-client-connection/client'
|
import type { ConnectionHandle } from '@deepseek-ai/dsh-client-connection/client'
|
||||||
import type { ConnectionSinks } from '@deepseek-ai/dsh-client-connection/client'
|
import type { ConnectionSinks } from '@deepseek-ai/dsh-client-connection/client'
|
||||||
import { SESSION_SEARCH_RESULT_LIMIT } from '@deepseek-ai/dsh-host-apiproxy/api'
|
import { SESSION_SEARCH_RESULT_LIMIT } from '@deepseek-ai/dsh-host-apiproxy/api'
|
||||||
|
import TypertRegistry from '@deepseek-ai/dsh-typert-registry'
|
||||||
import * as RuntimeClient from '../src/client/index.ts'
|
import * as RuntimeClient from '../src/client/index.ts'
|
||||||
import type { SessionsService } from '../src/client/sessions/service.ts'
|
import type { SessionsService } from '../src/client/sessions/service.ts'
|
||||||
import type { WorkspacesService } from '../src/client/workspaces/service.ts'
|
import type { WorkspacesService } from '../src/client/workspaces/service.ts'
|
||||||
@@ -22,6 +23,7 @@ interface Bench {
|
|||||||
|
|
||||||
async function mount(): Promise<Bench> {
|
async function mount(): Promise<Bench> {
|
||||||
const ctx = new Context()
|
const ctx = new Context()
|
||||||
|
await ctx.plugin(TypertRegistry)
|
||||||
const api = new FakeApiClient()
|
const api = new FakeApiClient()
|
||||||
const bench: Bench = { ctx, api, sinks: undefined, stopped: 0 }
|
const bench: Bench = { ctx, api, sinks: undefined, stopped: 0 }
|
||||||
const handle: ConnectionHandle = {
|
const handle: ConnectionHandle = {
|
||||||
@@ -36,6 +38,7 @@ async function mount(): Promise<Bench> {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
ctx.reflect.provide('connection', handle)
|
ctx.reflect.provide('connection', handle)
|
||||||
|
ctx.reflect.provide('api', {})
|
||||||
await ctx.plugin(RuntimeClient).await()
|
await ctx.plugin(RuntimeClient).await()
|
||||||
return bench
|
return bench
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,9 @@
|
|||||||
{
|
{
|
||||||
"path": "../connection"
|
"path": "../connection"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "../remotes"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "../../host/apiproxy"
|
"path": "../../host/apiproxy"
|
||||||
},
|
},
|
||||||
@@ -43,6 +46,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "../../support/invariants"
|
"path": "../../support/invariants"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../typert/type-meta"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "../../typert/registry"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"exclude": [
|
"exclude": [
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import type { Context } from 'cordis'
|
|||||||
import { createScope, scopeOf, SessionProvideChannel } from '@deepseek-ai/dsh-client-runtime/client'
|
import { createScope, scopeOf, SessionProvideChannel } from '@deepseek-ai/dsh-client-runtime/client'
|
||||||
import { createSnapshotStore } from '@deepseek-ai/dsh-client-runtime/client'
|
import { createSnapshotStore } from '@deepseek-ai/dsh-client-runtime/client'
|
||||||
import type {
|
import type {
|
||||||
ConversationSnapshot, ISessions, ObservableSnapshot, ProjectionsFace, SessionFace, SessionId,
|
AgentContext, ConversationSnapshot, ISessions, ObservableSnapshot, ProjectionsFace, SessionFace, SessionId,
|
||||||
SessionListState, SessionProvideDescriptor, SessionSearchResultItem, SessionSummary, SnapshotStore,
|
SessionListState, SessionProvideDescriptor, SessionSearchResultItem, SessionSummary, SnapshotStore,
|
||||||
SubagentAddress,
|
SubagentAddress,
|
||||||
} from '@deepseek-ai/dsh-client-runtime/client'
|
} from '@deepseek-ai/dsh-client-runtime/client'
|
||||||
@@ -134,7 +134,7 @@ interface SessionRecord {
|
|||||||
summary: SessionSummary
|
summary: SessionSummary
|
||||||
snapshot: SnapshotStore<ConversationSnapshot>
|
snapshot: SnapshotStore<ConversationSnapshot>
|
||||||
session: FixtureSession
|
session: FixtureSession
|
||||||
scope: Context | undefined
|
scope: AgentContext | undefined
|
||||||
scopeFiber: { dispose(): Promise<void> } | undefined
|
scopeFiber: { dispose(): Promise<void> } | undefined
|
||||||
/** Materialized standard-props bundle (identity-stable per session; invalidated on roster change). */
|
/** Materialized standard-props bundle (identity-stable per session; invalidated on roster change). */
|
||||||
provideInfo: SessionProvideInfo | undefined
|
provideInfo: SessionProvideInfo | undefined
|
||||||
@@ -144,7 +144,7 @@ interface SessionRecord {
|
|||||||
export interface TestSessionBinding {
|
export interface TestSessionBinding {
|
||||||
readonly sessionId: SessionId
|
readonly sessionId: SessionId
|
||||||
readonly session: FixtureSession
|
readonly session: FixtureSession
|
||||||
readonly ctx: Context
|
readonly ctx: AgentContext
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -345,7 +345,7 @@ export class TestSessions implements ISessions {
|
|||||||
* @param id - session id.
|
* @param id - session id.
|
||||||
* @returns the scoped context, or undefined for unknown sessions.
|
* @returns the scoped context, or undefined for unknown sessions.
|
||||||
*/
|
*/
|
||||||
scope(id: string): Context | undefined {
|
scope(id: string): AgentContext | undefined {
|
||||||
const record = this.records.get(id as SessionId)
|
const record = this.records.get(id as SessionId)
|
||||||
if (record === undefined) return undefined
|
if (record === undefined) return undefined
|
||||||
if (record.scope === undefined) {
|
if (record.scope === undefined) {
|
||||||
|
|||||||
@@ -382,6 +382,30 @@ export const SERVICE_API: readonly ServiceApiEntry[] = [
|
|||||||
signature: 'clear(agent: Agent, ref: GoalRef): GoalRef',
|
signature: 'clear(agent: Agent, ref: GoalRef): GoalRef',
|
||||||
jsDoc: '/**\n * Clear the current goal while retaining a durable tombstone and history.\n * @param agent - owning live agent.\n * @param ref - expected current revision.\n * @returns the tombstone ref whose revision is one past the cleared snapshot.\n */',
|
jsDoc: '/**\n * Clear the current goal while retaining a durable tombstone and history.\n * @param agent - owning live agent.\n * @param ref - expected current revision.\n * @returns the tombstone ref whose revision is one past the cleared snapshot.\n */',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'create\') remoteExportCreate(agent: Agent, request: CreateGoalRequest): CreateGoalResult',
|
||||||
|
jsDoc: '/**\n * Create one Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param request - objective and optional round cap.\n * @returns the created Goal identity.\n */',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'edit\') remoteExportEdit(agent: Agent, ref: GoalRef, request: EditGoalRequest): GoalView',
|
||||||
|
jsDoc: '/**\n * Edit one Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param ref - expected current revision.\n * @param request - replacement fields.\n * @returns the edited Goal view.\n */',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'pause\') remoteExportPause(agent: Agent, ref: GoalRef): GoalView',
|
||||||
|
jsDoc: '/**\n * Pause one Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param ref - expected current revision.\n * @returns the paused Goal view.\n */',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'resume\') remoteExportResume(agent: Agent, ref: GoalRef): GoalView',
|
||||||
|
jsDoc: '/**\n * Resume one Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param ref - expected current revision.\n * @returns the resumed Goal view.\n */',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'complete\') remoteExportComplete(agent: Agent, ref: GoalRef): GoalView',
|
||||||
|
jsDoc: '/**\n * Complete one Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param ref - expected current revision.\n * @returns the completed Goal view.\n */',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
signature: '@Remote(\'clear\') remoteExportClear(agent: Agent, ref: GoalRef): GoalRef',
|
||||||
|
jsDoc: '/**\n * Clear one terminal Goal through the remote boundary.\n * @param agent - exact live Agent resolved from the wire identity.\n * @param ref - expected current revision.\n * @returns the committed clear revision.\n */',
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -1859,6 +1883,10 @@ export const TYPE_API: readonly TypeApiEntry[] = [
|
|||||||
name: 'CreateGoalRequest',
|
name: 'CreateGoalRequest',
|
||||||
declaration: 'export interface CreateGoalRequest {\n readonly objective: string;\n readonly maxGoalRounds?: number;\n}',
|
declaration: 'export interface CreateGoalRequest {\n readonly objective: string;\n readonly maxGoalRounds?: number;\n}',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'CreateGoalResult',
|
||||||
|
declaration: 'export interface CreateGoalResult {\n readonly ref: GoalRef;\n}',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: 'CreateSessionOptions',
|
name: 'CreateSessionOptions',
|
||||||
declaration: 'export interface CreateSessionOptions {\n readonly seed?: readonly SessionEvent[];\n readonly meta?: {\n readonly cwd?: string;\n readonly parentSession?: SessionId;\n readonly createdAt?: number;\n readonly seedLength?: number;\n readonly origin?: \'subagent\';\n readonly delegationDepth?: number;\n };\n}',
|
declaration: 'export interface CreateSessionOptions {\n readonly seed?: readonly SessionEvent[];\n readonly meta?: {\n readonly cwd?: string;\n readonly parentSession?: SessionId;\n readonly createdAt?: number;\n readonly seedLength?: number;\n readonly origin?: \'subagent\';\n readonly delegationDepth?: number;\n };\n}',
|
||||||
|
|||||||
@@ -23,6 +23,14 @@
|
|||||||
"types": "./lib/types/client.d.ts",
|
"types": "./lib/types/client.d.ts",
|
||||||
"default": "./lib/types/client.js"
|
"default": "./lib/types/client.js"
|
||||||
},
|
},
|
||||||
|
"./typert": {
|
||||||
|
"types": "./lib/typert.host.d.ts",
|
||||||
|
"default": "./lib/typert.host.js"
|
||||||
|
},
|
||||||
|
"./remote": {
|
||||||
|
"types": "./lib/typert.remote-client.d.ts",
|
||||||
|
"default": "./lib/typert.remote-client.js"
|
||||||
|
},
|
||||||
"./src/*": "./src/*",
|
"./src/*": "./src/*",
|
||||||
"./package.json": "./package.json"
|
"./package.json": "./package.json"
|
||||||
},
|
},
|
||||||
@@ -30,7 +38,13 @@
|
|||||||
"lib/index.js",
|
"lib/index.js",
|
||||||
"lib/invariant.js",
|
"lib/invariant.js",
|
||||||
"lib/types/**/*.js",
|
"lib/types/**/*.js",
|
||||||
"lib/types/**/*.d.ts"
|
"lib/types/**/*.d.ts",
|
||||||
|
"lib/typert.host.js",
|
||||||
|
"lib/typert.host.d.ts",
|
||||||
|
"lib/typert.remote-client.js",
|
||||||
|
"lib/typert.remote-client.d.ts",
|
||||||
|
"lib/typert.remote-client.d.ts.map",
|
||||||
|
"src"
|
||||||
],
|
],
|
||||||
"license": "BSD-3-Clause",
|
"license": "BSD-3-Clause",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
@@ -41,6 +55,7 @@
|
|||||||
"@deepseek-ai/dsh-llm": "^0.0.1",
|
"@deepseek-ai/dsh-llm": "^0.0.1",
|
||||||
"@deepseek-ai/dsh-scope": "^0.0.1",
|
"@deepseek-ai/dsh-scope": "^0.0.1",
|
||||||
"@deepseek-ai/dsh-session": "^0.0.1",
|
"@deepseek-ai/dsh-session": "^0.0.1",
|
||||||
|
"@deepseek-ai/dsh-type-meta": "^0.0.1",
|
||||||
"cordis": "^4.0.0-rc.7"
|
"cordis": "^4.0.0-rc.7"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -56,6 +71,7 @@
|
|||||||
"@deepseek-ai/dsh-loader-smoke": "workspace:^",
|
"@deepseek-ai/dsh-loader-smoke": "workspace:^",
|
||||||
"@deepseek-ai/dsh-scope": "workspace:^",
|
"@deepseek-ai/dsh-scope": "workspace:^",
|
||||||
"@deepseek-ai/dsh-session": "workspace:^",
|
"@deepseek-ai/dsh-session": "workspace:^",
|
||||||
|
"@deepseek-ai/dsh-type-meta": "workspace:^",
|
||||||
"cordis": "^4.0.0-rc.7"
|
"cordis": "^4.0.0-rc.7"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -12,6 +12,7 @@ import type { ZodType } from 'zod'
|
|||||||
import { agentEvents } from '@deepseek-ai/dsh-agent'
|
import { agentEvents } from '@deepseek-ai/dsh-agent'
|
||||||
import type { Agent } from '@deepseek-ai/dsh-agent'
|
import type { Agent } from '@deepseek-ai/dsh-agent'
|
||||||
import type { Session, SessionEvent } from '@deepseek-ai/dsh-session'
|
import type { Session, SessionEvent } from '@deepseek-ai/dsh-session'
|
||||||
|
import { Remote, bindTypeRTGateway } from '@deepseek-ai/dsh-type-meta'
|
||||||
// Type-only: resolves ctx.sessionProjections for the optional unit child.
|
// Type-only: resolves ctx.sessionProjections for the optional unit child.
|
||||||
import type {} from '@deepseek-ai/dsh-session-projection'
|
import type {} from '@deepseek-ai/dsh-session-projection'
|
||||||
import {
|
import {
|
||||||
@@ -189,6 +190,9 @@ export class GoalService extends Service {
|
|||||||
private readonly resolved: ResolvedConfig
|
private readonly resolved: ResolvedConfig
|
||||||
private readonly caches = new WeakMap<Session, GoalCache>()
|
private readonly caches = new WeakMap<Session, GoalCache>()
|
||||||
|
|
||||||
|
/** Explicit participation in the TypeRT Gateway under the Cordis service key. */
|
||||||
|
readonly typertGateway = bindTypeRTGateway(this, 'goals')
|
||||||
|
|
||||||
constructor(ctx: Context, config: Config = {}) {
|
constructor(ctx: Context, config: Config = {}) {
|
||||||
super(ctx, 'goals')
|
super(ctx, 'goals')
|
||||||
this.resolved = {
|
this.resolved = {
|
||||||
@@ -576,6 +580,7 @@ export class GoalService extends Service {
|
|||||||
* @param request - objective and optional round cap.
|
* @param request - objective and optional round cap.
|
||||||
* @returns the created Goal identity.
|
* @returns the created Goal identity.
|
||||||
*/
|
*/
|
||||||
|
@Remote('create')
|
||||||
remoteExportCreate(agent: Agent, request: CreateGoalRequest): CreateGoalResult {
|
remoteExportCreate(agent: Agent, request: CreateGoalRequest): CreateGoalResult {
|
||||||
const view = this.create(agent, request)
|
const view = this.create(agent, request)
|
||||||
return { ref: { id: view.id, revision: view.revision } }
|
return { ref: { id: view.id, revision: view.revision } }
|
||||||
@@ -588,6 +593,7 @@ export class GoalService extends Service {
|
|||||||
* @param request - replacement fields.
|
* @param request - replacement fields.
|
||||||
* @returns the edited Goal view.
|
* @returns the edited Goal view.
|
||||||
*/
|
*/
|
||||||
|
@Remote('edit')
|
||||||
remoteExportEdit(agent: Agent, ref: GoalRef, request: EditGoalRequest): GoalView {
|
remoteExportEdit(agent: Agent, ref: GoalRef, request: EditGoalRequest): GoalView {
|
||||||
return this.edit(agent, ref, request)
|
return this.edit(agent, ref, request)
|
||||||
}
|
}
|
||||||
@@ -598,6 +604,7 @@ export class GoalService extends Service {
|
|||||||
* @param ref - expected current revision.
|
* @param ref - expected current revision.
|
||||||
* @returns the paused Goal view.
|
* @returns the paused Goal view.
|
||||||
*/
|
*/
|
||||||
|
@Remote('pause')
|
||||||
remoteExportPause(agent: Agent, ref: GoalRef): GoalView {
|
remoteExportPause(agent: Agent, ref: GoalRef): GoalView {
|
||||||
return this.pause(agent, ref)
|
return this.pause(agent, ref)
|
||||||
}
|
}
|
||||||
@@ -608,6 +615,7 @@ export class GoalService extends Service {
|
|||||||
* @param ref - expected current revision.
|
* @param ref - expected current revision.
|
||||||
* @returns the resumed Goal view.
|
* @returns the resumed Goal view.
|
||||||
*/
|
*/
|
||||||
|
@Remote('resume')
|
||||||
remoteExportResume(agent: Agent, ref: GoalRef): GoalView {
|
remoteExportResume(agent: Agent, ref: GoalRef): GoalView {
|
||||||
return this.resume(agent, ref)
|
return this.resume(agent, ref)
|
||||||
}
|
}
|
||||||
@@ -618,6 +626,7 @@ export class GoalService extends Service {
|
|||||||
* @param ref - expected current revision.
|
* @param ref - expected current revision.
|
||||||
* @returns the completed Goal view.
|
* @returns the completed Goal view.
|
||||||
*/
|
*/
|
||||||
|
@Remote('complete')
|
||||||
remoteExportComplete(agent: Agent, ref: GoalRef): GoalView {
|
remoteExportComplete(agent: Agent, ref: GoalRef): GoalView {
|
||||||
return this.complete(agent, ref)
|
return this.complete(agent, ref)
|
||||||
}
|
}
|
||||||
@@ -628,6 +637,7 @@ export class GoalService extends Service {
|
|||||||
* @param ref - expected current revision.
|
* @param ref - expected current revision.
|
||||||
* @returns the committed clear revision.
|
* @returns the committed clear revision.
|
||||||
*/
|
*/
|
||||||
|
@Remote('clear')
|
||||||
remoteExportClear(agent: Agent, ref: GoalRef): GoalRef {
|
remoteExportClear(agent: Agent, ref: GoalRef): GoalRef {
|
||||||
return this.clear(agent, ref)
|
return this.clear(agent, ref)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,6 +35,9 @@
|
|||||||
{
|
{
|
||||||
"path": "../../session-projection/session-projection"
|
"path": "../../session-projection/session-projection"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "../../typert/type-meta"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "../../support/invariants"
|
"path": "../../support/invariants"
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+30
@@ -1131,6 +1131,9 @@ importers:
|
|||||||
'@deepseek-ai/dsh-client-modules':
|
'@deepseek-ai/dsh-client-modules':
|
||||||
specifier: workspace:^
|
specifier: workspace:^
|
||||||
version: link:../../client/modules
|
version: link:../../client/modules
|
||||||
|
'@deepseek-ai/dsh-client-remotes':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../client/remotes
|
||||||
'@deepseek-ai/dsh-client-runtime':
|
'@deepseek-ai/dsh-client-runtime':
|
||||||
specifier: workspace:^
|
specifier: workspace:^
|
||||||
version: link:../../client/runtime
|
version: link:../../client/runtime
|
||||||
@@ -1345,6 +1348,21 @@ importers:
|
|||||||
specifier: ^4.0.0-rc.7
|
specifier: ^4.0.0-rc.7
|
||||||
version: link:../../../vendor/cordis
|
version: link:../../../vendor/cordis
|
||||||
|
|
||||||
|
packages/client/remotes:
|
||||||
|
devDependencies:
|
||||||
|
'@deepseek-ai/dsh-goal':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../goal/goal
|
||||||
|
'@deepseek-ai/dsh-host-api-gateway':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../host/api-gateway
|
||||||
|
'@deepseek-ai/dsh-invariants':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../support/invariants
|
||||||
|
cordis:
|
||||||
|
specifier: ^4.0.0-rc.7
|
||||||
|
version: link:../../../vendor/cordis
|
||||||
|
|
||||||
packages/client/runtime:
|
packages/client/runtime:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@deepseek-ai/dsh-client-connection':
|
'@deepseek-ai/dsh-client-connection':
|
||||||
@@ -1387,12 +1405,21 @@ importers:
|
|||||||
specifier: ~4.4.7
|
specifier: ~4.4.7
|
||||||
version: 4.4.7(@types/react@18.3.31)(immer@10.2.0)(react@18.3.1)
|
version: 4.4.7(@types/react@18.3.31)(immer@10.2.0)(react@18.3.1)
|
||||||
devDependencies:
|
devDependencies:
|
||||||
|
'@deepseek-ai/dsh-client-remotes':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../remotes
|
||||||
'@deepseek-ai/dsh-invariants':
|
'@deepseek-ai/dsh-invariants':
|
||||||
specifier: workspace:^
|
specifier: workspace:^
|
||||||
version: link:../../support/invariants
|
version: link:../../support/invariants
|
||||||
'@deepseek-ai/dsh-timeout':
|
'@deepseek-ai/dsh-timeout':
|
||||||
specifier: workspace:^
|
specifier: workspace:^
|
||||||
version: link:../../util/timeout
|
version: link:../../util/timeout
|
||||||
|
'@deepseek-ai/dsh-type-meta':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../typert/type-meta
|
||||||
|
'@deepseek-ai/dsh-typert-registry':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../typert/registry
|
||||||
'@types/react':
|
'@types/react':
|
||||||
specifier: ~18.3.1
|
specifier: ~18.3.1
|
||||||
version: 18.3.31
|
version: 18.3.31
|
||||||
@@ -3509,6 +3536,9 @@ importers:
|
|||||||
'@deepseek-ai/dsh-session-projection':
|
'@deepseek-ai/dsh-session-projection':
|
||||||
specifier: workspace:^
|
specifier: workspace:^
|
||||||
version: link:../../session-projection/session-projection
|
version: link:../../session-projection/session-projection
|
||||||
|
'@deepseek-ai/dsh-type-meta':
|
||||||
|
specifier: workspace:^
|
||||||
|
version: link:../../typert/type-meta
|
||||||
cordis:
|
cordis:
|
||||||
specifier: ^4.0.0-rc.7
|
specifier: ^4.0.0-rc.7
|
||||||
version: link:../../../vendor/cordis
|
version: link:../../../vendor/cordis
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ export const LINK_MAP: Readonly<Record<string, string>> = {
|
|||||||
FsWriteIntent: 'filesystem.md',
|
FsWriteIntent: 'filesystem.md',
|
||||||
FsWriteOutcome: 'filesystem.md',
|
FsWriteOutcome: 'filesystem.md',
|
||||||
CreateGoalRequest: 'goal.md',
|
CreateGoalRequest: 'goal.md',
|
||||||
|
CreateGoalResult: 'goal.md',
|
||||||
EditGoalRequest: 'goal.md',
|
EditGoalRequest: 'goal.md',
|
||||||
GoalBlockReason: 'goal.md',
|
GoalBlockReason: 'goal.md',
|
||||||
GoalChanged: 'goal.md',
|
GoalChanged: 'goal.md',
|
||||||
|
|||||||
@@ -199,7 +199,7 @@
|
|||||||
{
|
{
|
||||||
"doc": "docs/core-data-structures/goal.md",
|
"doc": "docs/core-data-structures/goal.md",
|
||||||
"symbol": "GoalView",
|
"symbol": "GoalView",
|
||||||
"source": "packages/goal/goal/src/domain.ts"
|
"source": "packages/goal/goal/src/types.ts"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"doc": "docs/core-data-structures/goal.md",
|
"doc": "docs/core-data-structures/goal.md",
|
||||||
@@ -219,12 +219,12 @@
|
|||||||
{
|
{
|
||||||
"doc": "docs/core-data-structures/goal.md",
|
"doc": "docs/core-data-structures/goal.md",
|
||||||
"symbol": "CreateGoalRequest",
|
"symbol": "CreateGoalRequest",
|
||||||
"source": "packages/goal/goal/src/domain.ts"
|
"source": "packages/goal/goal/src/types.ts"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"doc": "docs/core-data-structures/goal.md",
|
"doc": "docs/core-data-structures/goal.md",
|
||||||
"symbol": "EditGoalRequest",
|
"symbol": "EditGoalRequest",
|
||||||
"source": "packages/goal/goal/src/domain.ts"
|
"source": "packages/goal/goal/src/types.ts"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"doc": "docs/core-data-structures/goal.md",
|
"doc": "docs/core-data-structures/goal.md",
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ const SENTENCE_MODEL_EXPERIENCE: Readonly<Record<string, SentenceContract>> = {
|
|||||||
'packages/client/web-react': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
'packages/client/web-react': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
||||||
'packages/client/schema-form': { kind: 'none', reason: 'Browser-side form-rendering library; registers no model surface.' },
|
'packages/client/schema-form': { kind: 'none', reason: 'Browser-side form-rendering library; registers no model surface.' },
|
||||||
'packages/client/connection': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
'packages/client/connection': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
||||||
|
'packages/client/remotes': { kind: 'none', reason: 'Client-side Remote assembly; selected business methods own any model-visible effect.' },
|
||||||
'packages/client/runtime': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
'packages/client/runtime': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
||||||
'packages/client/ui-layout': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
'packages/client/ui-layout': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
||||||
'packages/client/ui-sidebar': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
'packages/client/ui-sidebar': { kind: 'none', reason: 'Browser-side UI plugin layer; registers no model surface.' },
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
{ "path": "./packages/client/connection" },
|
{ "path": "./packages/client/connection" },
|
||||||
{ "path": "./packages/typert/registry" },
|
{ "path": "./packages/typert/registry" },
|
||||||
{ "path": "./packages/host/api-gateway" },
|
{ "path": "./packages/host/api-gateway" },
|
||||||
|
{ "path": "./packages/client/remotes" },
|
||||||
{ "path": "./packages/client/runtime" },
|
{ "path": "./packages/client/runtime" },
|
||||||
{ "path": "./packages/client/test-runtime" },
|
{ "path": "./packages/client/test-runtime" },
|
||||||
{ "path": "./packages/client/ui-layout" },
|
{ "path": "./packages/client/ui-layout" },
|
||||||
|
|||||||
Reference in New Issue
Block a user