@swoft/collaboration
v2.0.4
Published
Team collaboration and coordination system
Downloads
7
Readme
@swoft/coordination-client
Migration Status: This package references consolidated packages from the DDD migration (36 → 8 packages)
Production-ready TypeScript client for the Swoft Coordination API.
Installation
pnpm add @swoft/coordination-clientQuick Start
import { CoordinationApiClient, WorkflowAggregationService } from '@swoft/coordination-client';
// Create client instance
const client = new CoordinationApiClient('http://localhost:4004');
// Get coordination dashboard
const dashboard = await client.getDashboard();
console.log(`Active handoffs: ${dashboard.activeHandoffs}`);
// Use aggregation service for summaries
const service = new WorkflowAggregationService(client);
const summary = await service.getWorkflowSummary();API Reference
CoordinationApiClient
Main client for interacting with coordination API endpoints.
Methods
getDashboard()- Get full coordination dashboard datagetHandoffs(filter?)- List handoffs with optional filterscreateHandoff(handoff)- Create new handoffupdateHandoff(id, update)- Update existing handoffgetTeamStatus(team)- Get status for specific teamupdateTeamStatus(status)- Update team statusgetBlockers(filter?)- List blockers with optional filterscreateBlocker(blocker)- Report new blocker
WorkflowAggregationService
Service for aggregating and analyzing workflow data.
Methods
getWorkflowSummary()- Get comprehensive workflow summary with statistics
Types
All TypeScript interfaces are exported:
Handoff- Handoff between teamsTeamStatus- Team status and capacityBlocker- Blocking issuesCoordinationDashboard- Full dashboard dataWorkflowSummary- Aggregated workflow summary
CLI Tool
Test script included for command-line usage:
# View dashboard
npx ts-node scripts/test-coordination-dashboard.ts
# JSON output
npx ts-node scripts/test-coordination-dashboard.ts --json
# Filter by team
npx ts-node scripts/test-coordination-dashboard.ts --team Backend
# Custom API URL
npx ts-node scripts/test-coordination-dashboard.ts --url http://custom-api:4004Examples
Get Active Handoffs
const client = new CoordinationApiClient();
const handoffs = await client.getHandoffs({ status: 'in_progress' });
handoffs.forEach((h) => {
console.log(`${h.title}: ${h.fromTeam} → ${h.toTeam}`);
});Monitor Team Blockers
const dashboard = await client.getDashboard();
const criticalBlockers = dashboard.blockers.filter(
(b) => b.status === 'open' && b.priority === 'high'
);
if (criticalBlockers.length > 0) {
console.warn('Critical blockers detected!');
}Create Handoff
const handoff = await client.createHandoff({
title: 'API Implementation Complete',
description: 'User service API ready for frontend integration',
fromTeam: 'Backend',
toTeam: 'Frontend',
priority: 'high',
requirements: ['API documentation', 'Test endpoints'],
acceptanceCriteria: ['All endpoints return expected data'],
createdBy: 'backend-developer',
});