正文
我今年 19 岁,大二,计算机专业。半个月前我在闲鱼接了一个 ¥800 的定制单:客户是卖 GPT 提示词的,要做一个"加密分发系统",让下家能用 API 调用他的提示词但看不到明文。
接的时候我以为是个一次性外包。做完才意识到——这是一个被严重低估的产品方向。
这篇文章不讲代码细节(GitHub 上开源了),讲我从"接单"到"产品化"的思考路径,给所有想接外包但卡在"一单一单做太累"的独立开发者一个参考。
一、客户的真实痛点
客户原话:“我卖了 5 个用户,最近发现其中一个把我的 prompt 文本截图发到 Discord,问怎么改。第二天就有 3 个人在 Telegram 转卖我的提示词。我快气死了。”
第一反应是同情。第二反应是——这不就是 SaaS 的核心逻辑吗?
ChatGPT 不给你 OpenAI 的系统提示词。Midjourney 不给你它的 prompt。他们卖的是访问权,不是文件。
而独立开发者卖 prompt,绝大多数还在卖"文件"。一个文件发出去,复制粘贴成本为 0,盗版成本为 0,维权成本为无穷大。
卖访问权,不卖文件。这是商业模式的第一性原理。
二、技术方案:300 行 Python 解决
架构很简单:
[下家的 ChatBox] → [我的代理服务器] → [DeepSeek/OpenAI/Claude API] ↓ 1. 验证下家 API key 2. 从加密数据库读取 prompt 3. AES-256-GCM 解密 4. 把 prompt 作为 system message 注入 5. 转发到上游 AI 6. 流式返回给下家下家全程看到的只是一个标准的 OpenAI 兼容 API 端点。他在 ChatBox 里把 API 地址改成我的服务器,输入我给的 key,就跟用 OpenAI 一模一样。他永远看不到 prompt 文本——因为他从来就没拿到过。
技术栈:
- FastAPI+httpx异步流式
- SQLAlchemy async+aiosqlite加密存储
- AES-256-GCM加密(每次随机 nonce)
- Docker多阶段构建 + 非 root 用户 + healthcheck
- Cloudflare Tunnel内网穿透
300 行核心代码,23 个测试用例全过,端到端冒烟测试通过。
三、几个我踩过的坑
坑 1:流式响应不能 buffer
第一版我把上游响应整个await response.json()读出来再返回。下家在 ChatBox 等 8 秒看到第一个字,体验崩了。
正确做法:用httpx.AsyncClient.stream()+aiter_lines(),FastAPI 的StreamingResponse会把每个 chunk 立即 flush 给下家。第一个 token 0.3 秒到。
坑 2:不要覆盖下家的 system message
下家可能在 ChatBox 里也配了自己的 system message。我第一版是直接覆盖。结果下家投诉说他的个性化指令不生效了。
正确做法:如果下家已经发了 system message,prepend 我们的后 merge,不是覆盖。
坑 3:API key 比较不能用==
token == configured是非常数时间的,会通过时序泄露 key 长度和前缀信息。32 字符的 key 风险小,但用secrets.compare_digest是免费的正确。
坑 4:AES-GCM 的 nonce 不能复用
复用 nonce + 同一 key 在 GCM 模式下是灾难性的机密性破坏。每次加密都用secrets.token_bytes(12)生成新 nonce。
坑 5:客户在任意目录跑 pytest 都要能过
我开发时数据库文件./data/proxy.db在项目根目录,pytest fixture 没创建data/目录。客户解压 zip 到新目录跑测试直接unable to open database file。
修复:fixture 里加Path("data").mkdir(parents=True, exist_ok=True)。
四、从外包到产品的关键转变
外包思维:做完交付,拿钱走人。
产品思维:这个需求不止一个客户有,我能复制卖多少次?
我做完 ¥800 这个单后问自己三个问题:
- 这个需求是不是只有这个客户有?
不是。所有卖 prompt 的人都有这个问题。PromptBase 上 5 万个 prompt 卖家,所有人都怕盗版。 - 现有方案是不是已经很便宜?
没有。PromptBase 只卖明文,没有"加密分发"这个品类。GitHub 上有个system_prompts_leaks仓库 5 万 Star,全是被盗的 system prompt。 - 能不能做出差异化?
能。开源版(MIT)做单用户免费引流,付费版($49-249)做多用户加密 + admin 后台 + 用量统计。
结论:可以产品化。
五、海外 vs 国内的差异化策略
国内卖源码:
- 闲鱼 / 闲码头 / 程序员客栈
- 价格 ¥200-800(中国用户价格敏感)
- 卖断式(一次给钱一次给源码)
- 关键词堆叠 + 客服话术
海外卖 self-host:
- Lemon Squeezy / Payhip / Gumroad
- 价格 $49-249(海外开发者对工具付费意愿高 5-10 倍)
- License 分档(personal / team / agency)
- 长尾 SEO + Reddit 故事帖 + Dev.to 技术长文
同一份代码,两个市场,两套打法。这就是产品化思维。
六、引流闭环设计
光有产品没用,得有人看到。我设计了一个三层引流闭环:
第一层:开源引流
- GitHub 开源 Lite 版(300 行精简版)
- README 里链接到 Pro 版
- 任何对"prompt 加密"感兴趣的开发者都会找到 Lite,然后看到 Pro
第二层:技术内容
- Dev.to / Hashnode / Medium 发技术长文
- Reddit r/ChatGPTCoding / r/SideProject 发故事帖(80% 故事 + 20% 产品)
- CSDN 发中文经验帖(这篇就是)
第三层:落地页 + 收款
- Cloudflare Pages 部署英文落地页
- Lemon Squeezy 做收款 + 税务合规
- PayPal 中国做 Payhip 兜底
每一层都指向下一层。开源 Lite → 看 README → 点 Pro 链接 → 进落地页 → 点购买 → Lemon Squeezy 付款 → 拿到下载链接。
七、给独立开发者的 3 个建议
接单时永远问自己:这个需求是不是只有这一个客户有?
如果不是,你接的不是单,是市场调研。做完之后立刻产品化。卖访问权,不卖文件。
文件复制成本为 0。访问权可以撤销、可以限速、可以追踪、可以续费。这是 SaaS 和一次性的根本区别。开源 Lite + 付费 Pro 是独立开发者的最优解。
纯开源没钱赚。纯闭源没流量。开源 Lite 拿信任和 stars,付费 Pro 拿钱。Cal.com、Plausible、Umami 都是这个模式。
八、项目地址
开源 Lite 版(MIT,300 行,可直接 fork):
https://github.com/tlyyxjz/prompt-proxy-lite
付费 Pro 版(self-host,$49-249):
https://github.com/tlyyxjz/prompt-proxy-pro
如果你也在卖 prompt,或者你有类似的"客户付费拿不到明文"的场景(API key 分发、模型代理、AI 工具中台),可以参考这个架构。