@h-rig/standard-plugin 0.0.6-alpha.143 → 0.0.6-alpha.145

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/src/index.js CHANGED
@@ -37,109 +37,6 @@ var init_metadata = __esm(() => {
37
37
  });
38
38
  });
39
39
 
40
- // packages/standard-plugin/src/product-entrypoint.ts
41
- var exports_product_entrypoint = {};
42
- __export(exports_product_entrypoint, {
43
- runRigOmpProductCommand: () => runRigOmpProductCommand
44
- });
45
- import { resolve as resolve3 } from "path";
46
- import { runCli } from "@oh-my-pi/pi-coding-agent/cli";
47
- import { parseArgs } from "@oh-my-pi/pi-coding-agent/cli/args";
48
- import { resolveCliArgv } from "@oh-my-pi/pi-coding-agent/cli-commands";
49
- import { prepareAcpTerminalAuthArgs } from "@oh-my-pi/pi-coding-agent/modes/acp/terminal-auth";
50
- import { runRootCommand } from "@oh-my-pi/pi-coding-agent/main";
51
- import { createAgentSession } from "@oh-my-pi/pi-coding-agent/sdk";
52
- import { applyIdentityEnv, identityFilterFromEnv, reconcileRuns } from "@rig/client";
53
- import rigExtension from "@rig/rig-extension";
54
- import { resolveRigOmpConfigOverlayPath } from "@rig/runtime/control-plane/remote-config";
55
- function withRigDefaultConfig(projectRoot, argv) {
56
- return ["--config", resolveRigOmpConfigOverlayPath(projectRoot), ...argv];
57
- }
58
- function createRigAgentSession(options = {}) {
59
- return createAgentSession({
60
- ...options,
61
- extensions: [(api) => rigExtension(api), ...options.extensions ?? []]
62
- });
63
- }
64
- function productArgv(input) {
65
- if (input.command === "launch" && input.args.length === 0)
66
- return [];
67
- if (input.command === "launch" && input.args[0]?.startsWith("-"))
68
- return [...input.args];
69
- return [input.command, ...input.args];
70
- }
71
- async function runRigOmpProductCommand(input) {
72
- const projectRoot = resolve3(input.projectRoot);
73
- const previousProjectRoot = process.env.RIG_PROJECT_ROOT;
74
- const previousCwd = process.cwd();
75
- const restorePublicIdentityEnv = applyIdentityEnv(projectRoot);
76
- process.env.RIG_PROJECT_ROOT = projectRoot;
77
- process.chdir(projectRoot);
78
- try {
79
- const argv = productArgv(input);
80
- if (argv[0]?.startsWith("__omp_worker_") || argv[0] === "--smoke-test") {
81
- await runCli(argv);
82
- return { ok: true, group: "product", command: input.command };
83
- }
84
- if (process.stdin.isTTY) {
85
- const reconcile = await reconcileRuns({
86
- workspaceRoot: projectRoot,
87
- identityFilter: identityFilterFromEnv()
88
- }).catch(() => ({ flipped: [], resumable: [] }));
89
- globalThis.__RIG_RESUMABLE__ = reconcile.resumable;
90
- }
91
- const resolved = resolveCliArgv(argv);
92
- if ("error" in resolved) {
93
- process.stderr.write(`error: ${resolved.error}
94
- `);
95
- process.exitCode = 1;
96
- return { ok: true, group: "product", command: input.command };
97
- }
98
- const [ompCommand, ...ompCommandArgs] = resolved.argv;
99
- if (ompCommand === "launch") {
100
- const args = withRigDefaultConfig(projectRoot, ompCommandArgs);
101
- await runRootCommand(parseArgs(args), args, { createAgentSession: createRigAgentSession });
102
- } else if (ompCommand === "acp") {
103
- const { args: preparedArgs, terminalAuth } = prepareAcpTerminalAuthArgs(ompCommandArgs);
104
- const args = withRigDefaultConfig(projectRoot, preparedArgs);
105
- const parsed = parseArgs(args);
106
- if (!terminalAuth)
107
- parsed.mode = "acp";
108
- await runRootCommand(parsed, args, { createAgentSession: createRigAgentSession });
109
- } else if (ompCommand === "join") {
110
- const link = ompCommandArgs[0]?.trim();
111
- if (!link) {
112
- process.stderr.write(`Usage: rig join <link>
113
- `);
114
- process.exitCode = 1;
115
- return { ok: true, group: "product", command: input.command };
116
- }
117
- if (!process.stdin.isTTY || !process.stdout.isTTY) {
118
- process.stderr.write(`rig join requires an interactive terminal
119
- `);
120
- process.exitCode = 1;
121
- return { ok: true, group: "product", command: input.command };
122
- }
123
- const args = withRigDefaultConfig(projectRoot, []);
124
- const parsed = parseArgs(args);
125
- parsed.join = link;
126
- await runRootCommand(parsed, args, { createAgentSession: createRigAgentSession });
127
- } else {
128
- await runCli(resolved.argv);
129
- }
130
- return { ok: true, group: "product", command: input.command };
131
- } finally {
132
- restorePublicIdentityEnv();
133
- process.chdir(previousCwd);
134
- if (previousProjectRoot === undefined) {
135
- delete process.env.RIG_PROJECT_ROOT;
136
- } else {
137
- process.env.RIG_PROJECT_ROOT = previousProjectRoot;
138
- }
139
- }
140
- }
141
- var init_product_entrypoint = () => {};
142
-
143
40
  // packages/standard-plugin/src/drift/extract-refs.ts
