@clawos-dev/clawd 0.2.590 → 0.2.592

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.
@@ -21114,6 +21114,45 @@ var import_node_child_process = require("child_process");
21114
21114
  var import_node_child_process2 = require("child_process");
21115
21115
  var import_node_fs2 = __toESM(require("fs"), 1);
21116
21116
 
21117
+ // ../protocol/src/subscription-channel.ts
21118
+ var SubscriptionChannelSchema = external_exports.object({
21119
+ id: external_exports.string().min(1),
21120
+ name: external_exports.string().min(1),
21121
+ baseUrl: external_exports.string().min(1),
21122
+ apiKey: external_exports.string().min(1),
21123
+ remark: external_exports.string().optional(),
21124
+ createdAt: external_exports.number(),
21125
+ updatedAt: external_exports.number()
21126
+ }).strict();
21127
+ var SubscriptionChannelViewSchema = external_exports.object({
21128
+ id: external_exports.string().min(1),
21129
+ name: external_exports.string().min(1),
21130
+ baseUrl: external_exports.string().min(1),
21131
+ remark: external_exports.string().optional(),
21132
+ keyMasked: external_exports.string(),
21133
+ hasKey: external_exports.boolean(),
21134
+ createdAt: external_exports.number(),
21135
+ updatedAt: external_exports.number()
21136
+ }).strict();
21137
+ var SubscriptionChannelsStateSchema = external_exports.object({
21138
+ activeChannelId: external_exports.string().nullable(),
21139
+ channels: external_exports.array(SubscriptionChannelViewSchema)
21140
+ }).strict();
21141
+ var SubscriptionChannelGetArgsSchema = external_exports.object({}).strict();
21142
+ var SubscriptionChannelSaveArgsSchema = external_exports.object({
21143
+ id: external_exports.string().min(1).optional(),
21144
+ name: external_exports.string().min(1),
21145
+ baseUrl: external_exports.string().min(1),
21146
+ apiKey: external_exports.string().optional(),
21147
+ remark: external_exports.string().optional()
21148
+ }).strict();
21149
+ var SubscriptionChannelDeleteArgsSchema = external_exports.object({
21150
+ id: external_exports.string().min(1)
21151
+ }).strict();
21152
+ var SubscriptionChannelActivateArgsSchema = external_exports.object({
21153
+ id: external_exports.string().min(1).nullable()
21154
+ }).strict();
21155
+
21117
21156
  // ../protocol/src/attachment-schemas.ts
21118
21157
  var TOKEN_ROLES = ["owner"];
21119
21158
  var GROUP_FILE_SOURCES = ["agent", "owner", "user-upload"];
@@ -21604,8 +21643,11 @@ var DeployPutSecretArgsSchema = external_exports.object({
21604
21643
  }).strict();
