agent-ecosystem/agent-teams-controller/src/controller.js
iliya 0d0364cfd3 feat: introduce MEMBER_DELEGATE_DESCRIPTION for action mode protocols
- Added MEMBER_DELEGATE_DESCRIPTION constant to centralize the delegate instructions for action mode protocols, improving code maintainability.
- Updated buildActionModeProtocolText to utilize the new constant, enhancing clarity and reducing duplication.
- Enhanced messageStore and TeamProvisioningService to support filePath handling in attachments, improving metadata management.
- Updated type definitions to reflect the addition of MEMBER_DELEGATE_DESCRIPTION in the protocols interface.
2026-03-18 14:01:21 +02:00

54 lines
1.6 KiB
JavaScript

const { createControllerContext } = require('./internal/context.js');
const tasks = require('./internal/tasks.js');
const kanban = require('./internal/kanban.js');
const review = require('./internal/review.js');
const messages = require('./internal/messages.js');
const processes = require('./internal/processes.js');
const maintenance = require('./internal/maintenance.js');
const crossTeam = require('./internal/crossTeam.js');
const runtime = require('./internal/runtime.js');
const agentBlocks = require('./internal/agentBlocks.js');
function bindModule(context, moduleApi) {
return Object.fromEntries(
Object.entries(moduleApi).map(([name, fn]) => [
name,
(...args) => fn(context, ...args),
])
);
}
function createController(options) {
const context = createControllerContext(options);
return {
context,
tasks: bindModule(context, tasks),
kanban: bindModule(context, kanban),
review: bindModule(context, review),
messages: bindModule(context, messages),
processes: bindModule(context, processes),
maintenance: bindModule(context, maintenance),
crossTeam: bindModule(context, crossTeam),
runtime: bindModule(context, runtime),
};
}
module.exports = {
createController,
createControllerContext,
agentBlocks,
protocols: {
buildActionModeProtocolText: tasks.buildActionModeProtocolText,
MEMBER_DELEGATE_DESCRIPTION: tasks.MEMBER_DELEGATE_DESCRIPTION,
buildProcessProtocolText: tasks.buildProcessProtocolText,
},
tasks,
kanban,
review,
messages,
processes,
maintenance,
crossTeam,
runtime,
};