@mokuyoaxis/dsh-iris 0.1.4 → 0.2.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 (64) hide show
  1. package/CHANGELOG.md +54 -1
  2. package/README.en.md +72 -15
  3. package/README.md +72 -15
  4. package/bin/dsh-iris.js +392 -13
  5. package/docs/AGENT_QUICKSTART.md +35 -0
  6. package/docs/ARCHITECTURE.md +80 -64
  7. package/docs/ARTIFACT_MANIFEST.md +60 -0
  8. package/docs/CORE_RUNTIME_CONTRACT.md +83 -0
  9. package/docs/DSH_CORE_MIGRATION.md +106 -0
  10. package/docs/DSH_RC2_ADAPTATION.md +36 -0
  11. package/docs/HEADLESS_CLI.md +217 -0
  12. package/docs/HOST_ADAPTER_CONTRACT.md +31 -12
  13. package/docs/HOST_DOCTOR.md +2 -0
  14. package/docs/MODEL_PORT_CONTRACT.md +300 -0
  15. package/docs/PROVIDER_ADAPTER_CONTRACT.md +51 -10
  16. package/docs/PROVIDER_RUNTIME_HARNESS.md +33 -0
  17. package/docs/PROVIDER_SUBMISSION_CONTRACT.md +1 -1
  18. package/docs/ROADMAP.md +42 -86
  19. package/docs/SECURITY.md +4 -3
  20. package/docs/assets/logo/README.md +55 -0
  21. package/docs/assets/logo/iris-bubble-concept.svg +67 -0
  22. package/docs/assets/logo/iris-bubble.svg +14 -0
  23. package/docs/assets/logo/iris-interim-flower.png +0 -0
  24. package/docs/assets/logo/iris-logo-mono-inverse.svg +78 -0
  25. package/docs/assets/logo/iris-logo-mono.svg +78 -0
  26. package/docs/assets/logo/iris-logo.svg +78 -0
  27. package/docs/assets/logo/iris-mark-mono-inverse.svg +42 -0
  28. package/docs/assets/logo/iris-mark-mono.svg +42 -0
  29. package/docs/assets/logo/iris-mark.svg +42 -0
  30. package/docs/releases/0.2.0.md +48 -0
  31. package/lib/actions.js +374 -362
  32. package/lib/adapters.js +52 -15
  33. package/lib/api.js +152 -5
  34. package/lib/client.js +763 -48
  35. package/lib/command-service.js +420 -0
  36. package/lib/config.js +56 -43
  37. package/lib/core-artifact-store.js +598 -0
  38. package/lib/core-artifacts.js +4 -0
  39. package/lib/core-attention.js +103 -0
  40. package/lib/core-contract.js +105 -0
  41. package/lib/core-doctor.js +41 -0
  42. package/lib/core-lease-recovery.js +170 -0
  43. package/lib/core-runtime.js +232 -0
  44. package/lib/core-tasks.js +560 -0
  45. package/lib/core-user-projection.js +192 -0
  46. package/lib/doctor.js +92 -33
  47. package/lib/dsh-core-adapter.js +599 -0
  48. package/lib/dsh-host-adapter.js +58 -7
  49. package/lib/generation-input.js +95 -0
  50. package/lib/guard.js +3 -3
  51. package/lib/index.js +159 -54
  52. package/lib/model-invoker.js +218 -0
  53. package/lib/model-port-contract.js +333 -0
  54. package/lib/models.js +97 -11
  55. package/lib/provider-adapter.js +49 -23
  56. package/lib/provider-adapters.js +84 -21
  57. package/lib/provider-catalog.js +171 -0
  58. package/lib/provider-contract.js +72 -3
  59. package/lib/provider-protocol.js +51 -2
  60. package/lib/provider-task-runner.js +328 -0
  61. package/lib/tasks.js +16 -4
  62. package/lib/vision.js +28 -7
  63. package/package.json +8 -8
  64. package/user_guide.md +27 -12
