You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`channels[].mode` now accepts `fixed` (default) or `pairing`. Pairing-mode channels create a transport-only IM connection without binding to an Identity or Template, which is required for Forward Schedule sinks such as scheduled group broadcasts. Fixed-mode channels retain the existing behavior and continue to require `agent` and `identity`.
agent: support-agent # required for mode: fixed; ignored for mode: pairing
77
+
identity: chen # optional; inherits defaults.identity. ignored for mode: pairing
78
78
type: dingtalk
79
+
mode: fixed # optional; defaults to fixed
79
80
name: Support DingTalk # optional; defaults to the YAML key
80
81
enabled: true # optional; defaults to true
81
82
credentials:
@@ -86,7 +87,34 @@ channels:
86
87
include_thinking: false
87
88
```
88
89
89
-
The declaration intentionally uses logical `agent` and `identity` references. Provider adapters resolve remote ids and map `type`, `credentials`, and `options` to provider wire fields. Qoder Channels require the referenced Agent to use Forward delivery. Credential-based Qoder support currently covers DingTalk, Feishu, and WeCom; personal WeChat remains QR-only.
| `type` | string | yes | Provider-specific channel type. Qoder supports `dingtalk`, `feishu`, and `wecom`; `wechat` is QR-only. |
96
+
| `mode` | `fixed` \| `pairing` | no | `fixed` (default) binds the channel to one Identity/Template. `pairing` creates a transport-only channel for Schedules/Sinks. |
97
+
| `name` | string | no | Display name; defaults to the YAML key. |
98
+
| `enabled` | boolean | no | Defaults to `true`. |
| `options` | map | no | Provider-specific response options, e.g. `include_tool_calls`, `include_thinking`. |
101
+
102
+
The declaration intentionally uses logical `agent` and `identity` references. Provider adapters resolve remote ids and map `type`, `credentials`, and `options` to provider wire fields. Qoder Channels in `fixed` mode require the referenced Agent to use Forward delivery. `pairing` mode omits Identity/Template binding and is intended for Schedule sinks such as scheduled group broadcasts. Credential-based Qoder support currently covers DingTalk, Feishu, and WeCom; personal WeChat remains QR-only.
103
+
104
+
### Managed tool config
105
+
106
+
`managed_tool_config`declares the provider-operated tools an Agent Harness runs
107
+
itself, rather than tools the model calls through the sandbox. Schedule
108
+
management is the current use: enabling `create_forward_schedule`,
109
+
`list_forward_schedules`, and `delete_forward_schedule` lets an end user create
110
+
and cancel Schedules in natural language from a Web or IM Channel conversation.
111
+
112
+
`enabled_tools`replaces the provider's whole enabled set, so an empty array
113
+
turns every managed tool off. Omitting the field entirely sends nothing: because
114
+
Qoder Forward Template updates are merge-style, an undeclared field leaves
115
+
whatever the remote Template already had. Declare it whenever the tools matter —
116
+
a Template recreated from scratch (after a destroy, a manual deletion, or lost
117
+
state) otherwise comes back with no managed tools and no error.
90
118
91
119
## Provider configuration
92
120
@@ -253,6 +281,7 @@ agents:
253
281
vault: <string>
254
282
memory_stores: [ <string> ]
255
283
environment_variables: { <key>: <string> } # Qoder only
| `environment_variables` | map<string,string> | no | Qoder runtime variables. Managed Sessions use Qoder's `KEY=VALUE;...` wire format; Forward Templates store the map as defaults and Forward Sessions send it under `config.environment_variables`. |
306
+
| `managed_tool_config.enabled_tools` | string[] | no | Provider-operated tools the Agent Harness exposes, e.g. `create_forward_schedule`, `list_forward_schedules`, `delete_forward_schedule`. Qoder Forward delivery only; declaring it on managed delivery is a validation error. |
277
307
| `resources` | SessionResource[] | no | Resources attached to every managed Session created for the Agent. |
278
308
| `multiagent.type` | `"coordinator"` | no | Declare a coordinator agent. |
0 commit comments