惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
C
Cybersecurity and Infrastructure Security Agency CISA
N
News and Events Feed by Topic
C
Cisco Blogs
Cisco Talos Blog
Cisco Talos Blog
A
Arctic Wolf
Scott Helme
Scott Helme
P
Palo Alto Networks Blog
S
Schneier on Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Tor Project blog
量子位
G
Google Developers Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
B
Blog RSS Feed
NISL@THU
NISL@THU
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
AWS News Blog
AWS News Blog
爱范儿
爱范儿
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
L
LINUX DO - 最新话题
Security Archives - TechRepublic
Security Archives - TechRepublic
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
S
Secure Thoughts
Cloudbric
Cloudbric
aimingoo的专栏
aimingoo的专栏
L
Lohrmann on Cybersecurity
TaoSecurity Blog
TaoSecurity Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Hacker News: Ask HN
Hacker News: Ask HN
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
有赞技术团队
有赞技术团队
S
Security @ Cisco Blogs
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Cyber Attacks, Cyber Crime and Cyber Security
G
GRAHAM CLULEY
P
Proofpoint News Feed
V
V2EX
Martin Fowler
Martin Fowler
C
CERT Recently Published Vulnerability Notes
Attack and Defense Labs
Attack and Defense Labs
C
CXSECURITY Database RSS Feed - CXSecurity.com
The Cloudflare Blog
SecWiki News
SecWiki News
罗磊的独立博客
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
小众软件
小众软件
The Last Watchdog
The Last Watchdog

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理, 企事业单位数字化的业务供需本质 – 人人都是产品经理, 医疗智能体·第1讲——医疗信息化重构:从“辅助软件”到“自主智能体”的范式转移 – 人人都是产品经理, 粉丝量就是空气!!! – 人人都是产品经理, 用户说“薯片碎了”,机器回“要买吗?”:意图识别的翻车与破局 – 人人都是产品经理, RAG召回准确率从75到90 我做对了这三件事 – 人人都是产品经理, AI大事件:Anthropic改收费、OpenAI发安全版、手术机器人纳入医保、阿里发布”秒悟” – 人人都是产品经理, Chrome 推出 Skills 新功能,Agent 重塑上网方式 – 人人都是产品经理, GitHub前创始人拿了a16z的1700万美元,做Agent时代的Git – 人人都是产品经理 拷贝或克隆其他 Flutter OH 项目到本地后无法运行 – 人人都是产品经理, 优惠券设计:优惠券创建 – 人人都是产品经理, 不用死磕文档!AI 助手 1 小时搞定飞书 CLI 安装 + 配置 + 知识库 – 人人都是产品经理, 用小龙虾做竞品分析报告:从2天到20分钟,我是怎么做到的 – 人人都是产品经理 用小龙虾做市场分析报告:搞懂这3个公式,市场规模不再靠猜 – 人人都是产品经理, 你早就在做 Harness 工程,只是不知道它叫这个名字 – 人人都是产品经理, Think Long就够?你可能想多了! – 人人都是产品经理, 货代SRM实战:供应商准入怎么做,才能让资源池不是通讯录而是可交付网络? – 人人都是产品经理, 如何做好用户调研?详解基本技巧 – 人人都是产品经理, 木鸟、途家、美团对打,平台春天行动开“卷” – 人人都是产品经理, 入职才发现公司不靠谱?小红书从业者求职避坑指南 – 人人都是产品经理, 美国 AI 三巨头联手封堵,中国 AI 突围之路在何方 – 人人都是产品经理, 小红书,放在需求对面的镜子 – 人人都是产品经理, AI 会带来大规模失业吗? – 人人都是产品经理, 从出单到补货前,我第一次犹豫:该不该放大? – 人人都是产品经理, Flutter 三方库鸿蒙化适配:5 种高效检查方式,快速判断是否需要适配 – 人人都是产品经理, 从做产品进阶拿结果:医美机构产品经理转岗科室运营经理 – 人人都是产品经理, 阿里HappyHorse,一场关于“Token经济”的阳谋 – 人人都是产品经理, To B AI:客户留存落地的观察与思考 – 人人都是产品经理, AI产品的“生命线”——数据采集、标注、清洗的产品化设计 – 人人都是产品经理, 谈谈AI Agent(二):当“孩子”能自己“体验世界”时,你该学什么? – 人人都是产品经理, UI/UX设计师的3层能力进阶,前两层让你活下来,第三层…才是真正的分水岭 – 人人都是产品经理, 2分钟 → 30秒,效率提升75%:B端产品经理如何用「规则枷锁」驯服AI幻觉? – 人人都是产品经理, 还没来得及学OpenClaw,来了个更猛的:Hermes Agent – 人人都是产品经理, AI日报:宇树机器人跑出10m/s刷新世界纪录 – 人人都是产品经理, 一文说透基金互金如何用情绪价值引导用户决策做转化 – 人人都是产品经理, 当浏览器开始替你”看”网页:AI 浏览器正在亲手拆掉它脚下的那张网 – 人人都是产品经理, 0代码,一天时间我Vibe Coding了个网站 – 人人都是产品经理, Hermes 和 OpenClaw 之争,Agent 的能力应该“装上去”还是“长出来”? – 人人都是产品经理 视频生成的“桌子”,字节Seedance 2掀完,阿里快乐马掀 – 人人都是产品经理, 从听不懂到完全信任:我的 Codex 深度产品体验 – 人人都是产品经理, 当虚拟偶像有了北京户口,与真人偶像还有什么区别? – 人人都是产品经理, 会说,远远比会做更重要 —— 对 SBTI 爆火现象的五层观察 – 人人都是产品经理, AI产品经理必看:当“搭环境”比“选模型”更重要,你的认知还在2024年吗? – 人人都是产品经理, 2026年AI产品商业化核心逻辑:从功能demo到规模化营收的3个必破卡点 – 人人都是产品经理, 京东围绕供应链,卷起裤腿下场的那些事儿 – 人人都是产品经理, SBTI一夜刷屏:它赢在了“太会说人话” – 人人都是产品经理, 折扣零售的真相:不是便宜,而是价值感! – 人人都是产品经理, 和甲方吵了一架,最后加钱做了——我学到的ToB产品经理生存法则 – 人人都是产品经理, 和几位小红书操盘手聊了8小时,干货全在这 – 人人都是产品经理, 智谱GLM-5.1登场,开源模型首超Opus4.6!!! – 人人都是产品经理 Anthropic收入凭什么反超OpenAI,终于有人把这事说清楚了 – 人人都是产品经理, 史上最有故事感的技术报告——Claude最强模型Mythos 7个极其精彩的细节 – 人人都是产品经理, 模型不是壁垒,Harness 也不是 – 人人都是产品经理, 抖音本地生活业务思考21 – 人人都是产品经理, Superpowers:145k Star的AI编码框架,到底是什么来头? Superpowers:145k Star的AI编码框架,到底是什么来头? – 人人都是产品经理, OpenAI 的路走错了,Anthropic Harness 解法启示:模型需要实践专科生 – 人人都是产品经理, 画原型图的前一步:设计站点地图 – 人人都是产品经理, 给 DeepSeek 的最后一封催更信 – 人人都是产品经理, 手把手教你用 Claude Code 搭建 AI 营销团队:5 个 Agent、12 项技能,独立完成研究、写作、设计全流程 – 人人都是产品经理, 你以为大模型在学语言?不,它在重新发明语言学 – 人人都是产品经理 所谓Skill,不过是AI时代的工业垃圾 – 人人都是产品经理, 聊一聊内容传播的几个方法 – 人人都是产品经理, 当平台开始吃掉生态:从 OpenClaw 被封杀,读懂 Anthropic 的这盘棋 – 人人都是产品经理, 你装了 10 个 AI 插件,Obsidian 还是一个文件夹 – 人人都是产品经理 关于AI智能体架构演进的系统性思考:从单体试水到多体协同的重构 – 人人都是产品经理, 当“人”变成Skill,我们又该何去何从? – 人人都是产品经理 Mythos 事件:前沿 AI 治理的意外实验 – 人人都是产品经理, 货代CRM:信用与风险管理怎么做,才能把坏账风险拦在放货之前? – 人人都是产品经理, 从HR收集自拍照到员工自助录入——我见证了园区人脸识别从”不可用”到”真好用”的全过程 – 人人都是产品经理 千问闯关AI混沌期:阿里画靶,吴嘉张弓,马云射箭? – 人人都是产品经理,
一人公司失败指北——0 代码基础AI开发简易工程化 – 人人都是产品经理
次级插件 · 2026-06-16 · via 人人都是产品经理

