dsh-opencode-go 0.1.24 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/README.en.md +66 -12
  2. package/README.md +172 -79
  3. package/THIRD_PARTY_NOTICES.md +6 -2
  4. package/assets/icon.png +0 -0
  5. package/docs/advanced.en.md +32 -35
  6. package/docs/advanced.md +33 -35
  7. package/docs/assets/logo-dark.png +0 -0
  8. package/docs/assets/logo-light.png +0 -0
  9. package/docs/assets/usage-history-desktop.jpg +0 -0
  10. package/docs/assets/usage-history-mobile.jpg +0 -0
  11. package/docs/assets/usage-history-models.jpg +0 -0
  12. package/docs/development.md +61 -119
  13. package/docs/independent-package.md +4 -2
  14. package/docs/usage-analytics.en.md +57 -0
  15. package/docs/usage-analytics.md +57 -0
  16. package/docs/verification.md +51 -917
  17. package/lib/build-info.json +1 -1
  18. package/lib/client.js +3429 -2618
  19. package/lib/free-http-worker.js +32 -0
  20. package/lib/index.js +5135 -3746
  21. package/lib/types/accounts.d.ts +96 -31
  22. package/lib/types/adapter.d.ts +63 -51
  23. package/lib/types/analytics.d.ts +35 -0
  24. package/lib/types/catalog.d.ts +109 -44
  25. package/lib/types/client/AnalyticsDialog.d.ts +18 -0
  26. package/lib/types/client/Section.d.ts +41 -7
  27. package/lib/types/client/UsagePill.d.ts +15 -6
  28. package/lib/types/client/controller.d.ts +178 -0
  29. package/lib/types/client/dashboard-copy.d.ts +58 -0
  30. package/lib/types/client/index.d.ts +18 -12
  31. package/lib/types/client/{locales.d.ts → presentation.d.ts} +97 -9
  32. package/lib/types/config.d.ts +14 -15
  33. package/lib/types/contracts.d.ts +338 -0
  34. package/lib/types/conversion.d.ts +155 -0
  35. package/lib/types/free-channel.d.ts +21 -0
  36. package/lib/types/free-http-worker.d.ts +1 -0
  37. package/lib/types/free-policy.d.ts +4 -0
  38. package/lib/types/free-protocol.d.ts +16 -0
  39. package/lib/types/free-runtime.d.ts +2 -0
  40. package/lib/types/free-socks-tunnel.d.ts +4 -0
  41. package/lib/types/free-transport.d.ts +19 -0
  42. package/lib/types/index.d.ts +8 -40
  43. package/lib/types/pricing.d.ts +29 -0
  44. package/lib/types/sdk-types.d.ts +1540 -2902
  45. package/lib/types/transport.d.ts +71 -0
  46. package/lib/vendor-licenses.txt +55 -31
  47. package/package.json +77 -78
  48. package/docs/assets/usage-panel.png +0 -0
  49. package/docs/fork-review-2026-09-25.md +0 -191
  50. package/docs/native-call-comparison-v020-rc2.md +0 -116
  51. package/lib/types/account-manager.d.ts +0 -25
  52. package/lib/types/account-operations.d.ts +0 -31
  53. package/lib/types/account-policy.d.ts +0 -16
  54. package/lib/types/account-recovery.d.ts +0 -2
  55. package/lib/types/account-selection.d.ts +0 -30
  56. package/lib/types/account-service.d.ts +0 -12
  57. package/lib/types/accounts-contract.d.ts +0 -38
  58. package/lib/types/call-trace.d.ts +0 -54
  59. package/lib/types/catalog-manager.d.ts +0 -20
  60. package/lib/types/client/AccountsCard.d.ts +0 -19
  61. package/lib/types/client/ModelEditor.d.ts +0 -20
  62. package/lib/types/client/accounts-controller.d.ts +0 -71
  63. package/lib/types/client/hint-mark.d.ts +0 -17
  64. package/lib/types/client/host-compat.d.ts +0 -7
  65. package/lib/types/client/host-primitives.d.ts +0 -11
  66. package/lib/types/client/section-controller.d.ts +0 -202
  67. package/lib/types/client/settings.d.ts +0 -18
  68. package/lib/types/client/staged-form.d.ts +0 -201
  69. package/lib/types/client/usage.d.ts +0 -4
  70. package/lib/types/config-contract.d.ts +0 -70
  71. package/lib/types/conversion/config.d.ts +0 -4
  72. package/lib/types/conversion/context.d.ts +0 -56
  73. package/lib/types/conversion/image-offload.d.ts +0 -13
  74. package/lib/types/conversion/image-pool.d.ts +0 -24
  75. package/lib/types/conversion/index.d.ts +0 -5
  76. package/lib/types/conversion/replay.d.ts +0 -66
  77. package/lib/types/conversion/stream.d.ts +0 -44
  78. package/lib/types/gateway-diagnostics.d.ts +0 -23
  79. package/lib/types/gateway-error.d.ts +0 -2
  80. package/lib/types/gateway-url.d.ts +0 -6
  81. package/lib/types/google-fetch.d.ts +0 -6
  82. package/lib/types/host-settings.d.ts +0 -11
  83. package/lib/types/json-response.d.ts +0 -14
  84. package/lib/types/metadata-cache.d.ts +0 -12
  85. package/lib/types/model-metadata.d.ts +0 -21
  86. package/lib/types/models-contract.d.ts +0 -66
  87. package/lib/types/models.d.ts +0 -13
  88. package/lib/types/protocol-contract.d.ts +0 -5
  89. package/lib/types/protocol-policy.d.ts +0 -4
  90. package/lib/types/provider-identity.d.ts +0 -4
  91. package/lib/types/proxy-url.d.ts +0 -2
  92. package/lib/types/proxy.d.ts +0 -11
  93. package/lib/types/reasoning.d.ts +0 -40
  94. package/lib/types/remote-contract.d.ts +0 -3
  95. package/lib/types/remotes.d.ts +0 -3
  96. package/lib/types/request-budget.d.ts +0 -12
  97. package/lib/types/request-control.d.ts +0 -2
  98. package/lib/types/settings-bridge.d.ts +0 -22
  99. package/lib/types/usage-contract.d.ts +0 -35
  100. package/lib/types/usage-display.d.ts +0 -4
  101. package/lib/types/usage.d.ts +0 -27
  102. /package/lib/types/{google-generative-ai.d.ts → google.d.ts} +0 -0
