我放弃了笔记本电脑,转而使用了一台口袋大小的迷你电脑和一副 AR 眼镜
这种组合不仅让安东尼能够随时随地工作,还极大地提升了工作效率和灵活性。
安东尼原本习惯在多屏幕的办公桌前工作,但出行时无法携带整套设备。尽管他尝试过使用笔记本电脑,但发现其仍需搭配额外的外接设备,这与便携初衷相悖。于是,他开始寻找更轻便的解决方案。在测试了多款迷你电脑后,他选择了 Khadas Mind 2S,这款迷你电脑不仅性能强大,还具备高度的便携性,其尺寸仅为 5.75 x 4.13 x 0.79 英寸,并且配备了 USB-C 接口用于供电和视频输出,非常适合移动办公。
此外,安东尼还搭配了一款名为 Xreal One 的 AR 眼镜。这款眼镜内置了 X1 空间计算芯片,能够提供 3 自由度的追踪功能,并且支持从标准 16:9 显示切换到超宽模式。与 Meta Quest 3 或苹果的 Vision Pro 不同,Xreal One 没有内置电池,这不仅减轻了重量,还避免了充电的麻烦,让其更适合随时使用。
为了确保设备在无电源插座的情况下也能正常运行,安东尼选择了一款容量为 25,000 mAh 的 Ugreen Nexode 便携充电宝。这款充电宝具备两个 USB-C 接口,其中一个能够输出 100 瓦的功率,另一个则可提供 140 瓦的功率,足以同时为迷你电脑和 AR 眼镜供电。其内置的显示屏还能实时显示剩余电量和各连接设备的功率消耗情况。
在实际使用中,安东尼发现这套组合在多种场景下都表现出色。在咖啡店中,他能够通过调整 AR 眼镜的透明度,既专注于工作,又能随时观察周围环境。而在飞机上,尽管空间有限,他依然能够利用这套设备完成复杂的任务,如撰写文章和编辑稿件。此外,他提到,相比传统笔记本电脑,迷你电脑和 AR 眼镜的组合能够提供更接近桌面电脑的使用体验,同时还能根据个人喜好更换键盘和鼠标,进一步提升了工作效率。
安东尼的这一尝试表明,随着技术的不断进步,未来的移动办公设备可能会朝着更加轻便、高效和个性化的方向发展。
#效率 #工作
https://www.tomsguide.com/computing/i-ditched-my-laptop-for-a-pocketable-mini-pc-and-a-pair-of-ar-glasses-heres-what-happened
这种组合不仅让安东尼能够随时随地工作,还极大地提升了工作效率和灵活性。
安东尼原本习惯在多屏幕的办公桌前工作,但出行时无法携带整套设备。尽管他尝试过使用笔记本电脑,但发现其仍需搭配额外的外接设备,这与便携初衷相悖。于是,他开始寻找更轻便的解决方案。在测试了多款迷你电脑后,他选择了 Khadas Mind 2S,这款迷你电脑不仅性能强大,还具备高度的便携性,其尺寸仅为 5.75 x 4.13 x 0.79 英寸,并且配备了 USB-C 接口用于供电和视频输出,非常适合移动办公。
此外,安东尼还搭配了一款名为 Xreal One 的 AR 眼镜。这款眼镜内置了 X1 空间计算芯片,能够提供 3 自由度的追踪功能,并且支持从标准 16:9 显示切换到超宽模式。与 Meta Quest 3 或苹果的 Vision Pro 不同,Xreal One 没有内置电池,这不仅减轻了重量,还避免了充电的麻烦,让其更适合随时使用。
为了确保设备在无电源插座的情况下也能正常运行,安东尼选择了一款容量为 25,000 mAh 的 Ugreen Nexode 便携充电宝。这款充电宝具备两个 USB-C 接口,其中一个能够输出 100 瓦的功率,另一个则可提供 140 瓦的功率,足以同时为迷你电脑和 AR 眼镜供电。其内置的显示屏还能实时显示剩余电量和各连接设备的功率消耗情况。
在实际使用中,安东尼发现这套组合在多种场景下都表现出色。在咖啡店中,他能够通过调整 AR 眼镜的透明度,既专注于工作,又能随时观察周围环境。而在飞机上,尽管空间有限,他依然能够利用这套设备完成复杂的任务,如撰写文章和编辑稿件。此外,他提到,相比传统笔记本电脑,迷你电脑和 AR 眼镜的组合能够提供更接近桌面电脑的使用体验,同时还能根据个人喜好更换键盘和鼠标,进一步提升了工作效率。
安东尼的这一尝试表明,随着技术的不断进步,未来的移动办公设备可能会朝着更加轻便、高效和个性化的方向发展。
#效率 #工作
https://www.tomsguide.com/computing/i-ditched-my-laptop-for-a-pocketable-mini-pc-and-a-pair-of-ar-glasses-heres-what-happened
为 AI Agents 重新设计一切的竞赛已经开始
Tina He 探讨了随着 AI 代理的崛起,企业和开发者需要重新思考产品设计和用户体验。她指出,AI 代理正在独立完成诸如选择供应商、谈判交易、阅读文档和编写代码等任务,未来 AI 将成为重要的用户和决策者。为了在这一新兴市场中取得成功,企业和开发者需要关注三个关键维度:为代理设计可解释性、优化“代理注意力”以及创建人机协作模型。
在开发工具方面,传统的以人类开发者为中心的设计理念需要转变为同时考虑 AI 代理的需求。例如,文档需要具备机器可读性,API 需要标准化,且必须提供明确的指令流程和丰富的元数据,以便 AI 代理能够快速理解和使用工具。随着模型上下文协议(MCP)的发展,AI 代理能够更便捷地与外部工具和服务进行交互,这要求开发者更加注重代理体验(AX),确保代理能够高效、准确地完成任务,且无需人工干预。
在内容和用户参与方面,AI 代理的注意力与人类用户截然不同。AI 代理更关注数据的结构化和语义清晰度,而非吸引人的标题或视觉效果。因此,内容管理系统需要重新设计,以生成语义化的元数据,并优化嵌入结构,以便 AI 代理能够更好地理解和推荐内容。同时,广告和营销策略也需要调整,以适应 AI 代理的推荐逻辑,确保产品能够被 AI 系统准确识别和推荐。
Tina 还提出了四个创业机会:AI 优化的内容系统、可组合工具市场、代理分析平台以及AI 之间的谈判协议。这些领域都存在巨大的市场潜力,早期进入者有机会定义行业标准并建立竞争优势。例如,AI 优化的内容系统可以自动为内容生成语义元数据,帮助 AI 更准确地理解内容;可组合工具市场则可以为 AI 代理提供一个发现和集成工具的平台。
企业需要为 AI 优先的未来做好准备,包括培养更好的人机协作模式、提前考虑伦理和法律问题,以及培养既懂领域知识又懂 AI 技术的复合型人才。AI 代理已经成为现实中的用户和客户,未来十年,企业需要赢得这些算法用户的信任,才能在市场中立足。
#AI #Agents
https://every.to/thesis/the-race-is-on-to-redesign-everything-for-ai-agents
Tina He 探讨了随着 AI 代理的崛起,企业和开发者需要重新思考产品设计和用户体验。她指出,AI 代理正在独立完成诸如选择供应商、谈判交易、阅读文档和编写代码等任务,未来 AI 将成为重要的用户和决策者。为了在这一新兴市场中取得成功,企业和开发者需要关注三个关键维度:为代理设计可解释性、优化“代理注意力”以及创建人机协作模型。
在开发工具方面,传统的以人类开发者为中心的设计理念需要转变为同时考虑 AI 代理的需求。例如,文档需要具备机器可读性,API 需要标准化,且必须提供明确的指令流程和丰富的元数据,以便 AI 代理能够快速理解和使用工具。随着模型上下文协议(MCP)的发展,AI 代理能够更便捷地与外部工具和服务进行交互,这要求开发者更加注重代理体验(AX),确保代理能够高效、准确地完成任务,且无需人工干预。
在内容和用户参与方面,AI 代理的注意力与人类用户截然不同。AI 代理更关注数据的结构化和语义清晰度,而非吸引人的标题或视觉效果。因此,内容管理系统需要重新设计,以生成语义化的元数据,并优化嵌入结构,以便 AI 代理能够更好地理解和推荐内容。同时,广告和营销策略也需要调整,以适应 AI 代理的推荐逻辑,确保产品能够被 AI 系统准确识别和推荐。
Tina 还提出了四个创业机会:AI 优化的内容系统、可组合工具市场、代理分析平台以及AI 之间的谈判协议。这些领域都存在巨大的市场潜力,早期进入者有机会定义行业标准并建立竞争优势。例如,AI 优化的内容系统可以自动为内容生成语义元数据,帮助 AI 更准确地理解内容;可组合工具市场则可以为 AI 代理提供一个发现和集成工具的平台。
企业需要为 AI 优先的未来做好准备,包括培养更好的人机协作模式、提前考虑伦理和法律问题,以及培养既懂领域知识又懂 AI 技术的复合型人才。AI 代理已经成为现实中的用户和客户,未来十年,企业需要赢得这些算法用户的信任,才能在市场中立足。
#AI #Agents
https://every.to/thesis/the-race-is-on-to-redesign-everything-for-ai-agents
Every
The Race Is On to Redesign Everything for AI Agents
There are billion-dollar markets to be seized—if you can learn to see like an agent.
Agentic AI 的崛起可能是互联网回归本质的契机
随着代理型人工智能(Agentic AI)的兴起,互联网可能会迎来一种新的形式回归。过去 25 年间,网络设计师和营销人员一直专注于如何吸引并留住访问网站的用户,通常默认这些用户是人类。然而,随着越来越多的网络流量来自代理型 AI 机器人,这种情况正在发生变化。例如,未来人们购买巴黎机票时,可能不再需要亲自前往类似 Kayak 的网站,而是由个性化的 AI 助手根据家庭日程匹配航班、寻找优惠并快速呈现结果,这种技术已经接近实现。
Gartner 预测,到 2028 年,33% 的企业软件应用将包含代理型 AI,而 2024 年这一比例还不到 1%;AI 代理机器客户将取代人类可读数字店面 20% 的交互。这意味着,三分之一的网站访问将来自没有“眼睛”的实体,而五分之一的购物行为将由 AI 代理完成,且在销售过程中没有直接的人类互动或情感参与。
在这种趋势下,营销人员和广告技术从业者需要重新思考未来的策略。广告支持的网站可能不再像现在这样有效,但这也为提升人类体验提供了机会。未来,零售和消费类网站将不再以交易为核心,而是变得更加注重信息性、品牌化和沉浸感。例如,《纽约时报》网站已经从单纯的新闻标题发展为一个包含食谱、社区评论、多媒体文章和游戏的沉浸式体验平台,这种转变正是为了吸引人类用户,而非 AI 代理。
此外,未来网站将更加强调文字内容,包括详细的产品描述、博客文章、品牌故事等,因为大型语言模型(LLM)依赖文字及其向量数学,文字在代理型互联网中将变得更加重要。尽管 AI 代理的普及可能会引发数据所有权和使用权的新挑战,但这也为互联网回归早期那种充满个性和人类情感的网站提供了机会,让人们可以逃离被 AI 机器人主导的社交媒体环境。
#AI #Agents
https://www.adweek.com/programmatic/agentic-ai-internet-return-to-form/
随着代理型人工智能(Agentic AI)的兴起,互联网可能会迎来一种新的形式回归。过去 25 年间,网络设计师和营销人员一直专注于如何吸引并留住访问网站的用户,通常默认这些用户是人类。然而,随着越来越多的网络流量来自代理型 AI 机器人,这种情况正在发生变化。例如,未来人们购买巴黎机票时,可能不再需要亲自前往类似 Kayak 的网站,而是由个性化的 AI 助手根据家庭日程匹配航班、寻找优惠并快速呈现结果,这种技术已经接近实现。
Gartner 预测,到 2028 年,33% 的企业软件应用将包含代理型 AI,而 2024 年这一比例还不到 1%;AI 代理机器客户将取代人类可读数字店面 20% 的交互。这意味着,三分之一的网站访问将来自没有“眼睛”的实体,而五分之一的购物行为将由 AI 代理完成,且在销售过程中没有直接的人类互动或情感参与。
在这种趋势下,营销人员和广告技术从业者需要重新思考未来的策略。广告支持的网站可能不再像现在这样有效,但这也为提升人类体验提供了机会。未来,零售和消费类网站将不再以交易为核心,而是变得更加注重信息性、品牌化和沉浸感。例如,《纽约时报》网站已经从单纯的新闻标题发展为一个包含食谱、社区评论、多媒体文章和游戏的沉浸式体验平台,这种转变正是为了吸引人类用户,而非 AI 代理。
此外,未来网站将更加强调文字内容,包括详细的产品描述、博客文章、品牌故事等,因为大型语言模型(LLM)依赖文字及其向量数学,文字在代理型互联网中将变得更加重要。尽管 AI 代理的普及可能会引发数据所有权和使用权的新挑战,但这也为互联网回归早期那种充满个性和人类情感的网站提供了机会,让人们可以逃离被 AI 机器人主导的社交媒体环境。
#AI #Agents
https://www.adweek.com/programmatic/agentic-ai-internet-return-to-form/
Adweek
The Agentic AI Era Could Be the Internet's Return to Form
Anticipating more web traffic from bots is an opportunity to elevate the human experience.
OpenRouter 是一个为大型语言模型(LLM)提供统一接口的平台,旨在通过整合多种模型和提供商,为用户提供高效、灵活且成本可控的 AI 解决方案。该平台支持超过 300 款模型 和 50 多个活跃的提供商,每月处理的 Token 数量高达 5.6 万亿,拥有 150 万全球用户。
OpenRouter 的核心优势在于其 “一个 API 接口适用于所有模型” 的设计理念。用户可以通过单一接口访问所有主流模型,且 OpenAI SDK 可无缝对接。
#AI #Tools
https://openrouter.ai/
OpenRouter 的核心优势在于其 “一个 API 接口适用于所有模型” 的设计理念。用户可以通过单一接口访问所有主流模型,且 OpenAI SDK 可无缝对接。
#AI #Tools
https://openrouter.ai/
OpenRouter
A router for LLMs and other AI models
如何构建一个 Model Context Protocol(MCP)服务器,帮助用户更好地利用 AI 模型和工具。
#AI #MCP #指南
https://levix.notion.site/MCP-How-to-Build-Your-Own-MCP-Server-1dc383a7128480a8b150dd28ca2f4ad4
#AI #MCP #指南
https://levix.notion.site/MCP-How-to-Build-Your-Own-MCP-Server-1dc383a7128480a8b150dd28ca2f4ad4
levix on Notion
如何构建自己的 MCP 服务器 - How to Build Your Own MCP Server | Notion
如何构建一个 Model Context Protocol(MCP)服务器,帮助用户更好地利用 AI 模型和工具。
Claude Code:代理编码的最佳实践
Anthropic 发布了 Claude Code,这是一款用于代理编程的命令行工具,旨在为工程师和研究人员提供更便捷的方式来将 Claude 集成到他们的编程工作流中。Claude Code 的设计注重灵活性和可定制性,不过这也意味着新用户需要一定时间来熟悉其最佳实践。以下是一些经过验证的使用建议,适用于不同代码库、语言和环境。
定制化设置是提高效率的关键。首先,创建 CLAUDE.md 文件,这是一个特殊文件,Claude 会在对话开始时自动将其内容拉入上下文中。该文件可用于记录常见的 Bash 命令、核心文件和工具函数、代码风格指南、测试说明、代码库礼仪、开发环境设置以及项目特有的意外行为或警告等信息。CLAUDE.md 文件可以放置在代码库根目录、父目录、子目录或用户的主目录中,具体位置取决于需求。通过运行 /init 命令,Claude 会自动生成一个 CLAUDE.md 文件。
此外,用户还可以通过 调整 CLAUDE.md 文件 来优化上下文的收集过程。这些文件会成为 Claude 提示的一部分,因此需要像优化常用提示一样进行迭代和调整。用户可以手动编辑CLAUDE.md 文件,或者通过按下 # 键 让 Claude 自动将指令纳入文件。Anthropic 团队还会定期使用 prompt improver 来优化 CLAUDE.md 文件,并通过添加强调词汇(如“IMPORTANT”或“YOU MUST”)来提高模型对指令的遵循度。
在安全性方面,Claude Code 默认会对可能修改系统的操作请求权限,包括文件写入、Bash 命令、MCP 工具等。用户可以根据需要自定义允许列表,通过 “Always allow” 选项、/allowed-tools 命令、手动编辑 .claude/settings.json 或 ~/.claude.json 文件,以及使用 --allowedTools CLI 标志 来管理允许的工具。
对于使用 GitHub 的用户,安装 gh CLI 可以让 Claude 通过该工具与 GitHub 交互,从而更高效地完成创建问题、打开拉取请求、阅读评论等操作。
扩展 Claude 的工具集 也是提升效率的重要方式。Claude Code 继承了用户的 Bash 环境,能够访问所有工具。用户可以通过向 Claude 介绍工具名称和使用示例、运行 --help 命令查看工具文档,或者将常用工具记录在 CLAUDE.md 文件中,来帮助 Claude 熟悉自定义 Bash 工具。
Claude Code 还可以通过 MCP(Model Context Protocol) 访问更复杂的工具。它既可以作为 MCP 服务器,也可以作为客户端连接到其他 MCP 服务器。用户可以在项目配置、全局配置或 .mcp.json 文件中指定可访问的工具,以便在代码库中共享这些工具。
此外,用户还可以通过 自定义斜杠命令 来存储重复性工作流的提示模板。这些模板可以放在 .claude/commands 文件夹中,并通过斜杠命令菜单在 Claude Code 中使用。例如,创建一个名为 [fix-github-issue.md](http://fix-github-issue.md/) 的文件,就可以通过 /project:fix-github-issue 命令让 Claude 自动处理 GitHub 问题。
在 常见工作流 方面,Claude Code 提供了多种灵活的模式。例如,“探索、计划、编码、提交”工作流适用于许多问题,它要求 Claude 首先阅读相关文件、制定计划,然后实施解决方案并提交代码。另一种是“编写测试、提交;编码、迭代、提交”工作流,特别适合可以通过单元测试、集成测试或端到端测试验证的变更。此外,还有“编写代码、截图结果、迭代”工作流,适用于需要视觉目标的场景,例如 UI 开发。
对于需要快速完成的任务,可以使用 “安全 YOLO 模式”,通过 --dangerously-skip-permissions 标志跳过所有权限检查,让 Claude 自行完成任务。但需要注意的是,这种方法存在一定风险,建议在没有网络连接的容器中使用。
在 优化工作流 方面,建议用户在指令中尽可能具体,避免模糊不清的描述。例如,明确指出要为特定文件编写测试用例,或者要求 Claude 查看某个函数的 Git 历史记录。此外,提供图像、文件路径或 URL 也可以帮助 Claude 更好地理解任务。在长时间会话中,使用 /clear 命令 清除上下文窗口,可以避免无关信息干扰 Claude 的工作。
对于复杂的任务,可以使用 Markdown 文件或 GitHub 问题 作为检查清单和临时工作区,逐步完成任务。用户还可以通过 复制粘贴、管道输入、Bash 命令或 URL 将数据传递给 Claude。
最后,Claude Code 的 无头模式 可以在非交互式环境中使用,例如 CI/CD 流水线、预提交钩子或构建脚本。通过 -p 标志和 --output-format stream-json,用户可以实现自动化任务。
此外,用户还可以通过 多 Claude 工作流 提高效率,例如让一个 Claude 实例编写代码,另一个进行验证或测试。或者使用 多个代码库检出 或 Git 工作树,在不同目录中同时运行多个 Claude 会话,处理独立任务。对于需要大规模并行处理的任务,可以使用 无头模式与自定义框架 结合,通过循环调用 Claude 完成任务列表中的每个任务,或者将其集成到现有的数据处理管道中。
这些最佳实践建议并非固定不变,用户可以根据自己的需求进行调整和实验,以找到最适合自己的工作方式。
#Claude #AI #实践
https://www.anthropic.com/engineering/claude-code-best-practices
Anthropic 发布了 Claude Code,这是一款用于代理编程的命令行工具,旨在为工程师和研究人员提供更便捷的方式来将 Claude 集成到他们的编程工作流中。Claude Code 的设计注重灵活性和可定制性,不过这也意味着新用户需要一定时间来熟悉其最佳实践。以下是一些经过验证的使用建议,适用于不同代码库、语言和环境。
定制化设置是提高效率的关键。首先,创建 CLAUDE.md 文件,这是一个特殊文件,Claude 会在对话开始时自动将其内容拉入上下文中。该文件可用于记录常见的 Bash 命令、核心文件和工具函数、代码风格指南、测试说明、代码库礼仪、开发环境设置以及项目特有的意外行为或警告等信息。CLAUDE.md 文件可以放置在代码库根目录、父目录、子目录或用户的主目录中,具体位置取决于需求。通过运行 /init 命令,Claude 会自动生成一个 CLAUDE.md 文件。
此外,用户还可以通过 调整 CLAUDE.md 文件 来优化上下文的收集过程。这些文件会成为 Claude 提示的一部分,因此需要像优化常用提示一样进行迭代和调整。用户可以手动编辑CLAUDE.md 文件,或者通过按下 # 键 让 Claude 自动将指令纳入文件。Anthropic 团队还会定期使用 prompt improver 来优化 CLAUDE.md 文件,并通过添加强调词汇(如“IMPORTANT”或“YOU MUST”)来提高模型对指令的遵循度。
在安全性方面,Claude Code 默认会对可能修改系统的操作请求权限,包括文件写入、Bash 命令、MCP 工具等。用户可以根据需要自定义允许列表,通过 “Always allow” 选项、/allowed-tools 命令、手动编辑 .claude/settings.json 或 ~/.claude.json 文件,以及使用 --allowedTools CLI 标志 来管理允许的工具。
对于使用 GitHub 的用户,安装 gh CLI 可以让 Claude 通过该工具与 GitHub 交互,从而更高效地完成创建问题、打开拉取请求、阅读评论等操作。
扩展 Claude 的工具集 也是提升效率的重要方式。Claude Code 继承了用户的 Bash 环境,能够访问所有工具。用户可以通过向 Claude 介绍工具名称和使用示例、运行 --help 命令查看工具文档,或者将常用工具记录在 CLAUDE.md 文件中,来帮助 Claude 熟悉自定义 Bash 工具。
Claude Code 还可以通过 MCP(Model Context Protocol) 访问更复杂的工具。它既可以作为 MCP 服务器,也可以作为客户端连接到其他 MCP 服务器。用户可以在项目配置、全局配置或 .mcp.json 文件中指定可访问的工具,以便在代码库中共享这些工具。
此外,用户还可以通过 自定义斜杠命令 来存储重复性工作流的提示模板。这些模板可以放在 .claude/commands 文件夹中,并通过斜杠命令菜单在 Claude Code 中使用。例如,创建一个名为 [fix-github-issue.md](http://fix-github-issue.md/) 的文件,就可以通过 /project:fix-github-issue 命令让 Claude 自动处理 GitHub 问题。
在 常见工作流 方面,Claude Code 提供了多种灵活的模式。例如,“探索、计划、编码、提交”工作流适用于许多问题,它要求 Claude 首先阅读相关文件、制定计划,然后实施解决方案并提交代码。另一种是“编写测试、提交;编码、迭代、提交”工作流,特别适合可以通过单元测试、集成测试或端到端测试验证的变更。此外,还有“编写代码、截图结果、迭代”工作流,适用于需要视觉目标的场景,例如 UI 开发。
对于需要快速完成的任务,可以使用 “安全 YOLO 模式”,通过 --dangerously-skip-permissions 标志跳过所有权限检查,让 Claude 自行完成任务。但需要注意的是,这种方法存在一定风险,建议在没有网络连接的容器中使用。
在 优化工作流 方面,建议用户在指令中尽可能具体,避免模糊不清的描述。例如,明确指出要为特定文件编写测试用例,或者要求 Claude 查看某个函数的 Git 历史记录。此外,提供图像、文件路径或 URL 也可以帮助 Claude 更好地理解任务。在长时间会话中,使用 /clear 命令 清除上下文窗口,可以避免无关信息干扰 Claude 的工作。
对于复杂的任务,可以使用 Markdown 文件或 GitHub 问题 作为检查清单和临时工作区,逐步完成任务。用户还可以通过 复制粘贴、管道输入、Bash 命令或 URL 将数据传递给 Claude。
最后,Claude Code 的 无头模式 可以在非交互式环境中使用,例如 CI/CD 流水线、预提交钩子或构建脚本。通过 -p 标志和 --output-format stream-json,用户可以实现自动化任务。
此外,用户还可以通过 多 Claude 工作流 提高效率,例如让一个 Claude 实例编写代码,另一个进行验证或测试。或者使用 多个代码库检出 或 Git 工作树,在不同目录中同时运行多个 Claude 会话,处理独立任务。对于需要大规模并行处理的任务,可以使用 无头模式与自定义框架 结合,通过循环调用 Claude 完成任务列表中的每个任务,或者将其集成到现有的数据处理管道中。
这些最佳实践建议并非固定不变,用户可以根据自己的需求进行调整和实验,以找到最适合自己的工作方式。
#Claude #AI #实践
https://www.anthropic.com/engineering/claude-code-best-practices
OpenAI Codex CLI,可在终端运行的轻量级编码代理
Codex 的核心功能是通过终端与开发者进行交互,支持自然语言输入,能够理解并执行代码相关任务,例如代码解释、代码生成、代码优化等。它支持多种编程语言,并且可以通过简单的命令行操作快速接入,用户只需通过 npm 安装并设置 OpenAI API 密钥即可开始使用。此外,Codex 提供了丰富的配置选项,用户可以通过配置文件自定义模型、审批模式等参数,以适应不同的开发需求。
在安全性方面,Codex 提供了多种运行模式,用户可以根据需求选择不同的权限级别。例如,在“建议”模式下,Codex 只能读取文件,而在“全自动”模式下,Codex 可以读写文件并执行命令,但网络访问被禁用,确保了运行环境的安全性。此外,Codex 还支持通过 Git 进行版本控制,用户可以在安全的环境中进行代码修改和提交。
尽管 Codex 是一个强大的工具,但它仍处于实验阶段,可能会存在一些不稳定因素和未完成的功能。开发团队建议用户在使用过程中提供反馈,以便不断改进和完善工具。目前,Codex 不支持 OpenAI 的零数据保留(ZDR)组织,用户在使用时需要注意这一限制。
#OpenAI #AI #Tools #Agents
https://github.com/openai/codex
Codex 的核心功能是通过终端与开发者进行交互,支持自然语言输入,能够理解并执行代码相关任务,例如代码解释、代码生成、代码优化等。它支持多种编程语言,并且可以通过简单的命令行操作快速接入,用户只需通过 npm 安装并设置 OpenAI API 密钥即可开始使用。此外,Codex 提供了丰富的配置选项,用户可以通过配置文件自定义模型、审批模式等参数,以适应不同的开发需求。
在安全性方面,Codex 提供了多种运行模式,用户可以根据需求选择不同的权限级别。例如,在“建议”模式下,Codex 只能读取文件,而在“全自动”模式下,Codex 可以读写文件并执行命令,但网络访问被禁用,确保了运行环境的安全性。此外,Codex 还支持通过 Git 进行版本控制,用户可以在安全的环境中进行代码修改和提交。
尽管 Codex 是一个强大的工具,但它仍处于实验阶段,可能会存在一些不稳定因素和未完成的功能。开发团队建议用户在使用过程中提供反馈,以便不断改进和完善工具。目前,Codex 不支持 OpenAI 的零数据保留(ZDR)组织,用户在使用时需要注意这一限制。
#OpenAI #AI #Tools #Agents
https://github.com/openai/codex
GitHub
GitHub - openai/codex: Lightweight coding agent that runs in your terminal
Lightweight coding agent that runs in your terminal - openai/codex
BabelDOC 是一款开源的 pdf 文档翻译工具,旨在为用户提供高效、便捷的文档翻译解决方案。
BabelDOC 的核心功能是将 PDF 文档进行翻译,并生成双语对照版本,支持多种翻译服务,包括 OpenAI 等。它提供了简单的命令行界面和 Python API,方便用户直接使用或嵌入到其他程序中。此外,BabelDOC 还支持自定义配置文件,用户可以通过 TOML 格式配置文件来设置翻译参数,如源语言、目标语言、翻译服务选项等。
在功能特性方面,BabelDOC 提供了丰富的 PDF 处理选项,例如支持指定翻译页面范围、调整翻译后的页面布局、启用兼容性增强模式等。它还支持离线资产包管理,用户可以生成包含所有必需模型和字体的离线资产包,以便在无网络环境中使用或加速多台机器的安装过程。
#PDF #Tools
https://github.com/funstory-ai/BabelDOC
BabelDOC 的核心功能是将 PDF 文档进行翻译,并生成双语对照版本,支持多种翻译服务,包括 OpenAI 等。它提供了简单的命令行界面和 Python API,方便用户直接使用或嵌入到其他程序中。此外,BabelDOC 还支持自定义配置文件,用户可以通过 TOML 格式配置文件来设置翻译参数,如源语言、目标语言、翻译服务选项等。
在功能特性方面,BabelDOC 提供了丰富的 PDF 处理选项,例如支持指定翻译页面范围、调整翻译后的页面布局、启用兼容性增强模式等。它还支持离线资产包管理,用户可以生成包含所有必需模型和字体的离线资产包,以便在无网络环境中使用或加速多台机器的安装过程。
#PDF #Tools
https://github.com/funstory-ai/BabelDOC
GitHub
GitHub - funstory-ai/BabelDOC: Yet Another Document Translator
Yet Another Document Translator. Contribute to funstory-ai/BabelDOC development by creating an account on GitHub.
将博客托管在 Nintendo Wii 上
Alex Haydock 将一个博客托管在任天堂 Wii 游戏机上。他通过 NetBSD 操作系统实现了这一目标,NetBSD 是一个开源的类 Unix 操作系统,其 Wii 版本是官方支持且持续更新的。他从 EMF Camp 2024 Swap Shop 购得一台 Wii,然后利用 Wilbrand 漏洞和 HackMii 工具对 Wii 进行软修改,安装了 Homebrew Channel。接着,他下载了 NetBSD 的 Wii 镜像文件,将其写入一张 32GB 的 SDHC 卡中,并通过 Homebrew Channel 启动 NetBSD。在 NetBSD 系统中,他配置了 SSH 服务以便远程管理,安装了轻量级的 web 服务器 lighttpd,并将其设置为静态内容的托管服务器。他还通过 Caddy 作为反向代理来处理 TLS 加密和证书管理,以减轻 Wii 的负担。此外,他编写了一个简单的 shell 脚本,定期生成系统状态信息并存储在网页根目录中,以便实时监控 Wii 的资源使用情况。尽管 Wii 的单核处理器在处理大量并发请求时可能会遇到一些性能瓶颈,但整体实验效果出乎意料地好。Alex Haydock 表示,他将继续运行这个实验,以观察 Wii 在实际生产环境中的表现。
#博客 #创造
https://blog.infected.systems/posts/2025-04-21-this-blog-is-hosted-on-a-nintendo-wii/
Alex Haydock 将一个博客托管在任天堂 Wii 游戏机上。他通过 NetBSD 操作系统实现了这一目标,NetBSD 是一个开源的类 Unix 操作系统,其 Wii 版本是官方支持且持续更新的。他从 EMF Camp 2024 Swap Shop 购得一台 Wii,然后利用 Wilbrand 漏洞和 HackMii 工具对 Wii 进行软修改,安装了 Homebrew Channel。接着,他下载了 NetBSD 的 Wii 镜像文件,将其写入一张 32GB 的 SDHC 卡中,并通过 Homebrew Channel 启动 NetBSD。在 NetBSD 系统中,他配置了 SSH 服务以便远程管理,安装了轻量级的 web 服务器 lighttpd,并将其设置为静态内容的托管服务器。他还通过 Caddy 作为反向代理来处理 TLS 加密和证书管理,以减轻 Wii 的负担。此外,他编写了一个简单的 shell 脚本,定期生成系统状态信息并存储在网页根目录中,以便实时监控 Wii 的资源使用情况。尽管 Wii 的单核处理器在处理大量并发请求时可能会遇到一些性能瓶颈,但整体实验效果出乎意料地好。Alex Haydock 表示,他将继续运行这个实验,以观察 Wii 在实际生产环境中的表现。
#博客 #创造
https://blog.infected.systems/posts/2025-04-21-this-blog-is-hosted-on-a-nintendo-wii/
system-prompts-and-models-of-ai-tools 项目汇集了包括 FULL v0、Cursor、Manus、Same.dev、Lovable、Devin、Replit Agent、Windsurf Agent 以及 VSCode Agent 在内的多种 AI 工具的系统 Prompt、工具和 AI 模型。
#AI #Prompt
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools
#AI #Prompt
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools
GitHub
GitHub - x1xhlol/system-prompts-and-models-of-ai-tools: FULL v0, Cursor, Manus, Augment Code, Same.dev, Lovable, Devin, Replit…
FULL v0, Cursor, Manus, Augment Code, Same.dev, Lovable, Devin, Replit Agent, Windsurf Agent, VSCode Agent, Dia Browser, Xcode, Trae AI, Cluely & Orchids.app (And other Open Sourced) System...
Chat SDK 是由 Vercel 团队开发的免费开源模板,旨在帮助开发者快速构建功能强大的聊天机器人应用。该模板具备高度可定制性,无论是企业级业务还是个人项目,开发者都可以根据自身需求对聊天机器人进行定制。它能够紧跟用户体验和模型能力的最新进展,例如支持处理文件和推理等功能。此外,Chat SDK 遵循最佳实践,确保开发者可以专注于构建核心功能,无需担心其他问题。
#AI #Tools
https://chat-sdk.dev/
#AI #Tools
https://chat-sdk.dev/
Chat SDK by Vercel
A free, open-source chatbot template that helps you build powerful AI applications.
为什么 LLM 驱动的编程比人造人更像机甲?
Matthew Sinclair 通过自身使用 Claude Code 构建两个项目的经历,阐述了 LLM 工具并非取代人类程序员,而是像《异形 2》中雷普利的机甲战衣一样,增强程序员的能力。Sinclair 强调,尽管 LLM 能快速生成代码,但程序员仍需保持高度警惕,防止 AI 做出错误决策,如引入不必要的依赖或用硬编码值替代代码段。这种警惕性要求程序员将注意力从编写代码转移到审查、引导和维护架构完整性上。
Sinclair 还指出,LLM 的使用改变了编程时间成本的分配。传统编程中,编写代码占据大量时间,而 LLM 使代码生成成本近乎为零,程序员需更多关注理解业务问题和设计解决方案。同时,他提到“挥刀”的新技能,即在 LLM 能快速重写代码的情况下,程序员需要学会果断放弃不合适的解决方案。他还强调,经验丰富的程序员能够识别 AI 输出中的问题,而缺乏经验的程序员可能会因 AI 产生的错误代码而陷入困境。AI 放大了程序员的能力,但若操作不当,也会放大错误。
Sinclair 借助国际象棋中的“人机合作棋”类比,说明人类与 AI 的合作优于单独作战。人类提供战略方向和创造性解决问题的能力,而 AI 提供计算能力和战术精度。他通过与 Claude 的合作,发现当将 AI 视作合作伙伴而非替代品时,开发速度显著提升。他还提到,找到委托与控制之间的平衡至关重要,对于遵循既定模式的简单实现,可以广泛委托 AI;而对于具有重大权衡的新挑战,则需要更详细的规范和更仔细的审查。
Sinclair 认为 LLM 不会取代程序员,而是改变程序员的工作方式。未来,程序员的架构思维、模式识别和技术判断能力将变得更加重要,而与 AI 工具的有效协作将成为一项关键技能。他鼓励程序员拥抱这种变革,利用 LLM 提升软件开发的规模和速度,但需具备足够的技能以安全地操作这些工具。
#AI #LLM
https://matthewsinclair.com/blog/0178-why-llm-powered-programming-is-more-mech-suit-than-artificial-human
Matthew Sinclair 通过自身使用 Claude Code 构建两个项目的经历,阐述了 LLM 工具并非取代人类程序员,而是像《异形 2》中雷普利的机甲战衣一样,增强程序员的能力。Sinclair 强调,尽管 LLM 能快速生成代码,但程序员仍需保持高度警惕,防止 AI 做出错误决策,如引入不必要的依赖或用硬编码值替代代码段。这种警惕性要求程序员将注意力从编写代码转移到审查、引导和维护架构完整性上。
Sinclair 还指出,LLM 的使用改变了编程时间成本的分配。传统编程中,编写代码占据大量时间,而 LLM 使代码生成成本近乎为零,程序员需更多关注理解业务问题和设计解决方案。同时,他提到“挥刀”的新技能,即在 LLM 能快速重写代码的情况下,程序员需要学会果断放弃不合适的解决方案。他还强调,经验丰富的程序员能够识别 AI 输出中的问题,而缺乏经验的程序员可能会因 AI 产生的错误代码而陷入困境。AI 放大了程序员的能力,但若操作不当,也会放大错误。
Sinclair 借助国际象棋中的“人机合作棋”类比,说明人类与 AI 的合作优于单独作战。人类提供战略方向和创造性解决问题的能力,而 AI 提供计算能力和战术精度。他通过与 Claude 的合作,发现当将 AI 视作合作伙伴而非替代品时,开发速度显著提升。他还提到,找到委托与控制之间的平衡至关重要,对于遵循既定模式的简单实现,可以广泛委托 AI;而对于具有重大权衡的新挑战,则需要更详细的规范和更仔细的审查。
Sinclair 认为 LLM 不会取代程序员,而是改变程序员的工作方式。未来,程序员的架构思维、模式识别和技术判断能力将变得更加重要,而与 AI 工具的有效协作将成为一项关键技能。他鼓励程序员拥抱这种变革,利用 LLM 提升软件开发的规模和速度,但需具备足够的技能以安全地操作这些工具。
#AI #LLM
https://matthewsinclair.com/blog/0178-why-llm-powered-programming-is-more-mech-suit-than-artificial-human
🥰1😁1
优化 Node.js 性能:V8 内存管理与垃圾回收调优
Matteo Collina 探讨了 V8 的内存管理和垃圾回收(GC)调优。Node.js 开发者常常会发现应用的内存占用(通过操作系统报告的常驻内存集 RSS 衡量)持续增长,这容易让人误以为是内存泄漏。然而,高 RSS 并不一定意味着内存泄漏,因为 V8 引擎会主动保留从操作系统获取的内存段,即使其中的 JavaScript 对象已被回收,以便为未来的内存分配需求做好准备,从而减少频繁向操作系统请求和释放内存的性能开销。真正意义上的内存泄漏是指那些无法被垃圾回收器回收的不可达 JavaScript 对象,导致应用堆内存中活跃使用的内存不断增加。
Matteo 深入介绍了 V8 的分代垃圾回收机制,基于“代际假说”,即大多数对象在创建后不久就会变成垃圾,而少数存活过初始阶段的对象通常会存活较长时间。V8 将内存堆分为新生代(New Space)和老生代(Old Space)。新生代采用“Scavenge”算法进行快速垃圾回收,它将新生代分为两个相等的半区,当一个半区填满时,Scavenge 周期开始,通过复制存活对象到另一个半区来清理垃圾。而老生代则使用“标记 - 清除”算法,必要时还会进行“压缩”操作以减少内存碎片。如果新生代的内存分配速度超过了 Scavenge 收集器的处理速度,那些本应迅速被回收的对象可能会在一次或两次 Scavenge 周期内存活下来,从而被错误地提升到老生代,这就是“过早晋升”问题。这会导致老生代中充斥着短命对象,使得 V8 不得不更频繁地执行缓慢且资源密集的老生代 GC,从而增加请求延迟并降低应用处理并发请求的能力。
为了解决过早晋升带来的性能问题,开发者可以通过调整 V8 的垃圾回收行为来优化性能,特别是通过调整新生代(New Space)的大小。V8 提供了命令行标志
Matteo 还讨论了在 Node.js v22 及更高版本中,V8 默认的新生代半区大小的确定方式发生了变化。新版本的 V8 会根据 Node.js 进程启动时感知到的可用内存总量动态设置默认值。虽然这种动态方法在内存充足的系统上可能表现良好,但在内存受限的环境中(如容器或无服务器平台),可能会导致默认的
Matteo 通过一个实际案例展示了如何通过调整新生代大小来优化性能。在一个包含 Next.js SSR 应用、Fastify 服务器和纯 Node.js 应用的 Watt 应用服务器中,通过将新生代大小调整为 128MB,测试结果显示 P99 延迟降低了 5%,每秒请求数提高了 7%,整体吞吐量提高了 7%。这表明适当调整 V8 的内存管理参数可以显著提升 Node.js 应用的性能。
虽然高 RSS 并不一定意味着内存泄漏,但理解 V8 的内存管理机制并根据应用的具体需求调整垃圾回收策略,可以在内存使用和计算效率之间取得平衡,特别是在内存受限的环境中。
#NodeJs #前端 #性能
https://blog.platformatic.dev/optimizing-nodejs-performance-v8-memory-management-and-gc-tuning
Matteo Collina 探讨了 V8 的内存管理和垃圾回收(GC)调优。Node.js 开发者常常会发现应用的内存占用(通过操作系统报告的常驻内存集 RSS 衡量)持续增长,这容易让人误以为是内存泄漏。然而,高 RSS 并不一定意味着内存泄漏,因为 V8 引擎会主动保留从操作系统获取的内存段,即使其中的 JavaScript 对象已被回收,以便为未来的内存分配需求做好准备,从而减少频繁向操作系统请求和释放内存的性能开销。真正意义上的内存泄漏是指那些无法被垃圾回收器回收的不可达 JavaScript 对象,导致应用堆内存中活跃使用的内存不断增加。
Matteo 深入介绍了 V8 的分代垃圾回收机制,基于“代际假说”,即大多数对象在创建后不久就会变成垃圾,而少数存活过初始阶段的对象通常会存活较长时间。V8 将内存堆分为新生代(New Space)和老生代(Old Space)。新生代采用“Scavenge”算法进行快速垃圾回收,它将新生代分为两个相等的半区,当一个半区填满时,Scavenge 周期开始,通过复制存活对象到另一个半区来清理垃圾。而老生代则使用“标记 - 清除”算法,必要时还会进行“压缩”操作以减少内存碎片。如果新生代的内存分配速度超过了 Scavenge 收集器的处理速度,那些本应迅速被回收的对象可能会在一次或两次 Scavenge 周期内存活下来,从而被错误地提升到老生代,这就是“过早晋升”问题。这会导致老生代中充斥着短命对象,使得 V8 不得不更频繁地执行缓慢且资源密集的老生代 GC,从而增加请求延迟并降低应用处理并发请求的能力。
为了解决过早晋升带来的性能问题,开发者可以通过调整 V8 的垃圾回收行为来优化性能,特别是通过调整新生代(New Space)的大小。V8 提供了命令行标志
--max-semi-space-size
来设置每个半区的最大大小(以兆字节为单位)。通过增加新生代的大小,可以为新分配的对象提供更大的缓冲空间,从而让快速的 Scavenge 收集器有更多机会在对象被提升到老生代之前识别并回收它们。这样可以显著减少过早晋升到老生代的频率,进而降低老生代 GC 的频率,减少应用暂停时间,从而改善延迟和吞吐量。Matteo 还讨论了在 Node.js v22 及更高版本中,V8 默认的新生代半区大小的确定方式发生了变化。新版本的 V8 会根据 Node.js 进程启动时感知到的可用内存总量动态设置默认值。虽然这种动态方法在内存充足的系统上可能表现良好,但在内存受限的环境中(如容器或无服务器平台),可能会导致默认的
--max-semi-space-size
值过小,从而增加过早晋升的可能性。因此,对于在 Node.js v22 或更高版本上运行且内存受限的应用,建议开发者显式设置 --max-semi-space-size
标志,以确保新生代的大小适合其内存分配模式。Matteo 通过一个实际案例展示了如何通过调整新生代大小来优化性能。在一个包含 Next.js SSR 应用、Fastify 服务器和纯 Node.js 应用的 Watt 应用服务器中,通过将新生代大小调整为 128MB,测试结果显示 P99 延迟降低了 5%,每秒请求数提高了 7%,整体吞吐量提高了 7%。这表明适当调整 V8 的内存管理参数可以显著提升 Node.js 应用的性能。
虽然高 RSS 并不一定意味着内存泄漏,但理解 V8 的内存管理机制并根据应用的具体需求调整垃圾回收策略,可以在内存使用和计算效率之间取得平衡,特别是在内存受限的环境中。
#NodeJs #前端 #性能
https://blog.platformatic.dev/optimizing-nodejs-performance-v8-memory-management-and-gc-tuning
Platformatic Blog
Boost Node.js with V8 GC Optimization
Optimize Node.js with V8 GC tuning. Adjust Young Generation size for better efficiency in memory-constrained environments
node-base64-image,支持远程 URL 下载图像或使用本地图像并将其编码/解码为 Base64 字符串或 Buffer 对象。
#Tools #前端 #NodeJs
https://github.com/riyadhalnur/node-base64-image
#Tools #前端 #NodeJs
https://github.com/riyadhalnur/node-base64-image
GitHub
GitHub - riyadhalnur/node-base64-image: Download images from remote URLs or use local images and encode/decode them to Base64 string…
Download images from remote URLs or use local images and encode/decode them to Base64 string or Buffer object - riyadhalnur/node-base64-image
AI 编码的隐性成本
Matheus Lima 分享了他对 AI 编程的担忧,即AI 编程可能剥夺了开发者的快乐。Matheus 曾多次强调 AI 的潜力和优势,但如今他更关注 AI 编程背后隐藏的成本——开发者在编程过程中所体验到的快乐和满足感的减少。
Matheus 回忆起过去编程时的快乐时光:在清晨,一杯咖啡,一副耳机,沉浸在代码中,完全忘却时间的流逝。这种状态被称为“心流”,是一种高度集中、充满创造力和幸福感的心理状态。然而,如今作为管理者,Matheus 发现这种快乐正在减少。尽管使用 AI 工具可以显著提高工作效率,但编程过程变得更加被动。开发者不再像过去那样深入思考和亲手编写代码,而是更多地扮演“策划者”的角色,通过描述需求、调整提示词和迭代来完成工作。这种高效的工作方式虽然节省了时间,但似乎也失去了编程的精髓和乐趣。
如果这种基于 AI 的工作流程成为主流,开发者可能会变得高效但冷漠,失去了对编程的热爱和满足感。当我们将需要全神贯注和创造力的编程部分外包给 AI 时,是否也同时外包了获得满足感的机会?开发者是否能在通过提示词生成代码的过程中找到与过去解决问题时相同的成就感?
尽管 Matheus 没有确切的答案,但他认为或许我们需要重新定义在 AI 辅助世界中快乐的存在方式。也许快乐并没有完全消失,而是发生了转移。开发者可能会在更高层次的系统设计、描述需求的创造性过程中,或者 AI 无法触及的软件开发的人性化方面找到新的满足感。Matheus 建议,我们需要有意识地保留一些手工编程的空间,让“心流”状态仍然能够发生,因为如果失去了对编程的热爱,那么我们所追求的优化又有什么意义呢?
#AI #思考 #编程
https://terriblesoftware.org/2025/04/23/the-hidden-cost-of-ai-coding/
Matheus Lima 分享了他对 AI 编程的担忧,即AI 编程可能剥夺了开发者的快乐。Matheus 曾多次强调 AI 的潜力和优势,但如今他更关注 AI 编程背后隐藏的成本——开发者在编程过程中所体验到的快乐和满足感的减少。
Matheus 回忆起过去编程时的快乐时光:在清晨,一杯咖啡,一副耳机,沉浸在代码中,完全忘却时间的流逝。这种状态被称为“心流”,是一种高度集中、充满创造力和幸福感的心理状态。然而,如今作为管理者,Matheus 发现这种快乐正在减少。尽管使用 AI 工具可以显著提高工作效率,但编程过程变得更加被动。开发者不再像过去那样深入思考和亲手编写代码,而是更多地扮演“策划者”的角色,通过描述需求、调整提示词和迭代来完成工作。这种高效的工作方式虽然节省了时间,但似乎也失去了编程的精髓和乐趣。
如果这种基于 AI 的工作流程成为主流,开发者可能会变得高效但冷漠,失去了对编程的热爱和满足感。当我们将需要全神贯注和创造力的编程部分外包给 AI 时,是否也同时外包了获得满足感的机会?开发者是否能在通过提示词生成代码的过程中找到与过去解决问题时相同的成就感?
尽管 Matheus 没有确切的答案,但他认为或许我们需要重新定义在 AI 辅助世界中快乐的存在方式。也许快乐并没有完全消失,而是发生了转移。开发者可能会在更高层次的系统设计、描述需求的创造性过程中,或者 AI 无法触及的软件开发的人性化方面找到新的满足感。Matheus 建议,我们需要有意识地保留一些手工编程的空间,让“心流”状态仍然能够发生,因为如果失去了对编程的热爱,那么我们所追求的优化又有什么意义呢?
#AI #思考 #编程
https://terriblesoftware.org/2025/04/23/the-hidden-cost-of-ai-coding/
Terrible Software
The Hidden Cost of AI Coding
AI coding tools boost productivity but may sacrifice the flow state and deep satisfaction developers experience when writing code by hand. What are we losing?
Milkdown 是一款轻量级且功能强大的所见即所得 Markdown 编辑器,由一个核心插件加载器和众多内部插件组成,同时提供了丰富的额外插件用于支持语法、命令和组件。用户可以根据自身需求启用或禁用自定义语法和功能,例如表格、LaTeX 和工具提示等,还可以创建自己的插件以实现更多创意功能。Milkdown 的文档本身也是通过 Milkdown 渲染而成。
#Tools #Markdown
https://github.com/Milkdown/milkdown
#Tools #Markdown
https://github.com/Milkdown/milkdown
GitHub
GitHub - Milkdown/milkdown: 🍼 Plugin driven WYSIWYG markdown editor framework.
🍼 Plugin driven WYSIWYG markdown editor framework. - Milkdown/milkdown