Roman Imankulov

RSS: https://roman.pt/index.xml
全栈 Python Web 开发者。

智能体工程:使用 smolagents

作者分享使用 HuggingFace 的 smolagents 构建新闻阅读器的经验,重点介绍了 CodeAgent 基于 ReAct 循环通过生成和执行 Python 代码来完成任务的工作机制。
评论点赞收藏69 天前

Agent工程实践:Pydantic AI框架

作者将Pydantic AI作为构建AI Agent的框架进行实践,将其类比为Agent领域的FastAPI,强调其基于类型注解和装饰器的开发体验。
评论点赞收藏69 天前

智能体工程:Pi SDK 编程接入指南

作者介绍如何使用 Pi 的程序化 SDK 将 AI Agent 嵌入自定义脚本中,以实现比 CLI 模式更灵活的控制,类似于之前使用 Agent SDK 重构 Claude Code 的做法。
评论点赞收藏70 天前

Agent 工程:Pi 与 Claude Code 的设计哲学对比

作者将 Claude Code 比作 Django,将 Pi 比作 Flask,探讨了两者在 Agent 工程中的不同设计理念。文章指出 Claude Code 功能丰富但难以剥离冗余,而 Pi 则更加极简,适合喜欢轻量级控制的开发者。
评论点赞收藏70 天前

Agent 工程:从零重构 Agent SDK

作者分享将基于 Claude Code 的新闻阅读器项目从分散的配置文件重构为单一 Python 文件的工程实践。文章对比了“懒惰迁移”与从零重构两种路径,探讨了 Agent SDK 在实际工程中的代码组织、依赖管理和可维护性问题,提供了具体的 Agent 开发架构参考。
评论点赞收藏74 天前

Agent工程:把Claude Code变成你的执行环境

作者分享了从将LLM视为第三方依赖转向将其作为核心执行环境的经验。通过让Agent循环驱动流程,确定性代码仅用于结构化存储和外部API调用,Python逻辑占比大幅降低。这是一种关于Agent工程架构的新尝试。
评论点赞收藏75 天前

Smello:Python HTTP 请求的本地调试与可视化工具

作者针对外部 API 文档缺失或糟糕的痛点,开发了一个名为 Smello 的开源工具。该工具能捕获 Python 发出的 HTTP 请求并在本地 Web 仪表盘中显示,类似于邮件调试工具 Mailpit。文章分享了开发动机、使用场景及两行代码即可集成的简易用法,适合后端开发和集成工程师参考。
评论点赞收藏167 天前

修复 tmux 中的键盘输入问题

作者因使用AI编程助手和更换96键键盘,发现tmux中的Shift+Enter换行及滚轮导航失效。文章深入排查了这两个独立问题,旨在解决终端工作流中的具体痛点。
评论点赞收藏185 天前

放手开发:AI 编码代理带来的范式转移

作者分享从 Cursor 转向 Claude Code 的个人体验,指出随着模型能力提升,开发者正逐渐将更多工作交给 Agent,并在更高维度进行引导。文中引用 Simon Willison 的观点,认为 GPT-5.2 和 Opus 4.5 等模型达到了一个拐点,使得更复杂的编程问题得以解决。
评论点赞收藏215 天前

深入解析Cursor编辑器底层机制与Prompt工程实战

作者通过抓包分析Cursor编辑器的底层Prompt结构,揭示了System Prompt、自定义指令及Agent工作流的具体实现。文章提供了实用的调试技巧,如解决.cursorrules文件未被正确应用的问题,并详细列出了Cursor调用的OpenAI工具函数,帮助开发者优化提示词工程以获得更好的代码生成效果。
评论点赞收藏505 天前

别让字典毁了你的代码

文章指出在Python中过度使用字典会导致代码难以维护和扩展,建议将字典视为外部数据格式,并在内部转换为具有语义的结构化对象。作者推荐使用dataclasses或Pydantic来创建领域模型,并介绍了如何在遗留代码中使用TypedDict进行类型注解,以及如何通过Mapping类型限制字典的可变性,从而提升代码质量和可维护性。
评论点赞收藏676 天前

临时错误与永久错误:外部集成中的错误处理策略

文章探讨了外部集成中临时错误与永久错误的区别,指出开发者常因不确定外部系统行为而忽视错误处理。作者建议区分这两类错误,并针对如503、限流、超时等情况制定相应的处理策略,以避免实现大量异常情况的处理器。
评论点赞收藏833 天前

在FastAPI中使用Pydantic处理未设置值的问题

文章探讨了在FastAPI和Pydantic中处理部分更新(PATCH)时,如何区分字段未设置与显式设置为None的情况。这是一个常见的工程痛点,文章提供了具体的解决方案和技术细节,适合后端开发者参考。
评论点赞收藏964 天前

如何为GitHub Copilot提供编码规范

作者分享如何利用GitHub Copilot的全局上下文特性,通过项目级的命名规范和代码结构来引导AI生成更准确的代码建议,并引用了官方讨论帖作为背景。
评论点赞收藏971 天前

Django Admin与服务层模式的冲突与协调

文章探讨了在Django架构中引入服务层(Service Layer)以处理复杂逻辑时,与Django Admin直接操作模型(Model)机制产生的冲突。作者指出Django Admin假设直接修改模型并调用save方法,这与服务层模式存在矛盾,需要开发者寻找解决方案来协调两者。
评论点赞收藏1097 天前

Refiner: 一个开源的文本自动润色工具

作者分享其开发的开源文本润色工具 Refiner,用于自动修正语法、风格及调整语气。作者作为非英语母语者,分享该工具如何帮助消除其写作中的“俄语口音”,提升在 Git、Jira 和 Slack 等场景下的沟通自然度。
评论点赞收藏1132 天前

从Django类视图到服务函数

作者基于个人工程经验,批评Django类视图(CBV)和Mixin导致逻辑非线性、代码混乱,主张使用函数视图(FBV)配合Service层以提高可读性。文章提供了具体的反面案例和替代方案思路。
评论点赞收藏1228 天前

参数化Pytest Fixture的技巧与场景

作者分享了在Python测试中使用pytest fixture参数化的两种主要场景:测试同一接口的不同实现,以及针对不同输入测试同一函数。文章强调了利用Python动态类型特性简化接口测试的方法。
评论点赞收藏1258 天前

登录芦苇

登录后关注作者、收藏内容和参与讨论。