21605
21644
  var DeploySetEngineAuthArgsSchema = external_exports.object({
21606
21645
  personaId: external_exports.string().min(1),
21607
- auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable()
21608
- }).strict();
21646
+ channelId: external_exports.string().min(1).optional(),
21647
+ auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable().optional()
21648
+ }).strict().refine((data) => data.channelId !== void 0 || data.auth !== void 0, {
21649
+ message: "Either channelId or auth must be provided"
21650
+ });
21609
21651
  var DeployRerunJobArgsSchema = external_exports.object({
21610
21652
  personaId: external_exports.string().min(1),
21611
21653
  /** GitHub 的 job databaseId。**是数字**——字符串会在拼命令时静默出错 */
@@ -24097,7 +24139,10 @@ var METHOD_DOCS = {
24097
24139
  },
24098
24140
  "deploy:setEngineAuth": {
24099
24141
  summary: "\u6A21\u578B\u8BA2\u9605\uFF08\u4E91\u4E0A\u8DD1\u8FD9\u4E2A persona \u82B1\u8C01\u7684\u6A21\u578B\u989D\u5EA6\uFF09\uFF1Aauth = { baseUrl, apiKey } \u5199\u8FDB\u4ED3\u5E93 GitHub Secrets \u7684 CLAWD_ENGINE_BASE_URL / CLAWD_ENGINE_API_KEY\uFF08\u5730\u5740\u89C4\u8303\u6210 \u2026/v1\uFF09\uFF0Cnull = \u5220\u8FD9\u4E24\u6761\u3001\u6539\u56DE\u5E73\u53F0\u9ED8\u8BA4\u3002\u4E0B\u6B21\u53D1\u5E03\u751F\u6548\u3002\u540C putSecret \u7684\u7EAA\u5F8B\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u503C\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u56DE deploy:get \u540C\u5F62\u7684\u72B6\u6001\uFF1Bowner-only\u3001human-only",
24100
- args: DeploySetEngineAuthArgsSchema
24142
+ args: DeploySetEngineAuthArgsSchema,
24143
+ argsConstraints: {
24144
+ anyOf: [{ required: ["channelId"] }, { required: ["auth"] }]
24145
+ }
24101
24146
  },
24102
24147
  "deploy:reportFinding": {
24103
24148
  summary: "\u626B\u63CF\u4E2D\u7684 butler \u9010\u6761\u4E0A\u62A5\u4E00\u4E2A\u53D1\u73B0\uFF08cli / secret / asset\uFF09\u3002**\u8FB9\u626B\u8FB9\u62A5**\uFF0C\u9875\u9762\u968F\u4E4B\u4E00\u70B9\u70B9\u586B\u5145\uFF1B\u540C (kind,name) \u91CD\u590D\u4E0A\u62A5\u5373\u8986\u76D6\u3002owner-only\u2014\u2014butler \u4F1A\u8BDD\u672C\u8EAB\u8DD1\u5728 owner \u6A21\u5F0F",
@@ -24342,6 +24387,22 @@ var METHOD_DOCS = {
24342
24387
  summary: "\u67D0\u4E2A\u5F15\u64CE\uFF08claude / codex / pi\uFF09\u7684\u5B89\u88C5\u72B6\u6001 + \u8BA2\u9605 / \u767B\u5F55\u60C5\u51B5\uFF08claude auth status\u3001codex account/read + rateLimits\u3001pi auth.json \u51ED\u636E\u7C7B\u578B\uFF09+ \u6A21\u578B\u8868\u52A0\u8F7D\u65F6\u95F4\u3002\u4E00\u5F8B\u4E0D\u5E26 key / token \u503C\u3002owner-only",
24343
24388
  args: EngineStatusArgs
24344
24389
  },
24390
+ "subscriptionChannel:get": {
24391
+ summary: "\u83B7\u53D6\u672C\u5730\u4FDD\u5B58\u7684\u6240\u6709\u6A21\u578B\u8BA2\u9605\u901A\u9053\u53CA\u5F53\u524D\u6FC0\u6D3B\u901A\u9053\u3002owner-only",
24392
+ args: SubscriptionChannelGetArgsSchema
24393
+ },
24394
+ "subscriptionChannel:save": {
24395
+ summary: "\u521B\u5EFA\u6216\u7F16\u8F91\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u540D\u79F0\u3001URL\u3001Key\u3001\u5907\u6CE8\uFF09\u3002owner-only",
24396
+ args: SubscriptionChannelSaveArgsSchema
24397
+ },
24398
+ "subscriptionChannel:delete": {
24399
+ summary: "\u5220\u9664\u6307\u5B9A\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\u3002owner-only",
24400
+ args: SubscriptionChannelDeleteArgsSchema
24401
+ },
24402
+ "subscriptionChannel:activate": {
24403
+ summary: "\u5207\u6362\u5F53\u524D\u6FC0\u6D3B\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u5199 config.toml \u5E76\u5237\u65B0\u6A21\u578B\u8868\uFF09\u3002owner-only",
24404
+ args: SubscriptionChannelActivateArgsSchema
24405
+ },
24345
24406
  "engine:connectPool": {
24346
24407
  summary: "\u63A5\u5165\u53F7\u6C60\uFF1A\u62FF\u81EA\u52A9\u53F0\u53D1\u7684\u4E2A\u4EBA key\uFF0C\u62C9\u53F7\u6C60 setup.sh \u8DD1\u4E00\u904D\uFF08\u5199 ~/.codex/config.toml \u6307\u5411 CLIProxyAPI \u4EE3\u7406\uFF09\uFF0C\u518D\u5237 codex \u6A21\u578B\u8868\u9A8C\u8BC1\u3002\u6210\u529F\u56DE { ok:true }\uFF1B\u62FF\u4E0D\u5230\u811A\u672C / \u811A\u672C\u62A5\u9519 / \u8D85\u65F6 / 401 \u4E00\u5F8B reject \u5E26\u4EBA\u8BDD\u3002\u53EA\u7BA1 codex\uFF1B\u672C\u673A\u6CA1\u88C5 codex \u62A5 INVALID_PARAM\u3002owner-only",
24347
24408
  args: EngineConnectPoolArgs
@@ -21300,6 +21300,45 @@ var import_node_path5 = require("path");
21300
21300
  var import_promises2 = __toESM(require("fs/promises"), 1);
21301
21301
  var import_node_path4 = __toESM(require("path"), 1);
21302
21302
 
21303
+ // ../protocol/src/subscription-channel.ts
21304
+ var SubscriptionChannelSchema = external_exports.object({
21305
+ id: external_exports.string().min(1),
21306
+ name: external_exports.string().min(1),
21307
+ baseUrl: external_exports.string().min(1),
21308
+ apiKey: external_exports.string().min(1),
21309
+ remark: external_exports.string().optional(),
21310
+ createdAt: external_exports.number(),
21311
+ updatedAt: external_exports.number()
21312
+ }).strict();
21313
+ var SubscriptionChannelViewSchema = external_exports.object({
21314
+ id: external_exports.string().min(1),
21315
+ name: external_exports.string().min(1),
21316
+ baseUrl: external_exports.string().min(1),
21317
+ remark: external_exports.string().optional(),
21318
+ keyMasked: external_exports.string(),
21319
+ hasKey: external_exports.boolean(),
21320
+ createdAt: external_exports.number(),
21321
+ updatedAt: external_exports.number()
21322
+ }).strict();
21323
+ var SubscriptionChannelsStateSchema = external_exports.object({
21324
+ activeChannelId: external_exports.string().nullable(),
21325
+ channels: external_exports.array(SubscriptionChannelViewSchema)
21326
+ }).strict();
21327
+ var SubscriptionChannelGetArgsSchema = external_exports.object({}).strict();
21328
+ var SubscriptionChannelSaveArgsSchema = external_exports.object({
21329
+ id: external_exports.string().min(1).optional(),
21330
+ name: external_exports.string().min(1),
21331
+ baseUrl: external_exports.string().min(1),
21332
+ apiKey: external_exports.string().optional(),
21333
+ remark: external_exports.string().optional()
21334
+ }).strict();
21335
+ var SubscriptionChannelDeleteArgsSchema = external_exports.object({
21336
+ id: external_exports.string().min(1)
21337
+ }).strict();
21338
+ var SubscriptionChannelActivateArgsSchema = external_exports.object({
21339
+ id: external_exports.string().min(1).nullable()
21340
+ }).strict();
21341
+
21303
21342
  // ../protocol/src/attachment-schemas.ts
21304
21343
  var TOKEN_ROLES = ["owner"];
21305
21344
  var GROUP_FILE_SOURCES = ["agent", "owner", "user-upload"];
@@ -21790,8 +21829,11 @@ var DeployPutSecretArgsSchema = external_exports.object({
21790
21829
  }).strict();
21791
21830
  var DeploySetEngineAuthArgsSchema = external_exports.object({
21792
21831
  personaId: external_exports.string().min(1),
21793
- auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable()
21794
- }).strict();
21832
+ channelId: external_exports.string().min(1).optional(),
21833
+ auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable().optional()
21834
+ }).strict().refine((data) => data.channelId !== void 0 || data.auth !== void 0, {
21835
+ message: "Either channelId or auth must be provided"
21836
+ });
21795
21837
  var DeployRerunJobArgsSchema = external_exports.object({
21796
21838
  personaId: external_exports.string().min(1),
21797
21839
  /** GitHub 的 job databaseId。**是数字**——字符串会在拼命令时静默出错 */
@@ -24283,7 +24325,10 @@ var METHOD_DOCS = {
24283
24325
  },
24284
24326
  "deploy:setEngineAuth": {
24285
24327
  summary: "\u6A21\u578B\u8BA2\u9605\uFF08\u4E91\u4E0A\u8DD1\u8FD9\u4E2A persona \u82B1\u8C01\u7684\u6A21\u578B\u989D\u5EA6\uFF09\uFF1Aauth = { baseUrl, apiKey } \u5199\u8FDB\u4ED3\u5E93 GitHub Secrets \u7684 CLAWD_ENGINE_BASE_URL / CLAWD_ENGINE_API_KEY\uFF08\u5730\u5740\u89C4\u8303\u6210 \u2026/v1\uFF09\uFF0Cnull = \u5220\u8FD9\u4E24\u6761\u3001\u6539\u56DE\u5E73\u53F0\u9ED8\u8BA4\u3002\u4E0B\u6B21\u53D1\u5E03\u751F\u6548\u3002\u540C putSecret \u7684\u7EAA\u5F8B\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u503C\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u56DE deploy:get \u540C\u5F62\u7684\u72B6\u6001\uFF1Bowner-only\u3001human-only",
24286
- args: DeploySetEngineAuthArgsSchema
24328
+ args: DeploySetEngineAuthArgsSchema,
24329
+ argsConstraints: {
24330
+ anyOf: [{ required: ["channelId"] }, { required: ["auth"] }]
24331
+ }
24287
24332
  },
24288
24333
  "deploy:reportFinding": {
24289
24334
  summary: "\u626B\u63CF\u4E2D\u7684 butler \u9010\u6761\u4E0A\u62A5\u4E00\u4E2A\u53D1\u73B0\uFF08cli / secret / asset\uFF09\u3002**\u8FB9\u626B\u8FB9\u62A5**\uFF0C\u9875\u9762\u968F\u4E4B\u4E00\u70B9\u70B9\u586B\u5145\uFF1B\u540C (kind,name) \u91CD\u590D\u4E0A\u62A5\u5373\u8986\u76D6\u3002owner-only\u2014\u2014butler \u4F1A\u8BDD\u672C\u8EAB\u8DD1\u5728 owner \u6A21\u5F0F",
@@ -24528,6 +24573,22 @@ var METHOD_DOCS = {
24528
24573
  summary: "\u67D0\u4E2A\u5F15\u64CE\uFF08claude / codex / pi\uFF09\u7684\u5B89\u88C5\u72B6\u6001 + \u8BA2\u9605 / \u767B\u5F55\u60C5\u51B5\uFF08claude auth status\u3001codex account/read + rateLimits\u3001pi auth.json \u51ED\u636E\u7C7B\u578B\uFF09+ \u6A21\u578B\u8868\u52A0\u8F7D\u65F6\u95F4\u3002\u4E00\u5F8B\u4E0D\u5E26 key / token \u503C\u3002owner-only",
24529
24574
  args: EngineStatusArgs
24530
24575
  },
24576
+ "subscriptionChannel:get": {
24577
+ summary: "\u83B7\u53D6\u672C\u5730\u4FDD\u5B58\u7684\u6240\u6709\u6A21\u578B\u8BA2\u9605\u901A\u9053\u53CA\u5F53\u524D\u6FC0\u6D3B\u901A\u9053\u3002owner-only",
24578
+ args: SubscriptionChannelGetArgsSchema
24579
+ },
24580
+ "subscriptionChannel:save": {
24581
+ summary: "\u521B\u5EFA\u6216\u7F16\u8F91\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u540D\u79F0\u3001URL\u3001Key\u3001\u5907\u6CE8\uFF09\u3002owner-only",
24582
+ args: SubscriptionChannelSaveArgsSchema
24583
+ },
24584
+ "subscriptionChannel:delete": {
24585
+ summary: "\u5220\u9664\u6307\u5B9A\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\u3002owner-only",
24586
+ args: SubscriptionChannelDeleteArgsSchema
24587
+ },
24588
+ "subscriptionChannel:activate": {
24589
+ summary: "\u5207\u6362\u5F53\u524D\u6FC0\u6D3B\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u5199 config.toml \u5E76\u5237\u65B0\u6A21\u578B\u8868\uFF09\u3002owner-only",
24590
+ args: SubscriptionChannelActivateArgsSchema
24591
+ },
24531
24592
  "engine:connectPool": {
24532
24593
  summary: "\u63A5\u5165\u53F7\u6C60\uFF1A\u62FF\u81EA\u52A9\u53F0\u53D1\u7684\u4E2A\u4EBA key\uFF0C\u62C9\u53F7\u6C60 setup.sh \u8DD1\u4E00\u904D\uFF08\u5199 ~/.codex/config.toml \u6307\u5411 CLIProxyAPI \u4EE3\u7406\uFF09\uFF0C\u518D\u5237 codex \u6A21\u578B\u8868\u9A8C\u8BC1\u3002\u6210\u529F\u56DE { ok:true }\uFF1B\u62FF\u4E0D\u5230\u811A\u672C / \u811A\u672C\u62A5\u9519 / \u8D85\u65F6 / 401 \u4E00\u5F8B reject \u5E26\u4EBA\u8BDD\u3002\u53EA\u7BA1 codex\uFF1B\u672C\u673A\u6CA1\u88C5 codex \u62A5 INVALID_PARAM\u3002owner-only",
24533
24594
  args: EngineConnectPoolArgs
@@ -21300,6 +21300,45 @@ var import_node_path5 = require("path");
21300
21300
  var import_promises2 = __toESM(require("fs/promises"), 1);
21301
21301
  var import_node_path4 = __toESM(require("path"), 1);
21302
21302
 
21303
+ // ../protocol/src/subscription-channel.ts
21304
+ var SubscriptionChannelSchema = external_exports.object({
21305
+ id: external_exports.string().min(1),
21306
+ name: external_exports.string().min(1),
21307
+ baseUrl: external_exports.string().min(1),
21308
+ apiKey: external_exports.string().min(1),
21309
+ remark: external_exports.string().optional(),
21310
+ createdAt: external_exports.number(),
21311
+ updatedAt: external_exports.number()
21312
+ }).strict();
21313
+ var SubscriptionChannelViewSchema = external_exports.object({
21314
+ id: external_exports.string().min(1),
21315
+ name: external_exports.string().min(1),
21316
+ baseUrl: external_exports.string().min(1),
21317
+ remark: external_exports.string().optional(),
21318
+ keyMasked: external_exports.string(),
21319
+ hasKey: external_exports.boolean(),
21320
+ createdAt: external_exports.number(),
21321
+ updatedAt: external_exports.number()
21322
+ }).strict();
21323
+ var SubscriptionChannelsStateSchema = external_exports.object({
21324
+ activeChannelId: external_exports.string().nullable(),
21325
+ channels: external_exports.array(SubscriptionChannelViewSchema)
21326
+ }).strict();
21327
+ var SubscriptionChannelGetArgsSchema = external_exports.object({}).strict();
21328
+ var SubscriptionChannelSaveArgsSchema = external_exports.object({
21329
+ id: external_exports.string().min(1).optional(),
21330
+ name: external_exports.string().min(1),
21331
+ baseUrl: external_exports.string().min(1),
21332
+ apiKey: external_exports.string().optional(),
21333
+ remark: external_exports.string().optional()
21334
+ }).strict();
21335
+ var SubscriptionChannelDeleteArgsSchema = external_exports.object({
21336
+ id: external_exports.string().min(1)
21337
+ }).strict();
21338
+ var SubscriptionChannelActivateArgsSchema = external_exports.object({
21339
+ id: external_exports.string().min(1).nullable()
21340
+ }).strict();
21341
+
21303
21342
  // ../protocol/src/attachment-schemas.ts
21304
21343
  var TOKEN_ROLES = ["owner"];
21305
21344
  var GROUP_FILE_SOURCES = ["agent", "owner", "user-upload"];
@@ -21790,8 +21829,11 @@ var DeployPutSecretArgsSchema = external_exports.object({
21790
21829
  }).strict();
21791
21830
  var DeploySetEngineAuthArgsSchema = external_exports.object({
21792
21831
  personaId: external_exports.string().min(1),
21793
- auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable()
21794
- }).strict();
21832
+ channelId: external_exports.string().min(1).optional(),
21833
+ auth: external_exports.object({ baseUrl: external_exports.string(), apiKey: external_exports.string() }).strict().nullable().optional()
21834
+ }).strict().refine((data) => data.channelId !== void 0 || data.auth !== void 0, {
21835
+ message: "Either channelId or auth must be provided"
21836
+ });
21795
21837
  var DeployRerunJobArgsSchema = external_exports.object({
21796
21838
  personaId: external_exports.string().min(1),
21797
21839
  /** GitHub 的 job databaseId。**是数字**——字符串会在拼命令时静默出错 */
@@ -24283,7 +24325,10 @@ var METHOD_DOCS = {
24283
24325
  },
24284
24326
  "deploy:setEngineAuth": {
24285
24327
  summary: "\u6A21\u578B\u8BA2\u9605\uFF08\u4E91\u4E0A\u8DD1\u8FD9\u4E2A persona \u82B1\u8C01\u7684\u6A21\u578B\u989D\u5EA6\uFF09\uFF1Aauth = { baseUrl, apiKey } \u5199\u8FDB\u4ED3\u5E93 GitHub Secrets \u7684 CLAWD_ENGINE_BASE_URL / CLAWD_ENGINE_API_KEY\uFF08\u5730\u5740\u89C4\u8303\u6210 \u2026/v1\uFF09\uFF0Cnull = \u5220\u8FD9\u4E24\u6761\u3001\u6539\u56DE\u5E73\u53F0\u9ED8\u8BA4\u3002\u4E0B\u6B21\u53D1\u5E03\u751F\u6548\u3002\u540C putSecret \u7684\u7EAA\u5F8B\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u503C\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u56DE deploy:get \u540C\u5F62\u7684\u72B6\u6001\uFF1Bowner-only\u3001human-only",
24286
- args: DeploySetEngineAuthArgsSchema
24328
+ args: DeploySetEngineAuthArgsSchema,
24329
+ argsConstraints: {
24330
+ anyOf: [{ required: ["channelId"] }, { required: ["auth"] }]
24331
+ }
24287
24332
  },
24288
24333
  "deploy:reportFinding": {
24289
24334
  summary: "\u626B\u63CF\u4E2D\u7684 butler \u9010\u6761\u4E0A\u62A5\u4E00\u4E2A\u53D1\u73B0\uFF08cli / secret / asset\uFF09\u3002**\u8FB9\u626B\u8FB9\u62A5**\uFF0C\u9875\u9762\u968F\u4E4B\u4E00\u70B9\u70B9\u586B\u5145\uFF1B\u540C (kind,name) \u91CD\u590D\u4E0A\u62A5\u5373\u8986\u76D6\u3002owner-only\u2014\u2014butler \u4F1A\u8BDD\u672C\u8EAB\u8DD1\u5728 owner \u6A21\u5F0F",
@@ -24528,6 +24573,22 @@ var METHOD_DOCS = {
24528
24573
  summary: "\u67D0\u4E2A\u5F15\u64CE\uFF08claude / codex / pi\uFF09\u7684\u5B89\u88C5\u72B6\u6001 + \u8BA2\u9605 / \u767B\u5F55\u60C5\u51B5\uFF08claude auth status\u3001codex account/read + rateLimits\u3001pi auth.json \u51ED\u636E\u7C7B\u578B\uFF09+ \u6A21\u578B\u8868\u52A0\u8F7D\u65F6\u95F4\u3002\u4E00\u5F8B\u4E0D\u5E26 key / token \u503C\u3002owner-only",
24529
24574
  args: EngineStatusArgs
24530
24575
  },
24576
+ "subscriptionChannel:get": {
24577
+ summary: "\u83B7\u53D6\u672C\u5730\u4FDD\u5B58\u7684\u6240\u6709\u6A21\u578B\u8BA2\u9605\u901A\u9053\u53CA\u5F53\u524D\u6FC0\u6D3B\u901A\u9053\u3002owner-only",
24578
+ args: SubscriptionChannelGetArgsSchema
24579
+ },
24580
+ "subscriptionChannel:save": {
24581
+ summary: "\u521B\u5EFA\u6216\u7F16\u8F91\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u540D\u79F0\u3001URL\u3001Key\u3001\u5907\u6CE8\uFF09\u3002owner-only",
24582
+ args: SubscriptionChannelSaveArgsSchema
24583
+ },
24584
+ "subscriptionChannel:delete": {
24585
+ summary: "\u5220\u9664\u6307\u5B9A\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\u3002owner-only",
24586
+ args: SubscriptionChannelDeleteArgsSchema
24587
+ },
24588
+ "subscriptionChannel:activate": {
24589
+ summary: "\u5207\u6362\u5F53\u524D\u6FC0\u6D3B\u7684\u6A21\u578B\u8BA2\u9605\u901A\u9053\uFF08\u5199 config.toml \u5E76\u5237\u65B0\u6A21\u578B\u8868\uFF09\u3002owner-only",
24590
+ args: SubscriptionChannelActivateArgsSchema
24591
+ },
24531
24592
  "engine:connectPool": {
24532
24593
  summary: "\u63A5\u5165\u53F7\u6C60\uFF1A\u62FF\u81EA\u52A9\u53F0\u53D1\u7684\u4E2A\u4EBA key\uFF0C\u62C9\u53F7\u6C60 setup.sh \u8DD1\u4E00\u904D\uFF08\u5199 ~/.codex/config.toml \u6307\u5411 CLIProxyAPI \u4EE3\u7406\uFF09\uFF0C\u518D\u5237 codex \u6A21\u578B\u8868\u9A8C\u8BC1\u3002\u6210\u529F\u56DE { ok:true }\uFF1B\u62FF\u4E0D\u5230\u811A\u672C / \u811A\u672C\u62A5\u9519 / \u8D85\u65F6 / 401 \u4E00\u5F8B reject \u5E26\u4EBA\u8BDD\u3002\u53EA\u7BA1 codex\uFF1B\u672C\u673A\u6CA1\u88C5 codex \u62A5 INVALID_PARAM\u3002owner-only",
24533
24594
  args: EngineConnectPoolArgs