@@ -0,0 +1,71 @@
1
+ /** Cancel a wait even when an external service does not observe its signal. */
2
+ export declare function waitWithSignal<T>(work: () => PromiseLike<T>, signal?: AbortSignal): Promise<T>;
3
+ /** Per-mount transport. Fetch closures retain their address across settings changes. */
4
+ export declare class ProxyTransport {
5
+ private current;
6
+ private readonly retired;
7
+ private disposed;
8
+ forProxy(raw?: string): typeof globalThis.fetch | undefined;
9
+ /** Close replaced pools after their in-flight response bodies have finished. */
10
+ private retire;
11
+ /** Unloading the mount cancels remaining requests and releases every pool. */
12
+ dispose(): Promise<void>;
13
+ }
14
+ /** Describe transport failures without echoing credentials or upstream response text. */
15
+ export declare function transportFailure(error: unknown): string;
16
+ /** Keep the endpoint useful in diagnostics without user information or query secrets. */
17
+ export declare function diagnosticURL(raw: string): string;
18
+ /** The caller's signal covers both attempts, the retry delay, and all response reads. */
19
+ export declare function fetchJsonResponse(url: string, init: RequestInit, maxBytes: number, encoding?: 'identity' | 'gzip', fetcher?: typeof globalThis.fetch, readError?: (response: Response) => Promise<unknown>): Promise<{
20
+ response: Response;
21
+ body: unknown;
22
+ }>;
23
+ /** Fetch normally decodes HTTP; only negotiated gzip may recover a raw gzip body (#7). */
24
+ export declare function readJsonResponse(response: Response, maxBytes: number, options?: {
25
+ gzip?: boolean;
26
+ signal?: AbortSignal | null;
27
+ }): Promise<unknown>;
28
+ interface GatewayContextBudget {
29
+ contextWindow?: number;
30
+ maxTokens?: number;
31
+ estimatedContextTokens?: number;
32
+ }
33
+ /** Gateway status codes cover several domains; model permissions do not reject a key. */
34
+ export declare function classifyGatewayError(status: number, body: string, fallback: string, budget?: GatewayContextBudget): string;
35
+ export declare class GatewayDiagnostics {
36
+ private readonly options;
37
+ private retryAt;
38
+ private transportFailed;
39
+ private evidence;
40
+ private code;
41
+ private readonly secrets;
42
+ constructor(options: GatewayContextBudget & {
43
+ provider: string;
44
+ model: string;
45
+ apiKey: string;
46
+ proxyURL?: string;
47
+ fetch?: typeof globalThis.fetch;
48
+ free?: boolean;
49
+ });
50
+ private redact;
51
+ readonly fetch: typeof globalThis.fetch;
52
+ failureCode(fallback: string): Promise<string>;
53
+ /** Upstream deadline consumed by passive Free backoff. */
54
+ retryDeadline(): number | undefined;
55
+ failureMessage(original: string): Promise<string>;
56
+ }
57
+ interface UsageErrorOptions {
58
+ apiKey: string;
59
+ baseURL: string;
60
+ proxyURL: string;
61
+ signal: AbortSignal;
62
+ }
63
+ /** Read only diagnostic text; a slow/broken error body cannot hide its HTTP status. */
64
+ export declare function readUsageError(response: Response, options: UsageErrorOptions): Promise<string | undefined>;
65
+ export declare function withGoogleFetch<T>(options: {
66
+ fetch?: typeof globalThis.fetch;
67
+ headers?: Record<string, string | null>;
68
+ } | undefined, request: () => T): T;
69
+ /** The pinned Google SDK's HTTP call uses this binding in builds and tests. */
70
+ export declare const googleFetch: typeof globalThis.fetch;
71
+ export {};
@@ -1,4 +1,56 @@
1
- @earendil-works/pi-telemetry@1.2.0
1
+ @earendil-works/pi-schema@1.5.0
2
+
3
+ MIT License
4
+
5
+ Copyright (c) 2025 Mario Zechner
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in all
15
+ copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ SOFTWARE.
24
+
25
+ Includes code adapted from TypeBox 1.3.27 (MIT):
26
+
27
+ TypeBox
28
+
29
+ The MIT License (MIT)
30
+
31
+ Copyright (c) 2017-2026 Haydn Paterson
32
+
33
+ Permission is hereby granted, free of charge, to any person obtaining a copy
34
+ of this software and associated documentation files (the "Software"), to deal
35
+ in the Software without restriction, including without limitation the rights
36
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
37
+ copies of the Software, and to permit persons to whom the Software is
38
+ furnished to do so, subject to the following conditions:
39
+
40
+ The above copyright notice and this permission notice shall be included in
41
+ all copies or substantial portions of the Software.
42
+
43
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
44
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
45
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
46
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
47
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
48
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
49
+ THE SOFTWARE.
50
+
51
+ ---
52
+
53
+ @earendil-works/pi-telemetry@1.5.0
2
54
 
