@chrisromp/copilot-bridge 0.6.1-dev.14 → 0.6.1-dev.15
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 +3 -1
- package/config.sample.json +3 -20
- package/dist/core/session-manager.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -24,7 +24,9 @@ Mattermost Channel → copilot-bridge → @github/copilot-sdk → Copilot CLI
|
|
|
24
24
|
- **MCP & skills** — Auto-loads MCP servers and skill directories from Copilot config
|
|
25
25
|
- **Fuzzy model matching** — `/model opus` resolves to `claude-opus-4.6` (mobile-friendly)
|
|
26
26
|
- **Interactive permissions** — Approve/deny tool use via chat, or `/autopilot` to auto-approve
|
|
27
|
-
- **
|
|
27
|
+
- **Model fallback** — Automatic fallback to alternative models on capacity/availability errors
|
|
28
|
+
- **Loop detection** — Detects and breaks tool call loops with user notification
|
|
29
|
+
- **Session management** — `/reload` to refresh config, `/resume` to switch between sessions (prefix matching supported)
|
|
28
30
|
- **Persistent preferences** — Model, agent, verbose mode, permissions saved per-channel
|
|
29
31
|
- **Scheduled tasks** — Recurring (cron) and one-off (datetime) tasks per channel
|
|
30
32
|
- **Inter-agent communication** — Bot-to-bot messaging via `ask_agent` tool
|
package/config.sample.json
CHANGED
|
@@ -2,15 +2,8 @@
|
|
|
2
2
|
"platforms": {
|
|
3
3
|
"mattermost": {
|
|
4
4
|
"url": "https://chat.example.com",
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
"botToken": "SINGLE_BOT_TOKEN",
|
|
9
|
-
|
|
10
|
-
"_comment_bots": "Multi-bot example (remove 'botToken' above and rename '_bots' to 'bots'):",
|
|
11
|
-
"_bots": {
|
|
12
|
-
"copilot": { "token": "BOT_TOKEN_1", "admin": true },
|
|
13
|
-
"bob": { "token": "BOT_TOKEN_2", "agent": "bob-agent" }
|
|
5
|
+
"bots": {
|
|
6
|
+
"copilot": { "token": "YOUR_BOT_TOKEN", "admin": true }
|
|
14
7
|
}
|
|
15
8
|
}
|
|
16
9
|
},
|
|
@@ -26,21 +19,11 @@
|
|
|
26
19
|
"triggerMode": "mention",
|
|
27
20
|
"threadedReplies": true,
|
|
28
21
|
"verbose": false
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"id": "another-channel-id",
|
|
32
|
-
"platform": "mattermost",
|
|
33
|
-
"bot": "bob",
|
|
34
|
-
"name": "Bob's Channel",
|
|
35
|
-
"workingDirectory": "/path/to/other-project",
|
|
36
|
-
"model": "claude-sonnet-4.6",
|
|
37
|
-
"triggerMode": "mention",
|
|
38
|
-
"threadedReplies": true,
|
|
39
|
-
"verbose": false
|
|
40
22
|
}
|
|
41
23
|
],
|
|
42
24
|
"defaults": {
|
|
43
25
|
"model": "claude-sonnet-4.6",
|
|
26
|
+
"fallbackModels": [],
|
|
44
27
|
"agent": null,
|
|
45
28
|
"triggerMode": "mention",
|
|
46
29
|
"threadedReplies": true,
|
|
@@ -855,7 +855,7 @@ export class SessionManager {
|
|
|
855
855
|
this.eventHandler?.(session.sessionId, channelId, {
|
|
856
856
|
type: 'assistant.message',
|
|
857
857
|
data: {
|
|
858
|
-
|
|
858
|
+
content: `⚠️ Model \`${prefs.model}\` is unavailable. Switched to \`${usedModel}\`.`,
|
|
859
859
|
},
|
|
860
860
|
});
|
|
861
861
|
}
|