agenthub-multiagent-mcp 1.74.0 → 1.76.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.
- package/dist/client.d.ts +37 -3
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +39 -1
- package/dist/client.js.map +1 -1
- package/dist/commands/setup-shell.js +11 -11
- package/dist/employee.d.ts +11 -0
- package/dist/employee.d.ts.map +1 -1
- package/dist/employee.js +64 -1
- package/dist/employee.js.map +1 -1
- package/dist/employee.test.js +88 -1
- package/dist/employee.test.js.map +1 -1
- package/dist/goshtiChannel/client.d.ts +9 -0
- package/dist/goshtiChannel/client.d.ts.map +1 -0
- package/dist/goshtiChannel/client.js +63 -0
- package/dist/goshtiChannel/client.js.map +1 -0
- package/dist/goshtiChannel/config.d.ts +42 -0
- package/dist/goshtiChannel/config.d.ts.map +1 -0
- package/dist/goshtiChannel/config.js +129 -0
- package/dist/goshtiChannel/config.js.map +1 -0
- package/dist/goshtiChannel/config.test.d.ts +2 -0
- package/dist/goshtiChannel/config.test.d.ts.map +1 -0
- package/dist/goshtiChannel/config.test.js +73 -0
- package/dist/goshtiChannel/config.test.js.map +1 -0
- package/dist/goshtiChannel/core.d.ts +63 -0
- package/dist/goshtiChannel/core.d.ts.map +1 -0
- package/dist/goshtiChannel/core.js +237 -0
- package/dist/goshtiChannel/core.js.map +1 -0
- package/dist/goshtiChannel/core.test.d.ts +2 -0
- package/dist/goshtiChannel/core.test.d.ts.map +1 -0
- package/dist/goshtiChannel/core.test.js +250 -0
- package/dist/goshtiChannel/core.test.js.map +1 -0
- package/dist/goshtiChannel/credential.d.ts +29 -0
- package/dist/goshtiChannel/credential.d.ts.map +1 -0
- package/dist/goshtiChannel/credential.js +160 -0
- package/dist/goshtiChannel/credential.js.map +1 -0
- package/dist/goshtiChannel/credential.test.d.ts +2 -0
- package/dist/goshtiChannel/credential.test.d.ts.map +1 -0
- package/dist/goshtiChannel/credential.test.js +127 -0
- package/dist/goshtiChannel/credential.test.js.map +1 -0
- package/dist/goshtiChannel/e2e.test.d.ts +2 -0
- package/dist/goshtiChannel/e2e.test.d.ts.map +1 -0
- package/dist/goshtiChannel/e2e.test.js +163 -0
- package/dist/goshtiChannel/e2e.test.js.map +1 -0
- package/dist/goshtiChannel/policy.d.ts +154 -0
- package/dist/goshtiChannel/policy.d.ts.map +1 -0
- package/dist/goshtiChannel/policy.js +240 -0
- package/dist/goshtiChannel/policy.js.map +1 -0
- package/dist/goshtiChannel/policy.test.d.ts +2 -0
- package/dist/goshtiChannel/policy.test.d.ts.map +1 -0
- package/dist/goshtiChannel/policy.test.js +263 -0
- package/dist/goshtiChannel/policy.test.js.map +1 -0
- package/dist/goshtiChannel/setup.d.ts +15 -0
- package/dist/goshtiChannel/setup.d.ts.map +1 -0
- package/dist/goshtiChannel/setup.js +125 -0
- package/dist/goshtiChannel/setup.js.map +1 -0
- package/dist/goshtiChannel/setup.test.d.ts +2 -0
- package/dist/goshtiChannel/setup.test.d.ts.map +1 -0
- package/dist/goshtiChannel/setup.test.js +96 -0
- package/dist/goshtiChannel/setup.test.js.map +1 -0
- package/dist/goshtiChannel/stream.d.ts +39 -0
- package/dist/goshtiChannel/stream.d.ts.map +1 -0
- package/dist/goshtiChannel/stream.js +174 -0
- package/dist/goshtiChannel/stream.js.map +1 -0
- package/dist/goshtiChannel/stream.test.d.ts +2 -0
- package/dist/goshtiChannel/stream.test.d.ts.map +1 -0
- package/dist/goshtiChannel/stream.test.js +164 -0
- package/dist/goshtiChannel/stream.test.js.map +1 -0
- package/dist/goshtiChannel.d.ts +22 -0
- package/dist/goshtiChannel.d.ts.map +1 -0
- package/dist/goshtiChannel.js +193 -0
- package/dist/goshtiChannel.js.map +1 -0
- package/dist/state.d.ts +2 -0
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js.map +1 -1
- package/dist/tools/brainWriteCheck.test.d.ts +10 -0
- package/dist/tools/brainWriteCheck.test.d.ts.map +1 -0
- package/dist/tools/brainWriteCheck.test.js +67 -0
- package/dist/tools/brainWriteCheck.test.js.map +1 -0
- package/dist/tools/brainstormTurnAnnotations.test.d.ts +8 -0
- package/dist/tools/brainstormTurnAnnotations.test.d.ts.map +1 -0
- package/dist/tools/brainstormTurnAnnotations.test.js +93 -0
- package/dist/tools/brainstormTurnAnnotations.test.js.map +1 -0
- package/dist/tools/employeeTraining.d.ts +46 -0
- package/dist/tools/employeeTraining.d.ts.map +1 -0
- package/dist/tools/employeeTraining.js +329 -0
- package/dist/tools/employeeTraining.js.map +1 -0
- package/dist/tools/employeeTraining.test.d.ts +7 -0
- package/dist/tools/employeeTraining.test.d.ts.map +1 -0
- package/dist/tools/employeeTraining.test.js +190 -0
- package/dist/tools/employeeTraining.test.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +231 -6
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/runs.d.ts +43 -0
- package/dist/tools/runs.d.ts.map +1 -0
- package/dist/tools/runs.js +280 -0
- package/dist/tools/runs.js.map +1 -0
- package/dist/tools/runs.test.d.ts +9 -0
- package/dist/tools/runs.test.d.ts.map +1 -0
- package/dist/tools/runs.test.js +114 -0
- package/dist/tools/runs.test.js.map +1 -0
- package/dist/tools/tools.test.js +153 -2
- package/dist/tools/tools.test.js.map +1 -1
- package/package.json +79 -78
- package/skills/catalog.json +3 -2
- package/skills/manifest.json +2 -1
- package/skills/skills/multiagent-brainstorm/SKILL.md +50 -4
|
@@ -80,7 +80,8 @@ loop:
|
|
|
80
80
|
if you agree with their outcome:
|
|
81
81
|
brainstorm_conclude(session_id, outcome) # mutual consensus
|
|
82
82
|
else:
|
|
83
|
-
brainstorm_turn(session_id, "<why not yet, what's open>"
|
|
83
|
+
brainstorm_turn(session_id, "<why not yet, what's open>",
|
|
84
|
+
tag="objection", refs=[<seq of the proposal>])
|
|
84
85
|
continue
|
|
85
86
|
|
|
86
87
|
if it's your turn (peer has posted since your last, or you're the initiator on seq 0):
|
|
@@ -88,7 +89,7 @@ loop:
|
|
|
88
89
|
if a decision here really needs a human (scope, tradeoff, commitment):
|
|
89
90
|
return { need_human: { question, digest, after_seq } }
|
|
90
91
|
else:
|
|
91
|
-
brainstorm_turn(session_id, "<your turn>")
|
|
92
|
+
brainstorm_turn(session_id, "<your turn>", tag=<tag>, refs=[<seqs it answers>])
|
|
92
93
|
# when you believe you're done, post kind="propose_conclude" with a draft outcome instead
|
|
93
94
|
continue
|
|
94
95
|
|
|
@@ -97,10 +98,55 @@ loop:
|
|
|
97
98
|
# if last_turn_at is older than the silence deadline, brainstorm_close(state="abandoned")
|
|
98
99
|
```
|
|
99
100
|
|
|
101
|
+
**Tag every turn and cite what it answers.** `brainstorm_turn` takes `tag`
|
|
102
|
+
(`idea` · `question` · `objection` · `decision` · `summary`) and `refs`, the
|
|
103
|
+
`seq` numbers of the earlier turns it answers or objects to (at most 20; a seq
|
|
104
|
+
not yet written is refused with `invalid_ref`). They are what the live
|
|
105
|
+
brainstorm graph draws — an untagged turn with no refs is a plain message
|
|
106
|
+
joined only to the one before it, and a graph of those tells the people
|
|
107
|
+
watching nothing. Answering a question: `tag="decision"` or `"idea"`,
|
|
108
|
+
`refs=[<its seq>]`. Disagreeing: `tag="objection"`, `refs=[<the turn>]`.
|
|
109
|
+
|
|
100
110
|
**Discipline:** one contribution per turn; stay on the topic; don't rubber-stamp
|
|
101
111
|
— push back when the design isn't right yet; propose_conclude only when the
|
|
102
112
|
problem, approach, and key decisions are actually settled.
|
|
103
113
|
|
|
114
|
+
## Group brainstorms (three to six agents)
|
|
115
|
+
|
|
116
|
+
Pass `participants: [...]` instead of `peer` (at most 5 besides you) to open a
|
|
117
|
+
group session; it needs `AGENTHUB_GROUP_CONVERSATIONS_ENABLED=true` on the
|
|
118
|
+
server, otherwise `400 group_conversations_disabled`. Each participant gets an
|
|
119
|
+
invite and runs the responder flow; the session is active once one joins.
|
|
120
|
+
Options: `turn_policy` (`round_robin` default, `free`, `moderated`),
|
|
121
|
+
`moderator` (moderated only, default you), and `mirror_channel` (a Goshti
|
|
122
|
+
channel such as `#winery`: every turn goes to one thread there, and a reply in
|
|
123
|
+
that thread by a person in the organization arrives as a `human_note` turn —
|
|
124
|
+
treat it like your human's input).
|
|
125
|
+
|
|
126
|
+
**In a group, wait for your turn.** The loop above changes in three places:
|
|
127
|
+
|
|
128
|
+
- **Whose move it is comes from the server, not from who spoke last.**
|
|
129
|
+
`brainstorm_poll` returns `next_speaker` and `participants`. Under
|
|
130
|
+
`round_robin` post only when `next_speaker` is you; under `moderated` only
|
|
131
|
+
when you hold the floor (the moderator hands it on with
|
|
132
|
+
`brainstorm_yield(session_id, to)`, and yields to itself to take it back);
|
|
133
|
+
under `free` anyone may speak, but not twice in a row. A turn out of order is
|
|
134
|
+
refused with `409 not_your_turn` and is not stored — read it as "poll and
|
|
135
|
+
wait", never retry the same turn in a loop.
|
|
136
|
+
- **A silent speaker is skipped.** If the next speaker says nothing before the
|
|
137
|
+
silence deadline, the server writes a `system` turn recording the skip and
|
|
138
|
+
moves on; the session is abandoned only after a whole round of silence. Read
|
|
139
|
+
`system` turns, don't answer them.
|
|
140
|
+
- **Concluding needs everyone.** Only the initiator proposes
|
|
141
|
+
(`kind="propose_conclude"`); poll then shows `conclusion_pending: true`.
|
|
142
|
+
Every other participant answers once, on its turn: agree by posting
|
|
143
|
+
`kind="propose_conclude"` too, or object with any other turn
|
|
144
|
+
(`tag="objection"`, `refs=[<seq of the proposal>]`). One objection withdraws the proposal and
|
|
145
|
+
the session carries on; a participant skipped for silence counts as not
|
|
146
|
+
objecting. The initiator calls `brainstorm_conclude` once nobody objected.
|
|
147
|
+
|
|
148
|
+
`max_turns` counts every author's turns; the initiator can raise it to 120.
|
|
149
|
+
|
|
104
150
|
## Human escalation (return-and-resume)
|
|
105
151
|
|
|
106
152
|
A background subagent can't ask a human directly. When it returns
|
|
@@ -159,6 +205,6 @@ the last turn, so a long escalation counts as silence.
|
|
|
159
205
|
## Tool reference
|
|
160
206
|
|
|
161
207
|
`brainstorm_open` · `brainstorm_accept` · `brainstorm_turn` · `brainstorm_poll` ·
|
|
162
|
-
`
|
|
163
|
-
`brainstorm_link_change`. Full design: the `multiagent-brainstorm-design` doc;
|
|
208
|
+
`brainstorm_yield` · `brainstorm_conclude` · `brainstorm_close` ·
|
|
209
|
+
`brainstorm_get` · `brainstorm_link_change`. Full design: the `multiagent-brainstorm-design` doc;
|
|
164
210
|
guide: `multiagent-brainstorm-guide`.
|