3
55
  MIT License
4
56
 
@@ -1664,7 +1716,7 @@ SOFTWARE.
1664
1716
 
1665
1717
  ---
1666
1718
 
1667
- @earendil-works/pi-ai@1.2.0
1719
+ @earendil-works/pi-ai@1.5.0
1668
1720
 
1669
1721
  MIT License
1670
1722
 
@@ -1690,34 +1742,6 @@ SOFTWARE.
1690
1742
 
1691
1743
  ---
1692
1744
 
1693
- typebox@1.3.27
1694
-
1695
- TypeBox
1696
-
1697
- The MIT License (MIT)
1698
-
1699
- Copyright (c) 2017-2026 Haydn Paterson
1700
-
1701
- Permission is hereby granted, free of charge, to any person obtaining a copy
1702
- of this software and associated documentation files (the "Software"), to deal
1703
- in the Software without restriction, including without limitation the rights
1704
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1705
- copies of the Software, and to permit persons to whom the Software is
1706
- furnished to do so, subject to the following conditions:
1707
-
1708
- The above copyright notice and this permission notice shall be included in
1709
- all copies or substantial portions of the Software.
1710
-
1711
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1712
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1713
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1714
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1715
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1716
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
1717
- THE SOFTWARE.
1718
-
1719
- ---
1720
-
1721
1745
  p-retry@4.6.2
