@lumenflow/packs-software-delivery 3.7.1
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/LICENSE +661 -0
- package/dist/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +10 -0
- package/dist/constants.js.map +1 -0
- package/dist/extensions.d.ts +30 -0
- package/dist/extensions.d.ts.map +1 -0
- package/dist/extensions.js +85 -0
- package/dist/extensions.js.map +1 -0
- package/dist/gate-policies.d.ts +52 -0
- package/dist/gate-policies.d.ts.map +1 -0
- package/dist/gate-policies.js +68 -0
- package/dist/gate-policies.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/manifest-schema.d.ts +46 -0
- package/dist/manifest-schema.d.ts.map +1 -0
- package/dist/manifest-schema.js +162 -0
- package/dist/manifest-schema.js.map +1 -0
- package/dist/manifest.d.ts +12 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +357 -0
- package/dist/manifest.js.map +1 -0
- package/dist/pack-registration.d.ts +14 -0
- package/dist/pack-registration.d.ts.map +1 -0
- package/dist/pack-registration.js +79 -0
- package/dist/pack-registration.js.map +1 -0
- package/dist/tool-impl/agent-tools.d.ts +6 -0
- package/dist/tool-impl/agent-tools.d.ts.map +1 -0
- package/dist/tool-impl/agent-tools.js +211 -0
- package/dist/tool-impl/agent-tools.js.map +1 -0
- package/dist/tool-impl/delegation-tools.d.ts +13 -0
- package/dist/tool-impl/delegation-tools.d.ts.map +1 -0
- package/dist/tool-impl/delegation-tools.js +45 -0
- package/dist/tool-impl/delegation-tools.js.map +1 -0
- package/dist/tool-impl/flow-metrics-tools.d.ts +25 -0
- package/dist/tool-impl/flow-metrics-tools.d.ts.map +1 -0
- package/dist/tool-impl/flow-metrics-tools.js +152 -0
- package/dist/tool-impl/flow-metrics-tools.js.map +1 -0
- package/dist/tool-impl/git-runner.d.ts +13 -0
- package/dist/tool-impl/git-runner.d.ts.map +1 -0
- package/dist/tool-impl/git-runner.js +89 -0
- package/dist/tool-impl/git-runner.js.map +1 -0
- package/dist/tool-impl/git-tools.d.ts +46 -0
- package/dist/tool-impl/git-tools.d.ts.map +1 -0
- package/dist/tool-impl/git-tools.js +226 -0
- package/dist/tool-impl/git-tools.js.map +1 -0
- package/dist/tool-impl/index.d.ts +13 -0
- package/dist/tool-impl/index.d.ts.map +1 -0
- package/dist/tool-impl/index.js +15 -0
- package/dist/tool-impl/index.js.map +1 -0
- package/dist/tool-impl/initiative-orchestration-tools.d.ts +28 -0
- package/dist/tool-impl/initiative-orchestration-tools.d.ts.map +1 -0
- package/dist/tool-impl/initiative-orchestration-tools.js +601 -0
- package/dist/tool-impl/initiative-orchestration-tools.js.map +1 -0
- package/dist/tool-impl/lane-lock.d.ts +37 -0
- package/dist/tool-impl/lane-lock.d.ts.map +1 -0
- package/dist/tool-impl/lane-lock.js +184 -0
- package/dist/tool-impl/lane-lock.js.map +1 -0
- package/dist/tool-impl/memory-tools.d.ts +16 -0
- package/dist/tool-impl/memory-tools.d.ts.map +1 -0
- package/dist/tool-impl/memory-tools.js +340 -0
- package/dist/tool-impl/memory-tools.js.map +1 -0
- package/dist/tool-impl/pending-runtime-tools.d.ts +10 -0
- package/dist/tool-impl/pending-runtime-tools.d.ts.map +1 -0
- package/dist/tool-impl/pending-runtime-tools.js +12 -0
- package/dist/tool-impl/pending-runtime-tools.js.map +1 -0
- package/dist/tool-impl/runtime-cli-adapter.d.ts +115 -0
- package/dist/tool-impl/runtime-cli-adapter.d.ts.map +1 -0
- package/dist/tool-impl/runtime-cli-adapter.js +254 -0
- package/dist/tool-impl/runtime-cli-adapter.js.map +1 -0
- package/dist/tool-impl/runtime-native-tools.d.ts +28 -0
- package/dist/tool-impl/runtime-native-tools.d.ts.map +1 -0
- package/dist/tool-impl/runtime-native-tools.js +557 -0
- package/dist/tool-impl/runtime-native-tools.js.map +1 -0
- package/dist/tool-impl/worker-loader.d.ts +7 -0
- package/dist/tool-impl/worker-loader.d.ts.map +1 -0
- package/dist/tool-impl/worker-loader.js +37 -0
- package/dist/tool-impl/worker-loader.js.map +1 -0
- package/dist/tool-impl/worktree-tools.d.ts +20 -0
- package/dist/tool-impl/worktree-tools.d.ts.map +1 -0
- package/dist/tool-impl/worktree-tools.js +26 -0
- package/dist/tool-impl/worktree-tools.js.map +1 -0
- package/dist/tool-impl/wu-lifecycle-tools.d.ts +25 -0
- package/dist/tool-impl/wu-lifecycle-tools.d.ts.map +1 -0
- package/dist/tool-impl/wu-lifecycle-tools.js +641 -0
- package/dist/tool-impl/wu-lifecycle-tools.js.map +1 -0
- package/dist/tools/delegation-tools.d.ts +4 -0
- package/dist/tools/delegation-tools.d.ts.map +1 -0
- package/dist/tools/delegation-tools.js +20 -0
- package/dist/tools/delegation-tools.js.map +1 -0
- package/dist/tools/git-tools.d.ts +6 -0
- package/dist/tools/git-tools.d.ts.map +1 -0
- package/dist/tools/git-tools.js +49 -0
- package/dist/tools/git-tools.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +8 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/lane-lock-tool.d.ts +5 -0
- package/dist/tools/lane-lock-tool.d.ts.map +1 -0
- package/dist/tools/lane-lock-tool.js +33 -0
- package/dist/tools/lane-lock-tool.js.map +1 -0
- package/dist/tools/types.d.ts +48 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +28 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/worktree-tools.d.ts +6 -0
- package/dist/tools/worktree-tools.d.ts.map +1 -0
- package/dist/tools/worktree-tools.js +44 -0
- package/dist/tools/worktree-tools.js.map +1 -0
- package/manifest.yaml +712 -0
- package/package.json +58 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegation-tools.d.ts","sourceRoot":"","sources":["../../tools/delegation-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAQvE,eAAO,MAAM,oBAAoB,EAAE,cASjC,CAAC;AAEH,eAAO,MAAM,0BAA0B,EAAE,SAAS,cAAc,EAA2B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
import { createToolDescriptor } from './types.js';
|
|
4
|
+
const STATE_SCOPE = {
|
|
5
|
+
type: 'path',
|
|
6
|
+
pattern: 'runtime/state/**',
|
|
7
|
+
access: 'write',
|
|
8
|
+
};
|
|
9
|
+
export const delegationRecordTool = createToolDescriptor({
|
|
10
|
+
name: 'delegation:record',
|
|
11
|
+
permission: 'admin',
|
|
12
|
+
required_scopes: [STATE_SCOPE],
|
|
13
|
+
handler: {
|
|
14
|
+
kind: 'subprocess',
|
|
15
|
+
entry: 'tool-impl/delegation-tools.ts#recordDelegationTool',
|
|
16
|
+
},
|
|
17
|
+
description: 'Append delegation lineage events for spawned sub-work.',
|
|
18
|
+
});
|
|
19
|
+
export const delegationToolCapabilities = [delegationRecordTool];
|
|
20
|
+
//# sourceMappingURL=delegation-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegation-tools.js","sourceRoot":"","sources":["../../tools/delegation-tools.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAe;IACrB,OAAO,EAAE,kBAAkB;IAC3B,MAAM,EAAE,OAAgB;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAmB,oBAAoB,CAAC;IACvE,IAAI,EAAE,mBAAmB;IACzB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,WAAW,CAAC;IAC9B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,oDAAoD;KAC5D;IACD,WAAW,EAAE,wDAAwD;CACtE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAA8B,CAAC,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type ToolDescriptor } from './types.js';
|
|
2
|
+
export declare const gitAddTool: ToolDescriptor;
|
|
3
|
+
export declare const gitStatusTool: ToolDescriptor;
|
|
4
|
+
export declare const gitCommitTool: ToolDescriptor;
|
|
5
|
+
export declare const gitToolCapabilities: readonly ToolDescriptor[];
|
|
6
|
+
//# sourceMappingURL=git-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-tools.d.ts","sourceRoot":"","sources":["../../tools/git-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAcvE,eAAO,MAAM,UAAU,EAAE,cASvB,CAAC;AAEH,eAAO,MAAM,aAAa,EAAE,cAS1B,CAAC;AAEH,eAAO,MAAM,aAAa,EAAE,cAS1B,CAAC;AAEH,eAAO,MAAM,mBAAmB,EAAE,SAAS,cAAc,EAIxD,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
import { createToolDescriptor } from './types.js';
|
|
4
|
+
const WRITE_SCOPE = {
|
|
5
|
+
type: 'path',
|
|
6
|
+
pattern: '**',
|
|
7
|
+
access: 'write',
|
|
8
|
+
};
|
|
9
|
+
const READ_SCOPE = {
|
|
10
|
+
type: 'path',
|
|
11
|
+
pattern: '**',
|
|
12
|
+
access: 'read',
|
|
13
|
+
};
|
|
14
|
+
export const gitAddTool = createToolDescriptor({
|
|
15
|
+
name: 'git:add',
|
|
16
|
+
permission: 'write',
|
|
17
|
+
required_scopes: [WRITE_SCOPE],
|
|
18
|
+
handler: {
|
|
19
|
+
kind: 'subprocess',
|
|
20
|
+
entry: 'tool-impl/git-tools.ts#gitAddTool',
|
|
21
|
+
},
|
|
22
|
+
description: 'Stage files for commit in a workspace git repository.',
|
|
23
|
+
});
|
|
24
|
+
export const gitStatusTool = createToolDescriptor({
|
|
25
|
+
name: 'git:status',
|
|
26
|
+
permission: 'read',
|
|
27
|
+
required_scopes: [READ_SCOPE],
|
|
28
|
+
handler: {
|
|
29
|
+
kind: 'subprocess',
|
|
30
|
+
entry: 'tool-impl/git-tools.ts#gitStatusTool',
|
|
31
|
+
},
|
|
32
|
+
description: 'Inspect git status in a workspace git repository.',
|
|
33
|
+
});
|
|
34
|
+
export const gitCommitTool = createToolDescriptor({
|
|
35
|
+
name: 'git:commit',
|
|
36
|
+
permission: 'write',
|
|
37
|
+
required_scopes: [WRITE_SCOPE],
|
|
38
|
+
handler: {
|
|
39
|
+
kind: 'subprocess',
|
|
40
|
+
entry: 'tool-impl/git-tools.ts#gitCommitTool',
|
|
41
|
+
},
|
|
42
|
+
description: 'Create a commit for staged changes in a workspace git repository.',
|
|
43
|
+
});
|
|
44
|
+
export const gitToolCapabilities = [
|
|
45
|
+
gitAddTool,
|
|
46
|
+
gitStatusTool,
|
|
47
|
+
gitCommitTool,
|
|
48
|
+
];
|
|
49
|
+
//# sourceMappingURL=git-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-tools.js","sourceRoot":"","sources":["../../tools/git-tools.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAe;IACrB,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,OAAgB;CACzB,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,MAAe;IACrB,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,MAAe;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAmB,oBAAoB,CAAC;IAC7D,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,WAAW,CAAC;IAC9B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,mCAAmC;KAC3C;IACD,WAAW,EAAE,uDAAuD;CACrE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAmB,oBAAoB,CAAC;IAChE,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,MAAM;IAClB,eAAe,EAAE,CAAC,UAAU,CAAC;IAC7B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,sCAAsC;KAC9C;IACD,WAAW,EAAE,mDAAmD;CACjE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAmB,oBAAoB,CAAC;IAChE,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,WAAW,CAAC;IAC9B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,sCAAsC;KAC9C;IACD,WAAW,EAAE,mEAAmE;CACjF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAA8B;IAC5D,UAAU;IACV,aAAa;IACb,aAAa;CACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../tools/index.ts"],"names":[],"mappings":"AAGA,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
export * from './delegation-tools.js';
|
|
4
|
+
export * from './git-tools.js';
|
|
5
|
+
export * from './lane-lock-tool.js';
|
|
6
|
+
export * from './types.js';
|
|
7
|
+
export * from './worktree-tools.js';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../tools/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type ToolDescriptor } from './types.js';
|
|
2
|
+
export declare const laneLockAcquireTool: ToolDescriptor;
|
|
3
|
+
export declare const laneLockReleaseTool: ToolDescriptor;
|
|
4
|
+
export declare const laneLockToolCapabilities: readonly ToolDescriptor[];
|
|
5
|
+
//# sourceMappingURL=lane-lock-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lane-lock-tool.d.ts","sourceRoot":"","sources":["../../tools/lane-lock-tool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAQvE,eAAO,MAAM,mBAAmB,EAAE,cAShC,CAAC;AAEH,eAAO,MAAM,mBAAmB,EAAE,cAShC,CAAC;AAEH,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAG7D,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
import { createToolDescriptor } from './types.js';
|
|
4
|
+
const ADMIN_SCOPE = {
|
|
5
|
+
type: 'path',
|
|
6
|
+
pattern: 'runtime/locks/**',
|
|
7
|
+
access: 'write',
|
|
8
|
+
};
|
|
9
|
+
export const laneLockAcquireTool = createToolDescriptor({
|
|
10
|
+
name: 'lane-lock:acquire',
|
|
11
|
+
permission: 'admin',
|
|
12
|
+
required_scopes: [ADMIN_SCOPE],
|
|
13
|
+
handler: {
|
|
14
|
+
kind: 'subprocess',
|
|
15
|
+
entry: 'tool-impl/lane-lock.ts#acquireLaneLockTool',
|
|
16
|
+
},
|
|
17
|
+
description: 'Acquire an atomic lane lock for a work unit.',
|
|
18
|
+
});
|
|
19
|
+
export const laneLockReleaseTool = createToolDescriptor({
|
|
20
|
+
name: 'lane-lock:release',
|
|
21
|
+
permission: 'admin',
|
|
22
|
+
required_scopes: [ADMIN_SCOPE],
|
|
23
|
+
handler: {
|
|
24
|
+
kind: 'subprocess',
|
|
25
|
+
entry: 'tool-impl/lane-lock.ts#releaseLaneLockTool',
|
|
26
|
+
},
|
|
27
|
+
description: 'Release a lane lock held by the current worker.',
|
|
28
|
+
});
|
|
29
|
+
export const laneLockToolCapabilities = [
|
|
30
|
+
laneLockAcquireTool,
|
|
31
|
+
laneLockReleaseTool,
|
|
32
|
+
];
|
|
33
|
+
//# sourceMappingURL=lane-lock-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lane-lock-tool.js","sourceRoot":"","sources":["../../tools/lane-lock-tool.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAe;IACrB,OAAO,EAAE,kBAAkB;IAC3B,MAAM,EAAE,OAAgB;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAmB,oBAAoB,CAAC;IACtE,IAAI,EAAE,mBAAmB;IACzB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,WAAW,CAAC;IAC9B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,4CAA4C;KACpD;IACD,WAAW,EAAE,8CAA8C;CAC5D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAmB,oBAAoB,CAAC;IACtE,IAAI,EAAE,mBAAmB;IACzB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,WAAW,CAAC;IAC9B,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,4CAA4C;KACpD;IACD,WAAW,EAAE,iDAAiD;CAC/D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAA8B;IACjE,mBAAmB;IACnB,mBAAmB;CACpB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { SOFTWARE_DELIVERY_DOMAIN, SOFTWARE_DELIVERY_PACK_ID, SOFTWARE_DELIVERY_PACK_VERSION } from '../constants.js';
|
|
2
|
+
export declare const TOOL_SCOPE_TYPES: {
|
|
3
|
+
readonly PATH: "path";
|
|
4
|
+
};
|
|
5
|
+
export declare const TOOL_SCOPE_ACCESS: {
|
|
6
|
+
readonly READ: "read";
|
|
7
|
+
readonly WRITE: "write";
|
|
8
|
+
};
|
|
9
|
+
export declare const TOOL_PERMISSIONS: {
|
|
10
|
+
readonly READ: "read";
|
|
11
|
+
readonly WRITE: "write";
|
|
12
|
+
readonly ADMIN: "admin";
|
|
13
|
+
};
|
|
14
|
+
export declare const TOOL_HANDLER_KINDS: {
|
|
15
|
+
readonly SUBPROCESS: "subprocess";
|
|
16
|
+
};
|
|
17
|
+
export type ToolScopeType = (typeof TOOL_SCOPE_TYPES)[keyof typeof TOOL_SCOPE_TYPES];
|
|
18
|
+
export type ToolScopeAccess = (typeof TOOL_SCOPE_ACCESS)[keyof typeof TOOL_SCOPE_ACCESS];
|
|
19
|
+
export type ToolPermission = (typeof TOOL_PERMISSIONS)[keyof typeof TOOL_PERMISSIONS];
|
|
20
|
+
export type ToolHandlerKind = (typeof TOOL_HANDLER_KINDS)[keyof typeof TOOL_HANDLER_KINDS];
|
|
21
|
+
export interface PathScope {
|
|
22
|
+
type: ToolScopeType;
|
|
23
|
+
pattern: string;
|
|
24
|
+
access: ToolScopeAccess;
|
|
25
|
+
}
|
|
26
|
+
export interface ToolDescriptor {
|
|
27
|
+
name: string;
|
|
28
|
+
domain: typeof SOFTWARE_DELIVERY_DOMAIN;
|
|
29
|
+
version: typeof SOFTWARE_DELIVERY_PACK_VERSION;
|
|
30
|
+
permission: ToolPermission;
|
|
31
|
+
required_scopes: PathScope[];
|
|
32
|
+
handler: {
|
|
33
|
+
kind: ToolHandlerKind;
|
|
34
|
+
entry: string;
|
|
35
|
+
};
|
|
36
|
+
description: string;
|
|
37
|
+
pack: typeof SOFTWARE_DELIVERY_PACK_ID;
|
|
38
|
+
}
|
|
39
|
+
export interface ToolDescriptorInput {
|
|
40
|
+
name: ToolDescriptor['name'];
|
|
41
|
+
permission: ToolDescriptor['permission'];
|
|
42
|
+
required_scopes: ToolDescriptor['required_scopes'];
|
|
43
|
+
handler: ToolDescriptor['handler'];
|
|
44
|
+
description: ToolDescriptor['description'];
|
|
45
|
+
}
|
|
46
|
+
export declare function createToolDescriptor(input: ToolDescriptorInput): ToolDescriptor;
|
|
47
|
+
export { SOFTWARE_DELIVERY_DOMAIN, SOFTWARE_DELIVERY_PACK_ID, SOFTWARE_DELIVERY_PACK_VERSION };
|
|
48
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../tools/types.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8BAA8B,EAC/B,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,gBAAgB;;CAEnB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;CAErB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AACrF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AACzF,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AACtF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE3F,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,wBAAwB,CAAC;IACxC,OAAO,EAAE,OAAO,8BAA8B,CAAC;IAC/C,UAAU,EAAE,cAAc,CAAC;IAC3B,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,OAAO,EAAE;QACP,IAAI,EAAE,eAAe,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,yBAAyB,CAAC;CACxC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7B,UAAU,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACzC,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACnD,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,WAAW,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,mBAAmB,GAAG,cAAc,CAO/E;AAED,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
import { SOFTWARE_DELIVERY_DOMAIN, SOFTWARE_DELIVERY_PACK_ID, SOFTWARE_DELIVERY_PACK_VERSION, } from '../constants.js';
|
|
4
|
+
export const TOOL_SCOPE_TYPES = {
|
|
5
|
+
PATH: 'path',
|
|
6
|
+
};
|
|
7
|
+
export const TOOL_SCOPE_ACCESS = {
|
|
8
|
+
READ: 'read',
|
|
9
|
+
WRITE: 'write',
|
|
10
|
+
};
|
|
11
|
+
export const TOOL_PERMISSIONS = {
|
|
12
|
+
READ: 'read',
|
|
13
|
+
WRITE: 'write',
|
|
14
|
+
ADMIN: 'admin',
|
|
15
|
+
};
|
|
16
|
+
export const TOOL_HANDLER_KINDS = {
|
|
17
|
+
SUBPROCESS: 'subprocess',
|
|
18
|
+
};
|
|
19
|
+
export function createToolDescriptor(input) {
|
|
20
|
+
return {
|
|
21
|
+
...input,
|
|
22
|
+
domain: SOFTWARE_DELIVERY_DOMAIN,
|
|
23
|
+
version: SOFTWARE_DELIVERY_PACK_VERSION,
|
|
24
|
+
pack: SOFTWARE_DELIVERY_PACK_ID,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export { SOFTWARE_DELIVERY_DOMAIN, SOFTWARE_DELIVERY_PACK_ID, SOFTWARE_DELIVERY_PACK_VERSION };
|
|
28
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../tools/types.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,YAAY;CAChB,CAAC;AAmCX,MAAM,UAAU,oBAAoB,CAAC,KAA0B;IAC7D,OAAO;QACL,GAAG,KAAK;QACR,MAAM,EAAE,wBAAwB;QAChC,OAAO,EAAE,8BAA8B;QACvC,IAAI,EAAE,yBAAyB;KAChC,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type ToolDescriptor } from './types.js';
|
|
2
|
+
export declare const worktreeListTool: ToolDescriptor;
|
|
3
|
+
export declare const worktreeCreateTool: ToolDescriptor;
|
|
4
|
+
export declare const worktreeRemoveTool: ToolDescriptor;
|
|
5
|
+
export declare const worktreeToolCapabilities: readonly ToolDescriptor[];
|
|
6
|
+
//# sourceMappingURL=worktree-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-tools.d.ts","sourceRoot":"","sources":["../../tools/worktree-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAQvE,eAAO,MAAM,gBAAgB,EAAE,cAS7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,EAAE,cAS/B,CAAC;AAEH,eAAO,MAAM,kBAAkB,EAAE,cAS/B,CAAC;AAEH,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAI7D,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Copyright (c) 2026 Hellmai Ltd
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
import { createToolDescriptor } from './types.js';
|
|
4
|
+
const WORKTREE_SCOPE = {
|
|
5
|
+
type: 'path',
|
|
6
|
+
pattern: 'worktrees/**',
|
|
7
|
+
access: 'write',
|
|
8
|
+
};
|
|
9
|
+
export const worktreeListTool = createToolDescriptor({
|
|
10
|
+
name: 'worktree:list',
|
|
11
|
+
permission: 'admin',
|
|
12
|
+
required_scopes: [WORKTREE_SCOPE],
|
|
13
|
+
handler: {
|
|
14
|
+
kind: 'subprocess',
|
|
15
|
+
entry: 'tool-impl/worktree-tools.ts#listWorktreesTool',
|
|
16
|
+
},
|
|
17
|
+
description: 'List available git worktrees.',
|
|
18
|
+
});
|
|
19
|
+
export const worktreeCreateTool = createToolDescriptor({
|
|
20
|
+
name: 'worktree:create',
|
|
21
|
+
permission: 'admin',
|
|
22
|
+
required_scopes: [WORKTREE_SCOPE],
|
|
23
|
+
handler: {
|
|
24
|
+
kind: 'subprocess',
|
|
25
|
+
entry: 'tool-impl/worktree-tools.ts#createWorktreeTool',
|
|
26
|
+
},
|
|
27
|
+
description: 'Create a git worktree for a delegated unit of work.',
|
|
28
|
+
});
|
|
29
|
+
export const worktreeRemoveTool = createToolDescriptor({
|
|
30
|
+
name: 'worktree:remove',
|
|
31
|
+
permission: 'admin',
|
|
32
|
+
required_scopes: [WORKTREE_SCOPE],
|
|
33
|
+
handler: {
|
|
34
|
+
kind: 'subprocess',
|
|
35
|
+
entry: 'tool-impl/worktree-tools.ts#removeWorktreeTool',
|
|
36
|
+
},
|
|
37
|
+
description: 'Remove a git worktree after completion.',
|
|
38
|
+
});
|
|
39
|
+
export const worktreeToolCapabilities = [
|
|
40
|
+
worktreeListTool,
|
|
41
|
+
worktreeCreateTool,
|
|
42
|
+
worktreeRemoveTool,
|
|
43
|
+
];
|
|
44
|
+
//# sourceMappingURL=worktree-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-tools.js","sourceRoot":"","sources":["../../tools/worktree-tools.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAEvE,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,MAAe;IACrB,OAAO,EAAE,cAAc;IACvB,MAAM,EAAE,OAAgB;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAmB,oBAAoB,CAAC;IACnE,IAAI,EAAE,eAAe;IACrB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,cAAc,CAAC;IACjC,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,+CAA+C;KACvD;IACD,WAAW,EAAE,+BAA+B;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAmB,oBAAoB,CAAC;IACrE,IAAI,EAAE,iBAAiB;IACvB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,cAAc,CAAC;IACjC,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,gDAAgD;KACxD;IACD,WAAW,EAAE,qDAAqD;CACnE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAmB,oBAAoB,CAAC;IACrE,IAAI,EAAE,iBAAiB;IACvB,UAAU,EAAE,OAAO;IACnB,eAAe,EAAE,CAAC,cAAc,CAAC;IACjC,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,gDAAgD;KACxD;IACD,WAAW,EAAE,yCAAyC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAA8B;IACjE,gBAAgB;IAChB,kBAAkB;IAClB,kBAAkB;CACnB,CAAC"}
|