feat(forks): CLI --fork-triggers flag, fork-trigger docs, skill update

- Adds --fork-triggers boolean to wmill workspace fork; passes
  fork_triggers through to the create_fork API call.
- New docs/fork-triggers.md describing the model end-to-end (default,
  opt-in clone, merge-direction filter, conflict warning, future
  runtime-suffix work).
- Updates the adding-a-trigger SKILL.md to mention the fork-export
  ignore-keys participation and the clone_triggers_and_schedules
  block that new trigger kinds must extend.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
hugocasa
2026-04-29 18:52:11 +02:00
co-authored by Claude Opus 4.7
parent e6e2afa3f4
commit 0f00de6eee
4 changed files with 111 additions and 1 deletions
+2
View File
@@ -14,6 +14,7 @@ async function createWorkspaceFork(
createWorkspaceName: string | undefined;
color: string | undefined;
datatableBehavior: string | undefined;
forkTriggers: boolean | undefined;
yes: boolean | undefined;
},
workspaceName: string | undefined,
@@ -231,6 +232,7 @@ async function createWorkspaceFork(
name: opts.createWorkspaceName ?? trueWorkspaceId,
color: forkColor,
forked_datatables: forkedDatatables,
fork_triggers: opts.forkTriggers ?? false,
},
});
+4
View File
@@ -772,6 +772,10 @@ const command = new Command()
"--datatable-behavior <behavior:string>",
"How to handle datatables: skip, schema_only, or schema_and_data (default: interactive prompt)"
)
.option(
"--fork-triggers",
"Clone every trigger and schedule from the parent into the fork (always disabled). Defaults to off."
)
.option("-y --yes", "Skip interactive prompts (defaults datatable behavior to 'skip')")
.action(createWorkspaceFork as any)
.command("delete-fork")