1722
1746
 
1723
1747
  MIT License
@@ -1837,7 +1861,7 @@ SOFTWARE.
1837
1861
 
1838
1862
  ---
1839
1863
 
1840
- ws@8.22.0
1864
+ ws@8.22.1
1841
1865
 
1842
1866
  Copyright (c) 2011 Einar Otto Stangvik <einaros@gmail.com>
1843
1867
  Copyright (c) 2013 Arnout Kazemier and contributors
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "dsh-opencode-go",
3
- "version": "0.1.24",
3
+ "version": "0.2.1",
4
4
  "description": "OpenCode Go model provider and settings UI for DeepSeek Harness",
5
+ "icon": "assets/icon.png",
5
6
  "type": "module",
6
7
  "license": "MIT",
7
8
  "repository": {
@@ -14,7 +15,7 @@
14
15
  },
15
16
  "engines": {
16
17
  "node": "^22.19.0 || >=24.0.0",
17
- "dsh": ">=0.1.5-rc.1"
18
+ "dsh": ">=0.2.1-rc.5"
18
19
  },
19
20
  "main": "./lib/index.js",
20
21
  "types": "./lib/types/index.d.ts",
@@ -30,11 +31,11 @@
30
31
  "./package.json": "./package.json"
31
32
  },
32
33
  "files": [
34
+ "assets/icon.png",
33
35
  "lib",
34
36
  "cordis.patch.yml",
35
37
  "THIRD_PARTY_NOTICES.md",
36
38
  "docs",
37
- "!docs/multi-account-review-plan.md",
38
39
  "examples"
39
40
  ],
40
41
  "dsh": {
@@ -56,90 +57,84 @@
56
57
  "check:dist": "node scripts/build.mjs --check",
57
58
  "typecheck": "tsc -p tsconfig.host.json --noEmit && tsc -p tsconfig.client.json --noEmit",
58
59
  "test": "vitest run",
59
- "pretest": "npm run compile",
60
- "test:ci": "npm run check:dist && vitest run",
60
+ "test:ci": "npm run check:dist && npm test",
61
61
  "verify:installed": "node --expose-internals scripts/installed-smoke.mjs",
62
62
  "verify:headless": "node scripts/headless-smoke.mjs",
63
- "prepublishOnly": "npm run check:dist",
64
- "test:compat": "node scripts/test-compat.mjs",
65
- "test:install": "node scripts/test-install.mjs",
66
- "verify": "npm run test:ci && npm run test:compat && npm run test:install"
63
+ "verify": "npm run typecheck && npm run test:ci && npm run verify:installed"
67
64
  },
