@operatingtag/dsh-unclesam 0.0.0-stage → 1.0.0

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 (67) hide show
  1. package/CHANGELOG.md +893 -0
  2. package/LICENSE +142 -0
  3. package/README.md +354 -2
  4. package/client.js +1099 -0
  5. package/cordis.patch.yml +48 -0
  6. package/icon.svg +17 -0
  7. package/index.js +1411 -0
  8. package/install.cmd +43 -0
  9. package/install.ps1 +311 -0
  10. package/lib/cdp.mjs +247 -0
  11. package/lib/engine.mjs +1412 -0
  12. package/lib/i18n.mjs +141 -0
  13. package/lib/prefs.mjs +101 -0
  14. package/lib/prompt.mjs +518 -0
  15. package/lib/savings.mjs +131 -0
  16. package/locale/ar.json +98 -0
  17. package/locale/az.json +98 -0
  18. package/locale/bg.json +98 -0
  19. package/locale/bn.json +98 -0
  20. package/locale/cs.json +98 -0
  21. package/locale/da.json +98 -0
  22. package/locale/de.json +98 -0
  23. package/locale/el.json +98 -0
  24. package/locale/en.json +98 -0
  25. package/locale/es.json +98 -0
  26. package/locale/fa.json +98 -0
  27. package/locale/fi.json +98 -0
  28. package/locale/fr.json +98 -0
  29. package/locale/he.json +98 -0
  30. package/locale/hi.json +98 -0
  31. package/locale/hr.json +98 -0
  32. package/locale/hu.json +98 -0
  33. package/locale/id.json +98 -0
  34. package/locale/it.json +98 -0
  35. package/locale/ja.json +98 -0
  36. package/locale/ka.json +98 -0
  37. package/locale/kk.json +98 -0
  38. package/locale/km.json +98 -0
  39. package/locale/ko.json +98 -0
  40. package/locale/lt.json +98 -0
  41. package/locale/mr.json +98 -0
  42. package/locale/ms.json +98 -0
  43. package/locale/my.json +98 -0
  44. package/locale/ne.json +98 -0
  45. package/locale/nl.json +98 -0
  46. package/locale/no.json +98 -0
  47. package/locale/pl.json +98 -0
  48. package/locale/pt.json +98 -0
  49. package/locale/ro.json +98 -0
  50. package/locale/ru.json +98 -0
  51. package/locale/si.json +98 -0
  52. package/locale/sk.json +98 -0
  53. package/locale/sl.json +98 -0
  54. package/locale/sr.json +98 -0
  55. package/locale/sv.json +98 -0
  56. package/locale/sw.json +98 -0
  57. package/locale/ta.json +98 -0
  58. package/locale/te.json +98 -0
  59. package/locale/th.json +98 -0
  60. package/locale/tl.json +98 -0
  61. package/locale/tr.json +98 -0
  62. package/locale/uk.json +98 -0
  63. package/locale/ur.json +98 -0
  64. package/locale/uz.json +98 -0
  65. package/locale/vi.json +98 -0
  66. package/locale/zh.json +98 -0
  67. package/package.json +73 -4
@@ -0,0 +1,48 @@
1
+ # Uncle Sam - DeepSeek web-chat provider for the harness.
2
+ #
3
+ # @file cordis.patch.yml
4
+ # @version 3.9.11
5
+ # @author Operating Tag (@operatingtag)
6
+ # @license MIT - Copyright (c) 2026 Operating Tag. All rights reserved.
7
+ #
8
+ # The row is inert until a model is selected for it in the model picker: registering a provider
9
+ # advertises a route, it does not take over the default model. That is deliberate - driving a browser
10
+ # is a heavier path than an HTTP API and should never become the default by being installed.
11
+ #
12
+ # autoMinimise decides whether the window is minimised after launch:
13
+ #
14
+ # true the window is minimised to the taskbar once the site has loaded (the default).
15
+ # false the window stays visible, which is useful when watching what the plugin does.
16
+ #
17
+ # The browser is chosen automatically: Brave when it is installed, otherwise Edge. Brave is never required
18
+ # and nothing is installed on the user's behalf.
19
+ #
20
+ # A headless mode was built and then withdrawn. Measured with a clean profile and both the modern and
21
+ # legacy flags: chat.deepseek.com answers headless browsers with
22
+ #
23
+ # ERROR: The request could not be satisfied - 403, generated by CloudFront
24
+ #
25
+ # with zero scripts and no composer. CloudFront refuses headless clients before the application runs, so
26
+ # no flag, user agent or port can make it work, and offering the switch would invite people to choose a
27
+ # mode that always fails.
28
+ #
29
+ # WHAT "Uncle Sam" MEANS
30
+ # Every reply that comes from the web route is signed:
31
+ #
32
+ # 🔴 Uncle Sam
33
+ #
34
+ # the answer follows
35
+ #
36
+ # This is a joke, and it is documented here so nobody mistakes it for a feature of the model or for a
37
+ # claim of official authority. Uncle Sam is the mate who answers when you are not paying for the API:
38
+ # the red dot is a wink, and the name marks which route produced the answer. Replies on the API route
39
+ # carry no signature at all, so the label's PRESENCE is the signal. It is written into the reply text
40
+ # rather than drawn beside it, so a transcript that is copied or exported later still shows which route
41
+ # it came from.
42
+ - insert:
43
+ - id: dsh-unclesam
44
+ name: '@operatingtag/dsh-unclesam'
45
+ config:
46
+ port: 9222
47
+ defaultModel: deepseek-chat
48
+ autoMinimise: true
package/icon.svg ADDED
@@ -0,0 +1,17 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64" role="img" aria-label="DeepSeek Web Chat">
2
+ <!--
3
+ A browser window whose content is a speech bubble: the provider is a webpage that answers.
4
+ Drawn with a single warm accent so it reads at 16px in a dense plugin list, and with enough
5
+ internal contrast that it survives both light and dark rows.
6
+ -->
7
+ <rect x="3" y="10" width="58" height="44" rx="6" ry="6" fill="none" stroke="#4a9eff" stroke-width="3"/>
8
+ <line x1="3" y1="21" x2="61" y2="21" stroke="#4a9eff" stroke-width="2.5"/>
9
+ <circle cx="10" cy="15.5" r="2.1" fill="#4a9eff"/>
10
+ <circle cx="17" cy="15.5" r="2.1" fill="#4a9eff"/>
11
+ <circle cx="24" cy="15.5" r="2.1" fill="#4a9eff"/>
12
+ <path d="M18 30h28a5 5 0 0 1 5 5v9a5 5 0 0 1-5 5H31l-8 7v-7h-5a5 5 0 0 1-5-5v-9a5 5 0 0 1 5-5z"
13
+ fill="none" stroke="#f2b544" stroke-width="3" stroke-linejoin="round"/>
14
+ <circle cx="26" cy="39.5" r="2.4" fill="#f2b544"/>
15
+ <circle cx="34" cy="39.5" r="2.4" fill="#f2b544"/>
16
+ <circle cx="42" cy="39.5" r="2.4" fill="#f2b544"/>
17
+ </svg>