用AI从零开发微信小程序的理想很丰满,现实却很骨感。一个‘随手当市长’的失败案例,揭示了AI编程在环境配置、平台规则和系统验证等环节的致命短板。本文深度拆解三类典型错误与七步工程化解法,告诉你为何AI能写代码却扛不起项目成败。

一、前言

2026 年春,我用 AI 工具从零做了一款微信小程序——”随手当市长”(又名”随手造景”)。想法很简单,用户拍下路边的风景,AI 把它改造成理想画面。还煞有其事地写了句slogan:”拍下路边,AI 改造,世界本该更美好”。

最后,卒。

结合本次经历和教AI开发的公开资料,网上资料要么教配置却过于前置,要么给出“修复用户session过期后refresh token仍有效但刷新失败”之类0代码基础的人看不懂的话,要么太通用反而无从下手。

本文仅聚焦于0代码基础用AI开发的失败经历与简要的工程化措施,而不是创业全流程指南,不涉及需求、市场、商业和运营。这些与AI关系不大,难以工程化,也超出本次实践与个人能力范围。且本文并未解决AI改完代码后自动测试不理想的问题,除了换AI工具外,本人至今找不到有效措施。

二、失败类型

本章节概括失败的类型,不展开描述,不希望陷在细节里。如果描述粒度精确到具体的问题,太过繁琐,且问题和解决方式涉及代码,我看不懂,无法为文章质量负责。大家可能会遇到类似或不同的问题,但基本可以分成三层:

  1. 代码错误,代码就是错的,AI通常比较容易修。例如:中文变量名、catchtap=“”、wx:for传数字等。
  2. 系统错误,单个代码没问题、整体系统有问题,AI开始容易迷路。例如:上传修好删除坏了、修改A影响B、回归测试不足等。
  3. 环境错误,代码没问题、系统没问题、环境/配置/规则有问题,AI甚至都不知道有问题。例如:BOM、Promise运行时差异、隐私授权、云函数配置、textarea原生组件等。

