@questionbase/deskfree 0.3.0-alpha.21 → 0.3.0-alpha.22

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.
@@ -1,20 +1,21 @@
1
1
  # DeskFree Tools — Full Parameter Reference
2
2
 
3
- ## Orchestrator Tools (10)
3
+ ## Orchestrator Tools (9)
4
4
 
5
5
  ### `deskfree_state`
6
- Get full workspace snapshot — all tasks, recently done tasks, active initiatives, current ways of working, and pending evaluations.
6
+ Get full workspace snapshot — all tasks, recently done tasks, active initiatives, files, current ways of working, and pending evaluations.
7
7
 
8
8
  | Parameter | Type | Required | Description |
9
9
  |-----------|------|----------|-------------|
10
10
  | *(none)* | — | — | — |
11
11
 
12
12
  **Returns:**
13
- - `tasks` — active tasks array
13
+ - `tasks` — active tasks array (includes `fileId` and `fileName` if linked to a file)
14
14
  - `recentlyDone` — recently completed tasks
15
15
  - `waysOfWorking` — global ways of working (string or null)
16
16
  - `pendingEvaluations` — array of `{taskId, taskNumber, title, initiativeId?}`
17
17
  - `initiatives` — active initiatives with `{id, title, status, content, contentVersion, taskCount, activeTaskCount}`
18
+ - `files` — all bot files with `{fileId, name, description, contentFormat, version, updatedAt}`
18
19
 
19
20
  ---
20
21
 
@@ -25,21 +26,36 @@ Claim a `bot` task → moves to `bot` (is_working=true). Returns full context.
25
26
  |-----------|------|----------|-------------|
26
27
  | `taskId` | string | Yes | Task UUID to claim |
27
28
 
28
- **Returns:** Full task context — instructions, current deliverable, message history, and `parentContext` (title, deliverable, instructions of the parent task if this was suggested by another task). Use this to populate sub-agent spawn prompts.
29
+ **Returns:** Full task context — instructions, message history, `parentContext` (title, summary, instructions of the parent task if this was suggested by another task), and `fileContext` (file content + metadata if the task has a linked file). Use this to populate sub-agent spawn prompts.
29
30
 
30
31
  **Errors:** 404 if task not `bot` or doesn't exist. 409 if already claimed.
31
32
 
32
33
  ---
33
34
 
34
- ### `deskfree_update_deliverable`
35
- Update task deliverable. Build incrementally as you work.
35
+ ### `deskfree_update_file`
36
+ Update a file's content. Build incrementally as you work.
36
37
 
37
38
  | Parameter | Type | Required | Description |
38
39
  |-----------|------|----------|-------------|
39
- | `taskId` | string | Yes | Task UUID |
40
- | `deliverable` | string | Yes | Full markdown deliverable content (replaces previous) |
40
+ | `fileId` | string | Yes | File ID to update |
41
+ | `content` | string | Yes | Full file content — markdown or HTML (replaces previous version) |
42
+ | `contentFormat` | string | No | `markdown` (default) for text/documents, `html` for rich web content rendered in a sandboxed iframe |
41
43
 
42
- **Note:** Each call replaces the entire deliverable. Always send the complete current version, not just new additions.
44
+ **Note:** Each call replaces the entire file content. Always send the complete current version, not just new additions.
45
+
46
+ ---
47
+
48
+ ### `deskfree_create_file`
49
+ Create a new persistent file.
50
+
51
+ | Parameter | Type | Required | Description |
52
+ |-----------|------|----------|-------------|
53
+ | `name` | string | Yes | File name (max 200 chars) |
54
+ | `description` | string | No | Brief description of the file's purpose (max 2000 chars) |
55
+ | `content` | string | No | Initial file content |
56
+ | `contentFormat` | string | No | `markdown` (default) or `html` |
57
+
58
+ **Returns:** `{ fileId, name }`
43
59
 
44
60
  ---
45
61
 
@@ -50,24 +66,24 @@ Finish a task → moves to `human`.
50
66
  |-----------|------|----------|-------------|
51
67
  | `taskId` | string | Yes | Task UUID |
52
68
  | `outcome` | string | Yes | `done` (work complete) or `blocked` (need human input) |
69
+ | `summary` | string | No | Brief summary of what was accomplished — **required for outcome `done`** (max 2000 chars) |
53
70
 
54
- **Important:** If `blocked`, send a message explaining WHY before calling this.
71
+ **Important:** If `blocked`, send a message explaining WHY before calling this. If `done`, summary is required.
55
72
 
56
73
  ---
57
74
 
58
75
  ### `deskfree_send_message`
59
- Send a message in the task thread (progress update, question, status report).
76
+ Send a message in the task thread (progress update, question, status report). Content is required.
60
77
 
61
78
  | Parameter | Type | Required | Description |
62
79
  |-----------|------|----------|-------------|
63
- | `content` | string | No | Message content. Required unless `suggestions` is provided. |
80
+ | `content` | string | Yes | Message content |
64
81
  | `taskId` | string | No | Task UUID (optional — auto-threaded to active task if omitted) |
65
- | `suggestions` | array | No | List of tasks to suggest for human review (1-10). Prefer `deskfree_suggest_tasks` for richer suggestions with estimatedTokens and dependencies. |
66
82
 
67
83
  ---
68
84
 
69
85
  ### `deskfree_suggest_tasks`
70
- Suggest tasks for human approval. Creates tasks with `suggested` status. Can also propose new initiatives.
86
+ Suggest tasks for human approval. Creates tasks with `suggested` status. Can also propose new initiatives and pre-create linked files.
71
87
 