68
65
  "peerDependencies": {
69
- "@deepseek-ai/cordis": ">=4.0.2",
70
- "@deepseek-ai/dsh-api-gateway": ">=0.1.5-rc.1",
71
- "@deepseek-ai/dsh-api-remotes": ">=0.1.5-rc.1",
72
- "@deepseek-ai/dsh-api-settings-controller": ">=0.1.5-rc.1",
73
- "@deepseek-ai/dsh-attachment": ">=0.1.5-rc.1",
74
- "@deepseek-ai/dsh-client-locale": ">=0.1.5-rc.1",
75
- "@deepseek-ai/dsh-client-store": ">=0.1.5-rc.1",
76
- "@deepseek-ai/dsh-client-ui-conversation": ">=0.1.5-rc.1",
77
- "@deepseek-ai/dsh-client-ui-model-selection": ">=0.1.5-rc.1",
78
- "@deepseek-ai/dsh-client-ui-renderer": ">=0.1.5-rc.1",
79
- "@deepseek-ai/dsh-client-ui-settings": ">=0.1.5-rc.1",
80
- "@deepseek-ai/dsh-client-ui-slots": ">=0.1.5-rc.1",
81
- "@deepseek-ai/dsh-credentials": ">=0.1.5-rc.1",
82
- "@deepseek-ai/dsh-fs": ">=0.1.5-rc.1",
83
- "@deepseek-ai/dsh-launch-environment": ">=0.1.5-rc.1",
84
- "@deepseek-ai/dsh-llm": ">=0.1.5-rc.1",
85
- "@deepseek-ai/dsh-settings": ">=0.1.5-rc.1",
86
- "@deepseek-ai/dsh-timeout": ">=0.1.5-rc.1",
87
- "@deepseek-ai/dsh-typert-protocol": ">=0.1.5-rc.1",
88
- "@deepseek-ai/dsh-typert-registry": ">=0.1.5-rc.1"
66
+ "@deepseek-ai/cordis": "~4.0.5",
67
+ "@deepseek-ai/dsh-api-gateway": ">=0.2.1-rc.5",
68
+ "@deepseek-ai/dsh-api-remotes": ">=0.2.1-rc.5",
69
+ "@deepseek-ai/dsh-api-settings-controller": ">=0.2.1-rc.5",
70
+ "@deepseek-ai/dsh-attachment": ">=0.2.1-rc.5",
71
+ "@deepseek-ai/dsh-client-locale": ">=0.2.1-rc.5",
72
+ "@deepseek-ai/dsh-client-store": ">=0.2.1-rc.5",
73
+ "@deepseek-ai/dsh-client-ui-conversation": ">=0.2.1-rc.5",
74
+ "@deepseek-ai/dsh-client-ui-model-selection": ">=0.2.1-rc.5",
75
+ "@deepseek-ai/dsh-client-ui-renderer": ">=0.2.1-rc.5",
76
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.2.1-rc.5",
77
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.2.1-rc.5",
78
+ "@deepseek-ai/dsh-credentials": ">=0.2.1-rc.5",
79
+ "@deepseek-ai/dsh-fs": ">=0.2.1-rc.5",
80
+ "@deepseek-ai/dsh-launch-environment": ">=0.2.1-rc.5",
81
+ "@deepseek-ai/dsh-llm": ">=0.2.1-rc.5",
82
+ "@deepseek-ai/dsh-settings": ">=0.2.1-rc.5",
83
+ "@deepseek-ai/dsh-timeout": ">=0.2.1-rc.5",
84
+ "@deepseek-ai/dsh-typert-protocol": ">=0.2.1-rc.5",
85
+ "@deepseek-ai/dsh-typert-registry": ">=0.2.1-rc.5"
89
86
  },
90
87
  "dependencies": {
91
88
  "@anthropic-ai/sdk": "0.129.0",
92
- "@deepseek-ai/dsh-brand": "0.1.6-alpha.1",
93
- "@deepseek-ai/schemastery": "3.18.3",
89
+ "@deepseek-ai/dsh-brand": "0.2.1-rc.5",
90
+ "@deepseek-ai/schemastery": "3.18.5",
94
91
  "openai": "7.19.0",
95
92
  "undici": "7.30.0"
96
93
  },
