@ycodium-ai/plugin-im 0.2.2526 → 0.2.2554

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -30,11 +30,42 @@ is HTTP long-polling.
30
30
  The default is one message per finished turn. A single turn can produce dozens
31
31
  of assistant messages, mostly commentary between tool calls.
32
32
 
33
+ On Lark, the reply to a thread this plugin opened is one card that is patched
34
+ as the agent works (`thread.turn-progress` ticks, reply text read with
35
+ `getThreadMessage`) and settled when the turn ends; threads opened elsewhere
36
+ still get the per-turn or per-message text. Platforms that cannot edit a sent
37
+ message keep sending text. Approval cards are posted for every pending request
38
+ and replaced with a settled notice when the request is answered, here or
39
+ elsewhere (`thread.request-resolved`). Cards that were still open when the
40
+ plugin restarted are marked interrupted. The card pieces are pure and
41
+ separate: `turnView.ts` (ticks to a view model), `larkCards.ts` (view model
42
+ to card JSON), `larkMarkdown.ts`, `larkCardStream.ts` (throttle, one patch in
43
+ flight, newest snapshot wins), `turnCards.ts` (per-thread queue and card
44
+ lifecycle).
45
+
46
+ A group keeps its place across restarts. Which thread a group is talking in, the
47
+ team it is pointed at, the model and plan mode set from the group, the threads
48
+ this plugin has opened, and the approval buttons still waiting in the group are
49
+ written as plugin facts (`ctx.events.append`) and folded back by a pure function
50
+ (`ctx.derivedState`, see `src/chatState.ts`). A saved thread that was deleted,
51
+ archived or moved to another project is dropped on the next message.
52
+
53
+ Chat commands: `/stop`, `/status`, `/new`, `/sessions`, `/resume`, `/model`,
54
+ `/plan`, `/team`, `/thread`, `/help`. `/sessions` and `/resume` only list and
55
+ switch threads this plugin opened, since the host lets a plugin send only into
56
+ its own threads.
57
+
58
+ The **Reply language** setting (Chinese by default, or English) picks the
59
+ language of everything the bot says itself, and of the settings card. The copy
60
+ lives in `locales/en.json` and `locales/zh-CN.json`; Chinese shortcut commands
61
+ only work in Chinese.
62
+
33
63
  ## Requirements
34
64
 
35
65
  A Ycodium server. The plugin asks to dispatch `thread.create`,
36
- `thread.turn.start`, `thread.turn.interrupt`, and `thread.approval.respond`.
37
- Those commands only land on threads this plugin started.
66
+ `thread.meta.update`, `thread.turn.start`, `thread.turn.interrupt`, and
67
+ `thread.approval.respond`. Those commands only land on threads this plugin
68
+ started.
38
69
 
39
70
  ## Install
40
71