@@ -0,0 +1,78 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="208" height="80" viewBox="0 0 208 80" role="img" aria-label="IRIS 标志(单色)" shape-rendering="crispEdges">
2
+ <title>IRIS 标志(单色)</title>
3
+ <desc>像素块鸢尾花与 IRIS 像素字标,单色墨,浅底色适用</desc>
4
+ <rect x="32" y="0" width="8" height="8" fill="#1E1E24"/>
5
+ <rect x="24" y="8" width="8" height="8" fill="#1E1E24"/>
6
+ <rect x="32" y="8" width="8" height="8" fill="#1E1E24"/>
7
+ <rect x="40" y="8" width="8" height="8" fill="#1E1E24"/>
8
+ <rect x="16" y="16" width="8" height="8" fill="#1E1E24"/>
9
+ <rect x="24" y="16" width="8" height="8" fill="#1E1E24"/>
10
+ <rect x="32" y="16" width="8" height="8" fill="#1E1E24"/>
11
+ <rect x="40" y="16" width="8" height="8" fill="#1E1E24"/>
12
+ <rect x="48" y="16" width="8" height="8" fill="#1E1E24"/>
13
+ <rect x="16" y="24" width="8" height="8" fill="#1E1E24"/>
14
+ <rect x="24" y="24" width="8" height="8" fill="#1E1E24"/>
15
+ <rect x="32" y="24" width="8" height="8" fill="#1E1E24"/>
16
+ <rect x="40" y="24" width="8" height="8" fill="#1E1E24"/>
17
+ <rect x="48" y="24" width="8" height="8" fill="#1E1E24"/>
18
+ <rect x="0" y="32" width="8" height="8" fill="#1E1E24"/>
19
+ <rect x="24" y="32" width="8" height="8" fill="#1E1E24"/>
20
+ <rect x="32" y="32" width="8" height="8" fill="#1E1E24"/>
21
+ <rect x="40" y="32" width="8" height="8" fill="#1E1E24"/>
22
+ <rect x="64" y="32" width="8" height="8" fill="#1E1E24"/>
23
+ <rect x="0" y="40" width="8" height="8" fill="#1E1E24"/>
24
+ <rect x="8" y="40" width="8" height="8" fill="#1E1E24"/>
25
+ <rect x="24" y="40" width="8" height="8" fill="#1E1E24"/>
26
+ <rect x="32" y="40" width="8" height="8" fill="#1E1E24"/>
27
+ <rect x="40" y="40" width="8" height="8" fill="#1E1E24"/>
28
+ <rect x="56" y="40" width="8" height="8" fill="#1E1E24"/>
29
+ <rect x="64" y="40" width="8" height="8" fill="#1E1E24"/>
30
+ <rect x="8" y="48" width="8" height="8" fill="#1E1E24"/>
31
+ <rect x="16" y="48" width="8" height="8" fill="#1E1E24"/>
32
+ <rect x="32" y="48" width="8" height="8" fill="#1E1E24"/>
33
+ <rect x="48" y="48" width="8" height="8" fill="#1E1E24"/>
34
+ <rect x="56" y="48" width="8" height="8" fill="#1E1E24"/>
35
+ <rect x="16" y="56" width="8" height="8" fill="#1E1E24"/>
36
+ <rect x="24" y="56" width="8" height="8" fill="#1E1E24"/>
37
+ <rect x="32" y="56" width="8" height="8" fill="#1E1E24"/>
38
+ <rect x="40" y="56" width="8" height="8" fill="#1E1E24"/>
39
+ <rect x="48" y="56" width="8" height="8" fill="#1E1E24"/>
40
+ <rect x="32" y="64" width="8" height="8" fill="#1E1E24"/>
41
+ <rect x="32" y="72" width="8" height="8" fill="#1E1E24"/>
42
+ <rect x="88" y="16" width="8" height="8" fill="#1E1E24"/>
43
+ <rect x="96" y="16" width="8" height="8" fill="#1E1E24"/>
44
+ <rect x="104" y="16" width="8" height="8" fill="#1E1E24"/>
45
+ <rect x="96" y="24" width="8" height="8" fill="#1E1E24"/>
46
+ <rect x="96" y="32" width="8" height="8" fill="#1E1E24"/>
47
+ <rect x="96" y="40" width="8" height="8" fill="#1E1E24"/>
48
+ <rect x="88" y="48" width="8" height="8" fill="#1E1E24"/>
49
+ <rect x="96" y="48" width="8" height="8" fill="#1E1E24"/>
50
+ <rect x="104" y="48" width="8" height="8" fill="#1E1E24"/>
51
+ <rect x="120" y="16" width="8" height="8" fill="#1E1E24"/>
52
+ <rect x="128" y="16" width="8" height="8" fill="#1E1E24"/>
53
+ <rect x="120" y="24" width="8" height="8" fill="#1E1E24"/>
54
+ <rect x="136" y="24" width="8" height="8" fill="#1E1E24"/>
55
+ <rect x="120" y="32" width="8" height="8" fill="#1E1E24"/>
56
+ <rect x="128" y="32" width="8" height="8" fill="#1E1E24"/>
57
+ <rect x="120" y="40" width="8" height="8" fill="#1E1E24"/>
58
+ <rect x="136" y="40" width="8" height="8" fill="#1E1E24"/>
59
+ <rect x="120" y="48" width="8" height="8" fill="#1E1E24"/>
60
+ <rect x="136" y="48" width="8" height="8" fill="#1E1E24"/>
61
+ <rect x="152" y="16" width="8" height="8" fill="#1E1E24"/>
62
+ <rect x="160" y="16" width="8" height="8" fill="#1E1E24"/>
63
+ <rect x="168" y="16" width="8" height="8" fill="#1E1E24"/>
64
+ <rect x="160" y="24" width="8" height="8" fill="#1E1E24"/>
65
+ <rect x="160" y="32" width="8" height="8" fill="#1E1E24"/>
66
+ <rect x="160" y="40" width="8" height="8" fill="#1E1E24"/>
67
+ <rect x="152" y="48" width="8" height="8" fill="#1E1E24"/>
68
+ <rect x="160" y="48" width="8" height="8" fill="#1E1E24"/>
69
+ <rect x="168" y="48" width="8" height="8" fill="#1E1E24"/>
70
+ <rect x="192" y="16" width="8" height="8" fill="#1E1E24"/>
71
+ <rect x="200" y="16" width="8" height="8" fill="#1E1E24"/>
72
+ <rect x="184" y="24" width="8" height="8" fill="#1E1E24"/>
73
+ <rect x="192" y="32" width="8" height="8" fill="#1E1E24"/>
74
+ <rect x="200" y="32" width="8" height="8" fill="#1E1E24"/>
75
+ <rect x="200" y="40" width="8" height="8" fill="#1E1E24"/>
76
+ <rect x="184" y="48" width="8" height="8" fill="#1E1E24"/>
77
+ <rect x="192" y="48" width="8" height="8" fill="#1E1E24"/>
78
+ </svg>
@@ -0,0 +1,78 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="208" height="80" viewBox="0 0 208 80" role="img" aria-label="IRIS 标志(彩色)" shape-rendering="crispEdges">
2
+ <title>IRIS 标志(彩色)</title>
3
+ <desc>像素块鸢尾花与 IRIS 像素字标,浅底色适用</desc>
4
+ <rect x="32" y="0" width="8" height="8" fill="#8C77EE"/>
5
+ <rect x="24" y="8" width="8" height="8" fill="#8C77EE"/>
6
+ <rect x="32" y="8" width="8" height="8" fill="#8C77EE"/>
7
+ <rect x="40" y="8" width="8" height="8" fill="#8C77EE"/>
8
+ <rect x="16" y="16" width="8" height="8" fill="#8C77EE"/>
9
+ <rect x="24" y="16" width="8" height="8" fill="#8C77EE"/>
10
+ <rect x="32" y="16" width="8" height="8" fill="#8C77EE"/>
11
+ <rect x="40" y="16" width="8" height="8" fill="#8C77EE"/>
12
+ <rect x="48" y="16" width="8" height="8" fill="#8C77EE"/>
13
+ <rect x="16" y="24" width="8" height="8" fill="#8C77EE"/>
14
+ <rect x="24" y="24" width="8" height="8" fill="#8C77EE"/>
15
+ <rect x="32" y="24" width="8" height="8" fill="#8C77EE"/>
16
+ <rect x="40" y="24" width="8" height="8" fill="#8C77EE"/>
17
+ <rect x="48" y="24" width="8" height="8" fill="#8C77EE"/>
18
+ <rect x="0" y="32" width="8" height="8" fill="#3F32A8"/>
19
+ <rect x="24" y="32" width="8" height="8" fill="#8C77EE"/>
20
+ <rect x="32" y="32" width="8" height="8" fill="#8C77EE"/>
21
+ <rect x="40" y="32" width="8" height="8" fill="#8C77EE"/>
22
+ <rect x="64" y="32" width="8" height="8" fill="#3F32A8"/>
23
+ <rect x="0" y="40" width="8" height="8" fill="#3F32A8"/>
24
+ <rect x="8" y="40" width="8" height="8" fill="#3F32A8"/>
25
+ <rect x="24" y="40" width="8" height="8" fill="#8C77EE"/>
26
+ <rect x="32" y="40" width="8" height="8" fill="#F0B23E"/>
27
+ <rect x="40" y="40" width="8" height="8" fill="#8C77EE"/>
28
+ <rect x="56" y="40" width="8" height="8" fill="#3F32A8"/>
29
+ <rect x="64" y="40" width="8" height="8" fill="#3F32A8"/>
30
+ <rect x="8" y="48" width="8" height="8" fill="#3F32A8"/>
31
+ <rect x="16" y="48" width="8" height="8" fill="#3F32A8"/>
32
+ <rect x="32" y="48" width="8" height="8" fill="#F0B23E"/>
33
+ <rect x="48" y="48" width="8" height="8" fill="#3F32A8"/>
34
+ <rect x="56" y="48" width="8" height="8" fill="#3F32A8"/>
35
+ <rect x="16" y="56" width="8" height="8" fill="#3F32A8"/>
36
+ <rect x="24" y="56" width="8" height="8" fill="#3F32A8"/>
37
+ <rect x="32" y="56" width="8" height="8" fill="#4A9E6F"/>
38
+ <rect x="40" y="56" width="8" height="8" fill="#3F32A8"/>
39
+ <rect x="48" y="56" width="8" height="8" fill="#3F32A8"/>
40
+ <rect x="32" y="64" width="8" height="8" fill="#4A9E6F"/>
41
+ <rect x="32" y="72" width="8" height="8" fill="#4A9E6F"/>
42
+ <rect x="88" y="16" width="8" height="8" fill="#26204F"/>
43
+ <rect x="96" y="16" width="8" height="8" fill="#26204F"/>
44
+ <rect x="104" y="16" width="8" height="8" fill="#26204F"/>
45
+ <rect x="96" y="24" width="8" height="8" fill="#26204F"/>
46
+ <rect x="96" y="32" width="8" height="8" fill="#26204F"/>
47
+ <rect x="96" y="40" width="8" height="8" fill="#26204F"/>
48
+ <rect x="88" y="48" width="8" height="8" fill="#26204F"/>
49
+ <rect x="96" y="48" width="8" height="8" fill="#26204F"/>
50
+ <rect x="104" y="48" width="8" height="8" fill="#26204F"/>
51
+ <rect x="120" y="16" width="8" height="8" fill="#26204F"/>
52
+ <rect x="128" y="16" width="8" height="8" fill="#26204F"/>
53
+ <rect x="120" y="24" width="8" height="8" fill="#26204F"/>
54
+ <rect x="136" y="24" width="8" height="8" fill="#26204F"/>
55
+ <rect x="120" y="32" width="8" height="8" fill="#26204F"/>
56
+ <rect x="128" y="32" width="8" height="8" fill="#26204F"/>
57
+ <rect x="120" y="40" width="8" height="8" fill="#26204F"/>
58
+ <rect x="136" y="40" width="8" height="8" fill="#26204F"/>
59
+ <rect x="120" y="48" width="8" height="8" fill="#26204F"/>
60
+ <rect x="136" y="48" width="8" height="8" fill="#26204F"/>
61
+ <rect x="152" y="16" width="8" height="8" fill="#26204F"/>
62
+ <rect x="160" y="16" width="8" height="8" fill="#26204F"/>
63
+ <rect x="168" y="16" width="8" height="8" fill="#26204F"/>
64
+ <rect x="160" y="24" width="8" height="8" fill="#26204F"/>
65
+ <rect x="160" y="32" width="8" height="8" fill="#26204F"/>
66
+ <rect x="160" y="40" width="8" height="8" fill="#26204F"/>
67
+ <rect x="152" y="48" width="8" height="8" fill="#26204F"/>
68
+ <rect x="160" y="48" width="8" height="8" fill="#26204F"/>
69
+ <rect x="168" y="48" width="8" height="8" fill="#26204F"/>
70
+ <rect x="192" y="16" width="8" height="8" fill="#26204F"/>
71
+ <rect x="200" y="16" width="8" height="8" fill="#26204F"/>
72
+ <rect x="184" y="24" width="8" height="8" fill="#26204F"/>
73
+ <rect x="192" y="32" width="8" height="8" fill="#26204F"/>
74
+ <rect x="200" y="32" width="8" height="8" fill="#26204F"/>
75
+ <rect x="200" y="40" width="8" height="8" fill="#26204F"/>
76
+ <rect x="184" y="48" width="8" height="8" fill="#26204F"/>
77
+ <rect x="192" y="48" width="8" height="8" fill="#26204F"/>
78
+ </svg>
@@ -0,0 +1,42 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="88" height="96" viewBox="-8 -8 88 96" role="img" aria-label="IRIS 图形标(单色反白)" shape-rendering="crispEdges">
2
+ <title>IRIS 图形标(单色反白)</title>
3
+ <desc>像素块鸢尾花图形标,反白</desc>
4
+ <rect x="32" y="0" width="8" height="8" fill="#F5F3FF"/>
5
+ <rect x="24" y="8" width="8" height="8" fill="#F5F3FF"/>
6
+ <rect x="32" y="8" width="8" height="8" fill="#F5F3FF"/>
7
+ <rect x="40" y="8" width="8" height="8" fill="#F5F3FF"/>
8
+ <rect x="16" y="16" width="8" height="8" fill="#F5F3FF"/>
9
+ <rect x="24" y="16" width="8" height="8" fill="#F5F3FF"/>
10
+ <rect x="32" y="16" width="8" height="8" fill="#F5F3FF"/>
11
+ <rect x="40" y="16" width="8" height="8" fill="#F5F3FF"/>
12
+ <rect x="48" y="16" width="8" height="8" fill="#F5F3FF"/>
13
+ <rect x="16" y="24" width="8" height="8" fill="#F5F3FF"/>
14
+ <rect x="24" y="24" width="8" height="8" fill="#F5F3FF"/>
15
+ <rect x="32" y="24" width="8" height="8" fill="#F5F3FF"/>
16
+ <rect x="40" y="24" width="8" height="8" fill="#F5F3FF"/>
17
+ <rect x="48" y="24" width="8" height="8" fill="#F5F3FF"/>
18
+ <rect x="0" y="32" width="8" height="8" fill="#F5F3FF"/>
19
+ <rect x="24" y="32" width="8" height="8" fill="#F5F3FF"/>
20
+ <rect x="32" y="32" width="8" height="8" fill="#F5F3FF"/>
21
+ <rect x="40" y="32" width="8" height="8" fill="#F5F3FF"/>
22
+ <rect x="64" y="32" width="8" height="8" fill="#F5F3FF"/>
23
+ <rect x="0" y="40" width="8" height="8" fill="#F5F3FF"/>
24
+ <rect x="8" y="40" width="8" height="8" fill="#F5F3FF"/>
25
+ <rect x="24" y="40" width="8" height="8" fill="#F5F3FF"/>
26
+ <rect x="32" y="40" width="8" height="8" fill="#F5F3FF"/>
27
+ <rect x="40" y="40" width="8" height="8" fill="#F5F3FF"/>
28
+ <rect x="56" y="40" width="8" height="8" fill="#F5F3FF"/>
29
+ <rect x="64" y="40" width="8" height="8" fill="#F5F3FF"/>
30
+ <rect x="8" y="48" width="8" height="8" fill="#F5F3FF"/>
31
+ <rect x="16" y="48" width="8" height="8" fill="#F5F3FF"/>
32
+ <rect x="32" y="48" width="8" height="8" fill="#F5F3FF"/>
33
+ <rect x="48" y="48" width="8" height="8" fill="#F5F3FF"/>
34
+ <rect x="56" y="48" width="8" height="8" fill="#F5F3FF"/>
35
+ <rect x="16" y="56" width="8" height="8" fill="#F5F3FF"/>
36
+ <rect x="24" y="56" width="8" height="8" fill="#F5F3FF"/>
37
+ <rect x="32" y="56" width="8" height="8" fill="#F5F3FF"/>
38
+ <rect x="40" y="56" width="8" height="8" fill="#F5F3FF"/>
39
+ <rect x="48" y="56" width="8" height="8" fill="#F5F3FF"/>
40
+ <rect x="32" y="64" width="8" height="8" fill="#F5F3FF"/>
41
+ <rect x="32" y="72" width="8" height="8" fill="#F5F3FF"/>
42
+ </svg>
@@ -0,0 +1,42 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="88" height="96" viewBox="-8 -8 88 96" role="img" aria-label="IRIS 图形标(单色)" shape-rendering="crispEdges">
2
+ <title>IRIS 图形标(单色)</title>
3
+ <desc>像素块鸢尾花图形标,单色墨</desc>
4
+ <rect x="32" y="0" width="8" height="8" fill="#1E1E24"/>
5
+ <rect x="24" y="8" width="8" height="8" fill="#1E1E24"/>
6
+ <rect x="32" y="8" width="8" height="8" fill="#1E1E24"/>
7
+ <rect x="40" y="8" width="8" height="8" fill="#1E1E24"/>
8
+ <rect x="16" y="16" width="8" height="8" fill="#1E1E24"/>
9
+ <rect x="24" y="16" width="8" height="8" fill="#1E1E24"/>
10
+ <rect x="32" y="16" width="8" height="8" fill="#1E1E24"/>
11
+ <rect x="40" y="16" width="8" height="8" fill="#1E1E24"/>
12
+ <rect x="48" y="16" width="8" height="8" fill="#1E1E24"/>
13
+ <rect x="16" y="24" width="8" height="8" fill="#1E1E24"/>
14
+ <rect x="24" y="24" width="8" height="8" fill="#1E1E24"/>
15
+ <rect x="32" y="24" width="8" height="8" fill="#1E1E24"/>
16
+ <rect x="40" y="24" width="8" height="8" fill="#1E1E24"/>
17
+ <rect x="48" y="24" width="8" height="8" fill="#1E1E24"/>
18
+ <rect x="0" y="32" width="8" height="8" fill="#1E1E24"/>
19
+ <rect x="24" y="32" width="8" height="8" fill="#1E1E24"/>
20
+ <rect x="32" y="32" width="8" height="8" fill="#1E1E24"/>
21
+ <rect x="40" y="32" width="8" height="8" fill="#1E1E24"/>
22
+ <rect x="64" y="32" width="8" height="8" fill="#1E1E24"/>
23
+ <rect x="0" y="40" width="8" height="8" fill="#1E1E24"/>
24
+ <rect x="8" y="40" width="8" height="8" fill="#1E1E24"/>
25
+ <rect x="24" y="40" width="8" height="8" fill="#1E1E24"/>
26
+ <rect x="32" y="40" width="8" height="8" fill="#1E1E24"/>
27
+ <rect x="40" y="40" width="8" height="8" fill="#1E1E24"/>
28
+ <rect x="56" y="40" width="8" height="8" fill="#1E1E24"/>
29
+ <rect x="64" y="40" width="8" height="8" fill="#1E1E24"/>
30
+ <rect x="8" y="48" width="8" height="8" fill="#1E1E24"/>
31
+ <rect x="16" y="48" width="8" height="8" fill="#1E1E24"/>
32
+ <rect x="32" y="48" width="8" height="8" fill="#1E1E24"/>
33
+ <rect x="48" y="48" width="8" height="8" fill="#1E1E24"/>
34
+ <rect x="56" y="48" width="8" height="8" fill="#1E1E24"/>
35
+ <rect x="16" y="56" width="8" height="8" fill="#1E1E24"/>
36
+ <rect x="24" y="56" width="8" height="8" fill="#1E1E24"/>
37
+ <rect x="32" y="56" width="8" height="8" fill="#1E1E24"/>
38
+ <rect x="40" y="56" width="8" height="8" fill="#1E1E24"/>
39
+ <rect x="48" y="56" width="8" height="8" fill="#1E1E24"/>
40
+ <rect x="32" y="64" width="8" height="8" fill="#1E1E24"/>
41
+ <rect x="32" y="72" width="8" height="8" fill="#1E1E24"/>
42
+ </svg>
@@ -0,0 +1,42 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="88" height="96" viewBox="-8 -8 88 96" role="img" aria-label="IRIS 图形标(彩色)" shape-rendering="crispEdges">
2
+ <title>IRIS 图形标(彩色)</title>
3
+ <desc>像素块鸢尾花图形标,带一格留白,紧凑图标与 App 角标适用</desc>
4
+ <rect x="32" y="0" width="8" height="8" fill="#8C77EE"/>
5
+ <rect x="24" y="8" width="8" height="8" fill="#8C77EE"/>
6
+ <rect x="32" y="8" width="8" height="8" fill="#8C77EE"/>
7
+ <rect x="40" y="8" width="8" height="8" fill="#8C77EE"/>
8
+ <rect x="16" y="16" width="8" height="8" fill="#8C77EE"/>
9
+ <rect x="24" y="16" width="8" height="8" fill="#8C77EE"/>
10
+ <rect x="32" y="16" width="8" height="8" fill="#8C77EE"/>
11
+ <rect x="40" y="16" width="8" height="8" fill="#8C77EE"/>
12
+ <rect x="48" y="16" width="8" height="8" fill="#8C77EE"/>
13
+ <rect x="16" y="24" width="8" height="8" fill="#8C77EE"/>
14
+ <rect x="24" y="24" width="8" height="8" fill="#8C77EE"/>
15
+ <rect x="32" y="24" width="8" height="8" fill="#8C77EE"/>
16
+ <rect x="40" y="24" width="8" height="8" fill="#8C77EE"/>
17
+ <rect x="48" y="24" width="8" height="8" fill="#8C77EE"/>
18
+ <rect x="0" y="32" width="8" height="8" fill="#3F32A8"/>
19
+ <rect x="24" y="32" width="8" height="8" fill="#8C77EE"/>
20
+ <rect x="32" y="32" width="8" height="8" fill="#8C77EE"/>
21
+ <rect x="40" y="32" width="8" height="8" fill="#8C77EE"/>
22
+ <rect x="64" y="32" width="8" height="8" fill="#3F32A8"/>
23
+ <rect x="0" y="40" width="8" height="8" fill="#3F32A8"/>
24
+ <rect x="8" y="40" width="8" height="8" fill="#3F32A8"/>
25
+ <rect x="24" y="40" width="8" height="8" fill="#8C77EE"/>
26
+ <rect x="32" y="40" width="8" height="8" fill="#F0B23E"/>
27
+ <rect x="40" y="40" width="8" height="8" fill="#8C77EE"/>
28
+ <rect x="56" y="40" width="8" height="8" fill="#3F32A8"/>
29
+ <rect x="64" y="40" width="8" height="8" fill="#3F32A8"/>
30
+ <rect x="8" y="48" width="8" height="8" fill="#3F32A8"/>
31
+ <rect x="16" y="48" width="8" height="8" fill="#3F32A8"/>
32
+ <rect x="32" y="48" width="8" height="8" fill="#F0B23E"/>
33
+ <rect x="48" y="48" width="8" height="8" fill="#3F32A8"/>
34
+ <rect x="56" y="48" width="8" height="8" fill="#3F32A8"/>
35
+ <rect x="16" y="56" width="8" height="8" fill="#3F32A8"/>
36
+ <rect x="24" y="56" width="8" height="8" fill="#3F32A8"/>
37
+ <rect x="32" y="56" width="8" height="8" fill="#4A9E6F"/>
38
+ <rect x="40" y="56" width="8" height="8" fill="#3F32A8"/>
39
+ <rect x="48" y="56" width="8" height="8" fill="#3F32A8"/>
40
+ <rect x="32" y="64" width="8" height="8" fill="#4A9E6F"/>
41
+ <rect x="32" y="72" width="8" height="8" fill="#4A9E6F"/>
42
+ </svg>
@@ -0,0 +1,48 @@
1
+ ## Iris Media for DSH 0.2.0
2
+
3
+ Iris 0.2.0 brings the media runtime to the command line and adapts the DSH plugin to DeepSeek Harness `0.2.0-rc.2`. The npm package remains `@mokuyoaxis/dsh-iris`.
4
+
5
+ ### Highlights
6
+
7
+ - Run crop, image diff, video frame extraction, image/video/speech generation and transcription without DSH. Inspect, observe and export tasks and artifacts across CLI processes.
8
+ - Share Core Task, Attempt and Artifact facts between the CLI, DSH tools and the workbench. Core owns the explicit data root, single-writer lease, lifecycle, cancellation and orderly shutdown.
9
+ - Add Artifact Manifest v0 with content hashes, relationships, a rebuildable index and orphan recovery. Core records keep prompts, credentials and private URLs out of durable task history.
10
+ - Share task controls across the CLI, API and workbench: observe again, redeliver, cancel where supported, and retry as a new task with explicit billing confirmation. Accepted or uncertain submissions never trigger automatic resubmission.
11
+ - Add read-only provider/capability listings, Core Doctor and explicit stale-writer recovery. Keep old task data intact; this release does not rewrite 0.1.4 storage in place.
12
+ - Preserve complete DSH attachment references, bind image-capable vision routes explicitly, handle stream errors, and follow rc.2 client main-view selection.
13
+ - Replace the floating bubble's pixel silhouette with a curved iris SVG, keeping existing status and interaction behavior.
14
+ - Publish bilingual agent quickstart prompts and separate installation instructions for current and older hosts.
15
+
16
+ ### Compatibility and upgrade
17
+
18
+ - Node.js: `>=22.0.0`.
19
+ - DSH plugin: **exactly `0.2.0-rc.2`**, including the five optional client peers. Other rc versions and DSH 0.2.0 stable have no compatibility claim.
20
+ - Older DSH `>=0.1.2-rc.1 <0.1.3-0` or `0.1.5-rc.1`: keep using `@mokuyoaxis/dsh-iris@0.1.4`. Its historical Node minimum remains 20.10.0; do not follow npm latest on those hosts.
21
+ - Headless CLI: no DSH installation required. Video frame extraction needs `ffmpeg` and `ffprobe`.
22
+ - In dsh-market, check the full scoped package name, displayed version and host requirements. Marketplace caches may lag npm; a visible listing is not a compatibility guarantee.
23
+
24
+ Install on DSH rc.2:
25
+
26
+ ```bash
27
+ dsh plugin --profile web add @mokuyoaxis/dsh-iris@0.2.0
28
+ dsh web
29
+ ```
30
+
31
+ For the CLI in your own project:
32
+
33
+ ```bash
34
+ npm install @mokuyoaxis/dsh-iris@0.2.0
35
+ npx dsh-iris --help
36
+ ```
37
+
38
+ Download the older stable package separately with `npm pack @mokuyoaxis/dsh-iris@0.1.4`.
39
+
40
+ ### Verification and current limits
41
+
42
+ Release checks cover 123 test files, Ubuntu and Windows on Node 22.0.0 and current Node 22, repeated minimum-version shutdown regressions, an isolated packed-package consumer without DSH, and isolated checks against installed rc.2 host services.
43
+
44
+ These checks do not establish complete personal-profile restart/rollback, every paid-provider path, native Windows DSH usage, or every Android browser action. Detailed boundaries remain in [the rc.2 adaptation notes](https://github.com/mokuyoaxis/dsh-iris/blob/v0.2.0/docs/DSH_RC2_ADAPTATION.md) and [the migration notes](https://github.com/mokuyoaxis/dsh-iris/blob/v0.2.0/docs/DSH_CORE_MIGRATION.md). Core internals and Model Port are not a frozen public SDK. The CLI observes one step at a time; it does not start a background service. Core Task/Artifact deletion is not exposed in this release.
45
+
46
+ Generation and transcription may consume provider quota or incur charges. The repository and package naming transition will follow a second real Host Adapter, with a new npm package at that point.
47
+
48
+ Full changelog: https://github.com/mokuyoaxis/dsh-iris/compare/v0.1.4...v0.2.0