@taskforcehq/taskforce 0.3.324 → 0.3.326

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.
Files changed (64) hide show
  1. package/dist/Taskforce.module.css +39 -0
  2. package/dist/components/features/TaskSettings.js +26 -9
  3. package/dist/components/task/TaskKanban.d.ts +2 -2
  4. package/dist/components/views/StandaloneLayout.js +22 -22
  5. package/dist/components/views/panels/PlanningDrawer.d.ts +2 -2
  6. package/dist/components/views/panels/PlanningDrawer.js +26 -12
  7. package/dist/components/views/planningScope.d.ts +4 -0
  8. package/dist/components/views/planningScope.js +5 -0
  9. package/dist/core/AiProfileService.js +6 -1
  10. package/dist/hooks/useTaskforce.js +74 -17
  11. package/dist/hooks/workspace/workspaceLocalState.d.ts +25 -0
  12. package/dist/hooks/workspace/workspaceLocalState.js +38 -0
  13. package/dist/mcp/adminWorkspaceRegistrar.js +0 -10
  14. package/dist/mcp/clientIntegrations.d.ts +1 -1
  15. package/dist/mcp/clientIntegrations.js +50 -0
  16. package/dist/mcp/clientProfileDefaults.js +4 -0
  17. package/dist/mcp/collaborationRegistrar.js +3 -3
  18. package/dist/mcp/documentAssetRegistrar.js +24 -72
  19. package/dist/mcp/documentHelpers.d.ts +11 -4
  20. package/dist/mcp/documentHelpers.js +21 -17
  21. package/dist/mcp/runtime.d.ts +4 -0
  22. package/dist/mcp/runtime.js +466 -534
  23. package/dist/mcp/taskPlanningRegistrar.js +45 -81
  24. package/dist/mcp/toolProfiles.d.ts +7 -0
  25. package/dist/mcp/toolProfiles.js +36 -0
  26. package/dist/mcp/toolRegistry.d.ts +87 -609
  27. package/dist/mcp/toolRegistry.js +93 -88
  28. package/dist/resources/templates/workflow-sources/workflowDocs.mjs +10 -10
  29. package/dist/resources/templates/workflows/collaborate.yaml +2 -3
  30. package/dist/resources/templates/workflows/do.yaml +2 -3
  31. package/dist/resources/templates/workflows/evaluate.yaml +2 -3
  32. package/dist/resources/templates/workflows/execute.yaml +12 -15
  33. package/dist/resources/templates/workflows/plan.yaml +3 -4
  34. package/dist/resources/templates/workflows/review.yaml +2 -3
  35. package/dist/shared/taxonomyLibrary.js +1 -1
  36. package/dist/sync/cloudSyncApi.js +22 -3
  37. package/dist/types.js +1 -1
  38. package/dist/ui/assets/{AgentsModule-DvkbUHi0.js → AgentsModule-C4LcqhcZ.js} +1 -1
  39. package/dist/ui/assets/{AnnotatedAttachmentWorkspace-jhOhxqHT.js → AnnotatedAttachmentWorkspace-B-Dq22d2.js} +1 -1
  40. package/dist/ui/assets/{ContextAttachmentManager-BAmEyLHL.js → ContextAttachmentManager-DsXPTvi-.js} +1 -1
  41. package/dist/ui/assets/{DocumentWorkspace-X-CpD5OO.js → DocumentWorkspace-CxA1wO3U.js} +1 -1
  42. package/dist/ui/assets/{EntityActivityTimeline-DD33onAC.js → EntityActivityTimeline-B8nSe8l3.js} +1 -1
  43. package/dist/ui/assets/{InitiativesModule-5nDXtIjf.js → InitiativesModule-VY95v38E.js} +1 -1
  44. package/dist/ui/assets/{PlansPage-B8nDR1hQ.js → PlansPage-CQbKDv1a.js} +1 -1
  45. package/dist/ui/assets/{TaskContextUpload-DrGrXJHm.js → TaskContextUpload-DvDlNpHC.js} +1 -1
  46. package/dist/ui/assets/TaskSettings-CUWbYYtP.js +12 -0
  47. package/dist/ui/assets/{WorkflowsModule-DWCGhEWT.js → WorkflowsModule-CgM3Jako.js} +1 -1
  48. package/dist/ui/assets/documentReferences-Do9YjrS3.js +1 -0
  49. package/dist/ui/assets/index--mh3pktj.js +5 -0
  50. package/dist/ui/assets/index-BawaaEXS.css +1 -0
  51. package/dist/ui/index.html +2 -2
  52. package/dist/utils/theme.js +1 -1
  53. package/package.json +1 -1
  54. package/src/resources/templates/workflow-sources/workflowDocs.mjs +10 -10
  55. package/src/resources/templates/workflows/collaborate.yaml +2 -3
  56. package/src/resources/templates/workflows/do.yaml +2 -3
  57. package/src/resources/templates/workflows/evaluate.yaml +2 -3
  58. package/src/resources/templates/workflows/execute.yaml +12 -15
  59. package/src/resources/templates/workflows/plan.yaml +3 -4
  60. package/src/resources/templates/workflows/review.yaml +2 -3
  61. package/dist/ui/assets/TaskSettings-BXVvZZwH.js +0 -9
  62. package/dist/ui/assets/documentReferences-Crup321p.js +0 -1
  63. package/dist/ui/assets/index-B9k24Aym.js +0 -5
  64. package/dist/ui/assets/index-DNeR5dYW.css +0 -1
