DevLog:2025年7月22日

1、继续修改DoitWith,尝试让Trae完成编辑截止日期的功能:
完善添加和编辑截止日期的功能,在创建Todo时默认以当天为截止日期,也可自行选择截止日期,精确到天,长按每一条Todo可编辑截止日期,同样精确到天
2、Trae在修改过程中会反复验证语法是否正确,这一步应该可以提升在Xcode中构建成功的概率,减少因语法错误导致构建失败,Trae已经按上述要求添加了设置和编辑截止日期的功能,Xcode模拟器测试也已成功
3、接下来完善分组相关功能,比如点Todo界面右上角加号可以添加分组(目前已支持),在添加Todo时可以选择分组,默认放到用户创建的第一个分组里,长按每条Todo可编辑所属分组
4、Trae完成了上述需求,但应用存在一个问题,目前在创建Todo时,如果没有分组,应用中会提示请先创建分组,但点击无法创建分组,需要修改成这样:应用内预置“工作”和“生活”两个分组,在创建Todo时默认位于“工作”分组,且可以点击切换到其它分组(包含用户自行创建的分组)
5、同时给Trae提了另一个要求:以后除非我另做要求,都统一用iPhone 16模拟器来构建,但不在模拟器中进行测试,我自己会去Xcode中测试,但Trae貌似没有理会这个要求,也可能理解成了这是仅对上一条需求提的要求
6、发现Trae在构建成功后不会进行下一步,好像会卡在构建这步,即使底部的“终端”中已提示BUILD SUCCEEDED,当然可以选择“跳过”,没有任何影响
7、接下来完善TodayView,需在该界面显示截止日期为当天的Todo,可勾选完成,不需要其它长按菜单,如果没有符合要求的Todo,则该界面显示“今天没有待办事项 享受轻松的一天吧!”多次修改后未能完成,后来回想起之前Cursor在修改Today界面时,在 MainTabView.swift中,Today标签页显示的不是TodayView.swift组件,而是一个静态的“Today”文本,让Trae修改之后已经基本满足需求
8、下一步,让Trae添加Todo的删除和恢复机制,删除后进入回收站,可在设置界面进入回收站并恢复已删除的Todo,结合应用当前的功能写一个README文件
9、在Xcode中测试应用时再次出现了卡在启动界面,不进入Today界面的情况,但在Trae中进行测试时就正常,按指导清理了Xcode和模拟器缓存,但无效,之后暂时先在Trae的模拟器中进行测试
10、用Trae修正了在Today界面和Todo界面创建Todo和分组时,两个界面的数据同步问题,在其中任何一个界面创建Todo和分组时,都会同步显示在另一个界面
11、到现在已经把我在OpenRouter平台充的钱用完了,基本都是这两天在Trae中使用Claude Sonnet 4消耗的,这消耗的也太快了,当然Claude Sonnet 4的API价格比较贵也是原因之一,OpenRouter上的Claude Sonnet 4的价格是百万输入3美元,百万输出15美元,作为对比,DeepSeek-R1 0528的价格是百万输入和输出均为0.272美元
12、切换Trae的模型为Kimi-K2,先让它给应用增加回收站功能,可以集中查看已经删除的Todo条目,并且在右侧设置恢复按钮,可以恢复到这条Todo被删除时所在的分组中,Kimi-K2的表现好像还可以
13、决定让Kimi-K2来检查一下当前应用是否会在启动时卡在启动页,不进入Today界面,在对代码进行多次优化,比如优化数据加载逻辑,改进数据更新机制等等之后,在Xcode模拟器里测试应用仍然会卡在启动界面,但在Trae中测试时就可以正常使用,很奇怪
14、让Trae结合应用现有的功能,创建了一个README.md文件,放在应用文件的根目录里,今天到此结束

DevLog:2025年7月3日

1、首次测试AI编程工具Trae,接入了OpenRouter平台的Claude Sonnet 4
2、在Trae中输入应用需求后,创建项目文件夹(命名test),AI快速编写了iOS App,但我并没有进行构建测试,也不清楚是否有问题,需求:生成一个使用SwiftUI编写的对话App,可以通过该App与OpenAI兼容格式的大模型对话
3、进一步丰富了应用需求:继续完善这个App,需要允许用户添加多个大模型,并且在聊天过程中可以随时切换大模型
4、但Trae貌似陷入了死循环,不停地出现构建失败、检查问题、修复问题、再构建失败的情况,将模型切换成DeepSeek-R1之后不能直接帮我修改问题,只会分析问题可能出现在哪儿
5、用Xcode打开当前项目,提示构建失败,没注意看错误提示是啥
6、使用Trae的过程中多次收到提示“模型思考次数已达上限,请输入“继续”后获得更多结果”,且多次出现文件被截断的问题
7、注册了Apple开发者账号并且交了688

稳定使用Claude 3.7 Sonnet的方法(不免费)

Claude官方网站是出了名的难注册+易封号,我之前好不容易注册的账号第二天就被封了,即使写了申诉邮件也没有任何回应,导致我从Claude 3发布到现在一直没能用上。

但办法总比困难多,最近我综合网上的一些教程,找到了可以稳定使用Claude 3.7 Sonnet等大模型API的方法。

首先去OpenRouter网站注册账号,申请API并充值,可以用国内的信用卡充值(但是需要架梯子才能打开OpenRouter网站)。注册、登录、充值、申请API Key之后,再去AI对话客户端中添加大模型。

关于AI对话客户端,个人比较推荐在电脑端用Cherry Studio,在手机端用Chatbox,但Chatbox其实不是很好用,特别是最近还偶尔会出现不明详情的网络错误,即使更新了几个版本这种问题仍然存在。期待Cherry Studio能尽快推出手机版。

接下来说说设置方法:

Cherry Studio
设置-模型服务-OpenRouter
启动OpenRouter服务
填上API Key
API地址(默认的,不用改):https://openrouter.ai/api/v1/
模型:拉到最底下,管理,找到“Anthropic: Claude 3.7 Sonnet”并添加

Chatbox
API模式:OpenAI API兼容
名称:随便填
API域名:https://openrouter.ai/api/v1
API路径:默认的,不用改
填上API Key
模型:anthropic/claude-3.7-sonnet

建议大家在使用时打开Cherry Studio或Chatbox的联网搜索功能,Claude 3.7 Sonnet的训练数据截止到2023年年底,不知道啥时候能更新一下,如果不打开联网搜索功能,给到的结果会比较陈旧。

价格方面,OpenRouter网站上有标示,Claude 3.7 Sonnet的API价格为:
$3/M input tokens、$15/M output tokens
的确比国内常见AI的API要贵很多。

关于Claude 3.7 Sonnet、Claude 3.7 Sonnet (thinking)、Claude 3.7 Sonnet (self-moderated)三个模型的区别,我也问了下Claude 3.7 Sonnet,答曰:需要直接答案选标准版,需要了解思维过程选thinking版,需要更保守、更安全的回答选self-moderated版。

OpenRouter提供了大量的国外大模型API,比如Gemma/Gemini、Grok、Llama、Phi、GPT、Cohere、Mistral、Perplexity等等,也有来自国内的Qwen和DeepSeek,实测Gemma、Gemini、Perplexity的API都可以直接使用,但Grok、GPT无法直接使用,如果不架梯子,会报错This service is not available in your region或unsupported_country_region_territory,其它的我还没试过,有兴趣的朋友们可以试试。

最初发布于2025年3月26日