@rallycry/conveyor-mcp 4.3.29 → 4.3.30
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.
- package/dist/{chunk-BKGMG2T3.js → chunk-X3EHPZNH.js} +12 -0
- package/dist/cli.js +54 -2
- package/dist/{connection-SVcp2_Qd.d.ts → connection-CRkBLz5w.d.ts} +23 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/tunnel-cli.js +1 -1
- package/dist/tunnel.d.ts +1 -1
- package/dist/wait-cli.js +1 -1
- package/dist/wait-runner.d.ts +1 -1
- package/dist/wait.d.ts +1 -1
- package/package.json +1 -1
|
@@ -615,6 +615,18 @@ var ConveyorConnection = class {
|
|
|
615
615
|
}
|
|
616
616
|
return result;
|
|
617
617
|
}
|
|
618
|
+
/**
|
|
619
|
+
* Move a card under a new parent, or detach it with an explicit null.
|
|
620
|
+
* `parentTaskId` rides the rest-spread rather than a conditional one so a
|
|
621
|
+
* null survives the call — stripping it would silently no-op a detach.
|
|
622
|
+
*/
|
|
623
|
+
setTaskParent(params) {
|
|
624
|
+
const { projectId, ...rest } = params;
|
|
625
|
+
return this.call("setProjectTaskParent", {
|
|
626
|
+
projectId: this.resolveProjectId(projectId),
|
|
627
|
+
...rest
|
|
628
|
+
});
|
|
629
|
+
}
|
|
618
630
|
updateSubtask(params) {
|
|
619
631
|
const { projectId, ...rest } = params;
|
|
620
632
|
return this.call("updateProjectSubtask", {
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ConveyorConnection
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-X3EHPZNH.js";
|
|
5
5
|
|
|
6
6
|
// src/cli.ts
|
|
7
7
|
import { createRequire } from "module";
|
|
@@ -760,11 +760,46 @@ var listSubtasksContract = defineToolContract({
|
|
|
760
760
|
}
|
|
761
761
|
}
|
|
762
762
|
});
|
|
763
|
+
var SET_PARENT_ORDINAL = "Position among the new parent's children. Defaults to after every existing sibling. A detached card has no siblings to order against, so it only matters when you adopt.";
|
|
764
|
+
var SET_PARENT_WARNINGS = "The move is reported, never refused: a card that already has a pull request, live compute, a release, children of its own, or dependency edges that now cross packs comes back with a warning in the result. Its branch is NOT re-cut against the new parent's feature branch.";
|
|
765
|
+
var setTaskParentContract = defineToolContract({
|
|
766
|
+
name: "set_task_parent",
|
|
767
|
+
agent: {
|
|
768
|
+
description: `Adopt an EXISTING card into this card's pack, or eject one of this card's children. The card keeps its own chat, plan, and history \u2014 it moves under (or out from) the current card, inherits the board, and lands after the current children. To make a NEW child use create_subtask instead. ${SET_PARENT_WARNINGS}`,
|
|
769
|
+
fields: {
|
|
770
|
+
taskId: f.string({
|
|
771
|
+
desc: "Id, slug, or branch name of the card to move. Must live in this project."
|
|
772
|
+
}),
|
|
773
|
+
detach: f.optional(
|
|
774
|
+
f.boolean({
|
|
775
|
+
desc: "Eject the card from this pack instead of adopting it \u2014 it becomes a standalone card and stops following the parent's status. The card must already be a child of the current card."
|
|
776
|
+
})
|
|
777
|
+
),
|
|
778
|
+
ordinal: f.optional(f.number({ desc: SET_PARENT_ORDINAL })),
|
|
779
|
+
followParentStatus: f.optional(f.boolean({ desc: AGENT_FOLLOW_PARENT_STATUS }))
|
|
780
|
+
}
|
|
781
|
+
},
|
|
782
|
+
mcp: {
|
|
783
|
+
description: `Re-parent an existing card: pass a parentTaskId to adopt it into that card's pack, or null to detach it into a standalone card. The card keeps its chat, plan, and history; adopting also moves it to the parent's board and orders it after the parent's existing children. Use create_subtask for a NEW child, and move_card to move a card to another PROJECT. Pass projectId to target a specific project; otherwise the configured default project is used. ${SET_PARENT_WARNINGS}`,
|
|
784
|
+
fields: {
|
|
785
|
+
projectId: mcpProjectId,
|
|
786
|
+
taskId: f.string({ desc: "Id or slug of the card to move" }),
|
|
787
|
+
parentTaskId: f.nullable(
|
|
788
|
+
f.string({
|
|
789
|
+
desc: "Id or slug of the new parent, or null to detach the card from its current parent. Must be in the same project, and can be neither the card itself nor one of its own descendants."
|
|
790
|
+
})
|
|
791
|
+
),
|
|
792
|
+
ordinal: f.optional(f.number({ desc: SET_PARENT_ORDINAL })),
|
|
793
|
+
followParentStatus: f.optional(f.boolean({ desc: MCP_FOLLOW_PARENT_STATUS }))
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
});
|
|
763
797
|
var subtasksContracts = [
|
|
764
798
|
createSubtaskContract,
|
|
765
799
|
updateSubtaskContract,
|
|
766
800
|
deleteSubtaskContract,
|
|
767
|
-
listSubtasksContract
|
|
801
|
+
listSubtasksContract,
|
|
802
|
+
setTaskParentContract
|
|
768
803
|
];
|
|
769
804
|
var mcpTaskIdOrSlug = f.string({ desc: "The task ID or slug" });
|
|
770
805
|
var listTaskFilesContract = defineToolContract({
|
|
@@ -1989,11 +2024,28 @@ function registerDeleteSubtask(server2, conn2) {
|
|
|
1989
2024
|
};
|
|
1990
2025
|
});
|
|
1991
2026
|
}
|
|
2027
|
+
function registerSetTaskParent(server2, conn2) {
|
|
2028
|
+
registerContractTool(server2, setTaskParentContract, async (params) => {
|
|
2029
|
+
const result = await conn2.setTaskParent(params);
|
|
2030
|
+
const from = result.previousParentTaskId ?? "none";
|
|
2031
|
+
const to = result.parentSlug ?? result.parentTaskId ?? "none";
|
|
2032
|
+
const warnings = result.warnings.length > 0 ? ` Warnings: ${result.warnings.join(", ")}.` : "";
|
|
2033
|
+
return {
|
|
2034
|
+
content: [
|
|
2035
|
+
{
|
|
2036
|
+
type: "text",
|
|
2037
|
+
text: `Card ${result.slug} re-parented: ${from} -> ${to} (status: ${result.status}).${warnings}`
|
|
2038
|
+
}
|
|
2039
|
+
]
|
|
2040
|
+
};
|
|
2041
|
+
});
|
|
2042
|
+
}
|
|
1992
2043
|
function registerSubtaskTools(server2, conn2) {
|
|
1993
2044
|
registerCreateSubtask(server2, conn2);
|
|
1994
2045
|
registerUpdateSubtask(server2, conn2);
|
|
1995
2046
|
registerListSubtasks(server2, conn2);
|
|
1996
2047
|
registerDeleteSubtask(server2, conn2);
|
|
2048
|
+
registerSetTaskParent(server2, conn2);
|
|
1997
2049
|
}
|
|
1998
2050
|
|
|
1999
2051
|
// src/tools/dependencies.ts
|
|
@@ -260,6 +260,17 @@ interface OnboardingStepReport {
|
|
|
260
260
|
}>;
|
|
261
261
|
checks: OnboardingCheck[];
|
|
262
262
|
}
|
|
263
|
+
/** Result of `set_task_parent` — mirrors the API's `ReparentCardResult`. */
|
|
264
|
+
interface SetTaskParentResult {
|
|
265
|
+
id: string;
|
|
266
|
+
slug: string;
|
|
267
|
+
status: string;
|
|
268
|
+
previousParentTaskId: string | null;
|
|
269
|
+
parentTaskId: string | null;
|
|
270
|
+
parentSlug: string | null;
|
|
271
|
+
/** Conditions reported rather than enforced: the move landed regardless. */
|
|
272
|
+
warnings: string[];
|
|
273
|
+
}
|
|
263
274
|
interface MoveCardResult {
|
|
264
275
|
cardId: string;
|
|
265
276
|
sourceProjectId: string;
|
|
@@ -675,6 +686,18 @@ declare class ConveyorConnection {
|
|
|
675
686
|
id: string;
|
|
676
687
|
slug: string;
|
|
677
688
|
}>;
|
|
689
|
+
/**
|
|
690
|
+
* Move a card under a new parent, or detach it with an explicit null.
|
|
691
|
+
* `parentTaskId` rides the rest-spread rather than a conditional one so a
|
|
692
|
+
* null survives the call — stripping it would silently no-op a detach.
|
|
693
|
+
*/
|
|
694
|
+
setTaskParent(params: {
|
|
695
|
+
projectId?: string;
|
|
696
|
+
taskId: string;
|
|
697
|
+
parentTaskId: string | null;
|
|
698
|
+
ordinal?: number;
|
|
699
|
+
followParentStatus?: boolean;
|
|
700
|
+
}): Promise<SetTaskParentResult>;
|
|
678
701
|
updateSubtask(params: {
|
|
679
702
|
projectId?: string;
|
|
680
703
|
subtaskId: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { A as ActivePtySession, d as ConveyorConnection, e as ConveyorMcpConfig, P as PtyAttachSnapshot, c as PtyDataChunk } from './connection-
|
|
1
|
+
export { A as ActivePtySession, d as ConveyorConnection, e as ConveyorMcpConfig, P as PtyAttachSnapshot, c as PtyDataChunk } from './connection-CRkBLz5w.js';
|
|
2
2
|
export { AttachTunnelOptions, ResolvedPtySession, RunTunnelOptions, TunnelConnection, TunnelHandle, TunnelSession, TunnelTty, WaitForPtySessionOptions, attachTunnel, runTunnel, waitForPtySession } from './tunnel.js';
|
package/dist/index.js
CHANGED
package/dist/tunnel-cli.js
CHANGED
package/dist/tunnel.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as ActivePtySession, P as PtyAttachSnapshot, c as PtyDataChunk } from './connection-
|
|
1
|
+
import { A as ActivePtySession, P as PtyAttachSnapshot, c as PtyDataChunk } from './connection-CRkBLz5w.js';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* The slice of {@link ConveyorConnection} the tunnel needs. Defined as a
|
package/dist/wait-cli.js
CHANGED
package/dist/wait-runner.d.ts
CHANGED
package/dist/wait.d.ts
CHANGED