2.1 方向性的错

2.1.1 核心前提不验证就开工

我最开始问 AI 的问题是:”我能用你无代码开发微信小程序吗?”这句话暗藏着一个期待“你帮我搞定一切,我不用操心”。AI的回答我也很满意,AI说:

完全可以帮你开发微信小程序,而且你不需要自己写代码。你只需要:

1.告诉我你想做什么 — 用自然语言描述你的小程序需求

2.我来负责所有代码 — 页面设计、逻辑实现、云开发配置等全包

这个承诺成了整个项目错误的起点。

小程序的核心功能只有1个:用户上传照片,AI 改造它。

我加入了小程序开发计划,可免费使用一定token额度的混元生图。我将API文档链接给它,AI 说混元 API 可以。其实我能看懂API文档,并且大概浏览过,隐约看到只支持文生图,但我的想法是“AI,让我看看你的极限”。最后开发完才发现只支持文生图。

更关键的是,我到最后才发现。微信个人主体发布的小程序,只能做普通图片编辑类功能。AI 相关的功能,要求企业主体才能发布。也就是说,即使 API 支持图生图、代码全部跑通,我也发布不了。此项严重失误与AI无关,纯粹是我只看了个人主体的服务类目包含“图片处理”,想当然的认为AI图片处理也属于“图片处理”。

2.1.2 一直在准备,从来没碰核心

开发之前,看到一篇文章,AI时代的产品迭代可能不需要遵循MVP,先让AI给出包含所有功能的产品残品再一点点优化。理由是AI写代码的速度很快,没必要先做MVP,直接做成品。

为尽可能完善,我的产品文档写了 5 个版本,等级体系从 5 档扩到 20 级再砍回 10 级,全过程纸上谈兵。一开始让AI开发全部功能,后来发现全部功能调试起来太麻烦,改完这边的问题那边又有了。终于受不了,砍掉枝叶,只做核心功能,假如全职做的话,核心功能大约也就一两天。

果然,AI时代的开发仍要先做MVP。

2.2 方法上的错

2.2.1 AI听不懂我说的话

有时自然语言和AI理解不一致。比如我将废弃地的图片改造为生态公园,我口语说“废弃地”是标签,AI认为“改造前”是标签,可以先统一语言。如果懂代码,最好直接给AI说挪动哪个元素到什么位置。如果不懂,可以问AI需要挪动哪个元素。