@@ -47,13 +47,16 @@ export declare function createDocumentHelpers(deps: DocumentHelpersDeps): {
47
47
  nextTool: string;
48
48
  suggestedArgs: {
49
49
  documentId: string;
50
+ includeContent: boolean;
50
51
  };
51
52
  guidance: string;
52
53
  reviewNext: {
53
54
  helperTool: string;
54
55
  listTool: string;
55
- createTool: string;
56
- commentTool: string;
56
+ extendedTools: {
57
+ createTool: string;
58
+ commentTool: string;
59
+ };
57
60
  guidance: string;
58
61
  };
59
62
  reason?: undefined;
@@ -62,13 +65,16 @@ export declare function createDocumentHelpers(deps: DocumentHelpersDeps): {
62
65
  nextTool: string;
63
66
  suggestedArgs: {
64
67
  documentId: string;
68
+ includeContent: boolean;
65
69
  };
66
70
  guidance: string;
67
71
  reviewNext: {
68
72
  helperTool: string;
69
73
  listTool: string;
70
- createTool: string;
71
- commentTool: string;
74
+ extendedTools: {
75
+ createTool: string;
76
+ commentTool: string;
77
+ };
72
78
  guidance: string;
73
79
  };
74
80
  reason: string;
@@ -84,6 +90,7 @@ export declare function createDocumentHelpers(deps: DocumentHelpersDeps): {
84
90
  preferredWorkflow: string;
85
91
  suggestedArgs: {
86
92
  documentId: string;
93
+ includeContent: boolean;
87
94
  };
88
95
  guidance: string;
89
96
  } | null;
@@ -21,29 +21,33 @@ export function createDocumentHelpers(deps) {
21
21
  if (readable) {
22
22
  return {
23
23
  available: true,
24
- nextTool: 'read_document_content',
25
- suggestedArgs: { documentId: preferredIdentifier },
26
- guidance: 'To read the document body, call read_document_content with this documentId.',
24
+ nextTool: 'get_document',
25
+ suggestedArgs: { documentId: preferredIdentifier, includeContent: true },
26
+ guidance: 'To read the document body, call get_document with includeContent=true.',
27
27
  reviewNext: {
28
28
  helperTool: 'review_document',
29
- listTool: 'get_document_review_sessions',
30
- createTool: 'create_document_review_session',
31
- commentTool: 'add_document_review_comment',
32
- guidance: 'After reading the document body, prefer review_document for a lower-friction review flow, or use get_document_review_sessions/create_document_review_session and add_document_review_comment directly.'
29
+ listTool: 'get_document_reviews',
30
+ extendedTools: {
31
+ createTool: 'create_document_review_session',
32
+ commentTool: 'add_document_review_comment',
33
+ },
34
+ guidance: 'After reading the document body, use review_document for default-profile review comments. Use get_document_reviews to inspect saved sessions; extended-profile clients may manage sessions and comments manually.'
33
35
  }
34
36
  };
35
37
  }
36
38
  return {
37
39
  available: false,
38
- nextTool: 'read_document_content',
39
- suggestedArgs: { documentId: preferredIdentifier },
40
- guidance: 'This document is not inline-readable as text. Call read_document_content to get the structured download/reference response.',
40
+ nextTool: 'get_document',
41
+ suggestedArgs: { documentId: preferredIdentifier, includeContent: true },
42
+ guidance: 'This document is not inline-readable as text. Call get_document with includeContent=true to get the structured download/reference response.',
41
43
  reviewNext: {
42
44
  helperTool: 'review_document',
43
- listTool: 'get_document_review_sessions',
44
- createTool: 'create_document_review_session',
45
- commentTool: 'add_document_review_comment',
46
- guidance: 'After inspecting the document access response, prefer review_document for a lower-friction review flow, or use get_document_review_sessions/create_document_review_session and add_document_review_comment directly.'
45
+ listTool: 'get_document_reviews',
46
+ extendedTools: {
47
+ createTool: 'create_document_review_session',
48
+ commentTool: 'add_document_review_comment',
49
+ },
50
+ guidance: 'After inspecting the document access response, use review_document for default-profile review comments. Use get_document_reviews to inspect saved sessions; extended-profile clients may manage sessions and comments manually.'
47
51
  },
48
52
  reason: 'binary_file',
49
53
  };
@@ -60,10 +64,10 @@ export function createDocumentHelpers(deps) {
60
64
  documentId: typeof asset.documentId === 'string' && asset.documentId.trim().length > 0 ? asset.documentId.trim() : null,
61
65
  preferredNextTool: 'get_document',
62
66
  preferredWorkflow: 'canonical_document',
63
- suggestedArgs: { documentId: preferredIdentifier },
67
+ suggestedArgs: { documentId: preferredIdentifier, includeContent: readable },
64
68
  guidance: readable
65
- ? 'This attachment is a canonical document. Prefer get_document, then read_document_content, for ongoing document work and review.'
66
- : 'This attachment is a canonical document. Prefer get_document for metadata and review context, then read_document_content for the structured content/download response.',
69
+ ? 'This attachment is a canonical document. Prefer get_document with includeContent=true for ongoing document work and review.'
70
+ : 'This attachment is a canonical document. Prefer get_document for metadata and review context, then use includeContent=true for the structured content/download response.',
67
71
  };
68
72
  };
69
73
  const searchDocumentAssets = (queryRaw, options) => {
@@ -3,6 +3,7 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
3
3
  import { McpAccessTokenScope, TaskforceCore } from '../core/Taskforce.js';
4
4
  import { type AiProfileBootstrapConfig } from './aiProfileBootstrap.js';
5
5
  import { type AiProfileSeatScope } from '../shared/aiProfileSeatScope.js';
6
+ import { type McpToolProfile } from './toolRegistry.js';
6
7
  export interface TaskforceMcpServerOptions {
7
8
  projectRoot?: string;
8
9
  tenantId?: string;
@@ -12,6 +13,7 @@ export interface TaskforceMcpServerOptions {
12
13
  version?: string;
13
14
  logStartup?: boolean;
14
15
  runtimeMode?: 'local' | 'cloud';
16
+ toolProfile?: McpToolProfile;
15
17
  auth?: {
16
18
  scopes?: McpAccessTokenScope[] | null;
17
19
  userId?: string | null;
@@ -80,6 +82,7 @@ export declare function createTaskforceMcpServer(options?: TaskforceMcpServerOpt
80
82
  workspaceId: string;
81
83
  tenantId: string;
82
84
  version: string;
85
+ toolProfile: "default" | "full" | "extended";
83
86
  };
84
87
  export declare function startTaskforceMcpStdioServer(options?: TaskforceMcpServerOptions): Promise<{
85
88
  transport: StdioServerTransport;
@@ -123,4 +126,5 @@ export declare function startTaskforceMcpStdioServer(options?: TaskforceMcpServe
123
126
  workspaceId: string;
124
127
  tenantId: string;
125
128
  version: string;
129
+ toolProfile: "default" | "full" | "extended";
126
130
  }>;