144
41
  function stripFenceLines(markdown) {
145
42
  const lines = markdown.split(/\r?\n/);
@@ -272,7 +169,7 @@ __export(exports_detect, {
272
169
  });
273
170
  import { existsSync as existsSync3 } from "fs";
274
171
  import { readdir, readFile, stat } from "fs/promises";
275
- import { basename as basename2, extname, relative, resolve as resolve4 } from "path";
172
+ import { basename as basename2, extname, relative, resolve as resolve3 } from "path";
276
173
  function globLikeMatch(path, pattern) {
277
174
  if (pattern === path)
278
175
  return true;
@@ -299,7 +196,7 @@ async function collectFiles(root, options) {
299
196
  for (const entry of await readdir(dir, { withFileTypes: true })) {
300
197
  if (entry.isDirectory() && DEFAULT_IGNORED_DIRS[entry.name])
301
198
  continue;
302
- const absolute = resolve4(dir, entry.name);
199
+ const absolute = resolve3(dir, entry.name);
303
200
  const rel = relative(root, absolute).replace(/\\/g, "/");
304
201
  if (isIgnored(rel, options.ignore))
305
202
  continue;
@@ -324,13 +221,13 @@ async function collectFiles(root, options) {
324
221
  }
325
222
  async function sourceReferenceCount(projectRoot, reference, docPath) {
326
223
  if (reference.kind === "path")
327
- return existsSync3(resolve4(projectRoot, reference.value)) ? 1 : 0;
224
+ return existsSync3(resolve3(projectRoot, reference.value)) ? 1 : 0;
328
225
  let count = 0;
329
226
  const sourceFiles = await collectFiles(projectRoot, { docs: false });
330
227
  for (const sourceFile of sourceFiles) {
331
228
  if (sourceFile === docPath)
332
229
  continue;
333
- const text = await readFile(resolve4(projectRoot, sourceFile), "utf8").catch(() => "");
230
+ const text = await readFile(resolve3(projectRoot, sourceFile), "utf8").catch(() => "");
334
231
  if (text.includes(reference.value))
335
232
  count += 1;
336
233
  }
@@ -357,7 +254,7 @@ function staleAnchorFinding(docPath, reference) {
357
254
  };
358
255
  }
359
256
  async function detectDeletedReferences(projectRoot, docPath, git = makeDriftGit(projectRoot)) {
360
- const markdown = await readFile(resolve4(projectRoot, docPath), "utf8");
257
+ const markdown = await readFile(resolve3(projectRoot, docPath), "utf8");
361
258
  const docCommit = await git.lastCommitTouching(docPath);
362
259
  const findings = [];
363
260
  for (const reference of extractDriftReferences(markdown)) {
@@ -370,13 +267,13 @@ async function detectDeletedReferences(projectRoot, docPath, git = makeDriftGit(
370
267
  return findings;
371
268
  }
372
269
  async function detectStaleAnchors(projectRoot, docPath, git = makeDriftGit(projectRoot)) {
373
- const markdown = await readFile(resolve4(projectRoot, docPath), "utf8");
270
+ const markdown = await readFile(resolve3(projectRoot, docPath), "utf8");
374
271
  const docCommit = await git.lastCommitTouching(docPath);
375
272
  const findings = [];
376
273
  for (const reference of extractDriftReferences(markdown).filter((ref) => ref.kind === "path")) {
377
- if (!existsSync3(resolve4(projectRoot, reference.value)))
274
+ if (!existsSync3(resolve3(projectRoot, reference.value)))
378
275
  continue;
379
- const sourceStat = await stat(resolve4(projectRoot, reference.value)).catch(() => null);
276
+ const sourceStat = await stat(resolve3(projectRoot, reference.value)).catch(() => null);
380
277
  if (!sourceStat?.isFile())
381
278
  continue;
382
279
  const sourceCommit = await git.lastCommitTouching(reference.value);
@@ -646,9 +543,70 @@ var init_plugin = __esm(() => {
646
543
  DOCS_DRIFT_RUNTIME_CLI_COMMAND = createDocsDriftRuntimeCliCommand();
647
544
  });
648
545
 
649
- // packages/standard-plugin/src/plugin.ts
650
- import { resolve as resolve5 } from "path";
546
+ // packages/standard-plugin/src/bundle.ts
547
+ import { createBlockerClassifierPlugin } from "@rig/blocker-classifier-plugin/plugin";
548
+ import { createDefaultLifecyclePlugin } from "@rig/bundle-default-lifecycle/plugin";
549
+ import { createDependencyGraphPlugin } from "@rig/dependency-graph-plugin/plugin";
550
+ import { createPlanningPlugin } from "@rig/planning-plugin/plugin";
551
+ import { createSupervisorPlugin } from "@rig/supervisor-plugin/plugin";
552
+
553
+ // packages/standard-plugin/src/run-worker-panels.ts
554
+ var RIG_RUN_STOP_PANEL_ACTION = "rig-run:stop";
555
+ var RIG_CAPABILITY_PANEL_SLOT = "capability";
556
+ var RIG_SUPERVISOR_PANEL_ID = "supervisor";
557
+ var RUN_SUPERVISOR_PANEL_REGISTRATION = {
558
+ id: RIG_SUPERVISOR_PANEL_ID,
559
+ slot: RIG_CAPABILITY_PANEL_SLOT,
560
+ title: "Supervisor",
561
+ capabilityId: "run.supervisor",
562
+ description: "Live run status, closeout progress, and operator stop control."
563
+ };
564
+ function buildSupervisorPanelPayload(context) {
565
+ const status = context.folded.status ?? "unknown";
566
+ const taskId = context.folded.record.taskId ?? context.taskIdAtStart;
567
+ const operatorActive = status === "running" || status === "validating" || status === "closing-out" || status === "needs-attention";
568
+ return {
569
+ status,
570
+ currentTask: taskId ? { id: taskId, title: context.runDisplayTitle } : null,
571
+ processed: context.folded.closeoutPhases.length,
572
+ succeeded: context.folded.closeoutPhases.filter((phase) => phase.outcome === "completed").length,
573
+ failed: context.folded.closeoutPhases.filter((phase) => phase.outcome === "failed").length,
574
+ skipped: 0,
575
+ plannedOrder: taskId ? [{ id: taskId, title: context.runDisplayTitle, status }] : [],
576
+ idleReason: operatorActive ? null : status,
577
+ stopActionId: operatorActive ? RIG_RUN_STOP_PANEL_ACTION : null,
578
+ closures: []
579
+ };
580
+ }
581
+ var RUN_SUPERVISOR_PANEL_PRODUCER = {
582
+ ...RUN_SUPERVISOR_PANEL_REGISTRATION,
583
+ produce(context) {
584
+ return buildSupervisorPanelPayload(context);
585
+ }
586
+ };
587
+ var RUN_WORKER_PANEL_PLUGIN = {
588
+ name: "@rig/standard-plugin:run-worker-panels",
589
+ version: "0.0.0-alpha.1",
590
+ contributes: {
591
+ panels: [RUN_SUPERVISOR_PANEL_REGISTRATION]
592
+ },
593
+ __runtime: {
594
+ panels: [RUN_SUPERVISOR_PANEL_PRODUCER]
595
+ }
596
+ };
597
+
598
+ // packages/standard-plugin/src/cli-surface.ts
651
599
  import { definePlugin } from "@rig/core/config";
600
+ var STANDARD_CLI_SURFACE_PLUGIN_NAME = "@rig/standard-plugin:cli-surface";
601
+ var standardCliSurfacePlugin = definePlugin({
602
+ name: STANDARD_CLI_SURFACE_PLUGIN_NAME,
603
+ version: "0.0.0-alpha.1",
604
+ contributes: {}
605
+ });
606
+
607
+ // packages/standard-plugin/src/plugin.ts
608
+ import { resolve as resolve4 } from "path";
609
+ import { definePlugin as definePlugin2 } from "@rig/core/config";
652
610
 
653
611
  // packages/standard-plugin/src/github-issues-source.ts
654
612
  import { spawnSync } from "child_process";
@@ -662,7 +620,7 @@ function createEnvGitHubCredentialProvider() {
662
620
  return {
663
621
  async resolveGitHubToken(input) {
664
622
  if (input.purpose === "selected-repo") {
665
- return { token: cleanToken(process.env.RIG_GITHUB_SELECTED_TOKEN ?? process.env.RIG_GITHUB_TOKEN ?? null) ?? "", source: "signed-in-user" };
623
+ return { token: cleanToken(process.env.RIG_GITHUB_SELECTED_TOKEN ?? null) ?? "", source: "signed-in-user" };
666
624
  }
667
625
  const token = cleanToken(process.env.RIG_GITHUB_TOKEN ?? process.env.GH_TOKEN ?? process.env.GITHUB_TOKEN ?? null);
668
626
  if (!token) {
@@ -697,11 +655,11 @@ function createStateGitHubCredentialProvider(options = {}) {
697
655
  const candidates = [];
698
656
  addCandidate(candidates, options.stateFile ?? process.env.RIG_GITHUB_AUTH_STATE_FILE);
699
657
  addStateDir(candidates, options.stateDir);
658
+ addStateDir(candidates, process.env.RIG_STATE_DIR);
700
659
  addProjectStateDir(candidates, process.env.PROJECT_RIG_ROOT);
701
660
  addProjectStateDir(candidates, process.env.RIG_PROJECT_ROOT);
702
661
  addProjectStateDir(candidates, process.env.RIG_HOST_PROJECT_ROOT);
703
662
  addProjectStateDir(candidates, process.cwd());
704
- addStateDir(candidates, process.env.RIG_STATE_DIR);
705
663
  return candidates;
706
664
  };
707
665
  const readToken = () => {
@@ -721,7 +679,7 @@ function createStateGitHubCredentialProvider(options = {}) {
721
679
  async resolveGitHubToken(input) {
722
680
  const token = readToken();
723
681
  if (input.purpose === "selected-repo") {
724
- return { token: token ?? cleanToken(process.env.RIG_GITHUB_SELECTED_TOKEN ?? process.env.RIG_GITHUB_TOKEN ?? null) ?? "", source: "signed-in-user" };
682
+ return { token: token ?? cleanToken(process.env.RIG_GITHUB_SELECTED_TOKEN ?? null) ?? "", source: "signed-in-user" };
725
683
  }
726
684
  if (token) {
727
685
  return { token, source: "signed-in-user" };
@@ -793,9 +751,12 @@ function parseMetadataList(body, keys) {
793
751
  }
794
752
  return [...new Set(values)];
795
753
  }
754
+ function bodyWithoutRigMetadataBlock(body) {
755
+ return body.replace(/<!-- rig:metadata:start -->\s*[\s\S]*?\s*<!-- rig:metadata:end -->/g, "");
756
+ }
796
757
  function parseBodyKeyRefs(body, keys) {
797
758
  const keyPattern = metadataKeyPattern(keys);
798
- const values = body.split(/\r?\n/).flatMap((line) => {
759
+ const values = bodyWithoutRigMetadataBlock(body).split(/\r?\n/).flatMap((line) => {
799
760
  const match = line.match(keyPattern);
800
761
  return match?.[1] ? parseIssueRefs(match[1]) : [];
801
762
  });
@@ -900,21 +861,29 @@ function isRigStickyStatusComment(body) {
900
861
  return body.includes(RIG_STATUS_COMMENT_MARKER);
901
862
  }
902
863
  function ghSpawnOptions(extraEnv, timeoutMs) {
864
+ const env = {
865
+ ...process.env,
866
+ ...process.env.GH_TOKEN !== undefined ? { GH_TOKEN: process.env.GH_TOKEN } : {},
867
+ ...process.env.GITHUB_TOKEN !== undefined ? { GITHUB_TOKEN: process.env.GITHUB_TOKEN } : {},
868
+ ...process.env.RIG_GITHUB_TOKEN !== undefined ? { RIG_GITHUB_TOKEN: process.env.RIG_GITHUB_TOKEN } : {}
869
+ };
870
+ for (const [key, value] of Object.entries(extraEnv ?? {})) {
871
+ if (value === undefined)
872
+ delete env[key];
873
+ else
874
+ env[key] = value;
875
+ }
903
876
  return {
904
877
  encoding: "utf-8",
905
878
  timeout: timeoutMs,
906
- env: {
907
- ...process.env,
908
- ...process.env.GH_TOKEN !== undefined ? { GH_TOKEN: process.env.GH_TOKEN } : {},
909
- ...process.env.GITHUB_TOKEN !== undefined ? { GITHUB_TOKEN: process.env.GITHUB_TOKEN } : {},
910
- ...process.env.RIG_GITHUB_TOKEN !== undefined ? { RIG_GITHUB_TOKEN: process.env.RIG_GITHUB_TOKEN } : {},
911
- ...extraEnv ?? {}
912
- }
879
+ env
913
880
  };
914
881
  }
915
882
  function credentialEnv(token) {
916
883
  const clean = token?.trim() ?? "";
917
- return { GH_TOKEN: clean, GITHUB_TOKEN: clean, RIG_GITHUB_TOKEN: clean };
884
+ if (clean)
885
+ return { GH_TOKEN: clean, GITHUB_TOKEN: clean, RIG_GITHUB_TOKEN: clean };
886
+ return { GH_TOKEN: undefined, GITHUB_TOKEN: undefined, RIG_GITHUB_TOKEN: undefined };
918
887
  }
919
888
  async function resolveCredentialEnv(opts, purpose) {
920
889
  if (!opts.credentialProvider)
@@ -1663,40 +1632,9 @@ function createFilesTaskSource(opts) {
1663
1632
  // packages/standard-plugin/src/plugin.ts
1664
1633
  init_metadata();
1665
1634
  init_metadata();
1635
+ import { createStandardProductEntrypointPlugin, standardProductEntrypointPlugin } from "@rig/product-entrypoint-plugin/plugin";
1636
+ import { createStandardTaskCliPlugin, standardTaskCliPlugin } from "@rig/task-cli-plugin/plugin";
1666
1637
  var DOCS_HEALTH_PANEL_ID = "docs-health";
1667
- var STANDARD_PRODUCT_COMMANDS = [
1668
- { command: "launch", description: "Open the Rig Cockpit through the OMP collaboration substrate.", usage: "rig [launch] [args...]" },
1669
- { command: "join", description: "Join an encrypted Rig/OMP collaborative session.", usage: "rig join <link>" },
1670
- { command: "acp", description: "Start the Rig product in OMP ACP mode.", usage: "rig acp [args...]" },
1671
- { command: "models", description: "Delegate model management to the Rig product substrate.", usage: "rig models [args...]" },
1672
- { command: "mcp", description: "Delegate MCP management to the Rig product substrate.", usage: "rig mcp [args...]" },
1673
- { command: "update", description: "Delegate product update handling to the Rig product substrate.", usage: "rig update [args...]" }
1674
- ];
1675
- function standardProductCliCommandId(command) {
1676
- return `@rig/standard-plugin:product-entrypoint:${command}`;
1677
- }
1678
- function standardProductCliCommandMetadata(descriptor) {
1679
- return {
1680
- id: standardProductCliCommandId(descriptor.command),
1681
- family: descriptor.command,
1682
- description: descriptor.description,
1683
- usage: descriptor.usage,
1684
- projectRequired: false
1685
- };
1686
- }
1687
- function createStandardProductCliCommand(descriptor) {
1688
- return {
1689
- ...standardProductCliCommandMetadata(descriptor),
1690
- run: async (context, args) => {
1691
- const { runRigOmpProductCommand: runRigOmpProductCommand2 } = await Promise.resolve().then(() => (init_product_entrypoint(), exports_product_entrypoint));
1692
- return runRigOmpProductCommand2({
1693
- projectRoot: context.projectRoot,
1694
- command: descriptor.command,
1695
- args
1696
- });
1697
- }
1698
- };
1699
- }
1700
1638
  function requireStringField(config, field, kind) {
1701
1639
  const value = config[field];
1702
1640
  if (!value) {
@@ -1806,7 +1744,7 @@ function createLazyDocsDriftRuntimeCliCommand(options = {}) {
1806
1744
  };
1807
1745
  }
1808
1746
  function createStandardDocsDriftPlugin(opts = {}) {
1809
- return definePlugin({
1747
+ return definePlugin2({
1810
1748
  name: "@rig/standard-plugin:docs-drift",
1811
1749
  version: "0.1.0",
1812
1750
  contributes: {
@@ -1840,19 +1778,8 @@ function createStandardDocsDriftPlugin(opts = {}) {
1840
1778
  cliCommands: [createLazyDocsDriftRuntimeCliCommand(opts)]
1841
1779
  });
1842
1780
  }
1843
- function createStandardProductEntrypointPlugin() {
1844
- return definePlugin({
1845
- name: "@rig/standard-plugin:product-entrypoint",
1846
- version: "0.1.0",
1847
- contributes: {
1848
- cliCommands: STANDARD_PRODUCT_COMMANDS.map(standardProductCliCommandMetadata)
1849
- }
1850
- }, {
1851
- cliCommands: STANDARD_PRODUCT_COMMANDS.map(createStandardProductCliCommand)
1852
- });
1853
- }
1854
1781
  function createStandardTaskSourcesPlugin(opts = {}) {
1855
- return definePlugin({
1782
+ return definePlugin2({
1856
1783
  name: "@rig/standard-plugin:task-sources",
1857
1784
  version: "0.1.0",
1858
1785
  contributes: {
@@ -1880,7 +1807,7 @@ function createStandardTaskSourcesPlugin(opts = {}) {
1880
1807
  owner: requireStringField(config, "owner", "github-issues"),
1881
1808
  repo: requireStringField(config, "repo", "github-issues")
1882
1809
  };
1883
- const credentialProviderOptions = context?.projectRoot ? { stateDir: resolve5(context.projectRoot, ".rig", "state") } : {};
1810
+ const credentialProviderOptions = context?.projectRoot ? { stateDir: resolve4(context.projectRoot, ".rig", "state") } : {};
1884
1811
  options.credentialProvider = opts.githubCredentialProvider ?? createStateGitHubCredentialProvider(credentialProviderOptions);
1885
1812
  if (opts.githubWorkspaceId)
1886
1813
  options.workspaceId = opts.githubWorkspaceId;
@@ -1926,14 +1853,41 @@ function createStandardTaskSourcesPlugin(opts = {}) {
1926
1853
  ]
1927
1854
  });
1928
1855
  }
1856
+
1857
+ // packages/standard-plugin/src/bundle.ts
1858
+ function standardPlugins(options = {}) {
1859
+ return [
1860
+ createDefaultLifecyclePlugin(),
1861
+ createDependencyGraphPlugin(),
1862
+ createBlockerClassifierPlugin(),
1863
+ createPlanningPlugin(),
1864
+ createSupervisorPlugin(),
1865
+ standardCliSurfacePlugin,
1866
+ RUN_WORKER_PANEL_PLUGIN,
1867
+ createStandardTaskSourcesPlugin(options.taskSources),
1868
+ createStandardTaskCliPlugin(),
1869
+ createStandardDocsDriftPlugin(options.drift),
1870
+ createStandardProductEntrypointPlugin()
1871
+ ];
1872
+ }
1929
1873
  export {
1874
+ standardTaskCliPlugin,
1875
+ standardProductEntrypointPlugin,
1876
+ standardPlugins,
1930
1877
  createStateGitHubCredentialProvider,
1931
1878
  createStandardTaskSourcesPlugin,
1879
+ createStandardTaskCliPlugin,
1932
1880
  createStandardProductEntrypointPlugin,
1933
1881
  createStandardDocsDriftPlugin,
1934
1882
  createGitHubIssuesTaskSource,
1935
1883
  createFilesTaskSource,
1936
1884
  createEnvGitHubCredentialProvider,
1885
+ RUN_WORKER_PANEL_PLUGIN,
1886
+ RUN_SUPERVISOR_PANEL_REGISTRATION,
1887
+ RUN_SUPERVISOR_PANEL_PRODUCER,
1888
+ RIG_SUPERVISOR_PANEL_ID,
1889
+ RIG_RUN_STOP_PANEL_ACTION,
1890
+ RIG_CAPABILITY_PANEL_SLOT,
1937
1891
  DOCS_HEALTH_PANEL_ID,
1938
1892
  DOCS_DRIFT_VALIDATOR_ID,
1939
1893
  DOCS_DRIFT_VALIDATOR,
@@ -0,0 +1 @@
1
+ export { PLANNING_PLAN_PANEL_ID, PLANNING_PLUGIN_NAME, createPlanningPlugin, planningPlugin, } from "@rig/planning-plugin/plugin";
@@ -0,0 +1,14 @@
1
+ // @bun
2
+ // packages/standard-plugin/src/planning.ts
3
+ import {
4
+ PLANNING_PLAN_PANEL_ID,
5
+ PLANNING_PLUGIN_NAME,
6
+ createPlanningPlugin,
7
+ planningPlugin
8
+ } from "@rig/planning-plugin/plugin";
9
+ export {
10
+ planningPlugin,
11
+ createPlanningPlugin,
12
+ PLANNING_PLUGIN_NAME,
13
+ PLANNING_PLAN_PANEL_ID
14
+ };
@@ -10,6 +10,8 @@ export type { DriftJudgeInput, DriftJudgeMismatch, DriftJudgeProvider } from "./
10
10
  export type { GitHubIssuesOptions } from "./github-issues-source";
11
11
  export type { FilesTaskSourceOptions } from "./files-source";
12
12
  export type { DocsDriftPluginOptions } from "./drift/metadata";
13
+ export { createStandardProductEntrypointPlugin, standardProductEntrypointPlugin } from "@rig/product-entrypoint-plugin/plugin";
14
+ export { createStandardTaskCliPlugin, standardTaskCliPlugin } from "@rig/task-cli-plugin/plugin";
13
15
  export declare const DOCS_HEALTH_PANEL_ID = "docs-health";
14
16
  export interface StandardTaskSourcesPluginOptions {
15
17
  githubCredentialProvider?: GitHubCredentialProvider;
@@ -19,5 +21,4 @@ export interface StandardTaskSourcesPluginOptions {
19
21
  onGitHubTaskChanged?: GitHubIssuesOptions["onTaskChanged"];
20
22
  }
21
23
  export declare function createStandardDocsDriftPlugin(opts?: DocsDriftPluginOptions): RigPluginWithRuntime;
22
- export declare function createStandardProductEntrypointPlugin(): RigPluginWithRuntime;
23
24
  export declare function createStandardTaskSourcesPlugin(opts?: StandardTaskSourcesPluginOptions): RigPluginWithRuntime;