npm 12版本已发布:由于注册表机制发生了变化,现在默认情况下会自动安装这些脚本。
npm 12带来了许多与安全性相关的变更,使得某些安装行为需要用户明确选择才会被执行。值得注意的是,默认情况下,脚本的执行是被禁用的,因此运行任何脚本——包括那些在构建过程中自动执行的脚本——都需要获得用户的明确许可。此次更新还限制了来自非官方注册源的代码的下载,从而解决了社区对于自动执行脚本可能带来的安全风险的担忧。 作者:丹尼尔·柯蒂斯

npm 12带来了许多与安全性相关的变更,使得某些安装行为需要用户明确选择才会被执行。值得注意的是,默认情况下,脚本的执行是被禁用的,因此运行任何脚本——包括那些在构建过程中自动执行的脚本——都需要获得用户的明确许可。此次更新还限制了来自非官方注册源的代码的下载,从而解决了社区对于自动执行脚本可能带来的安全风险的担忧。
作者:丹尼尔·柯蒂斯相关文章
如何管理代码库中的上下文文件,从而让人工智能编码助手产生更优质的成果
你向编码助手请求创建一个新的端点,90秒后,这个新的端点就已经可以正常使用了。 然后你查看代码变更内容,发现它引入了一个并不存在于你的`package.json`文件中的验证库;尽管你们的团队在去年春天就已经改用了Node.js的测试框架,但它仍然使用Jest来编写测试用例;此外,由于它不知道代码库中其他处理函数都是通过服务来调用的,所以它直接从路由处理函数内部访问了数据库。 代码可以运行,它编写的测试用例也能通过,但你们还是不得不重写大部分代码。 这些情况都不是模型本身的问题——它确实给出了一个看似合理的解决方案,但它之所以会犯这些错误,是因为没有人告诉它这个特定的代码库是如何运作的。 你们
阅读全文
SpaceXAI推出了Grok机器人,用于辅助人工智能代理实现自主运行。
SpaceXAI推出了Grok Bot这一系统——这套由持久性人工智能代理组成的系统运行在专用的云计算机上,能够与网站、应用程序、收件箱以及其他工具进行交互。 作者:丹尼尔·多明格斯
阅读全文
如何使用Pydantic AI构建具备生产级功能的智能代理
使用原始的LLM SDK来构建AI代理,在开发原型阶段确实可行,但一旦你需要结构化输出、可测试的代码以及具备生产环境可靠性的系统,这些问题就会显现出来。 这些问题的出现具有很强的规律性。你的笔记本代码可以正常运行,于是你将其应用到生产环境中,并开始添加各种补丁:比如为`json.loads`添加异常处理逻辑,编写辅助函数来去除Markdown格式的标记,使用`if`语句检查字段类型,设置重试机制,以及创建一个将工具名称与对应的可调用函数关联起来的映射函数。这些代码单独来看并不复杂,但当它们汇集在一起时,就会占据你代码库的大部分内容,而真正的代理逻辑反而被这些辅助代码所掩盖。 本文将按照这些问题
阅读全文
如何利用人工智能对传统应用程序进行现代化改造,同时又避免对其进行彻底的重写?
我见过一些旧系统的迁移项目被认为取得了成功,因为那些旧的框架已经从代码库中消失了。 但六个月后,团队仍然在面对同样的耦合问题、同样不清晰的业务规则,以及几乎相同的部署难题。 虽然技术已经发生了变化,但整个系统本身并没有发生太大的改变。 人工智能让这个问题变得更加复杂了。 它能够比人类团队更快地翻译代码,能够解释那些不熟悉的类结构,生成测试用例,创建适配器,更新API接口,从而大大减少重复性工作。 但是,如果你让一个人工智能编码工具去处理一个旧应用程序,并简单地要求它将所有内容都迁移到现代的技术架构中,那么很可能会得到你想要的结果: 还是那个系统,只不过被更快地重新编写了一遍而已。 这并不一定算
阅读全文