opencode-swarm 7.84.0 → 7.85.0
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/.opencode/skills/codebase-review-swarm/references/review-protocol-v8.2.md +4 -0
- package/.opencode/skills/council/SKILL.md +6 -1
- package/.opencode/skills/deep-dive/SKILL.md +2 -0
- package/.opencode/skills/deep-research/SKILL.md +6 -0
- package/.opencode/skills/swarm-pr-feedback/SKILL.md +6 -0
- package/.opencode/skills/swarm-pr-review/SKILL.md +4 -0
- package/dist/background/lane-output-store.d.ts +72 -0
- package/dist/background/pending-delegations.d.ts +6 -0
- package/dist/cli/{config-doctor-4tcdd9vt.js → config-doctor-zejarrr6.js} +2 -2
- package/dist/cli/{guardrail-explain-tcamcdfy.js → guardrail-explain-w4txg349.js} +5 -5
- package/dist/cli/{guardrail-log-fd14n96q.js → guardrail-log-80116wmz.js} +3 -3
- package/dist/cli/{index-a82d6d87.js → index-0sxvwjt0.js} +1 -1
- package/dist/cli/{index-jfgr5gye.js → index-5cb86007.js} +1 -1
- package/dist/cli/{index-wg3r6acj.js → index-hw9b2xng.js} +5 -1
- package/dist/cli/{index-j710h2ge.js → index-qqabjns2.js} +6 -6
- package/dist/cli/{index-pv2xmc9k.js → index-vq2321gg.js} +1 -1
- package/dist/cli/{index-xw0bcy0v.js → index-x7qck34v.js} +2 -2
- package/dist/cli/{index-8ra2qpk8.js → index-yhqt45de.js} +9 -9
- package/dist/cli/index.js +4 -4
- package/dist/cli/{pending-delegations-pz61mrsz.js → pending-delegations-rd40tv9s.js} +7 -1
- package/dist/cli/{schema-c2dbzhm8.js → schema-8d32b2v6.js} +1 -1
- package/dist/index.js +712 -342
- package/dist/tools/dispatch-lanes.d.ts +14 -3
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/manifest.d.ts +1 -0
- package/dist/tools/retrieve-lane-output.d.ts +2 -0
- package/dist/tools/tool-metadata.d.ts +4 -0
- package/package.json +1 -1
|
@@ -138,6 +138,8 @@ Before writing under `.swarm/`, verify `.swarm/` is ignored or locally excluded.
|
|
|
138
138
|
|
|
139
139
|
Collect every async batch with `collect_lane_results` before consuming its ledger output or advancing to a dependent step. If `dispatch_lanes_async` or `collect_lane_results` is unavailable, fall back to blocking `dispatch_lanes`; if deterministic dispatch is unavailable, run isolated local passes and record that fallback. Do not run dependent inventory passes merely to keep agents busy. Missing dependency context is `unknown`, not guessed.
|
|
140
140
|
|
|
141
|
+
For every collected or blocking lane result, treat `output` as a preview when `output_ref` is present. Call `retrieve_lane_output` and use the full artifact before consuming inventory ledgers, linking claims, deciding that a unit produced no candidates, or advancing a dependent step. If a lane is degraded, incomplete, truncated without a usable ref, missing, stale, cancelled, or failed, record the affected coverage unit as a limitation and re-dispatch a narrower lane or mark it UNVERIFIED; do not infer absence from preview text.
|
|
142
|
+
|
|
141
143
|
## Phase 0 inventory
|
|
142
144
|
|
|
143
145
|
### 0A — Bootstrap and prior context
|
|
@@ -207,6 +209,8 @@ Rules:
|
|
|
207
209
|
|
|
208
210
|
Every dispatch includes selected track(s), exact file list or surface IDs, source-of-truth packet, repository-context packet, relevant ledgers, the applicable `TRACK_DEPTH_PLAN`, candidate format, `out_of_scope_note` rule, and anti-cursory/non-dilution reminder. Prefer `dispatch_lanes_async` for independent candidate-generation coverage units so the Architect can continue building the review ledger, coverage map, and validation routing while lanes inspect subsystems. Call `collect_lane_results` before Phase 2 reviewer validation; no candidate may be routed, counted, or synthesized until its async batch has settled or been explicitly marked blocked/skipped.
|
|
209
211
|
|
|
212
|
+
If candidate-generation lane results include `output_ref`, retrieve and parse the full artifact before candidate counting, deduplication, routing, or synthesis. Preview-only, degraded, or incomplete lane output is a coverage limitation, not negative evidence.
|
|
213
|
+
|
|
210
214
|
File-size rule: no more than 15 files per deep pass; no more than 8 dense files per deep pass. Dense = >300 logical lines, multiple unrelated responsibilities, or interleaved UI/state/network/security logic. No sampling inside assigned scope. Large selections require more deep passes, not larger batches or lower depth.
|
|
211
215
|
|
|
212
216
|
Candidate micro-loop:
|
|
@@ -113,7 +113,12 @@ Do NOT share other agents' responses at this stage.
|
|
|
113
113
|
unavailable. The `round1Responses` array will contain
|
|
114
114
|
entries with `memberId` of `council_generalist`, `council_skeptic`, and
|
|
115
115
|
`council_domain_expert` and `role` of `generalist`, `skeptic`, and
|
|
116
|
-
`domain_expert` respectively.
|
|
116
|
+
`domain_expert` respectively. If any lane result has `output_ref`, call
|
|
117
|
+
`retrieve_lane_output` and parse the full artifact rather than the preview.
|
|
118
|
+
If a lane is degraded, incomplete, truncated without a usable ref, missing,
|
|
119
|
+
stale, cancelled, or failed, treat the council round as blocked or incomplete;
|
|
120
|
+
do not synthesize from partial member JSON.
|
|
121
|
+
These come from the agents' JSON output; no
|
|
117
122
|
manual construction is needed.
|
|
118
123
|
|
|
119
124
|
#### Synthesis and Deliberation (when council.general.deliberate is true; default true)
|
|
@@ -75,6 +75,8 @@ Explorer missions are dispatched in parallel waves. Launch the wave promptly —
|
|
|
75
75
|
|
|
76
76
|
At the Step 4 boundary, call `collect_lane_results` with `wait: true` for every open wave batch. Treat missing, stale, cancelled, or failed lanes as explicit coverage gaps; do not silently proceed past a required lane. If `dispatch_lanes_async` is unavailable, use blocking `dispatch_lanes` or parallel Task calls and record that async advisory lanes were unavailable.
|
|
77
77
|
|
|
78
|
+
When a collected or blocking lane result includes `output_ref`, treat `output` as a preview and call `retrieve_lane_output` before extracting candidate findings or declaring a lane clean. If the result is `output_degraded`, `transcript_incomplete`, truncated without a usable ref, missing, stale, cancelled, or failed, record the lane as a coverage gap and re-dispatch a narrower lane or mark the affected findings/coverage UNVERIFIED.
|
|
79
|
+
|
|
78
80
|
Explorers generate CANDIDATE FINDINGS only — they do NOT make verdicts. All findings are unverified until Step 5.
|
|
79
81
|
|
|
80
82
|
## Step 4 — Normalize Candidates
|
|
@@ -128,6 +128,12 @@ that async advisory lanes were unavailable.
|
|
|
128
128
|
|
|
129
129
|
## Step 5 — Dual-Reviewer Claim Verification
|
|
130
130
|
|
|
131
|
+
When a lane result includes `output_ref`, treat `output` as a preview and call
|
|
132
|
+
`retrieve_lane_output` before extracting claims, summarizing a subtopic, or marking
|
|
133
|
+
the subtopic clean. If the result is `output_degraded`, `transcript_incomplete`, or
|
|
134
|
+
truncated without a usable ref, mark the affected subtopic UNVERIFIED or
|
|
135
|
+
re-dispatch a narrower lane; do not treat preview absence as evidence absence.
|
|
136
|
+
|
|
131
137
|
Split the candidate findings into 2 shards. Dispatch 2 parallel
|
|
132
138
|
`the active swarm's reviewer agent` calls. Each reviewer receives its shard plus
|
|
133
139
|
the relevant RESEARCH CONTEXT and the instruction:
|
|
@@ -172,6 +172,12 @@ Missing, stale, cancelled, or failed lanes remain explicit ledger limitations.
|
|
|
172
172
|
If `dispatch_lanes_async` is unavailable, use blocking verification and record
|
|
173
173
|
that async advisory lanes were unavailable.
|
|
174
174
|
|
|
175
|
+
When a verification lane result includes `output_ref`, treat `output` as a
|
|
176
|
+
preview and call `retrieve_lane_output` before using it to classify, resolve,
|
|
177
|
+
disprove, or group feedback items. If the result is `output_degraded`,
|
|
178
|
+
`transcript_incomplete`, or truncated without a usable ref, keep the affected
|
|
179
|
+
ledger items as `NEEDS_MORE_EVIDENCE` or re-dispatch a narrower read-only lane.
|
|
180
|
+
|
|
175
181
|
### CI matrix cascade check (do this before fixing)
|
|
176
182
|
|
|
177
183
|
When the PR's `unit` job is a matrix across multiple OSes and downstream jobs
|
|
@@ -495,6 +495,8 @@ Launch all base lanes with `dispatch_lanes_async` when available. Pass the six l
|
|
|
495
495
|
|
|
496
496
|
Before Phase 4 or synthesis, call `collect_lane_results` with `wait: true` for the base-lane batch and treat the collected `lane_results` as the join barrier. Missing, stale, cancelled, or failed base lanes are explicit review coverage gaps. If `dispatch_lanes_async` is unavailable, use blocking `dispatch_lanes`; if that is also unavailable, simulate isolated passes. Do not let one lane's conclusions bias another lane, and record unavailable deterministic dispatch in the validation gate.
|
|
497
497
|
|
|
498
|
+
When any collected or blocking `lane_results[]` item has `output_ref`, treat `output` as a preview only. Call `retrieve_lane_output` and consume the full artifact before extracting candidates, deciding that a lane produced no candidates, or routing work to reviewers. If a lane has `output_truncated: true`, `output_degraded: true`, `transcript_incomplete: true`, or no usable `output_ref`, record an explicit coverage gap and re-dispatch a narrower lane or mark affected candidates/coverage UNVERIFIED; never infer candidate absence from a preview.
|
|
499
|
+
|
|
498
500
|
**lane id uniqueness for parallel dispatches:** When re-dispatching failed or re-running explorer lanes, every `dispatch_lanes_async` or `dispatch_lanes` lane `id` MUST be unique within that dispatch batch and should include lane and attempt suffixes (e.g. `pr_review_explore_lane1_attempt2`). Never reuse an id in the same batch unless intentionally replacing that exact lane before dispatch.
|
|
499
501
|
|
|
500
502
|
Explorers optimize for recall. Over-reporting is expected. Explorers produce candidates only.
|
|
@@ -535,6 +537,8 @@ Explorers must not use `CONFIRMED`, `DISPROVED`, or `PRE_EXISTING`.
|
|
|
535
537
|
|
|
536
538
|
After `collect_lane_results` returns for base lanes, inspect the context pack risk triggers. Launch focused micro-lanes for triggered categories only, using `dispatch_lanes_async` again when more than one read-only micro-lane is needed. Collect every micro-lane batch with `wait: true` before reviewer classification. Do not launch irrelevant micro-lanes.
|
|
537
539
|
|
|
540
|
+
Apply the same `output_ref` rule to micro-lanes: retrieve full output before candidate routing, and treat degraded or incomplete lane artifacts as UNVERIFIED coverage rather than as clean negative evidence.
|
|
541
|
+
|
|
538
542
|
Each micro-lane receives:
|
|
539
543
|
|
|
540
544
|
- exact files and hunks in scope,
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const LANE_OUTPUT_REF_PREFIX = "L1";
|
|
3
|
+
export declare const MAX_LANE_OUTPUT_STORED_BYTES: number;
|
|
4
|
+
declare const LaneOutputArtifactSchema: z.ZodObject<{
|
|
5
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
6
|
+
ref: z.ZodString;
|
|
7
|
+
batchId: z.ZodString;
|
|
8
|
+
laneId: z.ZodString;
|
|
9
|
+
agent: z.ZodString;
|
|
10
|
+
role: z.ZodString;
|
|
11
|
+
sessionId: z.ZodOptional<z.ZodString>;
|
|
12
|
+
parentSessionId: z.ZodOptional<z.ZodString>;
|
|
13
|
+
mode: z.ZodOptional<z.ZodString>;
|
|
14
|
+
source: z.ZodEnum<{
|
|
15
|
+
dispatch_lanes: "dispatch_lanes";
|
|
16
|
+
collect_lane_results: "collect_lane_results";
|
|
17
|
+
}>;
|
|
18
|
+
text: z.ZodString;
|
|
19
|
+
chars: z.ZodNumber;
|
|
20
|
+
bytes: z.ZodNumber;
|
|
21
|
+
digest: z.ZodString;
|
|
22
|
+
messageCount: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
transcriptIncomplete: z.ZodOptional<z.ZodBoolean>;
|
|
24
|
+
createdAt: z.ZodString;
|
|
25
|
+
updatedAt: z.ZodString;
|
|
26
|
+
}, z.core.$strict>;
|
|
27
|
+
export type LaneOutputSource = z.infer<typeof LaneOutputArtifactSchema>['source'];
|
|
28
|
+
export type LaneOutputArtifact = z.infer<typeof LaneOutputArtifactSchema>;
|
|
29
|
+
export interface StoreLaneOutputInput {
|
|
30
|
+
batchId: string;
|
|
31
|
+
laneId: string;
|
|
32
|
+
agent: string;
|
|
33
|
+
role: string;
|
|
34
|
+
sessionId?: string;
|
|
35
|
+
parentSessionId?: string;
|
|
36
|
+
mode?: string;
|
|
37
|
+
source: LaneOutputSource;
|
|
38
|
+
text: string;
|
|
39
|
+
messageCount?: number;
|
|
40
|
+
transcriptIncomplete?: boolean;
|
|
41
|
+
}
|
|
42
|
+
export interface StoreLaneOutputResult {
|
|
43
|
+
ref?: string;
|
|
44
|
+
digest: string;
|
|
45
|
+
chars: number;
|
|
46
|
+
bytes: number;
|
|
47
|
+
degraded: boolean;
|
|
48
|
+
error?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface ReadLaneOutputResult {
|
|
51
|
+
artifact: LaneOutputArtifact;
|
|
52
|
+
}
|
|
53
|
+
export declare function storeLaneOutput(directory: string, input: StoreLaneOutputInput, now?: () => number): StoreLaneOutputResult;
|
|
54
|
+
export declare function readLaneOutput(directory: string, ref: string): ReadLaneOutputResult | null;
|
|
55
|
+
export declare function buildLaneOutputPreview(args: {
|
|
56
|
+
text: string;
|
|
57
|
+
ref?: string;
|
|
58
|
+
degraded?: boolean;
|
|
59
|
+
maxChars: number;
|
|
60
|
+
}): {
|
|
61
|
+
output: string;
|
|
62
|
+
output_chars: number;
|
|
63
|
+
output_truncated: boolean;
|
|
64
|
+
};
|
|
65
|
+
export declare function paginateLaneOutput(text: string, offset: number, limit: number): {
|
|
66
|
+
totalLines: number;
|
|
67
|
+
startLine: number;
|
|
68
|
+
endLine: number;
|
|
69
|
+
content: string;
|
|
70
|
+
exhausted: boolean;
|
|
71
|
+
};
|
|
72
|
+
export {};
|
|
@@ -80,6 +80,12 @@ export interface BackgroundDelegationResult {
|
|
|
80
80
|
chars: number;
|
|
81
81
|
truncated: boolean;
|
|
82
82
|
digest: string;
|
|
83
|
+
outputRef?: string;
|
|
84
|
+
outputPreviewChars?: number;
|
|
85
|
+
outputDegraded?: boolean;
|
|
86
|
+
outputArtifactError?: string;
|
|
87
|
+
transcriptIncomplete?: boolean;
|
|
88
|
+
messageCount?: number;
|
|
83
89
|
}
|
|
84
90
|
/**
|
|
85
91
|
* Read and fold the store to the latest snapshot per correlationId. Lock-free and
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
shouldRunOnStartup,
|
|
13
13
|
writeBackupArtifact,
|
|
14
14
|
writeDoctorArtifact
|
|
15
|
-
} from "./index-
|
|
16
|
-
import"./index-
|
|
15
|
+
} from "./index-0sxvwjt0.js";
|
|
16
|
+
import"./index-hw9b2xng.js";
|
|
17
17
|
import"./index-zfsbaaqh.js";
|
|
18
18
|
import"./index-p0arc26j.js";
|
|
19
19
|
import"./index-yx44zd0p.js";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
3
|
handleGuardrailExplain
|
|
4
|
-
} from "./index-
|
|
5
|
-
import"./index-
|
|
6
|
-
import"./index-
|
|
4
|
+
} from "./index-x7qck34v.js";
|
|
5
|
+
import"./index-yhqt45de.js";
|
|
6
|
+
import"./index-vq2321gg.js";
|
|
7
7
|
import"./index-yhsmmv2z.js";
|
|
8
8
|
import"./index-d9fbxaqd.js";
|
|
9
9
|
import"./index-e8pk68cc.js";
|
|
10
|
-
import"./index-
|
|
11
|
-
import"./index-
|
|
10
|
+
import"./index-0sxvwjt0.js";
|
|
11
|
+
import"./index-hw9b2xng.js";
|
|
12
12
|
import"./index-red8fm8p.js";
|
|
13
13
|
import"./index-f8r50m3h.js";
|
|
14
14
|
import"./index-hz59hg4h.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
3
|
handleGuardrailLog
|
|
4
|
-
} from "./index-
|
|
5
|
-
import"./index-
|
|
6
|
-
import"./index-
|
|
4
|
+
} from "./index-5cb86007.js";
|
|
5
|
+
import"./index-vq2321gg.js";
|
|
6
|
+
import"./index-hw9b2xng.js";
|
|
7
7
|
import"./index-zfsbaaqh.js";
|
|
8
8
|
import"./index-p0arc26j.js";
|
|
9
9
|
import"./index-yx44zd0p.js";
|
|
@@ -247,6 +247,10 @@ var TOOL_METADATA = {
|
|
|
247
247
|
"test_engineer"
|
|
248
248
|
]
|
|
249
249
|
},
|
|
250
|
+
retrieve_lane_output: {
|
|
251
|
+
description: "retrieve paged full dispatch lane output by output_ref; use before consuming truncated lane previews or routing candidates from lane results",
|
|
252
|
+
agents: ["architect"]
|
|
253
|
+
},
|
|
250
254
|
extract_code_blocks: {
|
|
251
255
|
description: "extract code blocks from text content and save them to files",
|
|
252
256
|
agents: [
|
|
@@ -1089,7 +1093,7 @@ var SummaryConfigSchema = exports_external.object({
|
|
|
1089
1093
|
max_summary_chars: exports_external.number().min(100).max(5000).default(1000),
|
|
1090
1094
|
max_stored_bytes: exports_external.number().min(10240).max(104857600).default(10485760),
|
|
1091
1095
|
retention_days: exports_external.number().min(1).max(365).default(7),
|
|
1092
|
-
exempt_tools: exports_external.array(exports_external.string()).default(["retrieve_summary", "task", "read"])
|
|
1096
|
+
exempt_tools: exports_external.array(exports_external.string()).default(["retrieve_summary", "retrieve_lane_output", "task", "read"])
|
|
1093
1097
|
});
|
|
1094
1098
|
var ReviewPassesConfigSchema = exports_external.object({
|
|
1095
1099
|
always_security_review: exports_external.boolean().default(false),
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
3
|
handleGuardrailExplain
|
|
4
|
-
} from "./index-
|
|
4
|
+
} from "./index-x7qck34v.js";
|
|
5
5
|
import {
|
|
6
6
|
handleGuardrailLog
|
|
7
|
-
} from "./index-
|
|
7
|
+
} from "./index-5cb86007.js";
|
|
8
8
|
import {
|
|
9
9
|
COMMAND_REGISTRY,
|
|
10
10
|
SWARM_COMMAND_TOOL_ALLOWLIST,
|
|
@@ -76,17 +76,17 @@ import {
|
|
|
76
76
|
handleWriteRetroCommand,
|
|
77
77
|
normalizeSwarmCommandInput,
|
|
78
78
|
resolveCommand
|
|
79
|
-
} from "./index-
|
|
80
|
-
import"./index-
|
|
79
|
+
} from "./index-yhqt45de.js";
|
|
80
|
+
import"./index-vq2321gg.js";
|
|
81
81
|
import"./index-yhsmmv2z.js";
|
|
82
82
|
import"./index-d9fbxaqd.js";
|
|
83
83
|
import"./index-e8pk68cc.js";
|
|
84
|
-
import"./index-
|
|
84
|
+
import"./index-0sxvwjt0.js";
|
|
85
85
|
import {
|
|
86
86
|
AGENT_TOOL_MAP,
|
|
87
87
|
ORCHESTRATOR_NAME,
|
|
88
88
|
stripKnownSwarmPrefix
|
|
89
|
-
} from "./index-
|
|
89
|
+
} from "./index-hw9b2xng.js";
|
|
90
90
|
import"./index-red8fm8p.js";
|
|
91
91
|
import"./index-f8r50m3h.js";
|
|
92
92
|
import"./index-hz59hg4h.js";
|
|
@@ -12,14 +12,14 @@ import {
|
|
|
12
12
|
detectPosixWrites,
|
|
13
13
|
detectWindowsWrites,
|
|
14
14
|
resolveWriteTargets
|
|
15
|
-
} from "./index-
|
|
15
|
+
} from "./index-yhqt45de.js";
|
|
16
16
|
import {
|
|
17
17
|
checkFileAuthority,
|
|
18
18
|
classifyFile,
|
|
19
19
|
isInDeclaredScope,
|
|
20
20
|
redactPath,
|
|
21
21
|
redactShellCommand
|
|
22
|
-
} from "./index-
|
|
22
|
+
} from "./index-vq2321gg.js";
|
|
23
23
|
|
|
24
24
|
// src/services/guardrail-explain-service.ts
|
|
25
25
|
import path from "path";
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
readDoctorArtifact,
|
|
46
46
|
removeStraySwarmDir,
|
|
47
47
|
runConfigDoctor
|
|
48
|
-
} from "./index-
|
|
48
|
+
} from "./index-0sxvwjt0.js";
|
|
49
49
|
import {
|
|
50
50
|
AGENT_TOOL_MAP,
|
|
51
51
|
ALL_SUBAGENT_NAMES,
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
TOOL_NAME_SET,
|
|
58
58
|
resolveExternalSkillsConfig,
|
|
59
59
|
stripKnownSwarmPrefix
|
|
60
|
-
} from "./index-
|
|
60
|
+
} from "./index-hw9b2xng.js";
|
|
61
61
|
import {
|
|
62
62
|
PlanSchema,
|
|
63
63
|
RetrospectiveEvidenceSchema,
|
|
@@ -879,7 +879,7 @@ var init_executor = __esm(() => {
|
|
|
879
879
|
// package.json
|
|
880
880
|
var package_default = {
|
|
881
881
|
name: "opencode-swarm",
|
|
882
|
-
version: "7.
|
|
882
|
+
version: "7.85.0",
|
|
883
883
|
description: "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
|
|
884
884
|
main: "dist/index.js",
|
|
885
885
|
types: "dist/index.d.ts",
|
|
@@ -11303,7 +11303,7 @@ async function runFinalizeStage(ctx) {
|
|
|
11303
11303
|
}
|
|
11304
11304
|
}
|
|
11305
11305
|
try {
|
|
11306
|
-
const { CuratorConfigSchema: CCS } = await import("./schema-
|
|
11306
|
+
const { CuratorConfigSchema: CCS } = await import("./schema-8d32b2v6.js");
|
|
11307
11307
|
const { config: pmLoadedConfig } = _internals19.loadPluginConfigWithMeta(ctx.directory);
|
|
11308
11308
|
const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
|
|
11309
11309
|
if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
|
|
@@ -14384,7 +14384,7 @@ async function handleDoctorCommand(directory, args) {
|
|
|
14384
14384
|
const result = runConfigDoctor(config, directory);
|
|
14385
14385
|
let output;
|
|
14386
14386
|
if (enableAutoFix && result.hasAutoFixableIssues) {
|
|
14387
|
-
const { runConfigDoctorWithFixes } = await import("./config-doctor-
|
|
14387
|
+
const { runConfigDoctorWithFixes } = await import("./config-doctor-zejarrr6.js");
|
|
14388
14388
|
const fixResult = await runConfigDoctorWithFixes(directory, config, true);
|
|
14389
14389
|
output = formatDoctorMarkdown(fixResult.result);
|
|
14390
14390
|
} else {
|
|
@@ -27978,7 +27978,7 @@ function buildDetailedHelp(commandName, entry) {
|
|
|
27978
27978
|
async function handleHelpCommand(ctx) {
|
|
27979
27979
|
const targetCommand = ctx.args.join(" ");
|
|
27980
27980
|
if (!targetCommand) {
|
|
27981
|
-
const { buildHelpText } = await import("./index-
|
|
27981
|
+
const { buildHelpText } = await import("./index-qqabjns2.js");
|
|
27982
27982
|
return buildHelpText();
|
|
27983
27983
|
}
|
|
27984
27984
|
const tokens = targetCommand.split(/\s+/);
|
|
@@ -27987,7 +27987,7 @@ async function handleHelpCommand(ctx) {
|
|
|
27987
27987
|
return _internals41.buildDetailedHelp(resolved.key, resolved.entry);
|
|
27988
27988
|
}
|
|
27989
27989
|
const similar = _internals41.findSimilarCommands(targetCommand);
|
|
27990
|
-
const { buildHelpText: fullHelp } = await import("./index-
|
|
27990
|
+
const { buildHelpText: fullHelp } = await import("./index-qqabjns2.js");
|
|
27991
27991
|
if (similar.length > 0) {
|
|
27992
27992
|
return `Command '/swarm ${targetCommand}' not found.
|
|
27993
27993
|
|
|
@@ -28120,7 +28120,7 @@ var COMMAND_REGISTRY = {
|
|
|
28120
28120
|
},
|
|
28121
28121
|
"guardrail explain": {
|
|
28122
28122
|
handler: async (ctx) => {
|
|
28123
|
-
const { handleGuardrailExplain } = await import("./guardrail-explain-
|
|
28123
|
+
const { handleGuardrailExplain } = await import("./guardrail-explain-w4txg349.js");
|
|
28124
28124
|
return handleGuardrailExplain(ctx.directory, ctx.args);
|
|
28125
28125
|
},
|
|
28126
28126
|
description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
|
|
@@ -28130,7 +28130,7 @@ var COMMAND_REGISTRY = {
|
|
|
28130
28130
|
},
|
|
28131
28131
|
"guardrail-log": {
|
|
28132
28132
|
handler: async (ctx) => {
|
|
28133
|
-
const { handleGuardrailLog } = await import("./guardrail-log-
|
|
28133
|
+
const { handleGuardrailLog } = await import("./guardrail-log-80116wmz.js");
|
|
28134
28134
|
return handleGuardrailLog(ctx.directory, ctx.args);
|
|
28135
28135
|
},
|
|
28136
28136
|
description: "Read the guardrail decision log (use --blocks-only for blocks)",
|
package/dist/cli/index.js
CHANGED
|
@@ -7,15 +7,15 @@ import {
|
|
|
7
7
|
getPluginLockFilePaths,
|
|
8
8
|
package_default,
|
|
9
9
|
resolveCommand
|
|
10
|
-
} from "./index-
|
|
11
|
-
import"./index-
|
|
10
|
+
} from "./index-yhqt45de.js";
|
|
11
|
+
import"./index-vq2321gg.js";
|
|
12
12
|
import"./index-yhsmmv2z.js";
|
|
13
13
|
import"./index-d9fbxaqd.js";
|
|
14
14
|
import"./index-e8pk68cc.js";
|
|
15
|
-
import"./index-
|
|
15
|
+
import"./index-0sxvwjt0.js";
|
|
16
16
|
import {
|
|
17
17
|
DEFAULT_AGENT_CONFIGS
|
|
18
|
-
} from "./index-
|
|
18
|
+
} from "./index-hw9b2xng.js";
|
|
19
19
|
import"./index-red8fm8p.js";
|
|
20
20
|
import"./index-f8r50m3h.js";
|
|
21
21
|
import"./index-hz59hg4h.js";
|
|
@@ -32,7 +32,13 @@ var ResultSchema = exports_external.object({
|
|
|
32
32
|
error: exports_external.string().optional(),
|
|
33
33
|
chars: exports_external.number(),
|
|
34
34
|
truncated: exports_external.boolean(),
|
|
35
|
-
digest: exports_external.string()
|
|
35
|
+
digest: exports_external.string(),
|
|
36
|
+
outputRef: exports_external.string().optional(),
|
|
37
|
+
outputPreviewChars: exports_external.number().optional(),
|
|
38
|
+
outputDegraded: exports_external.boolean().optional(),
|
|
39
|
+
outputArtifactError: exports_external.string().optional(),
|
|
40
|
+
transcriptIncomplete: exports_external.boolean().optional(),
|
|
41
|
+
messageCount: exports_external.number().optional()
|
|
36
42
|
}).strict();
|
|
37
43
|
var WorkspaceSchema = exports_external.object({
|
|
38
44
|
directory: exports_external.string(),
|