案例:我让AI将改造前后的名称挪到下面,这种小要求AI也改了好几次。

记得心态平稳,认清AI改不好是常态。

2.2.2 反复修改

比如按钮点不动。问 AI,它说可能是 A。改完不行。说可能是 B。还不行。再说试试 C。一个按钮搞了十几轮,此外,还有BOM 问题、旧接口被停用、格式等各种问题。

更麻烦的是,一个问题改不好,还引发了其他问题。比如修好上传,删除坏了。修好删除,上传又坏了。调好拍照页,结果页白屏。

还有同一个问题反复出现,这次改好,下次还犯。比如MEMORY.md 里写了”源码不能出现 wx.cloud”,但仍然生成了,AI工具连MEMORY.md都能忽略。

对于完全不会代码的人来说,按钮点不动、数据库连接失败、接口返回格式错误几乎没有区别,因为最终表现都是不工作。于是只能告诉 AI“还是不行”,而 AI 最怕的反馈就是“还是不行”,因为信息接近于零,它只能继续猜。

看起来 AI 在修 Bug,实际上 AI 更类似搜索答案“可能是A→不是→可能是B→不是→可能是C”,本质是穷举搜索。如果搜索空间很小,很快找到;如果搜索空间很大,AI可能永远找不到。

2.2.3 代码没问题也不行

这一类最绝望,因为出问题的时候从代码上看一切正常。 比如云函数超时,package.json里写了timeout,但实际不生效,必须在云开发控制台手动设置且至少 60 秒。微信要求后台声明用途,代码写的再好,不在微信公众平台上配置也没用。

代码写对了不等于能用,还有文件格式、工具链、平台限制、运行时环境等等一堆东西等着你。

2.3 小节

很多AI编程宣传视频给人的感觉是“想法→AI→成品”。但真实流程更像“需求→AI写代码→编译器→构建工具→平台规则→权限系统→云服务→用户设备→产品上线”。如果出bug,问题至少分为代码问题、系统问题、环境问题、平台规则问题、配置问题。AI的大量时间其实都浪费在用修代码的方法,去解决根本不是代码导致的问题。

AI时代的一个人≈传统开发的产品经理+架构师+开发工程师+测试工程师。但目前AI就算可以比较好地代替开发工程师,仍然不太能稳定代替测试、风险控制、系统验证,没有人负责持续质疑和验证

而且从头到尾,我的真实心态不是”我要创业做小程序”,更接近”我想试试AI到底能做成什么样”。

这是两种完全不同的模式。玩乐模式:你接受 AI 的乐观判断,不验证、不查资料、不去想后果——做不成就算了,反正就是试试。开发模式:你做之前先确认最关键的那个前提能不能成立,确认了再往前走。直到项目挂掉才意识到自己从来没切进开发模式。

AI 的问题是无法确认自己是否正确,人的问题是无法判断 AI 是否正确,所以不是不会解决问题,而是反复修改。AI 能写代码,但不对方向和结果负责,你必需知道 AI 替你做了哪些关键判断,以及为什么是这些判断。

三、简易工程化措施

需求、定位、市场、是否需要MVP等方向性的错误,大部分与AI无关,只能由人反复确定并负责,本文不涉及这些的解决措施。不过AI写代码本身的解决方案可以回归调试系统的思维方式,即观测 → 描述 → 猜想 → 验证 → 修改 → 沉淀 → 重置

总有人说提示词已死,但至少现在还没死。或许提示词将来会死,但如何用对方能听懂的话沟通、如何工程化约束AI仍然有效。所以本章节给出了一些提示词以供参考,可视实际情况使用或批判性吸收到自己的skills、规则等。

3.1 观测

提高可观测性,让AI在前端或日志加上报错提示,截图或复制给AI完整的提示。

3.2 描述

让AI听懂你的意图。

如果不知道元素名称,可以先问”xx页面中涉及哪些元素?标注名称“。

在沟通前,强制AI复述你的描述,确保理解一致,比如可以说“复述一遍我的需求,说明需要怎么改?等我确认。强调:禁止修改代码”。

描述包含操作、现象和期望,比如“我的操作是1、xxx;2、xxx;3、xxx。出现bug xxx。报错为xxx。期望xxx”。

