Skip to Content

近期项目杂记

MCP、n8n

Resource 是什么?各个

  1. 从 WebUI 输入? $json $('~').item.binary 错误信息少
    1. 节点经常给无意义报错
    2. 接入的 Memory 总是出现 undefined 错误
  2. 从其它节点输入?
    1. 选什么节点?会给其他用户带来影响吗
    2. 能选择 Google Sheets 的 MCP 服务器吗?

[^1]: 公司惯性?安全性?开源替代?

AI 不一定会把整个 base64 数据照搬到 MCP 请求中,文件转换真的应该作为中间步骤而不是 一开始就转换好[^2] 再给 AI 吗?

[^2]: ✓ AI 是假人

或者说,文件转换这步骤 不要使用 MCP 来提供,而是提供 HTTP 服务 [^3] [^4] [^5] 就行?

[^3]: 可行,在 n8n 内确实有节点能发起 HTTP 请求 [^4]: n8n 中的列表转换和分支极其繁杂,低代码不如全代码 [^5]: item <=> array 尚且可以(但不通过类型检查),item.binary -> items items -> item.json 的 Aggregate 缺少数据!有病病

n8n 的错误处理非常令人头大,如果想在社内推广,这必然会是阻碍其他社员对其感兴趣并尝试开始开发的最大因素。

n8n のエラーハンドリング本当に頭が痛いほど厄介で、もし社内で導入・普及させたい場合、これは他の社員が興味を持ったり、開発を試してみようと思う際の最大の障害になるだと思います。

分享功能主要是让别人来查看、修改工作流。对于只需要使用工作流的人来说,提供 Webhook 是好的。但:

  1. Webhook 链接的分发、获取?
  2. Webhook 仅会发送一次请求,并不会多次 [^6]

[^6]: 毕竟是工作流,我也不清楚 n8n 怎么、能不能多加 Human in Workflow 这种功能

饶了我吧!

n8n <=> LobeChat? Open WebUI?

神秘 JavaScript 写法

TypeScript
function foo() {
  for (const _ in ~) {
    bar(~);
  }
  return ~;

  function bar(~) {
    ~;
  }
}

Open WebUI、LobeChat

饶了我吧,我目前看下来也就 MCP 还算成熟,其它东西总是有股半成品的感觉…太快了…

好困,今天该做什么?我不知道。勘弁してほしい!

本当にこま?/ねむ

只有 こまる 吧

LobeChat 更多是本地、个人化的工具,适合个人,可能不适合工作流分发。LobeChat 的扩展性没有 Open WebUI 好。

文件处理是大问题,在 LobeChat 里,如果接入的模型不支持文件分析,是无法上传文件的。而 Open WebUI 的文件会先经过内容分析引擎提取内容,再发送给 n8n…

试着用 Dify,比 n8n 好用一些,会有文件 URL 提供,文件处理也可以自己去实现,但比 n8n 一是组合性不好,二是没有定时触发(真的需要?),我暂时不清楚继续实现和调查什么。

MCP 可以使用。

Mermaid
flowchart TD
    ChatAI[Chat AI] --> MCP1[MCP] & MCP2[MCP] & MCP3[MCP]
Mermaid
flowchart TD
    ChatAI[Chat AI] --> n8n[n8n MCP] --> tool1[Tool] & tool2[Tool]
    tool1 --> Workflow1[Workflow] --> AI --> MCP1[MCP] & MCP2[MCP] & MCP3[MCP]
    tool2 --> Workflow2[Workflow]

Pipe Function __files__

仍然会在上下文!

头痛…但我不能头痛。

LSP 也有 stdio 和 HTTP 两种模式吧,stdio 的我大致明白它是怎么获取文件内容的了,LSP 直接 IO。但 HTTP 呢?我实在想不出来……

…不要靠近 AI,会变得不幸。

Claude Code Skills

救我…

提示词调整 => 多文件多分析,最后来个总结

SKILLs 必触发 —— 我是必然调用就是了

SKILLs 不是很好用啊,我觉得 SKILL 关键是在 工具调用

这一点,像这种代码分析的任务,还是子代理要好:

  1. 子代理可以并行处理,能一定程度上加快处理
  2. SKILL 不可并行,会犯懒、不遵守命令,极慢!!![^9]

[^9]: 问题还是这些,目前是让外 Agent 建立 List

  1. 项目需要放在无空格的路径:这下几次都没出现文件乱生成的问题
  2. 结果差异来说,检查出来的问题更多,特别是 ueo 文件,几次都能正确识别,以及 金額フィールド入力 问题,使用林秀hàn先辈的检查项就好 —— 其实内容很相近了
  3. 唯一的不足是主 Agent 的提示词,有一些文件不符合给出的通配符。再就是会让一个 Sub Agent 管 10 个文件,而不是每次开 10 个 Sub Agent 管 10 个文件,直到全处理完
  4. 自己的 prompt 触发“每次开 10 个 Sub Agent 管 10 个文件”的概率高,现在在想怎么让这个操作更加容易复现

现在使用我的提示词加林秀翰前辈的 Sub Agent,能稳定地分很多个 Sub Agent 去检查代码。

检查了 5 次,对一个代码文件的结果,大概就一次差别很大,一两次会检出不同的问题,还算稳定,感觉多跑几次,让 AI 再次将它们统合、交叉检查,给个最后的结果会更好。

和林前辈在群里给张陈雨前辈的报告对比,林前辈跑出的每个代码文件都检出了问题,而有些文件所报的问题,我跑的这几次里都没检出,感觉可能是林前辈的那次报告带点偶然性?—— 就 ab-sales-~ 这个文件而言,和金额没什么关系

此外张陈雨前辈在群里说的两个问题,第一个,这几次都没出现,第二个因为我的提示词,是分了文件的 —— 但在 report5 是有一次会在 component 里报 service.ts 的问题

GitLab

  1. GitLab Duo 社区 ✗ 更新 ✗
  2. CI/CD 插件 ❤
  3. GitLab Claude Code ❤
  4. MCP?不好用 非得用?

Typst

一点问题,目前项目生成 帳票ちょうひょう PDF 是怎么做的?我极其推荐 Typst!!!

使用 Typst 生成的可行性。呃,又得写报告?

GitLab Bot

  1. lib
  2. RESTful API

解析 diff

  • In: .diff 文件 —— 我们作为库不读取文件!
  • Out: 文件列表

文件 IO 肯定不是库来做的啊,如果真需要文件系统的话,也必须加个 VFS 的。

南京睿晖数据技术有限公司

我该说些什么…我从来就不喜欢低代码,纯屎。

还没人来教我…我就这样放一边让我自己全去了解?

行,讲得不算很差,讲这几分钟比看文档几小时有意义。