@aiyiran/myclaw 1.1.172 → 1.1.174
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/assets/myclaw-inject.js +9 -5
- package/create_agent.js +1 -6
- package/package.json +1 -1
package/assets/myclaw-inject.js
CHANGED
|
@@ -1736,7 +1736,7 @@ btn.addEventListener("click", function () {
|
|
|
1736
1736
|
}
|
|
1737
1737
|
|
|
1738
1738
|
// 弹出 input 小弹框
|
|
1739
|
-
function promptAndRun(title, placeholder, hint, cmdTemplate, btnColor, defaultValue) {
|
|
1739
|
+
function promptAndRun(title, placeholder, hint, cmdTemplate, btnColor, defaultValue, allowAnyName) {
|
|
1740
1740
|
var mask = document.createElement("div");
|
|
1741
1741
|
mask.style.cssText = [
|
|
1742
1742
|
"position:fixed",
|
|
@@ -1801,14 +1801,18 @@ btn.addEventListener("click", function () {
|
|
|
1801
1801
|
input.focus();
|
|
1802
1802
|
return;
|
|
1803
1803
|
}
|
|
1804
|
-
|
|
1804
|
+
// allowAnyName=true\uFF08\u5982\u300C\u65B0\u4F19\u4F34\u300D\uFF09\uFF1A\u5141\u8BB8\u4E2D\u6587\uFF0C\u540E\u7AEF mc new \u4F1A\u81EA\u52A8\u751F\u6210 ascii id \u5E76\u628A\u4E2D\u6587\u5B58\u4E3A\u663E\u793A\u540D\u3002
|
|
1805
|
+
// \u5426\u5219\uFF08\u5982\u300C\u6DFB\u52A0\u5BF9\u8BDD\u300D\uFF09\uFF1A\u4ECD\u8981\u6C42 ascii\uFF0C\u56E0\u4E3A\u5B83\u9700\u8981\u7684\u662F\u771F\u5B9E agent id\u3002
|
|
1806
|
+
if (!allowAnyName && !/^[a-zA-Z0-9\-]+$/.test(val)) {
|
|
1805
1807
|
input.style.borderColor = "#ff4444";
|
|
1806
1808
|
input.focus();
|
|
1807
1809
|
return;
|
|
1808
1810
|
}
|
|
1809
1811
|
submitBtn.disabled = true;
|
|
1810
1812
|
submitBtn.textContent = "\u6267\u884C\u4E2D...";
|
|
1811
|
-
|
|
1813
|
+
// \u5141\u8BB8\u4EFB\u610F\u540D\u65F6\uFF0Cname \u53EF\u80FD\u542B\u4E2D\u6587/\u7A7A\u683C\uFF0C\u52A0\u53CC\u5F15\u53F7\u9632\u6B62 shell \u62C6\u8BCD
|
|
1814
|
+
var safeName = allowAnyName ? '"' + val.replace(/"/g, '') + '"' : val;
|
|
1815
|
+
var cmd = cmdTemplate.replace("{name}", safeName);
|
|
1812
1816
|
runCommand(cmd);
|
|
1813
1817
|
setTimeout(function () { mask.remove(); }, 1000);
|
|
1814
1818
|
}
|
|
@@ -1827,7 +1831,7 @@ btn.addEventListener("click", function () {
|
|
|
1827
1831
|
|
|
1828
1832
|
// ── 按钮列表 ──
|
|
1829
1833
|
var btns = [
|
|
1830
|
-
{ label: "\uD83E\uDD1D \u65B0\u4F19\u4F34", desc: "\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684 AI \u4F19\u4F34", hasInput: true, inputTitle: "\u65B0\u5EFA\u4F19\u4F34", placeholder: "\u8F93\u5165\u65B0\u4F19\u4F34\u540D\u79F0\uFF0C\u5982 my-cat", hint: "\u7ED9\u4F60\u7684\u65B0 AI \u4F19\u4F34\u8D77\u4E2A\u540D\u5B57\uFF08\
|
|
1834
|
+
{ label: "\uD83E\uDD1D \u65B0\u4F19\u4F34", desc: "\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684 AI \u4F19\u4F34", hasInput: true, inputTitle: "\u65B0\u5EFA\u4F19\u4F34", placeholder: "\u8F93\u5165\u65B0\u4F19\u4F34\u540D\u79F0\uFF0C\u5982 my-cat", hint: "\u7ED9\u4F60\u7684\u65B0 AI \u4F19\u4F34\u8D77\u4E2A\u540D\u5B57\uFF08\u4E2D\u6587 / \u82F1\u6587\u5747\u53EF\uFF09\uFF0C\u70B9\u51FB\u540E\u4F1A\u81EA\u52A8\u521B\u5EFA", cmd: "mc new {name}", color: "#3b82f6", allowAnyName: true },
|
|
1831
1835
|
{ label: "\uD83D\uDCAC \u6DFB\u52A0\u5BF9\u8BDD", desc: "\u6253\u5F00\u5DF2\u6709\u4F19\u4F34\u7684\u5BF9\u8BDD\u7A97\u53E3", hasInput: true, inputTitle: "\u6DFB\u52A0\u5BF9\u8BDD", placeholder: "\u8F93\u5165\u4F19\u4F34\u540D\u79F0\uFF0C\u5982 kakaxi", hint: "\u8F93\u5165\u4F60\u7684\u4F19\u4F34\u7684\u540D\u79F0\uFF08\u82F1\u6587\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u8FDE\u5B57\u7B26\uFF09\uFF0C\u70B9\u51FB\u540E\u4F1A\u6253\u5F00\u5BF9\u8BDD\u7A97\u53E3", cmd: "mc tui {name}", color: "#10b981", getDefault: getCurrentAgentName },
|
|
1832
1836
|
{ label: "\uD83D\uDD04 \u91CD\u542F\u670D\u52A1", desc: "\u91CD\u542F\u6587\u4EF6\u670D\u52A1", hasInput: false, cmd: "mc server", color: "#ef4444" },
|
|
1833
1837
|
{ label: "\uD83E\uDD9E \u91CD\u542F\u9F99\u867E", desc: "\u91CD\u542F OpenClaw \u6838\u5FC3\u670D\u52A1", hasInput: false, cmd: "mc all", color: "#f59e0b" },
|
|
@@ -1876,7 +1880,7 @@ btn.addEventListener("click", function () {
|
|
|
1876
1880
|
|
|
1877
1881
|
row.onclick = function () {
|
|
1878
1882
|
if (item.hasInput) {
|
|
1879
|
-
promptAndRun(item.inputTitle, item.placeholder, item.hint, item.cmd, item.color, item.getDefault ? item.getDefault() : '');
|
|
1883
|
+
promptAndRun(item.inputTitle, item.placeholder, item.hint, item.cmd, item.color, item.getDefault ? item.getDefault() : '', item.allowAnyName);
|
|
1880
1884
|
} else {
|
|
1881
1885
|
runCommand(item.cmd);
|
|
1882
1886
|
}
|
package/create_agent.js
CHANGED
|
@@ -97,13 +97,8 @@ const FALLBACK_WORDS = [
|
|
|
97
97
|
function pad2(n) { return String(n).padStart(2, '0'); }
|
|
98
98
|
|
|
99
99
|
function generateFallbackKey() {
|
|
100
|
-
// 北京时间(UTC+8),与 buildBirthMessage 保持一致
|
|
101
|
-
const bj = new Date(Date.now() + 8 * 60 * 60 * 1000);
|
|
102
|
-
const MMDD = pad2(bj.getUTCMonth() + 1) + pad2(bj.getUTCDate());
|
|
103
|
-
const MMSS = pad2(bj.getUTCMinutes()) + pad2(bj.getUTCSeconds());
|
|
104
100
|
const pick = () => FALLBACK_WORDS[Math.floor(Math.random() * FALLBACK_WORDS.length)];
|
|
105
|
-
|
|
106
|
-
return MMDD + '_' + words + '_' + MMSS;
|
|
101
|
+
return pick() + '-' + pick() + '-' + pick();
|
|
107
102
|
}
|
|
108
103
|
|
|
109
104
|
// ── 命名决策:判断输入是否「天生满足」key 格式 ───────────────────
|