72
88
  | Parameter | Type | Required | Description |
73
89
  |-----------|------|----------|-------------|
@@ -75,8 +91,12 @@ Suggest tasks for human approval. Creates tasks with `suggested` status. Can als
75
91
  | `suggestions[].title` | string | Yes | Task title — short, action-oriented (max 200 chars) |
76
92
  | `suggestions[].instructions` | string | No | Detailed instructions: what to do, why, what done looks like, constraints |
77
93
  | `suggestions[].estimatedTokens` | number | No | Estimated token cost for completing this task |
78
- | `suggestions[].dependsOn` | string[] | No | Task IDs this depends on (blocks claiming until those are done) |
79
94
  | `suggestions[].initiativeId` | string | No | Link task to an existing active initiative |
95
+ | `suggestions[].scheduledFor` | string | No | ISO-8601 date for when this task should become available. Use for future-dated or recurring work. |
96
+ | `suggestions[].fileId` | string | No | Link task to an existing file — bot receives file content when claiming |
97
+ | `suggestions[].newFile` | object | No | Pre-create a new file and link it to this task |
98
+ | `suggestions[].newFile.name` | string | Yes (if newFile) | File name (max 200 chars) |
99
+ | `suggestions[].newFile.description` | string | No | File description |
80
100
  | `initiativeSuggestions` | array | No | Propose new initiatives (0-5) |
81
101
  | `initiativeSuggestions[].title` | string | Yes | Initiative title (max 200 chars) |
82
102
  | `initiativeSuggestions[].content` | string | Yes | Initial initiative content (markdown — current state, approach, next priorities) |
@@ -87,27 +107,6 @@ Suggest tasks for human approval. Creates tasks with `suggested` status. Can als
87
107
 
88
108
  ---
89
109
 
90
- ### `deskfree_complete_and_suggest`
91
- Complete the current task AND suggest follow-up tasks in one atomic call.
92
-
93
- | Parameter | Type | Required | Description |
94
- |-----------|------|----------|-------------|
95
- | `taskId` | string | Yes | Task UUID to complete |
96
- | `outcome` | string | Yes | `done` or `blocked` |
97
- | `suggestions` | array | No | Follow-up task suggestions (0-20) |
98
- | `suggestions[].title` | string | Yes | Task title (max 200 chars) |
99
- | `suggestions[].instructions` | string | No | Detailed instructions |
100
- | `suggestions[].estimatedTokens` | number | No | Estimated token cost |
101
- | `suggestions[].dependsOnTaskIds` | string[] | No | Task IDs this depends on |
102
- | `suggestions[].initiativeId` | string | No | Link to existing initiative |
103
- | `initiativeSuggestions` | array | No | Propose new initiatives (same schema as deskfree_suggest_tasks) |
104
-
105
- **Returns:** Updated task object + `suggestionIds` array (if suggestions were created) + `initiativeSuggestionIds` (if initiatives were suggested).
106
-
107
- **Note:** Deliverable required for outcome `done`. Task moves to `human` for review.
108
-
109
- ---
110
-
111
110
  ### `deskfree_claim_evaluation`
112
111
  Claim a pending evaluation. Atomically sets `isWorking=true` where `evaluationPending=true` and `isWorking=false`. Returns null if already claimed.
113
112
 
@@ -129,7 +128,7 @@ Submit the result of an evaluation. Supports dual output: global ways of working
129
128
  | `globalWoW` | object | Yes | Global ways of working update |
130
129
  | `globalWoW.hasChanges` | boolean | Yes | Whether global WoW should be updated |
131
130
  | `globalWoW.updatedContent` | string | No | Full updated global WoW markdown (required if hasChanges=true) |
132
- | `initiative` | object | No | Initiative content update (only if task has initiative_id) |
131
+ | `initiative` | object | Yes | Initiative content update (required — set hasChanges=false if task has no initiative) |
133
132
  | `initiative.hasChanges` | boolean | Yes | Whether initiative content should be updated |
134
133
  | `initiative.updatedContent` | string | No | Full updated initiative content markdown (required if hasChanges=true) |
135
134
 
@@ -137,8 +136,12 @@ Submit the result of an evaluation. Supports dual output: global ways of working
137
136
 
138
137
  ---
139
138
 
140
- ## Worker Tools (4 — sub-agents only)
139
+ ## Worker Tools (7 — sub-agents only)
140
+
141
+ Sub-agents receive: `deskfree_update_file`, `deskfree_create_file`, `deskfree_complete_task`, `deskfree_send_message`, `deskfree_suggest_tasks`, `deskfree_claim_evaluation`, `deskfree_submit_evaluation`
142
+
143
+ They **cannot** use: `deskfree_state`, `deskfree_start_task`
141
144
 
142
- Sub-agents receive: `deskfree_update_deliverable`, `deskfree_complete_task`, `deskfree_send_message`, `deskfree_submit_evaluation`
145
+ Workers receive workspace context alongside evaluation data (from `deskfree_claim_evaluation`) — use it to understand current workspace state, avoid duplicate suggestions, and link follow-ups to existing initiatives.
143
146
 
144
- They **cannot** use: `deskfree_state`, `deskfree_suggest_tasks`, `deskfree_start_task`, `deskfree_claim_evaluation`
147
+ **Pattern:** After submitting evaluation, reflect and call `deskfree_suggest_tasks` for follow-up opportunities that emerged from your analysis.