paperclip-plugin-mattermost 0.15.0 → 0.15.2
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 +2 -2
- package/dist/manifest.js +1 -1
- package/dist/worker.js +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Your [Paperclip](https://github.com/paperclipai/paperclip) agents as Mattermost
|
|
|
17
17
|
- **Agents work with agents.** An agent mentioning another agent starts it, and it answers in the thread. After a set number of agent-to-agent messages in a thread (10 by default, set in settings), they pause until a person replies.
|
|
18
18
|
- **Work channels.** For an investigation, incident or project, an agent opens a private channel (`inc-checkout-5xx`), pulls in the people and agents it needs, and ties it to a Paperclip task. Task comments and status changes show up in the channel. When the task is done or cancelled, the channel is archived and the outcome is posted back where the work was asked for.
|
|
19
19
|
- **Ask first.** Some actions wait for an approver to click Approve: `@channel`, `@all` and `@here`, public channels, and adding people to a channel the agent didn't create. Agents can't change or archive channels they didn't create, remove anyone, or touch team and server settings.
|
|
20
|
-
- **Agent computer requests.** With the Agent computer plugin installed, an agent that needs a person
|
|
20
|
+
- **Agent computer requests.** With the Agent computer plugin installed, an agent that needs a person at its computer (a login, 2FA, a password) posts in the thread it is working in, or the approvals channel, with a link to take over.
|
|
21
21
|
- **One install, many companies.** Each Paperclip company connects its own Mattermost, with its own settings, bots and state.
|
|
22
22
|
|
|
23
23
|
## Requirements
|
|
@@ -83,7 +83,7 @@ PAPERCLIP_REF=<commit> node build.mjs # build for another Paperclip version
|
|
|
83
83
|
Bump `version` in `package.json` and `src/manifest.ts`, commit, then tag and push:
|
|
84
84
|
|
|
85
85
|
```bash
|
|
86
|
-
git tag -a v0.15.
|
|
86
|
+
git tag -a v0.15.2 -m v0.15.2 && git push origin main v0.15.2
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
GitHub Actions builds, tests and publishes to npm through npm trusted publishing, so no npm token is involved.
|
package/dist/manifest.js
CHANGED
|
@@ -74,7 +74,7 @@ var route = (routeKey, method, path) => ({ routeKey, method, path, auth: "agent"
|
|
|
74
74
|
var manifest = {
|
|
75
75
|
id: "mattermost-bridge",
|
|
76
76
|
apiVersion: 1,
|
|
77
|
-
version: "0.15.
|
|
77
|
+
version: "0.15.2",
|
|
78
78
|
displayName: "Mattermost",
|
|
79
79
|
description: "Every agent becomes its own Mattermost bot. DM an agent or mention it in a channel and it answers in the thread, showing its steps as it works; follow-ups continue the conversation. Paperclip approvals arrive with Approve / Reject buttons.",
|
|
80
80
|
author: "Haseeb Azhar",
|
package/dist/worker.js
CHANGED
|
@@ -46211,7 +46211,7 @@ var route = (routeKey, method, path3) => ({ routeKey, method, path: path3, auth:
|
|
|
46211
46211
|
var manifest = {
|
|
46212
46212
|
id: "mattermost-bridge",
|
|
46213
46213
|
apiVersion: 1,
|
|
46214
|
-
version: "0.15.
|
|
46214
|
+
version: "0.15.2",
|
|
46215
46215
|
displayName: "Mattermost",
|
|
46216
46216
|
description: "Every agent becomes its own Mattermost bot. DM an agent or mention it in a channel and it answers in the thread, showing its steps as it works; follow-ups continue the conversation. Paperclip approvals arrive with Approve / Reject buttons.",
|
|
46217
46217
|
author: "Haseeb Azhar",
|
|
@@ -46604,7 +46604,7 @@ var Tenant = class {
|
|
|
46604
46604
|
if (!this.actions) return { status: 503, body: { error: `Mattermost is not connected for this company (${this.status})` } };
|
|
46605
46605
|
return this.actions.handle(agentId, routeKey, params, input2);
|
|
46606
46606
|
}
|
|
46607
|
-
/** The Agent computer plugin: an agent wants a person
|
|
46607
|
+
/** The Agent computer plugin: an agent wants a person at its computer. Posted where the agent is working. */
|
|
46608
46608
|
async computerNeedsPerson(p) {
|
|
46609
46609
|
if (!this.manager || !this.bots || !this.bridge || !p.agentId) return;
|
|
46610
46610
|
const poster = this.poster(this.manager, this.bots);
|
|
@@ -46612,7 +46612,7 @@ var Tenant = class {
|
|
|
46612
46612
|
if (!where) return;
|
|
46613
46613
|
const link = this.paperclipUrl && p.path ? `${this.paperclipUrl}${p.path}` : null;
|
|
46614
46614
|
const on = p.url ? ` on ${p.url}` : "";
|
|
46615
|
-
const message2 = p.kind === "password" ? `:key: I ${p.reason ?? "need a password"}${on}. ${link ? `[Enter it here](${link})` : "Enter it from Computers in Paperclip"}: it goes straight into the page, and I never see it.` : `:raising_hand: I need a person
|
|
46615
|
+
const message2 = p.kind === "password" ? `:key: I ${p.reason ?? "need a password"}${on}. ${link ? `[Enter it here](${link})` : "Enter it from Computers in Paperclip"}: it goes straight into the page, and I never see it.` : `:raising_hand: I need a person at ${p.computer ?? p.browser ? `the shared ${p.computer ?? p.browser} computer` : "my computer"}${on}: ${p.reason ?? "I am stuck"}. ${link ? `[Take over](${link})` : "Take over from Computers in Paperclip"}, then hand it back; I carry on as soon as you do.`;
|
|
46616
46616
|
await poster.post(p.agentId, where, message2, { ...FROM_PAPERCLIP });
|
|
46617
46617
|
}
|
|
46618
46618
|
async notify(req, notice) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "paperclip-plugin-mattermost",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.2",
|
|
4
4
|
"description": "Paperclip agents in Mattermost: a bot per agent, live progress, files, approval and decision buttons, and per-person access, for each Paperclip company.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|