提供上下文,比如“我在开发者工具打开/在网页打开/上传了云函数/使用了xx接口/最近修改了xx”。

3.3 猜想

枚举可能原因,避免直接跳入“怎么修”,比如给AI说有哪些可能原因?按概率排序。可参考如下提示词:

有bug xxx,禁止修改代码,按以下步骤诊断:

1.这个问题属于哪一类?(代码逻辑 / 页面状态 / 权限授权 / 微信平台限制 / 云环境配置 / 开发工具 / 其他问题)

2.列出所有可能的原因,按概率排序

3.4 验证

用事实驱动判断,且每一步验证都旨在缩小怀疑范围。问AI“什么证据支持这个判断?检查结果分别意味着什么?下一步检查能排除什么?”。禁止说“你觉得呢”或“下一步改什么”。人和AI相互帮助,验证修改结果。

可以在3.3小节的基础上增加以下提示词,一块使用:

1.告诉我先检查什么、为什么先检查它、怎么检查

2.告诉我检查结果分别意味着什么

3.5 修改

最小影响修改问题。

1.针对某个问题,强制让AI分析上下游影响,比如问AI哪些功能依赖它?它依赖哪些功能?如何保证仅修改此功能?可以参考如下提示词:

假如问题是xx(诊断出的问题),请按照以下约束先完成第1、2步的分析,再修复代码:

1.影响范围分析

分析根因、依赖关系、被依赖关系、如果改动可能影响的范围、最小修改方案

2.最小化修改策略

请只修改必要的那几行代码,不要重构、不要调整无关代码。

如果建议的修改涉及多个文件,请逐一说明每个文件的改动点和必要性。

3.代码与环境约束

参考错误文档xx.md,避免已经发生的错误。

4.验证要求

给出本次修改的验收标准:具体操作步骤 + 预期现象。

2.让AI单独开发测试页面,只放核心逻辑。我的小程序足足有150个独立的Python 调试脚本,涵盖测试bottom值、调试点击事件、检查详情下载按钮、截图_配色C、分析标签栏等。

3.6 沉淀

将每次踩过的坑记录下来,形成可被AI读取的文档,避免重复犯错。不要记录今天修了什么,而是记录以后禁止什么及必须干什么。建立编码规范,例如:禁止中文变量名、禁止空字符串绑定、必须处理异步错误等。建立环境问题库,例如BOM头、wx.cloud字面量、textarea遮挡、隐私授权三步等。

可以添加到MEMORY.md或单独建立BUG.md等文档。视AI工具本身的能力,按理说可以自动读取;若不能,手动强制要求调用文件。

可以参考以下提示词:

请根据本次调试经验,更新项目规范文档xx.md。只记录“以后禁止什么”和“必须做什么”,不记录具体bug经过。每一条规则应该是AI可执行的。

一些其他的约束条件,可视实际情况删改以下提示词: 请根据我们本次调试过程中遇到的问题和解决方案,进行知识沉淀,更新xx.md。

【重要原则】

1.不记录具体bug经过,只记录“以后必须遵守什么”和“以后禁止什么”。

2.每一条规则应该是AI可执行的,例如:“禁止使用中文变量名”而非“注意变量命名”。

3.区分“编码规范”和“环境/平台陷阱”,编码规范记录代码本身的问题,环境/平台陷阱记录除代码以外的系统问题、环境问题、平台规则问题、配置问题和其他问题。

3.7 重置

能改改,改不了换人。

即使你遵循上述6步流程,仍可能遇到工具本身的问题。例如,AI开始胡言乱语了;上一轮能读报错截图,下一轮说不支持查看图片;AI工具支持自动测试,但时灵时不灵。

为此,建议:

1.开启新对话,并把之前所有的报错和代码作为一个整体丢给新AI,先分析它为什么失败,有哪些可能原因,按概率排序。

给旧对话或旧AI的提示词可以参考:

禁止修改代码。我要用其他AI接力开发,根据当前对话内容,更新xx问题对应的失败记录,输出故障交接文档为”xxx.md”。 文档必须包含以下章节:

1.问题描述(原始现象、操作步骤、期望结果)

2.环境信息(如微信开发者工具版本、基础库、真机/模拟器;如果对话中未提供,标注“待补充”)

