feat: add admin_exec tool + fix repo_write_file PUT method
This commit is contained in:
parent
6fa14c4978
commit
b1a5a1306f
@ -369,6 +369,19 @@ const TOOLS = [
|
|||||||
description: '查看铸渊核心大脑状态(快速唤醒上下文摘要)',
|
description: '查看铸渊核心大脑状态(快速唤醒上下文摘要)',
|
||||||
inputSchema: { type: 'object', properties: {} },
|
inputSchema: { type: 'object', properties: {} },
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name: 'admin_exec',
|
||||||
|
description: '在广州服务器上执行任意Shell命令(管理员工具)',
|
||||||
|
inputSchema: {
|
||||||
|
type: 'object',
|
||||||
|
properties: {
|
||||||
|
command: { type: 'string', description: '要执行的Shell命令' },
|
||||||
|
},
|
||||||
|
required: ['command'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
name: 'brain_update_temporal',
|
name: 'brain_update_temporal',
|
||||||
description: '更新铸渊时间核心大脑',
|
description: '更新铸渊时间核心大脑',
|
||||||
@ -425,7 +438,8 @@ async function executeTool(name, args) {
|
|||||||
body.sha = checkRes.data.sha; // 更新已有文件需要 SHA
|
body.sha = checkRes.data.sha; // 更新已有文件需要 SHA
|
||||||
}
|
}
|
||||||
|
|
||||||
const res = await giteaApi('POST', `/api/v1/repos/${CONFIG.giteaOwner}/${CONFIG.giteaRepo}/contents/${encPath}`, body);
|
const method2 = body.sha ? 'PUT' : 'POST';
|
||||||
|
const res = await giteaApi(method2, `/api/v1/repos/${CONFIG.giteaOwner}/${CONFIG.giteaRepo}/contents/${encPath}`, body);
|
||||||
if (res.status >= 200 && res.status < 300) {
|
if (res.status >= 200 && res.status < 300) {
|
||||||
return `文件已写入: ${filePath} (分支: ${branch}, 提交: ${message})`;
|
return `文件已写入: ${filePath} (分支: ${branch}, 提交: ${message})`;
|
||||||
}
|
}
|
||||||
@ -704,6 +718,14 @@ async function executeTool(name, args) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
case 'admin_exec': {
|
||||||
|
const cmd = args.command || '';
|
||||||
|
if (!cmd) return '请提供要执行的命令';
|
||||||
|
const result = gitExec(cmd);
|
||||||
|
return result.ok ? result.output : '执行失败: ' + result.error;
|
||||||
|
}
|
||||||
|
|
||||||
case 'brain_update_temporal': {
|
case 'brain_update_temporal': {
|
||||||
const result = gitExec(`node scripts/temporal-clock.js`, CONFIG.repoDir);
|
const result = gitExec(`node scripts/temporal-clock.js`, CONFIG.repoDir);
|
||||||
return result.ok ? result.output : result.error;
|
return result.ok ? result.output : result.error;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user