codexmate 0.0.32 → 0.0.33
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/README.md +147 -363
- package/README.zh.md +147 -371
- package/cli/agents-files.js +224 -224
- package/cli/archive-helpers.js +446 -446
- package/cli/auth-profiles.js +375 -375
- package/cli/builtin-proxy.js +1725 -1725
- package/cli/claude-proxy.js +1022 -1022
- package/cli/config-bootstrap.js +402 -402
- package/cli/config-health.js +454 -454
- package/cli/doctor-core.js +903 -903
- package/cli/import-skills-url.js +356 -356
- package/cli/local-bridge.js +551 -324
- package/cli/openai-bridge.js +1653 -1653
- package/cli/openclaw-config.js +629 -629
- package/cli/session-convert-args.js +69 -69
- package/cli/session-convert-io.js +82 -82
- package/cli/session-convert.js +150 -150
- package/cli/session-usage.concurrent.js +28 -28
- package/cli/session-usage.js +118 -118
- package/cli/session-usage.models.js +176 -176
- package/cli/skills.js +1141 -1141
- package/cli/update.js +162 -0
- package/cli/zip-commands.js +510 -510
- package/cli.js +16023 -15829
- package/lib/automation.js +404 -404
- package/lib/cli-file-utils.js +151 -151
- package/lib/cli-models-utils.js +440 -440
- package/lib/cli-network-utils.js +190 -190
- package/lib/cli-path-utils.js +85 -85
- package/lib/cli-session-utils.js +121 -121
- package/lib/cli-sessions.js +427 -426
- package/lib/cli-utils.js +155 -155
- package/lib/cli-webhook.js +126 -126
- package/lib/download-artifacts.js +92 -92
- package/lib/mcp-stdio.js +453 -453
- package/lib/task-orchestrator.js +869 -869
- package/lib/text-diff.js +303 -303
- package/lib/win-tray.js +119 -0
- package/lib/workflow-engine.js +340 -340
- package/package.json +76 -76
- package/plugins/README.md +20 -20
- package/plugins/README.zh-CN.md +20 -20
- package/plugins/prompt-templates/comment-polish/index.mjs +25 -25
- package/plugins/prompt-templates/computed.mjs +253 -253
- package/plugins/prompt-templates/index.mjs +8 -8
- package/plugins/prompt-templates/manifest.mjs +15 -15
- package/plugins/prompt-templates/methods.mjs +553 -553
- package/plugins/prompt-templates/overview.mjs +91 -91
- package/plugins/prompt-templates/ownership.mjs +19 -19
- package/plugins/prompt-templates/rule-ack/index.mjs +21 -21
- package/plugins/prompt-templates/storage.mjs +64 -64
- package/plugins/registry.mjs +16 -16
- package/web-ui/app.js +650 -647
- package/web-ui/index.html +36 -36
- package/web-ui/logic.agents-diff.mjs +386 -386
- package/web-ui/logic.claude.mjs +168 -168
- package/web-ui/logic.codex.mjs +69 -69
- package/web-ui/logic.mjs +5 -5
- package/web-ui/logic.runtime.mjs +128 -128
- package/web-ui/logic.session-convert.mjs +70 -70
- package/web-ui/logic.sessions.mjs +781 -781
- package/web-ui/modules/api.mjs +90 -90
- package/web-ui/modules/app.computed.dashboard.mjs +248 -248
- package/web-ui/modules/app.computed.index.mjs +17 -17
- package/web-ui/modules/app.computed.main-tabs.mjs +205 -205
- package/web-ui/modules/app.computed.session.mjs +735 -693
- package/web-ui/modules/app.constants.mjs +15 -15
- package/web-ui/modules/app.methods.agents.mjs +651 -651
- package/web-ui/modules/app.methods.claude-config.mjs +269 -200
- package/web-ui/modules/app.methods.codex-config.mjs +861 -861
- package/web-ui/modules/app.methods.index.mjs +94 -94
- package/web-ui/modules/app.methods.install.mjs +205 -205
- package/web-ui/modules/app.methods.navigation.mjs +774 -774
- package/web-ui/modules/app.methods.openclaw-core.mjs +814 -814
- package/web-ui/modules/app.methods.openclaw-editing.mjs +372 -372
- package/web-ui/modules/app.methods.openclaw-persist.mjs +369 -369
- package/web-ui/modules/app.methods.providers.mjs +575 -529
- package/web-ui/modules/app.methods.runtime.mjs +345 -345
- package/web-ui/modules/app.methods.session-actions.mjs +591 -591
- package/web-ui/modules/app.methods.session-browser.mjs +1012 -1012
- package/web-ui/modules/app.methods.session-timeline.mjs +479 -479
- package/web-ui/modules/app.methods.session-trash.mjs +438 -438
- package/web-ui/modules/app.methods.startup-claude.mjs +538 -537
- package/web-ui/modules/app.methods.task-orchestration.mjs +556 -556
- package/web-ui/modules/app.methods.webhook.mjs +79 -79
- package/web-ui/modules/config-mode.computed.mjs +124 -124
- package/web-ui/modules/config-template-confirm-pref.mjs +33 -33
- package/web-ui/modules/i18n.dict.mjs +3192 -3177
- package/web-ui/modules/i18n.mjs +62 -62
- package/web-ui/modules/plugins.computed.mjs +3 -3
- package/web-ui/modules/plugins.methods.mjs +3 -3
- package/web-ui/modules/plugins.storage.mjs +11 -11
- package/web-ui/modules/provider-url-display.mjs +17 -17
- package/web-ui/modules/sessions-filters-url.mjs +85 -85
- package/web-ui/modules/skills.computed.mjs +107 -107
- package/web-ui/modules/skills.methods.mjs +482 -482
- package/web-ui/partials/index/layout-footer.html +13 -13
- package/web-ui/partials/index/layout-header.html +499 -503
- package/web-ui/partials/index/modal-config-template-agents.html +185 -185
- package/web-ui/partials/index/modal-confirm-toast.html +32 -32
- package/web-ui/partials/index/modal-health-check.html +45 -45
- package/web-ui/partials/index/modal-openclaw-config.html +280 -280
- package/web-ui/partials/index/modal-skills.html +200 -200
- package/web-ui/partials/index/modals-basic.html +173 -162
- package/web-ui/partials/index/panel-config-claude.html +166 -136
- package/web-ui/partials/index/panel-config-codex.html +190 -196
- package/web-ui/partials/index/panel-config-codex.html.bak +337 -0
- package/web-ui/partials/index/panel-config-openclaw.html +83 -83
- package/web-ui/partials/index/panel-dashboard.html +186 -219
- package/web-ui/partials/index/panel-docs.html +114 -114
- package/web-ui/partials/index/panel-market.html +177 -177
- package/web-ui/partials/index/panel-orchestration.html +391 -391
- package/web-ui/partials/index/panel-plugins.html +253 -253
- package/web-ui/partials/index/panel-sessions.html +319 -313
- package/web-ui/partials/index/panel-settings.html +190 -190
- package/web-ui/partials/index/panel-trash.html +82 -82
- package/web-ui/partials/index/panel-usage.html +137 -137
- package/web-ui/res/json5.min.js +1 -1
- package/web-ui/res/vue.global.prod.js +13 -13
- package/web-ui/session-helpers.mjs +591 -591
- package/web-ui/source-bundle.cjs +233 -233
- package/web-ui/styles/base-theme.css +281 -281
- package/web-ui/styles/bridge-pool.css +197 -197
- package/web-ui/styles/controls-forms.css +433 -433
- package/web-ui/styles/dashboard.css +406 -406
- package/web-ui/styles/docs-panel.css +245 -245
- package/web-ui/styles/feedback.css +108 -108
- package/web-ui/styles/health-check-dialog.css +144 -144
- package/web-ui/styles/layout-shell.css +628 -638
- package/web-ui/styles/modals-core.css +499 -466
- package/web-ui/styles/navigation-panels.css +391 -391
- package/web-ui/styles/openclaw-structured.css +266 -266
- package/web-ui/styles/plugins-panel.css +564 -564
- package/web-ui/styles/responsive.css +392 -392
- package/web-ui/styles/sessions-list.css +683 -647
- package/web-ui/styles/sessions-preview.css +407 -407
- package/web-ui/styles/sessions-toolbar-trash.css +518 -518
- package/web-ui/styles/sessions-usage.css +588 -588
- package/web-ui/styles/settings-panel.css +349 -349
- package/web-ui/styles/skills-list.css +305 -305
- package/web-ui/styles/skills-market.css +429 -429
- package/web-ui/styles/task-orchestration.css +822 -822
- package/web-ui/styles/titles-cards.css +472 -472
- package/web-ui/styles/trash-panel.css +90 -90
- package/web-ui/styles/webhook.css +81 -81
- package/web-ui/styles.css +24 -24
- package/web-ui.html +17 -17
package/package.json
CHANGED
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
|
|
2
|
-
"name": "codexmate",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "Codex/Claude Code/OpenClaw 配置、会话与任务编排 CLI + Web 工具",
|
|
5
|
-
"main": "cli.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"codexmate": "./cli.js"
|
|
8
|
-
},
|
|
9
|
-
"files": [
|
|
10
|
-
"cli.js",
|
|
11
|
-
"cli/",
|
|
12
|
-
"plugins/",
|
|
13
|
-
"web-ui.html",
|
|
14
|
-
"lib/",
|
|
15
|
-
"web-ui/",
|
|
16
|
-
"doc/",
|
|
17
|
-
"README.md",
|
|
18
|
-
"README.zh.md",
|
|
19
|
-
"LICENSE"
|
|
20
|
-
],
|
|
21
|
-
"exports": {
|
|
22
|
-
".": "./cli.js",
|
|
23
|
-
"./lib/*": "./lib/*.js",
|
|
24
|
-
"./web-ui/*": "./web-ui/*",
|
|
25
|
-
"./res/*": "./web-ui/res/*"
|
|
26
|
-
},
|
|
27
|
-
"scripts": {
|
|
28
|
-
"dev": "node cli.js run",
|
|
29
|
-
"start": "node cli.js",
|
|
30
|
-
"reset": "node tools/dev/reset-main.js",
|
|
31
|
-
"release:npm": "node tools/release/publish-npm.js",
|
|
32
|
-
"docs:dev": "node ./node_modules/vitepress/dist/node/cli.js dev site",
|
|
33
|
-
"docs:build": "node ./node_modules/vitepress/dist/node/cli.js build site",
|
|
34
|
-
"docs:preview": "node ./node_modules/vitepress/dist/node/cli.js preview site",
|
|
35
|
-
"ci:install": "node tools/ci/run-check.js install",
|
|
36
|
-
"ci:lint": "node tools/ci/run-check.js lint",
|
|
37
|
-
"ci:test": "node tools/ci/run-check.js test",
|
|
38
|
-
"lint": "node tools/dev/lint.js",
|
|
39
|
-
"test": "npm run test:unit && npm run test:e2e",
|
|
40
|
-
"test:ci": "node tools/ci/run-check.js all",
|
|
41
|
-
"test:unit": "node tests/unit/run.mjs",
|
|
42
|
-
"test:e2e": "node tests/e2e/run.js",
|
|
43
|
-
"setup:git": "git remote set-url origin https://github.com/SakuraByteCore/codexmate.git && gh auth setup-git",
|
|
44
|
-
"reset:dev": "node tools/dev/reset-and-dev.js",
|
|
45
|
-
"pretest": "node tools/ci/ensure-test-deps.js"
|
|
46
|
-
},
|
|
47
|
-
"dependencies": {
|
|
48
|
-
"@iarna/toml": "^2.2.5",
|
|
49
|
-
"json5": "^2.2.3",
|
|
50
|
-
"yauzl": "^3.2.1",
|
|
51
|
-
"zip-lib": "^1.2.1"
|
|
52
|
-
},
|
|
53
|
-
"engines": {
|
|
54
|
-
"node": ">=14"
|
|
55
|
-
},
|
|
56
|
-
"keywords": [
|
|
57
|
-
"codex",
|
|
58
|
-
"claude",
|
|
59
|
-
"claude-code",
|
|
60
|
-
"openclaw",
|
|
61
|
-
"config",
|
|
62
|
-
"session",
|
|
63
|
-
"task-orchestration",
|
|
64
|
-
"workflow",
|
|
65
|
-
"web-ui",
|
|
66
|
-
"provider",
|
|
67
|
-
"ai",
|
|
68
|
-
"llm",
|
|
69
|
-
"cli"
|
|
70
|
-
],
|
|
71
|
-
"author": "ymkiux",
|
|
72
|
-
"license": "Apache-2.0",
|
|
73
|
-
"devDependencies": {
|
|
74
|
-
"vitepress": "^1.6.4"
|
|
75
|
-
}
|
|
76
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "codexmate",
|
|
3
|
+
"version": "0.0.33",
|
|
4
|
+
"description": "Codex/Claude Code/OpenClaw 配置、会话与任务编排 CLI + Web 工具",
|
|
5
|
+
"main": "cli.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"codexmate": "./cli.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"cli.js",
|
|
11
|
+
"cli/",
|
|
12
|
+
"plugins/",
|
|
13
|
+
"web-ui.html",
|
|
14
|
+
"lib/",
|
|
15
|
+
"web-ui/",
|
|
16
|
+
"doc/",
|
|
17
|
+
"README.md",
|
|
18
|
+
"README.zh.md",
|
|
19
|
+
"LICENSE"
|
|
20
|
+
],
|
|
21
|
+
"exports": {
|
|
22
|
+
".": "./cli.js",
|
|
23
|
+
"./lib/*": "./lib/*.js",
|
|
24
|
+
"./web-ui/*": "./web-ui/*",
|
|
25
|
+
"./res/*": "./web-ui/res/*"
|
|
26
|
+
},
|
|
27
|
+
"scripts": {
|
|
28
|
+
"dev": "node cli.js run",
|
|
29
|
+
"start": "node cli.js",
|
|
30
|
+
"reset": "node tools/dev/reset-main.js",
|
|
31
|
+
"release:npm": "node tools/release/publish-npm.js",
|
|
32
|
+
"docs:dev": "node ./node_modules/vitepress/dist/node/cli.js dev site",
|
|
33
|
+
"docs:build": "node ./node_modules/vitepress/dist/node/cli.js build site",
|
|
34
|
+
"docs:preview": "node ./node_modules/vitepress/dist/node/cli.js preview site",
|
|
35
|
+
"ci:install": "node tools/ci/run-check.js install",
|
|
36
|
+
"ci:lint": "node tools/ci/run-check.js lint",
|
|
37
|
+
"ci:test": "node tools/ci/run-check.js test",
|
|
38
|
+
"lint": "node tools/dev/lint.js",
|
|
39
|
+
"test": "npm run test:unit && npm run test:e2e",
|
|
40
|
+
"test:ci": "node tools/ci/run-check.js all",
|
|
41
|
+
"test:unit": "node tests/unit/run.mjs",
|
|
42
|
+
"test:e2e": "node tests/e2e/run.js",
|
|
43
|
+
"setup:git": "git remote set-url origin https://github.com/SakuraByteCore/codexmate.git && gh auth setup-git",
|
|
44
|
+
"reset:dev": "node tools/dev/reset-and-dev.js",
|
|
45
|
+
"pretest": "node tools/ci/ensure-test-deps.js"
|
|
46
|
+
},
|
|
47
|
+
"dependencies": {
|
|
48
|
+
"@iarna/toml": "^2.2.5",
|
|
49
|
+
"json5": "^2.2.3",
|
|
50
|
+
"yauzl": "^3.2.1",
|
|
51
|
+
"zip-lib": "^1.2.1"
|
|
52
|
+
},
|
|
53
|
+
"engines": {
|
|
54
|
+
"node": ">=14"
|
|
55
|
+
},
|
|
56
|
+
"keywords": [
|
|
57
|
+
"codex",
|
|
58
|
+
"claude",
|
|
59
|
+
"claude-code",
|
|
60
|
+
"openclaw",
|
|
61
|
+
"config",
|
|
62
|
+
"session",
|
|
63
|
+
"task-orchestration",
|
|
64
|
+
"workflow",
|
|
65
|
+
"web-ui",
|
|
66
|
+
"provider",
|
|
67
|
+
"ai",
|
|
68
|
+
"llm",
|
|
69
|
+
"cli"
|
|
70
|
+
],
|
|
71
|
+
"author": "ymkiux",
|
|
72
|
+
"license": "Apache-2.0",
|
|
73
|
+
"devDependencies": {
|
|
74
|
+
"vitepress": "^1.6.4"
|
|
75
|
+
}
|
|
76
|
+
}
|
package/plugins/README.md
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
## Plugins
|
|
2
|
-
|
|
3
|
-
This directory hosts reusable plugin prototypes, intended as reference implementations for building additional plugins.
|
|
4
|
-
|
|
5
|
-
Suggested conventions:
|
|
6
|
-
- One plugin per folder: `plugins/<plugin-id>/`
|
|
7
|
-
- Split responsibilities inside the plugin folder: `methods.mjs` / `computed.mjs` / `storage.mjs`
|
|
8
|
-
- Keep thin Web UI wrappers (re-exports) for compatibility with existing import paths
|
|
9
|
-
|
|
10
|
-
Example:
|
|
11
|
-
- `plugins/prompt-templates/`: Prompt Templates plugin (variable extraction/rendering, storage, UI interaction helpers)
|
|
12
|
-
|
|
13
|
-
## Creating a new plugin
|
|
14
|
-
|
|
15
|
-
Recommended layout:
|
|
16
|
-
- `plugins/<plugin-id>/manifest.mjs` exports `pluginMeta`
|
|
17
|
-
- `plugins/<plugin-id>/methods.mjs` exports method factories
|
|
18
|
-
- `plugins/<plugin-id>/computed.mjs` exports computed factories
|
|
19
|
-
- `plugins/<plugin-id>/storage.mjs` exports persistence helpers
|
|
20
|
-
- `plugins/<plugin-id>/index.mjs` re-exports everything as a single entry
|
|
1
|
+
## Plugins
|
|
2
|
+
|
|
3
|
+
This directory hosts reusable plugin prototypes, intended as reference implementations for building additional plugins.
|
|
4
|
+
|
|
5
|
+
Suggested conventions:
|
|
6
|
+
- One plugin per folder: `plugins/<plugin-id>/`
|
|
7
|
+
- Split responsibilities inside the plugin folder: `methods.mjs` / `computed.mjs` / `storage.mjs`
|
|
8
|
+
- Keep thin Web UI wrappers (re-exports) for compatibility with existing import paths
|
|
9
|
+
|
|
10
|
+
Example:
|
|
11
|
+
- `plugins/prompt-templates/`: Prompt Templates plugin (variable extraction/rendering, storage, UI interaction helpers)
|
|
12
|
+
|
|
13
|
+
## Creating a new plugin
|
|
14
|
+
|
|
15
|
+
Recommended layout:
|
|
16
|
+
- `plugins/<plugin-id>/manifest.mjs` exports `pluginMeta`
|
|
17
|
+
- `plugins/<plugin-id>/methods.mjs` exports method factories
|
|
18
|
+
- `plugins/<plugin-id>/computed.mjs` exports computed factories
|
|
19
|
+
- `plugins/<plugin-id>/storage.mjs` exports persistence helpers
|
|
20
|
+
- `plugins/<plugin-id>/index.mjs` re-exports everything as a single entry
|
package/plugins/README.zh-CN.md
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
## Plugins
|
|
2
|
-
|
|
3
|
-
该目录用于放置可复用的插件原型实现,便于参考与二次开发。
|
|
4
|
-
|
|
5
|
-
建议约定:
|
|
6
|
-
- 每个插件一个子目录:`plugins/<plugin-id>/`
|
|
7
|
-
- 插件目录内按职责拆分:`methods.mjs` / `computed.mjs` / `storage.mjs`
|
|
8
|
-
- Web UI 侧保留薄封装(re-export)以兼容原有引用路径
|
|
9
|
-
|
|
10
|
-
示例:
|
|
11
|
-
- `plugins/prompt-templates/`:Prompt Templates 插件(变量解析、渲染、存储、UI 交互方法)
|
|
12
|
-
|
|
13
|
-
## 如何新建插件
|
|
14
|
-
|
|
15
|
-
推荐目录结构:
|
|
16
|
-
- `plugins/<plugin-id>/manifest.mjs` 导出 `pluginMeta`
|
|
17
|
-
- `plugins/<plugin-id>/methods.mjs` 导出 methods 工厂
|
|
18
|
-
- `plugins/<plugin-id>/computed.mjs` 导出 computed 工厂
|
|
19
|
-
- `plugins/<plugin-id>/storage.mjs` 导出存储相关 helper
|
|
20
|
-
- `plugins/<plugin-id>/index.mjs` 统一入口 re-export
|
|
1
|
+
## Plugins
|
|
2
|
+
|
|
3
|
+
该目录用于放置可复用的插件原型实现,便于参考与二次开发。
|
|
4
|
+
|
|
5
|
+
建议约定:
|
|
6
|
+
- 每个插件一个子目录:`plugins/<plugin-id>/`
|
|
7
|
+
- 插件目录内按职责拆分:`methods.mjs` / `computed.mjs` / `storage.mjs`
|
|
8
|
+
- Web UI 侧保留薄封装(re-export)以兼容原有引用路径
|
|
9
|
+
|
|
10
|
+
示例:
|
|
11
|
+
- `plugins/prompt-templates/`:Prompt Templates 插件(变量解析、渲染、存储、UI 交互方法)
|
|
12
|
+
|
|
13
|
+
## 如何新建插件
|
|
14
|
+
|
|
15
|
+
推荐目录结构:
|
|
16
|
+
- `plugins/<plugin-id>/manifest.mjs` 导出 `pluginMeta`
|
|
17
|
+
- `plugins/<plugin-id>/methods.mjs` 导出 methods 工厂
|
|
18
|
+
- `plugins/<plugin-id>/computed.mjs` 导出 computed 工厂
|
|
19
|
+
- `plugins/<plugin-id>/storage.mjs` 导出存储相关 helper
|
|
20
|
+
- `plugins/<plugin-id>/index.mjs` 统一入口 re-export
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { pluginOwnership, templateOwnershipById } from '../ownership.mjs';
|
|
2
|
-
|
|
3
|
-
export function buildBuiltinCommentPolishTemplate(t) {
|
|
4
|
-
const tr = (key, fallback, params = null) => (typeof t === 'function' ? t(key, params) : fallback);
|
|
5
|
-
const line1 = tr('plugins.builtin.commentPolish.line1', '轻微收敛以下代码注释');
|
|
6
|
-
const timestamp = new Date().toISOString();
|
|
7
|
-
const ownership = templateOwnershipById && templateOwnershipById.builtin_comment_polish
|
|
8
|
-
? templateOwnershipById.builtin_comment_polish
|
|
9
|
-
: pluginOwnership;
|
|
10
|
-
return {
|
|
11
|
-
id: 'builtin_comment_polish',
|
|
12
|
-
name: tr('plugins.builtin.commentPolish.name', '代码注释润色'),
|
|
13
|
-
description: tr('plugins.builtin.commentPolish.desc', '轻微收敛以下代码注释 {{code}}'),
|
|
14
|
-
template: [
|
|
15
|
-
line1,
|
|
16
|
-
'',
|
|
17
|
-
'{{code}}'
|
|
18
|
-
].join('\n'),
|
|
19
|
-
createdAt: timestamp,
|
|
20
|
-
updatedAt: timestamp,
|
|
21
|
-
isBuiltin: true,
|
|
22
|
-
createdBy: ownership && typeof ownership.createdBy === 'string' ? ownership.createdBy : '',
|
|
23
|
-
maintainers: ownership && Array.isArray(ownership.maintainers) ? ownership.maintainers : []
|
|
24
|
-
};
|
|
25
|
-
}
|
|
1
|
+
import { pluginOwnership, templateOwnershipById } from '../ownership.mjs';
|
|
2
|
+
|
|
3
|
+
export function buildBuiltinCommentPolishTemplate(t) {
|
|
4
|
+
const tr = (key, fallback, params = null) => (typeof t === 'function' ? t(key, params) : fallback);
|
|
5
|
+
const line1 = tr('plugins.builtin.commentPolish.line1', '轻微收敛以下代码注释');
|
|
6
|
+
const timestamp = new Date().toISOString();
|
|
7
|
+
const ownership = templateOwnershipById && templateOwnershipById.builtin_comment_polish
|
|
8
|
+
? templateOwnershipById.builtin_comment_polish
|
|
9
|
+
: pluginOwnership;
|
|
10
|
+
return {
|
|
11
|
+
id: 'builtin_comment_polish',
|
|
12
|
+
name: tr('plugins.builtin.commentPolish.name', '代码注释润色'),
|
|
13
|
+
description: tr('plugins.builtin.commentPolish.desc', '轻微收敛以下代码注释 {{code}}'),
|
|
14
|
+
template: [
|
|
15
|
+
line1,
|
|
16
|
+
'',
|
|
17
|
+
'{{code}}'
|
|
18
|
+
].join('\n'),
|
|
19
|
+
createdAt: timestamp,
|
|
20
|
+
updatedAt: timestamp,
|
|
21
|
+
isBuiltin: true,
|
|
22
|
+
createdBy: ownership && typeof ownership.createdBy === 'string' ? ownership.createdBy : '',
|
|
23
|
+
maintainers: ownership && Array.isArray(ownership.maintainers) ? ownership.maintainers : []
|
|
24
|
+
};
|
|
25
|
+
}
|