3.已尝试的方案(按时间顺序列出:每次修改了什么、结果如何、失败现象、排除了什么可能性)

4.当前状态(最后一次尝试后的代码状态、控制台输出)

给新对话或新AI的提示词可以参考:

xxx文件是源代码,xx文件是项目记忆,xx文件是xx。重要强调:xx文件是之前的失败调试记录,它是第三方提交的故障报告,不是事实。你的任务不是继续执行它的方案,而是审查它。请总结已试过的不行方案,然后给出新的诊断方向:

1.这个问题属于哪一类?(代码逻辑 / 页面状态 / 权限授权 / 微信平台限制 / 云环境配置 / 开发工具 / 其他问题)

2.列出所有可能的原因,按概率排序

3.告诉我先检查什么、怎么检查

4.告诉我检查结果分别意味着什么

2.建立工具备用机制,当某个工具反复出现异常行为,切换到另一个工具(有次我从workbuddy切到trae,一次就修复bug了。不过这是当前AI工具的普遍现状,可能从trae切到workbuddy也能一次性修复。这里不做工具推荐),不要在同一工具上死磕。

3.在个人消费水平内选择相对稳定的工具,并关注其更新日志。吃点好的吧。

3.8 小节

1.“3.4 验证”章节,我写的是让AI告诉用户如何验证,一是强制约束AI完善思考,二是指导用户看报错,对于没有编码基础的人,控制台那么多信息,都不知道看什么。按理说AI工具本身有自动化测试,可以承担验证的工作。但从事实来看,不尽人意。

2.就算AI给出了猜想或方案,0代码基础的人也看懂。所以无论是猜想,还是验证、修改,都是约束AI的,类似让迷雾中的人三思而后行。如果您有代码基础,没必要完全按照这个思路,尽可能先自行分析或判断。

3.按我实际使用的体验,以上提示词确实可以节省返工时间,但需要人主动“教”AI,显得有些累,而且有些问题可以一次性修复。所以,建议第一次按自己的习惯和AI沟通,比如说“出现了xx问题,现象为xx,应该xx,报错如下xx”,修复失败再使用以上提示词。

4.真正有价值的不是提示词本身,而是背后的工程原则,提示词可能会过时,但工程原则不会。用 AI 做产品,不需要学编程,而是需要学需求拆解、产品设计、AI协作、测试验证。分清楚什么交给 AI,什么自己把关。代码本身的事(样式、布局、普通代码实现)交给 AI,其他的事(可行性、接口能力、平台规则、成本、权限)建议自己二次确认。在做之前问自己一个问题:如果 AI 搞错了这件事,我会不会白干好几周?会,就自己查。不会,就交给 AI。

5.记住一个原则:用 AI 必疑,疑 AI 方用。不要把思考外包给AI。

四、后记

最初的想法很简单,随便玩玩,不成也罢,有了想法直接开发,没经过认真的调研。虽然开发时间整体加起来约一周,但每天做一点,零零散散也用了一个多月。失败虽然意料之中,难免遗憾。其实AI照片改造的最佳形态并非独立小程序,而是手机系统级相册的内置功能,或是由大模型将用户语音转化为相机参数直接拍照。既然创业未半而中道崩殂,且作留白。

本文希望能为“一人公司”降降温,很多鼓吹一人公司的人,本质上是在售卖 Token 以收取 AI 时代的地租,或者是兜售焦虑的卖课商。对于“一人公司”而言,AI写代码是最简单的,代码之外的市场、获客、营销等传统的工作反而是重点。

秉承互联网的开源精神,也为纪念这次失败实践,我将本项目的原型截图开源(因内含敏感信息,且至今仍有bug,无法为 AI 生成的质量背书,源码不予公开)。若能对您的产品有所启发,就感谢热心网友吧。

附录一:原型截图

https://mp.weixin.qq.com/s/lLkS53XbprHG7dXFH0zhxQ

附录二:具体错误归类

重要声明:我没有任何编程基础。下表由 AI 根据开发记录整理,请自行判断准确性。

API / 服务配置

1. 混元 API Version 参数问题 混元 API 的 Version 参数不能用当前最新日期。 → 解法:必须固定设为 2023-09-01。

2. 区域参数缺失问题 没传区域参数导致接口调不通。 → 解法:请求头必须加 X-TC-Region: ap-guangzhou,混元仅支持广州区域。

