@soat/cli 0.13.20 → 0.14.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.
Files changed (2) hide show
  1. package/dist/index.mjs +564 -36
  2. package/package.json +9 -10
package/dist/index.mjs CHANGED
@@ -7,11 +7,11 @@ import * as sdk from "@soat/sdk";
7
7
  import { createClient, createConfig } from "@soat/sdk";
8
8
  import { program } from "commander";
9
9
  import * as fs from "node:fs";
10
- import yaml from "js-yaml";
10
+ import { load } from "js-yaml";
11
11
  import * as os from "node:os";
12
12
 
13
13
  //#region package.json
14
- var version = "0.13.20";
14
+ var version = "0.14.1";
15
15
 
16
16
  //#endregion
17
17
  //#region src/cli-wrappers/wrappers/formations.ts
@@ -62,7 +62,7 @@ var readTemplateFromPath = args => {
62
62
  return JSON.parse(trimmed);
63
63
  } catch {}
64
64
  try {
65
- return yaml.load(trimmed);
65
+ return load(trimmed);
66
66
  } catch {
67
67
  throw new Error(`Template file must contain valid JSON or YAML: ${templatePath}`);
68
68
  }
@@ -665,12 +665,6 @@ var routes = {
665
665
  "required": false,
666
666
  "type": "object",
667
667
  "in": "body"
668
- }, {
669
- "name": "reasoning",
670
- "description": "Deep-thinking configuration. `effort` forwards provider-native reasoning; `mode: pipeline` runs an ordered list of reasoning steps after the base draft, each step running 1..N branches over 1..R rounds. reflect, debate, and best-of-N are expressed as pipelines over this primitive — see the Agents module docs and the deep-thinking tutorial. As a per-generation override (in the generate request body), this replaces the agent's stored reasoning config entirely (object replace, not merge).",
671
- "required": false,
672
- "type": "object",
673
- "in": "body"
674
668
  }, {
675
669
  "name": "output_schema",
676
670
  "description": "JSON Schema describing the structured object the model must return. When set, non-streaming generations use the AI SDK to constrain output to this schema; the parsed value is returned as `output.object` in the generation response. See the Structured Output section in the Agents module docs.",
@@ -803,12 +797,6 @@ var routes = {
803
797
  "required": false,
804
798
  "type": "object",
805
799
  "in": "body"
806
- }, {
807
- "name": "reasoning",
808
- "description": "Deep-thinking configuration. `effort` forwards provider-native reasoning; `mode: pipeline` runs an ordered list of reasoning steps after the base draft, each step running 1..N branches over 1..R rounds. reflect, debate, and best-of-N are expressed as pipelines over this primitive — see the Agents module docs and the deep-thinking tutorial. As a per-generation override (in the generate request body), this replaces the agent's stored reasoning config entirely (object replace, not merge).",
809
- "required": false,
810
- "type": "object",
811
- "in": "body"
812
800
  }, {
813
801
  "name": "output_schema",
814
802
  "description": "JSON Schema describing the structured object the model must return. When set, non-streaming generations use the AI SDK to constrain output to this schema; the parsed value is returned as `output.object` in the generation response. See the Structured Output section in the Agents module docs.",
@@ -926,12 +914,6 @@ var routes = {
926
914
  "required": false,
927
915
  "type": "object",
928
916
  "in": "body"
929
- }, {
930
- "name": "reasoning",
931
- "description": "Deep-thinking configuration. `effort` forwards provider-native reasoning; `mode: pipeline` runs an ordered list of reasoning steps after the base draft, each step running 1..N branches over 1..R rounds. reflect, debate, and best-of-N are expressed as pipelines over this primitive — see the Agents module docs and the deep-thinking tutorial. As a per-generation override (in the generate request body), this replaces the agent's stored reasoning config entirely (object replace, not merge).",
932
- "required": false,
933
- "type": "object",
934
- "in": "body"
935
917
  }, {
936
918
  "name": "output_schema",
937
919
  "description": "JSON Schema describing the structured object the model must return. When set, non-streaming generations use the AI SDK to constrain output to this schema; the parsed value is returned as `output.object` in the generation response. See the Structured Output section in the Agents module docs.",
@@ -1034,12 +1016,6 @@ var routes = {
1034
1016
  "required": false,
1035
1017
  "type": "object",
1036
1018
  "in": "body"
1037
- }, {
1038
- "name": "reasoning",
1039
- "description": "Deep-thinking configuration. `effort` forwards provider-native reasoning; `mode: pipeline` runs an ordered list of reasoning steps after the base draft, each step running 1..N branches over 1..R rounds. reflect, debate, and best-of-N are expressed as pipelines over this primitive — see the Agents module docs and the deep-thinking tutorial. As a per-generation override (in the generate request body), this replaces the agent's stored reasoning config entirely (object replace, not merge).",
1040
- "required": false,
1041
- "type": "object",
1042
- "in": "body"
1043
1019
  }]
1044
1020
  },
1045
1021
  "submit-agent-tool-outputs": {
@@ -1777,6 +1753,252 @@ var routes = {
1777
1753
  "in": "path"
1778
1754
  }]
1779
1755
  },