97
94
  "devDependencies": {
98
- "@deepseek-ai/cordis": "4.0.2",
99
- "@deepseek-ai/cordis-plugin-include": "1.0.7",
100
- "@deepseek-ai/cordis-plugin-loader": "1.0.3",
101
- "@deepseek-ai/dsh-agent": "0.1.6-alpha.1",
102
- "@deepseek-ai/dsh-agent-presets": "0.1.6-alpha.1",
103
- "@deepseek-ai/dsh-api-gateway": "0.1.6-alpha.1",
104
- "@deepseek-ai/dsh-api-remotes": "0.1.6-alpha.1",
105
- "@deepseek-ai/dsh-api-settings-controller": "0.1.6-alpha.1",
106
- "@deepseek-ai/dsh-atomic-write": "0.1.6-alpha.1",
107
- "@deepseek-ai/dsh-attachment": "0.1.6-alpha.1",
108
- "@deepseek-ai/dsh-attachment-local": "0.1.6-alpha.1",
109
- "@deepseek-ai/dsh-brand": "0.1.6-alpha.1",
110
- "@deepseek-ai/dsh-client-locale": "0.1.6-alpha.1",
111
- "@deepseek-ai/dsh-client-store": "0.1.6-alpha.1",
112
- "@deepseek-ai/dsh-client-ui-conversation": "0.1.6-alpha.1",
113
- "@deepseek-ai/dsh-client-ui-model-selection": "0.1.6-alpha.1",
114
- "@deepseek-ai/dsh-client-ui-primitives": "0.1.6-alpha.1",
115
- "@deepseek-ai/dsh-client-ui-renderer": "0.1.6-alpha.1",
116
- "@deepseek-ai/dsh-client-ui-settings": "0.1.6-alpha.1",
117
- "@deepseek-ai/dsh-client-ui-slots": "0.1.6-alpha.1",
118
- "@deepseek-ai/dsh-credentials": "0.1.6-alpha.1",
119
- "@deepseek-ai/dsh-credentials-local": "0.1.6-alpha.1",
120
- "@deepseek-ai/dsh-deque": "0.1.6-alpha.1",
121
- "@deepseek-ai/dsh-fs": "0.1.6-alpha.1",
122
- "@deepseek-ai/dsh-home-paths": "0.1.6-alpha.1",
123
- "@deepseek-ai/dsh-invariants": "0.1.6-alpha.1",
124
- "@deepseek-ai/dsh-launch-environment": "0.1.6-alpha.1",
125
- "@deepseek-ai/dsh-llm": "0.1.6-alpha.1",
126
- "@deepseek-ai/dsh-native-command": "0.1.6-alpha.1",
127
- "@deepseek-ai/dsh-ptc-runtime": "0.1.6-alpha.1",
128
- "@deepseek-ai/dsh-sandbox": "0.1.6-alpha.1",
129
- "@deepseek-ai/dsh-sandbox-policy": "0.1.6-alpha.1",
130
- "@deepseek-ai/dsh-scope": "0.1.6-alpha.1",
131
- "@deepseek-ai/dsh-session": "0.1.6-alpha.1",
132
- "@deepseek-ai/dsh-session-projection": "0.1.6-alpha.1",
133
- "@deepseek-ai/dsh-settings": "0.1.6-alpha.1",
134
- "@deepseek-ai/dsh-settings-file": "0.1.6-alpha.1",
135
- "@deepseek-ai/dsh-system-prompt": "0.1.6-alpha.1",
136
- "@deepseek-ai/dsh-timeout": "0.1.6-alpha.1",
137
- "@deepseek-ai/dsh-tools": "0.1.6-alpha.1",
138
- "@deepseek-ai/dsh-typert-protocol": "0.1.6-alpha.1",
139
- "@deepseek-ai/dsh-typert-registry": "0.1.6-alpha.1",
140
- "@deepseek-ai/dsh-user-approval": "0.1.6-alpha.1",
141
- "@deepseek-ai/dsh-util-crypto": "0.1.6-alpha.1",
142
- "@deepseek-ai/dsh-util-values": "0.1.6-alpha.1",
95
+ "@deepseek-ai/cordis": "4.0.5",
96
+ "@deepseek-ai/cordis-plugin-include": "1.0.10",
97
+ "@deepseek-ai/cordis-plugin-loader": "1.0.6",
98
+ "@deepseek-ai/dsh-agent": "0.2.1-rc.5",
99
+ "@deepseek-ai/dsh-agent-preset-registry": "0.2.1-rc.5",
100
+ "@deepseek-ai/dsh-api-gateway": "0.2.1-rc.5",
101
+ "@deepseek-ai/dsh-api-remotes": "0.2.1-rc.5",
102
+ "@deepseek-ai/dsh-api-settings-controller": "0.2.1-rc.5",
103
+ "@deepseek-ai/dsh-atomic-write": "0.2.1-rc.5",
104
+ "@deepseek-ai/dsh-attachment": "0.2.1-rc.5",
105
+ "@deepseek-ai/dsh-client-locale": "0.2.1-rc.5",
106
+ "@deepseek-ai/dsh-client-store": "0.2.1-rc.5",
107
+ "@deepseek-ai/dsh-client-ui-conversation": "0.2.1-rc.5",
108
+ "@deepseek-ai/dsh-client-ui-model-selection": "0.2.1-rc.5",
109
+ "@deepseek-ai/dsh-client-ui-primitives": "0.2.1-rc.5",
110
+ "@deepseek-ai/dsh-client-ui-renderer": "0.2.1-rc.5",
111
+ "@deepseek-ai/dsh-client-ui-settings": "0.2.1-rc.5",
112
+ "@deepseek-ai/dsh-client-ui-slots": "0.2.1-rc.5",
113
+ "@deepseek-ai/dsh-credentials": "0.2.1-rc.5",
114
+ "@deepseek-ai/dsh-credentials-local": "0.2.1-rc.5",
115
+ "@deepseek-ai/dsh-deque": "0.2.1-rc.5",
116
+ "@deepseek-ai/dsh-fs": "0.2.1-rc.5",
117
+ "@deepseek-ai/dsh-home-paths": "0.2.1-rc.5",
118
+ "@deepseek-ai/dsh-launch-environment": "0.2.1-rc.5",
119
+ "@deepseek-ai/dsh-llm": "0.2.1-rc.5",
120
+ "@deepseek-ai/dsh-native-command": "0.2.1-rc.5",
121
+ "@deepseek-ai/dsh-ptc-runtime": "0.2.1-rc.5",
122
+ "@deepseek-ai/dsh-sandbox": "0.2.1-rc.5",
123
+ "@deepseek-ai/dsh-sandbox-policy": "0.2.1-rc.5",
124
+ "@deepseek-ai/dsh-scope": "0.2.1-rc.5",
125
+ "@deepseek-ai/dsh-session": "0.2.1-rc.5",
126
+ "@deepseek-ai/dsh-session-projection": "0.2.1-rc.5",
127
+ "@deepseek-ai/dsh-settings": "0.2.1-rc.5",
128
+ "@deepseek-ai/dsh-system-prompt": "0.2.1-rc.5",
129
+ "@deepseek-ai/dsh-timeout": "0.2.1-rc.5",
130
+ "@deepseek-ai/dsh-tools": "0.2.1-rc.5",
131
+ "@deepseek-ai/dsh-typert-protocol": "0.2.1-rc.5",
132
+ "@deepseek-ai/dsh-typert-registry": "0.2.1-rc.5",
133
+ "@deepseek-ai/dsh-user-approval": "0.2.1-rc.5",
134
+ "@deepseek-ai/dsh-util-code-language": "0.2.1-rc.5",
135
+ "@deepseek-ai/dsh-util-crypto": "0.2.1-rc.5",
136
+ "@deepseek-ai/dsh-util-values": "0.2.1-rc.5",
137
+ "@deepseek-ai/dsh-util-workspace-path": "0.2.1-rc.5",
143
138
  "@google/genai": "2.21.0",
144
139
  "@shikijs/langs": "^4.3.1",
145
140
  "@testing-library/dom": "^10.4.2",
@@ -169,13 +164,14 @@
169
164
  "micromark-util-sanitize-uri": "^2.0.1",
170
165
  "micromark-util-symbol": "^2.0.1",
171
166
  "micromark-util-types": "^2.0.2",
172
- "opencode-go-pi-ai": "npm:@earendil-works/pi-ai@1.2.0",
167
+ "opencode-go-pi-ai": "npm:@earendil-works/pi-ai@1.5.0",
173
168
  "react": "^18.2.0",
174
169
  "react-dom": "^18.2.0",
175
170
  "rollup": "^4.64.2",
176
171
  "rollup-plugin-dts": "^6.5.1",
177
172
  "semver": "7.8.5",
178
173
  "shiki": "^4.3.1",
174
+ "simple-icons": "16.31.0",
179
175
  "typescript": "6.0.3",
180
176
  "vitest": "^4.1.8",
181
177
  "zustand": "~4.4.7"
@@ -227,5 +223,8 @@
227
223
  "opencode-go",
228
224
  "llm",
229
225
  "cordis"
230
- ]
226
+ ],
227
+ "optionalDependencies": {
228
+ "bun": "1.4.4"
229
+ }
231
230
  }
Binary file