3. 图片 Base64 前缀问题 上传图片时带了 data:image/jpeg;base64, 前缀,API 解码失败。 → 解法:ContentImage 字段必须传纯 Base64 字符串,去掉前缀。

4. 结果图片字段取错问题 查询结果后拿不到图片数据。 → 解法:结果图片在 ResultImage 数组中,取第 0 项 ResultImage[0] 即可。

5. 分辨率参数格式问题 分别传 Width 和 Height 不生效。 → 解法:改用字符串格式 Resolution: ‘768:1024’。

6. JobStatusCode 类型误判问题 把 JobStatusCode 当数字判断状态,导致全部误判。 → 解法:它是字符串类型——’1′ 等待中、’2′ 运行中、’4′ 失败、’5′ 完成。

7. 云函数超时设置问题 在 package.json 里配置了超时时间,实际不生效。 → 解法:必须在云开发控制台手动设置超时时间,建议 60 秒以上。

8. 服务未开通就调接口问题 云服务账户未开通就开始调接口,返回”未开通”错误。 → 解法:先到云平台控制台开通对应服务,再写代码调用。

微信 API / 权限

9. 选图接口已废弃问题 旧接口 wx.chooseImage 从基础库 2.21.0 起已废弃。 → 解法:换成新接口 wx.chooseMedia,注意返回值字段不同(res.tempFiles[0].tempFilePath)。

10. 隐私用途未声明问题 未在微信后台声明隐私用途,选图直接 fail,错误码 112。 → 解法:进入微信后台 → 设置 → 服务内容声明 → 用户隐私保护指引,声明”选中的照片或视频信息”。

11. 未处理隐私授权弹窗问题 代码中没有处理隐私授权弹窗,新用户 100% 失败。 → 解法:配置文件加 __usePrivacyCheck__: true;入口文件注册 wx.onNeedPrivacyAuthorization。

12. 隐私弹窗被拒后重试问题 隐私弹窗被拒后 10 秒内再次调用,直接报错不弹窗。 → 解法:考虑引导用户手动开启授权,或延长重试间隔。

13. 个人主体无法做 AI 功能问题 微信个人主体只能发布图片处理类小程序,AI 图生图要求企业主体。 → 解法:开发前先确认微信服务类目是否支持你的核心功能,必要时注册企业主体。

14. 认证费用未考虑问题 个人小程序认证需 30 元/年,不是免费的。 → 解法:开发前确认认证费用,计入项目成本。

15. 小程序名称敏感问题 名称含”市长”字样,只有政府机构才能使用。 → 解法:开发前查阅微信小程序命名规范,确认名称是否可用。

代码生成 / 编译器限制

16. 文件 BOM 问题 PowerShell 的 Set-Content -Encoding UTF8 存的文件自带 BOM(0xEF 0xBB 0xBF),WXSS 编译器不兼容。 → 解法:用 Python 的 open(path, ‘w’, encoding=’utf-8′) 写入源码文件。

17. wx.cloud 字面量扫描问题 源码中出现 wx.cloud.database() 字面量,编译直接崩溃。 → 解法:改用间接引用 wx[‘cl’ + ‘oud’].database()。

18. Promise 导致页面注册失败问题 .then / .catch 链式调用导致 Page 注册静默失败,按钮无反应且 Console 零日志。 → 解法:所有异步操作全部改为纯回调 success / fail 写法。

19. 中文标识符编译报错问题 AI 生成的中文变量名或函数名(如 var 用户数据 = {})导致编译报错。 → 解法:变量名和函数名全部使用英文。

20. catchtap 为空字符串问题 catchtap=”” 是非法写法。 → 解法:绑定真实函数名,或者直接删除该属性。

21. wx:for 传了数字问题 wx:for 绑定了一个数字而非数组。 → 解法:wx:for 必须遍历数组,需要先把数字转成数组。

22. CSS inset 简写不兼容问题 CSS 中用 inset: 0 简写,小程序不支持。 → 解法:四个方向分别写:top:0; right:0; bottom:0; left:0。

23. textarea 原生组件遮挡问题 textarea 是原生组件,z-index 对它无效,会遮挡底部按钮导致点击穿透。 → 解法:底部按钮容器用 position: absolute 脱离原生组件层级。

本文由 @次级插件 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议