1756
+ "list-discussions": {
1757
+ serviceClass: "Discussions",
1758
+ operationId: "listDiscussions",
1759
+ description: "Returns all discussions the caller has access to. If project_id is provided, returns only discussions in that project.",
1760
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1761
+ pathParams: [],
1762
+ queryParams: ["project_id", "limit", "offset"],
1763
+ flags: [{
1764
+ "name": "project_id",
1765
+ "description": "Project ID (optional)",
1766
+ "required": false,
1767
+ "type": "string",
1768
+ "in": "query"
1769
+ }, {
1770
+ "name": "limit",
1771
+ "description": "Maximum number of results to return",
1772
+ "required": false,
1773
+ "type": "integer",
1774
+ "in": "query"
1775
+ }, {
1776
+ "name": "offset",
1777
+ "description": "Number of results to skip",
1778
+ "required": false,
1779
+ "type": "integer",
1780
+ "in": "query"
1781
+ }]
1782
+ },
1783
+ "create-discussion": {
1784
+ serviceClass: "Discussions",
1785
+ operationId: "createDiscussion",
1786
+ description: "Creates a new discussion config. project keys infer the project from the key's scope; JWT callers must supply project_id.",
1787
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1788
+ pathParams: [],
1789
+ queryParams: [],
1790
+ flags: [{
1791
+ "name": "project_id",
1792
+ "description": "Project ID. Required for JWT auth; omit when using a project key.",
1793
+ "required": false,
1794
+ "type": "string",
1795
+ "in": "body"
1796
+ }, {
1797
+ "name": "name",
1798
+ "description": "",
1799
+ "required": true,
1800
+ "type": "string",
1801
+ "in": "body"
1802
+ }, {
1803
+ "name": "description",
1804
+ "description": "",
1805
+ "required": false,
1806
+ "type": "string",
1807
+ "in": "body"
1808
+ }, {
1809
+ "name": "ai_provider_id",
1810
+ "description": "Default AI provider participants and synthesis fall back to.",
1811
+ "required": true,
1812
+ "type": "string",
1813
+ "in": "body"
1814
+ }, {
1815
+ "name": "model",
1816
+ "description": "Default model (falls back to the provider's default_model).",
1817
+ "required": false,
1818
+ "type": "string",
1819
+ "in": "body"
1820
+ }, {
1821
+ "name": "max_rounds",
1822
+ "description": "",
1823
+ "required": false,
1824
+ "type": "integer",
1825
+ "in": "body"
1826
+ }, {
1827
+ "name": "synthesis",
1828
+ "description": "Override for the final synthesis pass that weighs the deliberation into a single outcome.",
1829
+ "required": false,
1830
+ "type": "object",
1831
+ "in": "body"
1832
+ }, {
1833
+ "name": "tags",
1834
+ "description": "",
1835
+ "required": false,
1836
+ "type": "object",
1837
+ "in": "body"
1838
+ }, {
1839
+ "name": "participants",
1840
+ "description": "",
1841
+ "required": false,
1842
+ "type": "array",
1843
+ "in": "body"
1844
+ }]
1845
+ },
1846
+ "get-discussion-run": {
1847
+ serviceClass: "Discussions",
1848
+ operationId: "getDiscussionRun",
1849
+ description: "Returns a single discussion run, including its outcome, transcript conversation, and outcome document.",
1850
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1851
+ pathParams: ["run_id"],
1852
+ queryParams: [],
1853
+ flags: [{
1854
+ "name": "run_id",
1855
+ "description": "Discussion run ID",
1856
+ "required": true,
1857
+ "type": "string",
1858
+ "in": "path"
1859
+ }]
1860
+ },
1861
+ "get-discussion": {
1862
+ serviceClass: "Discussions",
1863
+ operationId: "getDiscussion",
1864
+ description: "Returns a discussion config with its participants.",
1865
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1866
+ pathParams: ["discussion_id"],
1867
+ queryParams: [],
1868
+ flags: [{
1869
+ "name": "discussion_id",
1870
+ "description": "Discussion ID",
1871
+ "required": true,
1872
+ "type": "string",
1873
+ "in": "path"
1874
+ }]
1875
+ },
1876
+ "update-discussion": {
1877
+ serviceClass: "Discussions",
1878
+ operationId: "updateDiscussion",
1879
+ description: "Updates a discussion. Providing participants replaces the full set (not merged).",
1880
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1881
+ pathParams: ["discussion_id"],
1882
+ queryParams: [],
1883
+ flags: [{
1884
+ "name": "discussion_id",
1885
+ "description": "Discussion ID",
1886
+ "required": true,
1887
+ "type": "string",
1888
+ "in": "path"
1889
+ }, {
1890
+ "name": "name",
1891
+ "description": "",
1892
+ "required": false,
1893
+ "type": "string",
1894
+ "in": "body"
1895
+ }, {
1896
+ "name": "description",
1897
+ "description": "",
1898
+ "required": false,
1899
+ "type": "string",
1900
+ "in": "body"
1901
+ }, {
1902
+ "name": "ai_provider_id",
1903
+ "description": "",
1904
+ "required": false,
1905
+ "type": "string",
1906
+ "in": "body"
1907
+ }, {
1908
+ "name": "model",
1909
+ "description": "",
1910
+ "required": false,
1911
+ "type": "string",
1912
+ "in": "body"
1913
+ }, {
1914
+ "name": "max_rounds",
1915
+ "description": "",
1916
+ "required": false,
1917
+ "type": "integer",
1918
+ "in": "body"
1919
+ }, {
1920
+ "name": "synthesis",
1921
+ "description": "Override for the final synthesis pass that weighs the deliberation into a single outcome.",
1922
+ "required": false,
1923
+ "type": "object",
1924
+ "in": "body"
1925
+ }, {
1926
+ "name": "tags",
1927
+ "description": "",
1928
+ "required": false,
1929
+ "type": "object",
1930
+ "in": "body"
1931
+ }, {
1932
+ "name": "participants",
1933
+ "description": "",
1934
+ "required": false,
1935
+ "type": "array",
1936
+ "in": "body"
1937
+ }]
1938
+ },
1939
+ "delete-discussion": {
1940
+ serviceClass: "Discussions",
1941
+ operationId: "deleteDiscussion",
1942
+ description: "Deletes a discussion config and its participants.",
1943
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1944
+ pathParams: ["discussion_id"],
1945
+ queryParams: [],
1946
+ flags: [{
1947
+ "name": "discussion_id",
1948
+ "description": "Discussion ID",
1949
+ "required": true,
1950
+ "type": "string",
1951
+ "in": "path"
1952
+ }]
1953
+ },
1954
+ "list-discussion-runs": {
1955
+ serviceClass: "Discussions",
1956
+ operationId: "listDiscussionRuns",
1957
+ description: "Returns the run history of a discussion, most recent first.",
1958
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1959
+ pathParams: ["discussion_id"],
1960
+ queryParams: ["limit", "offset"],
1961
+ flags: [{
1962
+ "name": "discussion_id",
1963
+ "description": "Discussion ID",
1964
+ "required": true,
1965
+ "type": "string",
1966
+ "in": "path"
1967
+ }, {
1968
+ "name": "limit",
1969
+ "description": "",
1970
+ "required": false,
1971
+ "type": "integer",
1972
+ "in": "query"
1973
+ }, {
1974
+ "name": "offset",
1975
+ "description": "",
1976
+ "required": false,
1977
+ "type": "integer",
1978
+ "in": "query"
1979
+ }]
1980
+ },
1981
+ "create-discussion-run": {
1982
+ serviceClass: "Discussions",
1983
+ operationId: "createDiscussionRun",
1984
+ description: "Runs the discussion synchronously over the given topic and returns the completed run, whose outcome inlines the synthesized text. The run's transcript is persisted as a conversation and the outcome as a document.",
1985
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/discussions",
1986
+ pathParams: ["discussion_id"],
1987
+ queryParams: [],
1988
+ flags: [{
1989
+ "name": "discussion_id",
1990
+ "description": "Discussion ID",
1991
+ "required": true,
1992
+ "type": "string",
1993
+ "in": "path"
1994
+ }, {
1995
+ "name": "topic",
1996
+ "description": "The question or subject the participants deliberate on.",
1997
+ "required": true,
1998
+ "type": "string",
1999
+ "in": "body"
2000
+ }]
2001
+ },
1780
2002
  "list-documents": {
1781
2003
  serviceClass: "Documents",
1782
2004
  operationId: "listDocuments",
@@ -2689,7 +2911,7 @@ var routes = {
2689
2911
  "in": "query"
2690
2912
  }, {
2691
2913
  "name": "initiator_generation_id",
2692
- "description": "Filter by the public ID of the parent generation. Returns all generations triggered by that generation — reasoning pipeline steps and perspective turns, and sub-agent invocations. Null-initiated (top-level) generations are not returned.\n",
2914
+ "description": "Filter by the public ID of the parent generation. Returns all generations triggered by that generation — sub-agent invocations. Null-initiated (top-level) generations are not returned.\n",
2693
2915
  "required": false,
2694
2916
  "type": "string",
2695
2917
  "in": "query"
@@ -3418,7 +3640,7 @@ var routes = {
3418
3640
  "start-orchestration-run": {
3419
3641
  serviceClass: "Orchestrations",
3420
3642
  operationId: "startOrchestrationRun",
3421
- description: "Creates a new run for the orchestration named by orchestration_id. By default the run executes durably in the background: the response returns immediately with status \"running\" and progress is observed via get-orchestration-run or run lifecycle webhook events (orchestration_runs.started/paused/completed/failed). Delay and poll waits are offloaded to a background scheduler and survive restarts. Pass wait=true to block until the run reaches a terminal or paused state (the legacy synchronous behaviour).",
3643
+ description: "Creates a new run for the orchestration named by orchestration_id. By default the run executes durably in the background: the response returns immediately with status \"running\" and progress is observed via get-orchestration-run or run lifecycle webhook events (orchestration_runs.started/awaiting_input/succeeded/failed). Delay and poll waits park the run as \"sleeping\" and are woken by a background scheduler, surviving restarts. Pass wait=true to block until the run reaches a terminal or awaiting_input state (the legacy synchronous behaviour).",
3422
3644
  moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/orchestrations",
3423
3645
  pathParams: [],
3424
3646
  queryParams: [],
@@ -3436,7 +3658,7 @@ var routes = {
3436
3658
  "in": "body"
3437
3659
  }, {
3438
3660
  "name": "wait",
3439
- "description": "When true, block until the run reaches a terminal (completed/failed) or paused state and return the settled run. When false (default), return immediately with status \"running\" and execute the run in the background.",
3661
+ "description": "When true, block until the run reaches a terminal (succeeded/failed) or awaiting_input state and return the settled run. When false (default), return immediately with status \"running\" and execute the run in the background.",
3440
3662
  "required": false,
3441
3663
  "type": "boolean",
3442
3664
  "in": "body"
@@ -3445,7 +3667,7 @@ var routes = {
3445
3667
  "cancel-orchestration-run": {
3446
3668
  serviceClass: "Orchestrations",
3447
3669
  operationId: "cancelOrchestrationRun",
3448
- description: "Cancels a running or paused orchestration run.",
3670
+ description: "Cancels a run that has not yet reached a terminal state.",
3449
3671
  moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/orchestrations",
3450
3672
  pathParams: ["run_id"],
3451
3673
  queryParams: [],
@@ -3460,7 +3682,7 @@ var routes = {
3460
3682
  "submit-human-input": {
3461
3683
  serviceClass: "Orchestrations",
3462
3684
  operationId: "submitHumanInput",
3463
- description: "Provides human input to a paused orchestration run waiting at a human node.",
3685
+ description: "Provides human input to a run that is awaiting_input at a human node.",
3464
3686
  moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/orchestrations",
3465
3687
  pathParams: ["run_id"],
3466
3688
  queryParams: [],
@@ -3487,7 +3709,7 @@ var routes = {
3487
3709
  "resume-orchestration-run": {
3488
3710
  serviceClass: "Orchestrations",
3489
3711
  operationId: "resumeOrchestrationRun",
3490
- description: "Resumes a paused orchestration run from its last checkpoint.",
3712
+ description: "Resumes an awaiting_input orchestration run from its last checkpoint.",
3491
3713
  moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/orchestrations",
3492
3714
  pathParams: ["run_id"],
3493
3715
  queryParams: [],
@@ -3970,7 +4192,7 @@ var routes = {
3970
4192
  "delete-session": {
3971
4193
  serviceClass: "Sessions",
3972
4194
  operationId: "deleteSession",
3973
- description: "Deletes the session and its underlying conversation and actors.",
4195
+ description: "Deletes the session and its underlying conversation and messages. The session's actor is not deleted. Generations and traces produced by the session are not deleted either, since they are not linked to the session or conversation.",
3974
4196
  moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/sessions",
3975
4197
  pathParams: ["session_id"],
3976
4198
  queryParams: [],
@@ -4208,6 +4430,12 @@ var routes = {
4208
4430
  "required": false,
4209
4431
  "type": "object",
4210
4432
  "in": "body"
4433
+ }, {
4434
+ "name": "discussion_id",
4435
+ "description": "For `discussion` tools: the ID of the discussion to invoke.",
4436
+ "required": false,
4437
+ "type": "string",
4438
+ "in": "body"
4211
4439
  }, {
4212
4440
  "name": "output_mapping",
4213
4441
  "description": "Universal JSON Logic mapping applied to the tool's raw result. See the `output_mapping` field on the Tool schema for details.",
@@ -4298,6 +4526,12 @@ var routes = {
4298
4526
  "required": false,
4299
4527
  "type": "object",
4300
4528
  "in": "body"
4529
+ }, {
4530
+ "name": "discussion_id",
4531
+ "description": "For `discussion` tools: the ID of the discussion to invoke.",
4532
+ "required": false,
4533
+ "type": "string",
4534
+ "in": "body"
4301
4535
  }, {
4302
4536
  "name": "output_mapping",
4303
4537
  "description": "Universal JSON Logic mapping applied to the tool's raw result. See the `output_mapping` field on the Tool schema for details.",
@@ -4405,10 +4639,304 @@ var routes = {
4405
4639
  "in": "path"
4406
4640
  }, {
4407
4641
  "name": "include",
4408
- "description": "Comma-separated list of related resources to embed on each node. Supported value: `generations` — attaches all generations that belong to each trace node (including reasoning pipeline children linked via `initiator_generation_id`).\n",
4642
+ "description": "Comma-separated list of related resources to embed on each node. Supported value: `generations` — attaches all generations that belong to each trace node (including sub-agent generations linked via `initiator_generation_id`).\n",
4643
+ "required": false,
4644
+ "type": "string",
4645
+ "in": "query"
4646
+ }]
4647
+ },
4648
+ "list-triggers": {
4649
+ serviceClass: "Triggers",
4650
+ operationId: "listTriggers",
4651
+ description: "Lists triggers. Filter by project, starter type, or target type.",
4652
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4653
+ pathParams: [],
4654
+ queryParams: ["project_id", "type", "target_type"],
4655
+ flags: [{
4656
+ "name": "project_id",
4657
+ "description": "",
4658
+ "required": false,
4659
+ "type": "string",
4660
+ "in": "query"
4661
+ }, {
4662
+ "name": "type",
4663
+ "description": "",
4409
4664
  "required": false,
4410
4665
  "type": "string",
4411
4666
  "in": "query"
4667
+ }, {
4668
+ "name": "target_type",
4669
+ "description": "",
4670
+ "required": false,
4671
+ "type": "string",
4672
+ "in": "query"
4673
+ }]
4674
+ },
4675
+ "create-trigger": {
4676
+ serviceClass: "Triggers",
4677
+ operationId: "createTrigger",
4678
+ description: "Creates a new trigger for a project",
4679
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4680
+ pathParams: [],
4681
+ queryParams: [],
4682
+ flags: [{
4683
+ "name": "project_id",
4684
+ "description": "Public ID of the project. Optional when authenticating with a project-scoped API key, which defaults to the key's project; required otherwise.",
4685
+ "required": false,
4686
+ "type": "string",
4687
+ "in": "body"
4688
+ }, {
4689
+ "name": "name",
4690
+ "description": "",
4691
+ "required": true,
4692
+ "type": "string",
4693
+ "in": "body"
4694
+ }, {
4695
+ "name": "description",
4696
+ "description": "",
4697
+ "required": false,
4698
+ "type": "string",
4699
+ "in": "body"
4700
+ }, {
4701
+ "name": "type",
4702
+ "description": "",
4703
+ "required": true,
4704
+ "type": "string",
4705
+ "in": "body"
4706
+ }, {
4707
+ "name": "target_type",
4708
+ "description": "",
4709
+ "required": true,
4710
+ "type": "string",
4711
+ "in": "body"
4712
+ }, {
4713
+ "name": "target_id",
4714
+ "description": "",
4715
+ "required": true,
4716
+ "type": "string",
4717
+ "in": "body"
4718
+ }, {
4719
+ "name": "action",
4720
+ "description": "Tool targets only — the action for soat/mcp tools",
4721
+ "required": false,
4722
+ "type": "string",
4723
+ "in": "body"
4724
+ }, {
4725
+ "name": "input",
4726
+ "description": "",
4727
+ "required": false,
4728
+ "type": "object",
4729
+ "in": "body"
4730
+ }, {
4731
+ "name": "cron",
4732
+ "description": "5-field cron expression (UTC). Required when type is schedule",
4733
+ "required": false,
4734
+ "type": "string",
4735
+ "in": "body"
4736
+ }, {
4737
+ "name": "active",
4738
+ "description": "",
4739
+ "required": false,
4740
+ "type": "boolean",
4741
+ "in": "body"
4742
+ }, {
4743
+ "name": "policy_id",
4744
+ "description": "",
4745
+ "required": false,
4746
+ "type": "string",
4747
+ "in": "body"
4748
+ }]
4749
+ },
4750
+ "get-trigger": {
4751
+ serviceClass: "Triggers",
4752
+ operationId: "getTrigger",
4753
+ description: "Retrieves the details of a specific trigger",
4754
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4755
+ pathParams: ["trigger_id"],
4756
+ queryParams: [],
4757
+ flags: [{
4758
+ "name": "trigger_id",
4759
+ "description": "",
4760
+ "required": true,
4761
+ "type": "string",
4762
+ "in": "path"
4763
+ }]
4764
+ },
4765
+ "update-trigger": {
4766
+ serviceClass: "Triggers",
4767
+ operationId: "updateTrigger",
4768
+ description: "Updates an existing trigger's configuration. The type is immutable.",
4769
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4770
+ pathParams: ["trigger_id"],
4771
+ queryParams: [],
4772
+ flags: [{
4773
+ "name": "trigger_id",
4774
+ "description": "",
4775
+ "required": true,
4776
+ "type": "string",
4777
+ "in": "path"
4778
+ }, {
4779
+ "name": "name",
4780
+ "description": "",
4781
+ "required": false,
4782
+ "type": "string",
4783
+ "in": "body"
4784
+ }, {
4785
+ "name": "description",
4786
+ "description": "",
4787
+ "required": false,
4788
+ "type": "string",
4789
+ "in": "body"
4790
+ }, {
4791
+ "name": "target_type",
4792
+ "description": "",
4793
+ "required": false,
4794
+ "type": "string",
4795
+ "in": "body"
4796
+ }, {
4797
+ "name": "target_id",
4798
+ "description": "",
4799
+ "required": false,
4800
+ "type": "string",
4801
+ "in": "body"
4802
+ }, {
4803
+ "name": "action",
4804
+ "description": "",
4805
+ "required": false,
4806
+ "type": "string",
4807
+ "in": "body"
4808
+ }, {
4809
+ "name": "input",
4810
+ "description": "",
4811
+ "required": false,
4812
+ "type": "object",
4813
+ "in": "body"
4814
+ }, {
4815
+ "name": "cron",
4816
+ "description": "",
4817
+ "required": false,
4818
+ "type": "string",
4819
+ "in": "body"
4820
+ }, {
4821
+ "name": "active",
4822
+ "description": "",
4823
+ "required": false,
4824
+ "type": "boolean",
4825
+ "in": "body"
4826
+ }, {
4827
+ "name": "policy_id",
4828
+ "description": "",
4829
+ "required": false,
4830
+ "type": "string",
4831
+ "in": "body"
4832
+ }]
4833
+ },
4834
+ "delete-trigger": {
4835
+ serviceClass: "Triggers",
4836
+ operationId: "deleteTrigger",
4837
+ description: "Deletes a trigger",
4838
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4839
+ pathParams: ["trigger_id"],
4840
+ queryParams: [],
4841
+ flags: [{
4842
+ "name": "trigger_id",
4843
+ "description": "",
4844
+ "required": true,
4845
+ "type": "string",
4846
+ "in": "path"
4847
+ }]
4848
+ },
4849
+ "fire-trigger": {
4850
+ serviceClass: "Triggers",
4851
+ operationId: "fireTrigger",
4852
+ description: "Fires a trigger synchronously and returns the terminal firing record.",
4853
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4854
+ pathParams: ["trigger_id"],
4855
+ queryParams: [],
4856
+ flags: [{
4857
+ "name": "trigger_id",
4858
+ "description": "",
4859
+ "required": true,
4860
+ "type": "string",
4861
+ "in": "path"
4862
+ }, {
4863
+ "name": "input",
4864
+ "description": "Fire-time input, shallow-merged over the trigger's static input",
4865
+ "required": false,
4866
+ "type": "object",
4867
+ "in": "body"
4868
+ }]
4869
+ },
4870
+ "get-trigger-secret": {
4871
+ serviceClass: "Triggers",
4872
+ operationId: "getTriggerSecret",
4873
+ description: "Retrieves the signing secret for a webhook trigger",
4874
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4875
+ pathParams: ["trigger_id"],
4876
+ queryParams: [],
4877
+ flags: [{
4878
+ "name": "trigger_id",
4879
+ "description": "",
4880
+ "required": true,
4881
+ "type": "string",
4882
+ "in": "path"
4883
+ }]
4884
+ },
4885
+ "rotate-trigger-secret": {
4886
+ serviceClass: "Triggers",
4887
+ operationId: "rotateTriggerSecret",
4888
+ description: "Rotates the signing secret for a webhook trigger",
4889
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4890
+ pathParams: ["trigger_id"],
4891
+ queryParams: [],
4892
+ flags: [{
4893
+ "name": "trigger_id",
4894
+ "description": "",
4895
+ "required": true,
4896
+ "type": "string",
4897
+ "in": "path"
4898
+ }]
4899
+ },
4900
+ "list-trigger-firings": {
4901
+ serviceClass: "Triggers",
4902
+ operationId: "listTriggerFirings",
4903
+ description: "Lists firings for a trigger (trigger_id is required).",
4904
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4905
+ pathParams: [],
4906
+ queryParams: ["trigger_id", "limit", "offset"],
4907
+ flags: [{
4908
+ "name": "trigger_id",
4909
+ "description": "Trigger to list firings for (trg_...)",
4910
+ "required": true,
4911
+ "type": "string",
4912
+ "in": "query"
4913
+ }, {
4914
+ "name": "limit",
4915
+ "description": "",
4916
+ "required": false,
4917
+ "type": "integer",
4918
+ "in": "query"
4919
+ }, {
4920
+ "name": "offset",
4921
+ "description": "",
4922
+ "required": false,
4923
+ "type": "integer",
4924
+ "in": "query"
4925
+ }]
4926
+ },
4927
+ "get-trigger-firing": {
4928
+ serviceClass: "Triggers",
4929
+ operationId: "getTriggerFiring",
4930
+ description: "Retrieves the details of a specific trigger firing",
4931
+ moduleDocsUrl: "https://soat.ttoss.dev/docs/modules/triggers",
4932
+ pathParams: ["firing_id"],
4933
+ queryParams: [],
4934
+ flags: [{
4935
+ "name": "firing_id",
4936
+ "description": "",
4937
+ "required": true,
4938
+ "type": "string",
4939
+ "in": "path"
4412
4940
  }]
4413
4941
  },
4414
4942
  "get-current-user": {
@@ -4537,7 +5065,7 @@ var routes = {
4537
5065
  queryParams: [],
4538
5066
  flags: [{
4539
5067
  "name": "user_id",
4540
- "description": "User public ID (usr_ prefix)",
5068
+ "description": "User public ID (user_ prefix)",
4541
5069
  "required": true,
4542
5070
  "type": "string",
4543
5071
  "in": "path"
package/package.json CHANGED
@@ -1,24 +1,23 @@
1
1
  {
2
2
  "name": "@soat/cli",
3
- "version": "0.13.20",
3
+ "version": "0.14.1",
4
4
  "type": "module",
5
5
  "dependencies": {
6
6
  "@inquirer/input": "^5.1.2",
7
7
  "@inquirer/password": "^5.1.1",
8
- "@ttoss/logger": "^0.8.16",
8
+ "@ttoss/logger": "^0.8.19",
9
9
  "commander": "^15.0.0",
10
- "js-yaml": "^4.2.0",
11
- "@soat/sdk": "0.13.20"
10
+ "js-yaml": "^5.2.1",
11
+ "@soat/sdk": "0.14.1"
12
12
  },
13
13
  "devDependencies": {
14
- "@ttoss/config": "^1.37.15",
15
- "@ttoss/test-utils": "^4.2.15",
14
+ "@ttoss/config": "^1.37.17",
15
+ "@ttoss/test-utils": "^4.2.18",
16
16
  "@types/jest": "^30.0.0",
17
- "@types/js-yaml": "^4.0.9",
18
- "@types/node": "^24",
17
+ "@types/node": "^24.13.2",
19
18
  "jest": "^30.4.2",
20
- "tsdown": "^0.22.1",
21
- "tsx": "^4.22.4"
19
+ "tsdown": "^0.22.3",
20
+ "tsx": "^4.23.0"
22
21
  },
23
22
  "files": [
24
23
  "dist",