@pennixrv/trellis 0.7.1-beta.13 → 0.7.1-beta.14
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/commands/teamwork/adapters/acp.d.ts +15 -0
- package/dist/commands/teamwork/adapters/acp.d.ts.map +1 -0
- package/dist/commands/teamwork/adapters/acp.js +261 -0
- package/dist/commands/teamwork/adapters/acp.js.map +1 -0
- package/dist/commands/teamwork/adapters/claude.d.ts +1 -0
- package/dist/commands/teamwork/adapters/claude.d.ts.map +1 -1
- package/dist/commands/teamwork/adapters/claude.js +5 -0
- package/dist/commands/teamwork/adapters/claude.js.map +1 -1
- package/dist/commands/teamwork/adapters/codex.d.ts +2 -1
- package/dist/commands/teamwork/adapters/codex.d.ts.map +1 -1
- package/dist/commands/teamwork/adapters/codex.js +10 -2
- package/dist/commands/teamwork/adapters/codex.js.map +1 -1
- package/dist/commands/teamwork/adapters/index.d.ts +23 -1
- package/dist/commands/teamwork/adapters/index.d.ts.map +1 -1
- package/dist/commands/teamwork/adapters/index.js +163 -24
- package/dist/commands/teamwork/adapters/index.js.map +1 -1
- package/dist/commands/teamwork/agent-loader.d.ts +2 -1
- package/dist/commands/teamwork/agent-loader.d.ts.map +1 -1
- package/dist/commands/teamwork/agent-loader.js +2 -1
- package/dist/commands/teamwork/agent-loader.js.map +1 -1
- package/dist/commands/teamwork/artifact.d.ts +17 -8
- package/dist/commands/teamwork/artifact.d.ts.map +1 -1
- package/dist/commands/teamwork/artifact.js +69 -28
- package/dist/commands/teamwork/artifact.js.map +1 -1
- package/dist/commands/teamwork/batch-reservation.d.ts +16 -0
- package/dist/commands/teamwork/batch-reservation.d.ts.map +1 -0
- package/dist/commands/teamwork/batch-reservation.js +43 -0
- package/dist/commands/teamwork/batch-reservation.js.map +1 -0
- package/dist/commands/teamwork/batch.d.ts +5 -0
- package/dist/commands/teamwork/batch.d.ts.map +1 -0
- package/dist/commands/teamwork/batch.js +123 -0
- package/dist/commands/teamwork/batch.js.map +1 -0
- package/dist/commands/teamwork/coordination.d.ts +12 -0
- package/dist/commands/teamwork/coordination.d.ts.map +1 -0
- package/dist/commands/teamwork/coordination.js +46 -0
- package/dist/commands/teamwork/coordination.js.map +1 -0
- package/dist/commands/teamwork/coordinator.d.ts +3 -2
- package/dist/commands/teamwork/coordinator.d.ts.map +1 -1
- package/dist/commands/teamwork/coordinator.js +19 -23
- package/dist/commands/teamwork/coordinator.js.map +1 -1
- package/dist/commands/teamwork/dev-parse-trace.d.ts +2 -1
- package/dist/commands/teamwork/dev-parse-trace.d.ts.map +1 -1
- package/dist/commands/teamwork/dev-parse-trace.js +2 -0
- package/dist/commands/teamwork/dev-parse-trace.js.map +1 -1
- package/dist/commands/teamwork/guard.d.ts.map +1 -1
- package/dist/commands/teamwork/guard.js +15 -1
- package/dist/commands/teamwork/guard.js.map +1 -1
- package/dist/commands/teamwork/index.d.ts.map +1 -1
- package/dist/commands/teamwork/index.js +75 -6
- package/dist/commands/teamwork/index.js.map +1 -1
- package/dist/commands/teamwork/plan.d.ts +11 -0
- package/dist/commands/teamwork/plan.d.ts.map +1 -0
- package/dist/commands/teamwork/plan.js +183 -0
- package/dist/commands/teamwork/plan.js.map +1 -0
- package/dist/commands/teamwork/profiles.d.ts +43 -6
- package/dist/commands/teamwork/profiles.d.ts.map +1 -1
- package/dist/commands/teamwork/profiles.js +138 -110
- package/dist/commands/teamwork/profiles.js.map +1 -1
- package/dist/commands/teamwork/rm.d.ts.map +1 -1
- package/dist/commands/teamwork/rm.js +7 -0
- package/dist/commands/teamwork/rm.js.map +1 -1
- package/dist/commands/teamwork/run.d.ts +4 -0
- package/dist/commands/teamwork/run.d.ts.map +1 -1
- package/dist/commands/teamwork/run.js +3 -0
- package/dist/commands/teamwork/run.js.map +1 -1
- package/dist/commands/teamwork/runtime.d.ts +9 -0
- package/dist/commands/teamwork/runtime.d.ts.map +1 -0
- package/dist/commands/teamwork/runtime.js +232 -0
- package/dist/commands/teamwork/runtime.js.map +1 -0
- package/dist/commands/teamwork/spawn.d.ts +4 -0
- package/dist/commands/teamwork/spawn.d.ts.map +1 -1
- package/dist/commands/teamwork/spawn.js +32 -4
- package/dist/commands/teamwork/spawn.js.map +1 -1
- package/dist/commands/teamwork/supervisor/inbox.d.ts.map +1 -1
- package/dist/commands/teamwork/supervisor/inbox.js +6 -3
- package/dist/commands/teamwork/supervisor/inbox.js.map +1 -1
- package/dist/commands/teamwork/supervisor/stdout.js +1 -1
- package/dist/commands/teamwork/supervisor/stdout.js.map +1 -1
- package/dist/commands/teamwork/supervisor.d.ts +3 -0
- package/dist/commands/teamwork/supervisor.d.ts.map +1 -1
- package/dist/commands/teamwork/supervisor.js +2 -0
- package/dist/commands/teamwork/supervisor.js.map +1 -1
- package/dist/commands/teamwork/teammate-adapters.d.ts +0 -3
- package/dist/commands/teamwork/teammate-adapters.d.ts.map +1 -1
- package/dist/commands/teamwork/teammate-adapters.js +9 -54
- package/dist/commands/teamwork/teammate-adapters.js.map +1 -1
- package/dist/commands/teamwork/teammate-launch.d.ts +8 -4
- package/dist/commands/teamwork/teammate-launch.d.ts.map +1 -1
- package/dist/commands/teamwork/teammate-launch.js +86 -6
- package/dist/commands/teamwork/teammate-launch.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +2 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/configurators/workflow.d.ts.map +1 -1
- package/dist/configurators/workflow.js +3 -1
- package/dist/configurators/workflow.js.map +1 -1
- package/dist/migrations/manifests/0.7.1-beta.14.json +11 -0
- package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/multi-agent-teamwork.md +13 -1
- package/dist/templates/common/bundled-skills/trellis-teamwork/SKILL.md +7 -3
- package/dist/templates/common/bundled-skills/trellis-teamwork/references/coordination-modes.md +14 -0
- package/dist/templates/common/bundled-skills/trellis-teamwork/references/teammate-configuration-matrix.md +33 -31
- package/dist/templates/common/bundled-skills/trellis-teamwork/references/teammate-processes.md +18 -5
- package/dist/templates/common/bundled-skills/trellis-teamwork/references/teamwork-plan-construction.md +55 -14
- package/dist/templates/trellis/agents/profiles/architecture.md +9 -0
- package/dist/templates/trellis/agents/profiles/diagnosis.md +9 -0
- package/dist/templates/trellis/agents/profiles/exploration.md +9 -0
- package/dist/templates/trellis/agents/profiles/research.md +9 -0
- package/dist/templates/trellis/agents/profiles/review.md +9 -0
- package/dist/templates/trellis/agents/profiles/verification.md +9 -0
- package/dist/templates/trellis/agents/teammate-profiles.json +56 -4
- package/dist/templates/trellis/agents/teammate.md +20 -10
- package/dist/templates/trellis/index.d.ts +1 -0
- package/dist/templates/trellis/index.d.ts.map +1 -1
- package/dist/templates/trellis/index.js +16 -4
- package/dist/templates/trellis/index.js.map +1 -1
- package/dist/templates/trellis/teamwork.json +9 -0
- package/package.json +3 -2
|
@@ -1,44 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
supportsLaunch: true,
|
|
7
|
-
supportsPrompt: true,
|
|
8
|
-
supportsContinuation: true,
|
|
9
|
-
supportsInterrupt: true,
|
|
10
|
-
supportsCancel: true,
|
|
11
|
-
supportsTerminal: true,
|
|
12
|
-
supportsFailure: true,
|
|
13
|
-
},
|
|
14
|
-
dsh: {
|
|
15
|
-
provider: "dsh",
|
|
16
|
-
transport: "acp",
|
|
17
|
-
nativeDelegationDisabled: true,
|
|
18
|
-
supportsLaunch: true,
|
|
19
|
-
supportsPrompt: true,
|
|
20
|
-
supportsContinuation: true,
|
|
21
|
-
supportsInterrupt: true,
|
|
22
|
-
supportsCancel: true,
|
|
23
|
-
supportsTerminal: true,
|
|
24
|
-
supportsFailure: true,
|
|
25
|
-
},
|
|
26
|
-
copilot: {
|
|
27
|
-
provider: "copilot",
|
|
28
|
-
transport: "acp",
|
|
29
|
-
nativeDelegationDisabled: true,
|
|
30
|
-
supportsLaunch: true,
|
|
31
|
-
supportsPrompt: true,
|
|
32
|
-
supportsContinuation: true,
|
|
33
|
-
supportsInterrupt: true,
|
|
34
|
-
supportsCancel: true,
|
|
35
|
-
supportsTerminal: true,
|
|
36
|
-
supportsFailure: true,
|
|
37
|
-
},
|
|
38
|
-
claude: {
|
|
39
|
-
provider: "claude",
|
|
40
|
-
transport: "claude-cli",
|
|
41
|
-
nativeDelegationDisabled: true,
|
|
1
|
+
import { getAdapter, listProviders } from "./adapters/index.js";
|
|
2
|
+
export function getTeammateAdapter(provider) {
|
|
3
|
+
return {
|
|
4
|
+
provider,
|
|
5
|
+
transport: getAdapter(provider).transport,
|
|
42
6
|
supportsLaunch: true,
|
|
43
7
|
supportsPrompt: true,
|
|
44
8
|
supportsContinuation: true,
|
|
@@ -46,21 +10,16 @@ const ADAPTERS = {
|
|
|
46
10
|
supportsCancel: true,
|
|
47
11
|
supportsTerminal: true,
|
|
48
12
|
supportsFailure: true,
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
export function getTeammateAdapter(provider) {
|
|
52
|
-
return ADAPTERS[provider];
|
|
13
|
+
};
|
|
53
14
|
}
|
|
54
15
|
export function listTeammateProviders() {
|
|
55
|
-
return
|
|
16
|
+
return listProviders();
|
|
56
17
|
}
|
|
57
18
|
export function assertTeammateHostCapability(provider, host, options = {}) {
|
|
58
19
|
const adapter = getTeammateAdapter(provider);
|
|
59
20
|
if (host.foregroundWait !== true ||
|
|
60
21
|
host.protectedArtifactWrites !== true ||
|
|
61
|
-
host.attemptArtifactWrites !== true
|
|
62
|
-
host.nativeDelegationDisabled !== true ||
|
|
63
|
-
host.implicitMemoryDisabled !== true) {
|
|
22
|
+
host.attemptArtifactWrites !== true) {
|
|
64
23
|
throw new Error("teammate host capability proof is incomplete; refusing batch dispatch");
|
|
65
24
|
}
|
|
66
25
|
if (!Number.isInteger(host.verifiedHostCap) || host.verifiedHostCap <= 0) {
|
|
@@ -69,9 +28,6 @@ export function assertTeammateHostCapability(provider, host, options = {}) {
|
|
|
69
28
|
if (!host.providerTransports.includes(adapter.transport)) {
|
|
70
29
|
throw new Error(`teammate provider '${provider}' transport is not verified by the host`);
|
|
71
30
|
}
|
|
72
|
-
if (!adapter.nativeDelegationDisabled) {
|
|
73
|
-
throw new Error(`teammate provider '${provider}' does not disable native delegation`);
|
|
74
|
-
}
|
|
75
31
|
const supportedOptions = host.providerOptions[provider] ?? [];
|
|
76
32
|
const unsupportedOptions = Object.keys(options).filter((key) => !supportedOptions.includes(key));
|
|
77
33
|
if (unsupportedOptions.length > 0) {
|
|
@@ -80,8 +36,7 @@ export function assertTeammateHostCapability(provider, host, options = {}) {
|
|
|
80
36
|
}
|
|
81
37
|
export function assertTeammateAdapterContract(provider) {
|
|
82
38
|
const adapter = getTeammateAdapter(provider);
|
|
83
|
-
if (!adapter.
|
|
84
|
-
!adapter.supportsLaunch ||
|
|
39
|
+
if (!adapter.supportsLaunch ||
|
|
85
40
|
!adapter.supportsPrompt ||
|
|
86
41
|
!adapter.supportsContinuation ||
|
|
87
42
|
!adapter.supportsInterrupt ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teammate-adapters.js","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-adapters.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"teammate-adapters.js","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-adapters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAgBhE,MAAM,UAAU,kBAAkB,CAChC,QAA0B;IAE1B,OAAO;QACL,QAAQ;QACR,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,SAAS;QACzC,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,IAAI;QACpB,oBAAoB,EAAE,IAAI;QAC1B,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,IAAI;QACpB,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,IAAI;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,aAAa,EAAE,CAAC;AACzB,CAAC;AAWD,MAAM,UAAU,4BAA4B,CAC1C,QAA0B,EAC1B,IAA8B,EAC9B,UAAqD,EAAE;IAEvD,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IACE,IAAI,CAAC,cAAc,KAAK,IAAI;QAC5B,IAAI,CAAC,uBAAuB,KAAK,IAAI;QACrC,IAAI,CAAC,qBAAqB,KAAK,IAAI,EACnC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CACb,sBAAsB,QAAQ,yCAAyC,CACxE,CAAC;IACJ,CAAC;IACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC9D,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CACpD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CACzC,CAAC;IACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,sBAAsB,QAAQ,8BAA8B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAA0B;IAE1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IACE,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,oBAAoB;QAC7B,CAAC,OAAO,CAAC,iBAAiB;QAC1B,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,gBAAgB;QACzB,CAAC,OAAO,CAAC,eAAe,EACxB,CAAC;QACD,MAAM,IAAI,KAAK,CACb,sBAAsB,QAAQ,wCAAwC,CACvE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TeammateAdapterContract, type TeammateHostCapabilities } from "./teammate-adapters.js";
|
|
2
|
-
import type
|
|
2
|
+
import { type ResolvedTeammateProfile } from "./profiles.js";
|
|
3
3
|
/** Role obligations frozen with the launch, not filesystem or Git isolation. */
|
|
4
4
|
export interface TeammateWritePolicy {
|
|
5
5
|
protectedTargets: "read-only";
|
|
@@ -10,7 +10,6 @@ export interface TeammateWritePolicy {
|
|
|
10
10
|
}
|
|
11
11
|
export interface TeammateCapabilitySnapshot {
|
|
12
12
|
transport: TeammateAdapterContract["transport"];
|
|
13
|
-
nativeDelegationDisabled: true;
|
|
14
13
|
supportsContinuation: true;
|
|
15
14
|
supportsInterrupt: true;
|
|
16
15
|
supportsCancel: true;
|
|
@@ -22,8 +21,6 @@ export interface TeammateCapabilitySnapshot {
|
|
|
22
21
|
foregroundWait: true;
|
|
23
22
|
protectedArtifactWrites: true;
|
|
24
23
|
attemptArtifactWrites: true;
|
|
25
|
-
nativeDelegationDisabled: true;
|
|
26
|
-
implicitMemoryDisabled: true;
|
|
27
24
|
providerTransports: TeammateHostCapabilities["providerTransports"];
|
|
28
25
|
providerOptions: Partial<TeammateHostCapabilities["providerOptions"]>;
|
|
29
26
|
verifiedHostCap: number;
|
|
@@ -34,11 +31,14 @@ export interface TeammateLaunchSpec {
|
|
|
34
31
|
roleId: "teammate";
|
|
35
32
|
provider: ResolvedTeammateProfile["provider"];
|
|
36
33
|
profile?: string;
|
|
34
|
+
configuration: string;
|
|
37
35
|
model?: string;
|
|
38
36
|
reasoningEffort?: ResolvedTeammateProfile["reasoningEffort"];
|
|
39
37
|
options: ResolvedTeammateProfile["options"];
|
|
40
38
|
profileDigest?: string;
|
|
41
39
|
prompt: string;
|
|
40
|
+
instructions: string;
|
|
41
|
+
context: string;
|
|
42
42
|
rolePath: string;
|
|
43
43
|
contextPaths: string[];
|
|
44
44
|
contextManifests: string[];
|
|
@@ -46,6 +46,10 @@ export interface TeammateLaunchSpec {
|
|
|
46
46
|
contextDigest: string;
|
|
47
47
|
capability: TeammateCapabilitySnapshot;
|
|
48
48
|
}
|
|
49
|
+
export declare function parseFrozenTeammate(input: unknown): {
|
|
50
|
+
profile: ResolvedTeammateProfile;
|
|
51
|
+
launch: TeammateLaunchSpec;
|
|
52
|
+
};
|
|
49
53
|
export declare function buildTeammateLaunchSpec(input: {
|
|
50
54
|
cwd: string;
|
|
51
55
|
profile: ResolvedTeammateProfile;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teammate-launch.d.ts","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-launch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"teammate-launch.d.ts","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-launch.ts"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,eAAe,CAAC;AAEvB,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,WAAW,CAAC;IAC9B,QAAQ,EAAE,WAAW,CAAC;IACtB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,gBAAgB,EAAE,UAAU,CAAC;IAC7B,mBAAmB,EAAE,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAChD,oBAAoB,EAAE,IAAI,CAAC;IAC3B,iBAAiB,EAAE,IAAI,CAAC;IACxB,cAAc,EAAE,IAAI,CAAC;IACrB,gBAAgB,EAAE,IAAI,CAAC;IACvB,eAAe,EAAE,IAAI,CAAC;IACtB,WAAW,EAAE,mBAAmB,CAAC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE;QACT,cAAc,EAAE,IAAI,CAAC;QACrB,uBAAuB,EAAE,IAAI,CAAC;QAC9B,qBAAqB,EAAE,IAAI,CAAC;QAC5B,kBAAkB,EAAE,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;QACnE,eAAe,EAAE,OAAO,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtE,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;IAC7D,OAAO,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,0BAA0B,CAAC;CACxC;AA4DD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG;IACnD,OAAO,EAAE,uBAAuB,CAAC;IACjC,MAAM,EAAE,kBAAkB,CAAC;CAC5B,CA4BA;AAsDD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,uBAAuB,CAAC;IACjC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC,GAAG,kBAAkB,CA0GrB"}
|
|
@@ -1,8 +1,90 @@
|
|
|
1
1
|
import crypto from "node:crypto";
|
|
2
2
|
import fs from "node:fs";
|
|
3
3
|
import path from "node:path";
|
|
4
|
+
import { z } from "zod";
|
|
4
5
|
import { assembleContext } from "./context-loader.js";
|
|
5
6
|
import { assertTeammateHostCapability, getTeammateAdapter, } from "./teammate-adapters.js";
|
|
7
|
+
import { frozenProfileSchema, } from "./profiles.js";
|
|
8
|
+
const sha256 = z.string().regex(/^[a-f0-9]{64}$/);
|
|
9
|
+
const frozenLaunchSchema = z
|
|
10
|
+
.object({
|
|
11
|
+
roleId: z.literal("teammate"),
|
|
12
|
+
provider: frozenProfileSchema.shape.provider,
|
|
13
|
+
profile: z.string().optional(),
|
|
14
|
+
configuration: frozenProfileSchema.shape.configuration,
|
|
15
|
+
model: z.string().optional(),
|
|
16
|
+
reasoningEffort: frozenProfileSchema.shape.reasoningEffort,
|
|
17
|
+
options: frozenProfileSchema.shape.options,
|
|
18
|
+
profileDigest: sha256.optional(),
|
|
19
|
+
prompt: z.string().max(256 * 1024),
|
|
20
|
+
instructions: z
|
|
21
|
+
.string()
|
|
22
|
+
.min(1)
|
|
23
|
+
.max(128 * 1024),
|
|
24
|
+
context: z.string().max(128 * 1024),
|
|
25
|
+
rolePath: z.string(),
|
|
26
|
+
contextPaths: z.array(z.string()),
|
|
27
|
+
contextManifests: z.array(z.string()),
|
|
28
|
+
roleDigest: sha256,
|
|
29
|
+
contextDigest: sha256,
|
|
30
|
+
capability: z
|
|
31
|
+
.object({
|
|
32
|
+
transport: z.enum(["claude-cli", "codex-app-server", "acp"]),
|
|
33
|
+
supportsContinuation: z.literal(true),
|
|
34
|
+
supportsInterrupt: z.literal(true),
|
|
35
|
+
supportsCancel: z.literal(true),
|
|
36
|
+
supportsTerminal: z.literal(true),
|
|
37
|
+
supportsFailure: z.literal(true),
|
|
38
|
+
writePolicy: z
|
|
39
|
+
.object({
|
|
40
|
+
protectedTargets: z.literal("read-only"),
|
|
41
|
+
gitState: z.literal("read-only"),
|
|
42
|
+
attemptArtifacts: z.literal("write-only"),
|
|
43
|
+
nativeDelegation: z.literal("disabled"),
|
|
44
|
+
recursiveDelegation: z.literal("disabled"),
|
|
45
|
+
})
|
|
46
|
+
.strict(),
|
|
47
|
+
protectedTargets: z.array(z.string()),
|
|
48
|
+
hostProof: z
|
|
49
|
+
.object({
|
|
50
|
+
foregroundWait: z.literal(true),
|
|
51
|
+
protectedArtifactWrites: z.literal(true),
|
|
52
|
+
attemptArtifactWrites: z.literal(true),
|
|
53
|
+
providerTransports: z.array(z.enum(["claude-cli", "codex-app-server", "acp"])),
|
|
54
|
+
providerOptions: z.record(z.string(), z.array(z.string())),
|
|
55
|
+
verifiedHostCap: z.number().int().positive(),
|
|
56
|
+
})
|
|
57
|
+
.strict(),
|
|
58
|
+
digest: sha256,
|
|
59
|
+
})
|
|
60
|
+
.strict(),
|
|
61
|
+
})
|
|
62
|
+
.strict();
|
|
63
|
+
export function parseFrozenTeammate(input) {
|
|
64
|
+
const result = z
|
|
65
|
+
.object({ profile: frozenProfileSchema, launch: frozenLaunchSchema })
|
|
66
|
+
.strict()
|
|
67
|
+
.parse(input);
|
|
68
|
+
const { profile, launch } = result;
|
|
69
|
+
for (const field of [
|
|
70
|
+
"provider",
|
|
71
|
+
"model",
|
|
72
|
+
"profile",
|
|
73
|
+
"configuration",
|
|
74
|
+
"reasoningEffort",
|
|
75
|
+
"profileDigest",
|
|
76
|
+
"roleDigest",
|
|
77
|
+
])
|
|
78
|
+
if (profile[field] !== launch[field])
|
|
79
|
+
throw new Error(`frozen execution ${field} does not match profile`);
|
|
80
|
+
if (canonical(profile.options) !== canonical(launch.options) ||
|
|
81
|
+
profile.rolePrompt !== launch.instructions)
|
|
82
|
+
throw new Error("frozen execution instructions or options do not match profile");
|
|
83
|
+
const { digest: expected, ...capability } = launch.capability;
|
|
84
|
+
if (hash(canonical(capability)) !== expected)
|
|
85
|
+
throw new Error("frozen capability digest does not match");
|
|
86
|
+
return result;
|
|
87
|
+
}
|
|
6
88
|
function hash(value) {
|
|
7
89
|
return crypto.createHash("sha256").update(value).digest("hex");
|
|
8
90
|
}
|
|
@@ -58,9 +140,7 @@ export function buildTeammateLaunchSpec(input) {
|
|
|
58
140
|
if (!assembled.manifests.includes(normalized))
|
|
59
141
|
throw new Error(`teammate context manifest was not recorded: ${manifest}`);
|
|
60
142
|
}
|
|
61
|
-
const
|
|
62
|
-
const roleBytes = fs.readFileSync(roleFile);
|
|
63
|
-
const roleDigest = hash(roleBytes);
|
|
143
|
+
const roleDigest = input.profile.roleDigest;
|
|
64
144
|
const contextDigest = hash(assembled.paths
|
|
65
145
|
.map((filePath) => `${filePath}\0${fs.readFileSync(path.resolve(input.cwd, filePath), "utf8")}`)
|
|
66
146
|
.concat(assembled.manifests.map((manifest) => `manifest\0${manifest}\0${fs.readFileSync(path.resolve(input.cwd, manifest), "utf8")}`))
|
|
@@ -74,7 +154,6 @@ export function buildTeammateLaunchSpec(input) {
|
|
|
74
154
|
};
|
|
75
155
|
const capability = {
|
|
76
156
|
transport: adapter.transport,
|
|
77
|
-
nativeDelegationDisabled: true,
|
|
78
157
|
supportsContinuation: true,
|
|
79
158
|
supportsInterrupt: true,
|
|
80
159
|
supportsCancel: true,
|
|
@@ -86,8 +165,6 @@ export function buildTeammateLaunchSpec(input) {
|
|
|
86
165
|
foregroundWait: true,
|
|
87
166
|
protectedArtifactWrites: true,
|
|
88
167
|
attemptArtifactWrites: true,
|
|
89
|
-
nativeDelegationDisabled: true,
|
|
90
|
-
implicitMemoryDisabled: true,
|
|
91
168
|
providerTransports: [...input.host.providerTransports].sort(),
|
|
92
169
|
providerOptions: Object.fromEntries(Object.entries(input.host.providerOptions).map(([provider, options]) => [provider, [...(options ?? [])].sort()])),
|
|
93
170
|
verifiedHostCap: input.host.verifiedHostCap,
|
|
@@ -99,6 +176,7 @@ export function buildTeammateLaunchSpec(input) {
|
|
|
99
176
|
};
|
|
100
177
|
return {
|
|
101
178
|
roleId: "teammate",
|
|
179
|
+
configuration: input.profile.configuration,
|
|
102
180
|
provider: input.profile.provider,
|
|
103
181
|
...(input.profile.profile ? { profile: input.profile.profile } : {}),
|
|
104
182
|
...(input.profile.model ? { model: input.profile.model } : {}),
|
|
@@ -112,6 +190,8 @@ export function buildTeammateLaunchSpec(input) {
|
|
|
112
190
|
prompt: [input.profile.rolePrompt, assembled.prompt]
|
|
113
191
|
.filter(Boolean)
|
|
114
192
|
.join("\n\n---\n\n"),
|
|
193
|
+
instructions: input.profile.rolePrompt,
|
|
194
|
+
context: assembled.prompt,
|
|
115
195
|
rolePath: input.profile.rolePath,
|
|
116
196
|
contextPaths: assembled.paths,
|
|
117
197
|
contextManifests: assembled.manifests,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teammate-launch.js","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-launch.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,GAGnB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"teammate-launch.js","sourceRoot":"","sources":["../../../src/commands/teamwork/teammate-launch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EAEf,cAAc,EACf,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EAEf,cAAc,EACf,MAAM,uBAAuB,CAAC;AAiE/B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAqbD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA6DzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CA2Bf;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,kBAAkB,EAAE,EAC7B,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CA0CtB;AA8lBD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAerE;AAqMD;;GAEG;AACH;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,cAAc,GACrB,OAAO,CAOT;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,aAAa,EAAE,EAC3B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,oBAAoB,CA+FtB;AAwJD;;;;GAIG;AACH,0CAA0C;AAC1C,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,aAAa,EAAE,GAC1B,aAAa,EAAE,CAajB;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,oBAAoB,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,EAC/C,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,eAAe,CAAC,CAqL1B;AA4BD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAsBA;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA+5BlE"}
|
package/dist/commands/update.js
CHANGED
|
@@ -15,7 +15,7 @@ import { assetBackupScope, bindAssetUpdate, createAssetBackup, withAssetMaintena
|
|
|
15
15
|
// Import templates for comparison
|
|
16
16
|
import { getAllScripts, getAllAgents,
|
|
17
17
|
// Configuration
|
|
18
|
-
configYamlTemplate, gitignoreTemplate, workflowMdTemplate, } from "../templates/trellis/index.js";
|
|
18
|
+
configYamlTemplate, teamworkConfigTemplate, gitignoreTemplate, workflowMdTemplate, } from "../templates/trellis/index.js";
|
|
19
19
|
import { agentsMdContent } from "../templates/markdown/index.js";
|
|
20
20
|
import { COPILOT_INSTRUCTIONS_BLOCK_END, COPILOT_INSTRUCTIONS_BLOCK_START, COPILOT_INSTRUCTIONS_PATH, getCopilotInstructions, } from "../templates/copilot/index.js";
|
|
21
21
|
import { getConfiguredPlatforms, collectPlatformTemplates, } from "../configurators/index.js";
|
|
@@ -604,6 +604,7 @@ bypassUpdateSkip = false) {
|
|
|
604
604
|
files.set(`${PATHS.AGENTS}/${agentFile}`, content);
|
|
605
605
|
}
|
|
606
606
|
// Configuration
|
|
607
|
+
files.set(`${DIR_NAMES.WORKFLOW}/teamwork.json`, teamworkConfigTemplate);
|
|
607
608
|
files.set(`${DIR_NAMES.WORKFLOW}/config.yaml`, preserveExistingRegistryConfig(cwd, configYamlTemplate));
|
|
608
609
|
files.set(`${DIR_NAMES.WORKFLOW}/.gitignore`, gitignoreTemplate);
|
|
609
610
|
// workflow.md is included here because it is runtime-parsed by
|