OpenSpec CodingAI编程助手虽功能强大,但当需求仅存在于聊天记录中时,其行为往往难以预测。OpenSpec引入了一种轻量级的规范工作流,在实现之前锁定意图,为您提供确定性和可审查的输出结果。
OpenSpec 作为一个为AI编码助手设计的规范驱动开发工具,核心优势:
🚀 轻量级:无需API密钥,最小化设置
🔄 现有项目优先:特别适合修改现有功能 (1→n)
📋 变更跟踪:提案、任务和规范差异的完整生命周期管理
🤖 AI工具集成:支持多种主流AI编码助手
为什么需要 OpenSpec Coding传统AI编码助手的问题:当您使用AI编码助手时,是否遇到过以下情况:
❌ AI根据模糊提示生成不符合需求的代码
❌ 遗漏重要功能要求
❌ 添加了不必要的功能
❌ 代码行为不可预测
OpenSpec的解决方案OpenSpec通过规范驱动开发解决这些问题:
✅ 明确共识:在编码前确定所有要求
✅ 结构化变更:所有相关文档集中管理
✅ 可审查输出:AI根据明确规范生成代码
✅ 版本控制:完整追踪所有变更历史
安装配置 OpenSpec
准备工作
1234567891 ...
LangChain教程
未读从零开始学LangChain(二):Models 模型详解
本系列教程将带你从零开始学习LangChain框架,构建强大的AI应用程序。
什么是Models?在LangChain中,Models是指与大语言模型(LLMs)交互的接口。LangChain提供了统一的API,让你可以轻松切换不同的模型提供商,而无需修改代码。
LangChain支持两种主要的模型类型。LLM是大语言模型,接收文本字符串并返回文本字符串,适用于文本补全、翻译、摘要等场景。Chat Model是聊天模型,接收消息列表并返回消息,专为对话系统和聊天机器人设计。
核心区别在于输入输出的格式。LLM输入字符串输出字符串,而Chat Model输入消息列表输出消息对象。
LLM 使用指南LangChain提供了多种LLM的集成,包括OpenAI、Anthropic、Hugging Face等。
使用OpenAI LLM123456789101112from langchain_openai import OpenAI# 初始化LLM(使用text-davinci-003等模型)llm = OpenAI( mod ...
Python教程
未读从零开始学Python(二):Python基础语法
本系列教程将带你从零开始学习Python编程,无需任何编程基础。
什么是变量?想象一下,变量就像一个有标签的盒子。你可以在盒子里放东西,也可以随时更换里面的东西。
123456789# 创建一个名为 "name" 的变量,在里面放入 "张三"name = "张三"# 创建一个名为 "age" 的变量,在里面放入数字 25age = 25# 打印变量的值print(name)print(age)
输出会显示”张三”和”25”。
变量赋值在Python中,使用=符号给变量赋值。注意:=不是数学中的”等于”,而是”赋值给”的意思。
1234x = 10 # 将数字10赋值给变量xy = 20 # 将数字20赋值给变量yprint(x) # 输出:10print(y) # 输出:20
更改变量的值你可以随时更改变量中的值,就像更换盒子里的东西。
12345score = 80print(score) # 输出:80score = 95print(score) # 输出:95
变量命名规则给变 ...
LangChain教程
未读从零开始学LangChain(一):LangChain简介与环境搭建
本系列教程将带你从零开始学习LangChain框架,构建强大的AI应用程序。
什么是LangChain?LangChain是一个强大的框架,用于开发由大型语言模型(LLMs)驱动的应用程序。
想象一下,LLM就像一个超级聪明的大脑,但它需要手脚才能真正做事。LangChain就是为这个大脑提供”手脚”的工具集。
LangChain的核心价值主要体现在几个方面:提供标准化接口统一不同LLM提供商的调用方式,支持链式调用将多个操作串联形成复杂工作流,能够集成外部工具如搜索引擎和数据库,提供对话历史的持久化存储,以及适用于聊天机器人、文档问答、代码生成等多种应用场景。
LangChain的核心组件LangChain由几个核心组件构成。Models负责调用各种LLM,相当于大脑;Prompts用于管理和优化提示词,代表思考方式;Chains串联多个操作,形成工作流程;Memory存储对话历史,提供记忆力;Agents负责自主决策和工具使用,扮演自主助手角色;Tools连接外部服务,就像是手和脚。
环境准备在开始之前,确保你 ...
Python教程
未读从零开始学Python(一):Python简介与环境搭建
本系列教程将带你从零开始学习Python编程,无需任何编程基础。
什么是Python?Python是一种高级编程语言,由荷兰程序员Guido van Rossum在1991年创建。它的名字来源于英国喜剧团体”Monty Python”(蒙提·派森),而不是蟒蛇。
为什么选择Python?想象一下,如果你要用一种语言和世界各地的朋友交流,你会选择一种语法简单、表达清晰、容易学习的语言。Python就是编程世界的这种语言。
Python语法接近英语,即使没有编程基础也能快速理解。从网站开发到人工智能,从数据分析到自动化办公,Python功能强大无所不能。全球有数百万Python开发者,社区活跃遇到问题很容易找到解决方案。Python跨平台,无论是Windows、Mac还是Linux都能运行。
Python的应用领域Python在网站开发领域应用广泛,YouTube、Instagram、豆瓣都使用Python构建。在数据科学方面,Python是数据分析、机器学习、人工智能的首选语言。自动化办公、爬虫、测试脚本也是Python的强项。 ...
AIGC
未读年终总结格式大概长这样:开头,写几句“这一年我在和公司一起奋斗”之类的话。中间,把12个月的月报汇总一下。结尾,写成长和不足,以及对未来的展望。
Quick Start12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455# 角色:经验丰富的XX(你的职位/工种)- 你是一个两年半经验的XX,工作认真细致,善于总结和归纳,能结合市场环境、公司状况以及实际工作内容,做出分析总结,指出自己的闪光点和进步方向。# 任务:攥写年终总结- 按照框架要求,运用自身能力及附件内容,写出总结,以markdown的形式返回,最好图文并茂。- 可参考公司官网url,公众号,以及内部知识库{{2025年度XX部门月报}}{{2025年度XX部门会议纪要}}。# 总结框架:- 部分1. 提纲挈领的描述所在公司这一年的状态,点出我与公司的关系,为正式总结做铺垫。例如“过去一年,市场发生了XX变化,我们的行业也随着XX,我司/我部门在XXX的领导下,秉持XXX的战 ...
FastAPI 项目配置此文件为使用 Claude Code 进行 FastAPI Web 应用开发提供具体指导。
项目概述这是一个为现代API开发优化的FastAPI应用项目,具有自动文档生成、类型提示和异步支持功能。
FastAPI 专用开发命令项目管理
uvicorn app.main:app --reload - 启动带自动重载的开发服务器
uvicorn app.main:app --host 0.0.0.0 --port 8000 - 在所有接口上启动服务器
uvicorn app.main:app --workers 4 - 启动多进程服务器
数据库管理
alembic init alembic - 初始化 Alembic 迁移
alembic revision --autogenerate -m "message" - 创建迁移
alembic upgrade head - 应用迁移
alembic downgrade -1 - 回滚一个迁移
开发工具
python -m pytest - 运行测试
python -m pytest --cov=app - 运行带覆 ...
FastAPI 项目配置此文件为使用 Claude Code 进行 FastAPI Web 应用开发提供具体指导。
项目概述这是一个为现代API开发优化的FastAPI应用项目,具有自动文档生成、类型提示和异步支持功能。
FastAPI 专用开发命令项目管理
uvicorn app.main:app --reload - 启动带自动重载的开发服务器
uvicorn app.main:app --host 0.0.0.0 --port 8000 - 在所有接口上启动服务器
uvicorn app.main:app --workers 4 - 启动多进程服务器
数据库管理
alembic init alembic - 初始化 Alembic 迁移
alembic revision --autogenerate -m "message" - 创建迁移
alembic upgrade head - 应用迁移
alembic downgrade -1 - 回滚一个迁移
开发工具
python -m pytest - 运行测试
python -m pytest --cov=app - 运行带覆 ...
最常用Skill清单at-dispatch-v2底层开发工具,专门用来把 PyTorch 的 AT_DISPATCH 宏转换为新版 v2 格式。如果你在做 ATen C++ 代码迁移、写 CUDA 内核,这个能帮你自动处理调度宏的升级。
add-unit-support自动分析源代码并生成完整的测试用例。它会覆盖边界条件、错误场景和异常情况,还能识别代码中未测试的部分。
skill-writer帮写符合规范的 SKILL.md 文件。包括 YAML 元数据配置、目录结构规范、最佳实践这些。正文控制在 500 行以内,复杂内容分拆到子文件,这些它都会指导你。
docstring自动为代码生成标准化的文档字符串和注释。它会分析代码上下文,理解函数的输入输出、副作用和异常情况,然后生成有意义的文档。
skill-creator通过交互式对话引导你创建 Skills。和 skill-writer 不同,skill-writer 是给你规范让你自己写,skill-creator 是一步步问你问题,最后自动生成完整的 Skill。适合新手,不用记那么多规范。
skill-installer一键安装 ...
Spec Coding 使用巧用 Spec-Kit,把AI训练成靠谱工程师!
Vibe Coding VS Spec Coding
Vibe Coding: 靠感觉、靠默契、反复试错,在跟AI的不断拉扯中勉强推进的开发模式,就是现在最火的—— “Vibe Coding”(感觉式编程)
在小项目里跑跑还行,项目复杂、团队一扩大,各种弊端就全暴露了:
需求理解全靠猜:AI常常“会错意”,做出来的东西跟想的完全是两码事。
技术选型像开盲盒:AI可能随手就选个你完全不熟的技术栈,后续维护火葬场。
代码质量堪忧:生成的代码能跑,但结构乱七八糟,别说交接了,自己看都费劲。
协作基本为零:除了你和AI,没人知道这功能是怎么“感觉”出来的,新同事来了只能干瞪眼。
结果呢?我们把大把时间都浪费在了跟AI的反复沟通和修改上,而不是真正地创造价值。
Spec Coding(规范式编程): 既能用上AI的超能力,又能保证软件开发的工程质量和确定性,正在掀起一场AI编程的范式革命。
Spec-Kit是啥?从“代码为王”到“规范为王”,Spec-Kit不是一个新的AI编程工具,它是一套工作流和方法论。它 ...
角色设定:1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374你是一位世界级的 Creative Technologist,精通 Three.js (WebGL)、GLSL 着色器逻辑以及 Google MediaPipe 计算机视觉集成。任务目标:请编写一个单文件 ( Single-File ) 的 HTML 项目,文件名为圣诞树。该项目必须包含完整的 HTML 结构、CSS 样式和基于 ES Module 的 JavaScript 代码。核心技术栈约束 (必须严格遵守):依赖管理: 使用 `<script type="importmap">` 引入:three: https://cdn.jsdelivr.net/npm/three@0.160.0/build/three.module.jsthree/addons/: https://cdn.j ...
14条原则1. 想清楚 + prompt > 一切
好的 prompt 来自对需求的清晰思考
2.脚手架 > 模型
系统架构比用哪个模型更重要
3.尽可能确定性
AI 是概率性的,但你的基础设施不该是
4.代码优先于提示
能用脚本解决,就别用 AI
5.规范/测试/评估优先
动手之前,先写规范和测试
6.UNIX 哲学
做好一件事,让工具可组合
7.工程/SRE 原则
像对待生产软件一样对待 AI 基础设施
**8.命令行优先 **
CLI 比 GUI 更快、更好脚本化、更稳
9.决策层级
目标 → 代码 → 命令行 → 提示 → 智能体
10.自更新系统
系统能改自己,学过的东西不会忘
11.定制化技能管理
模块化能力,智能路由
12.定制化历史系统
值得记的东西都会被存下来
13.定制化智能体个性
不同的活需要不同的干法
14.科学认知循环
假设 → 实验 → 测量 → 迭代
原则 1:想清楚 + prompt > 一切这是所有原则的地基。重点是:想清楚问题, 谋定而后动。AI 是 ...
前言:自媒体人的痛点你是否每天花2-3小时在各个平台找热点?整理选题到深夜?发文时发现已经过气?
据行业调研:
📊 自媒体人平均每天浪费3小时在重复劳动上
⏰ 70%的热点在发布后2小时内失去流量红利
😫 85%的创作者没有系统化的工作流
解决方案:OpenClaw + 飞书 + QQ 自动化工作流本文将带你从零搭建一套完整的自媒体生产系统,实现:
🔥 自动采集多平台热点(微博、知乎、推特等)
🎯 智能推荐个性化选题
✍️ AI辅助内容创作
📤 一键发布到多个平台
效率提升500%,让你专注于创作本身。
技术栈介绍OpenClaw本地 AI Agent 框架,支持:
多模型接入(GPT、Claude、本地模型)
灵活的工作流编排
丰富的插件生态
飞书
企业级协作平台
开放的 API 接口
多维表格、文档、机器人
QQ
社交媒体分发渠道
机器人接口
群聊自动化
第一部分:环境准备1.1 系统要求
操作系统: macOS 12.0+
Node.js: v18.0+
Python: 3.9+
内存: 至少 8GB RAM
1.2 基础工具安装123456789 ...
docker
未读docker 下 的单节点 redis 安装及配置远程连接。
Quick Start获取 redis 镜像123docker pull redis
挂载外部配置文件和安装创建目录及 redis 配置文件。
1234567891011# 创建配置目录mkdir -p /home/docker/redis/conf# 创建数据目录mkdir -p /home/docker/redis/data# 进入redis目录cd /home/docker/redis# 获取redis默认配置文件到本地wget https://raw.githubusercontent.com/antirez/redis/4.0/redis.conf -O conf/redis.conf
修改 redis 配置文件编辑conf/redis.conf的文件,修改配置参数。
12345678910#守护进程daemonize no#注释 bind 参数#bind 0.0.0.0#关闭保护模式,以便外部服务器可访问protected-mode no#设置口令,redis连接密码requirepass 123456
...
联通万兆光猫(型号:TEWA-1010E)破解高级权限,并修改桥接模式。
Quick Start1. 打开浏览器访问光猫使用Chrome等 Webkit 内核浏览器,打开地址: http://192.168.1.1/,进入光猫。然后打开浏览器的开发者工具,操作内容如下图:
2. 将隐藏的用户账号输入框打开通过上一步打开后的开发者工具视图,点击进入 Elements 的 Tab 页, 找到网页元素 id 为 user_name 的输入框,并将隐藏的用户名输入框控制样式关闭,操作内容如下图:
3. 将原 JS 验证登录的函数替换点击进入Sources栏,再点击打开左侧的index,然后查找关键字 “请输入正确的用户账户!”,复制下方的代码后,进入 Console 的 Tab 页后回车执行,操作内容如下图:
123456789101112131415161718function onlogin() { var loginForm = document.forms[0]; with(loginForm){ if(password.value.length &l ...
Markdown 格式的技术文档写作规范。
目录
标题
文本
段落
数值
标点符号
文档体系
Markdown 中文技术文档写作规范将经常使用 Markdown 格式书写的博客、工作总结汇报、技术阶段文档等,形成一致的文档规范风格。
标题层级标题分为四级。
一级标题:文章的标题
二级标题:文章主要部分的大标题
三级标题:二级标题下面一级的小标题
四级标题:三级标题下面某一方面的小标题
下面是示例:
1234567# 一级标题## 二级标题### 三级标题#### 四级标题
原则
一级标题下,不能直接出现三级标题。
示例:下面的文章结构,缺少二级标题。
123# 一级标题### 三级标题
标题要避免孤立编号(即同级标题只有一个)。
示例:下面的文章结构,二级标题 A只包含一个三级标题,完全可以省略三级标题 A。
12345## 二级标题 A### 三级标题 A## 二级标题 B
下级标题不重复上一级标题的名字。
示例:下面的文章结构,二级标题与下属的三级标题同名,建议避免。
123## 概述### 概述
谨慎使用四级标题,尽量避免出现,保持层级简单,防止出现 ...
中文文案写作、排版风格规范。
目录
空格
标点、数字、符号
字、词、句
内容
中文文案排版规范统一文案及排版风格,降低团队间沟通成本。
空格中英文之间加空格正确示例:
在 Python 中,我们使用 class 关键字来声明类。
错误示例:
在Python中,我们使用class关键字来声明类。 在 Python中,我们使用 class关键字来声明类。
中文与数字之间加空格正确示例:
他只用了 100 行不到的代码就实现了那个复杂的功能。
错误示例:
他只用了100行不到的代码就实现了那个复杂的功能。
数字与英文单位之间加空格、与符号单位之间不加空格正确示例:
我有一块 512 GB 的硬盘。 今天气温 23˚C,有 70% 的可能性下雨。
错误示例:
我有一块 512GB 的硬盘。 今天气温 23 ˚C,有 70 % 的可能性下雨。
全角标点与其它字符之间不加空格正确示例:
他有一台 Mac。
错误示例:
他有一台 Mac 。
中文与英文半角符号之间加空格正确示例:
很多人都在学习 C++ 这门语言。 count-- 表示给 count ...
排查 Java 程序 CPU 100% 问题,三种方式:jvm工具、show-busy-java-threads脚本、Arthas
方式一:(不借助第三方工具排查方法)1. 首先top查看cpu占用资源最高的java进程12# 查看top进程情况,拿到占用cpu最多的java进程pidtop
2. 通过上一步定位拿到的进程pid,继续查看进程下cpu占用率最高的线程编号1234# 拿到进程下cpu占用率最高的线程编号(1094 为第一步拿到的进程pid)top -Hp 1094
3. 将拿到的线程编号,转换为 16 进制123456# 获取到的线程编号,转换为16进制(1103 为上一步获取到的线程编号)printf "%x\n" 1103# 拿到转换后的16进制值为:44f
4. 通过jstack定位信息
线程的几种状态说明:NEW,未启动的。不会出现在Dump中。RUNNABLE,在虚拟机内执行的。BLOCKED,受阻塞并等待监视器锁。WATING,无限期等待另一个线程执行特定操作。TIMED_WATING,有时限的等待另一个线程的特定操作。TERMINATED,已退出的 ...
python
未读Mac下安装Python3环境,并配置开发环境及如何卸载
Quick Start下载Python3环境包
安装包下载地址,当前配置环境时的最新稳定版为3.8.1: windows:下载地址 mac: linux:
检查系统是否已经安装, Mac系统为例12345# 打开控制台, 查看安装的python版本python --version# 默认正常输出版本,应该是系统默认的python2版本,可忽略继续安装python3
安装
Mac系统两种安装方式,第一种基于以上下载的安装包直接安装即可; 第二种方式使用brew方式,看个人喜好(为了统一管理mac系统依赖,我们使用第二种);
1234567891011121314151617181920#1) 安装brew install python3# 2) 手动执行一下安装时未完成的创建连接:brew link python3# 3)配置环境变量vim ~/.bash_profileexport PYTHONPATH=/usr/local/Cellar/python/3.8.1 #设置为python3安装的路径expor ...
Docker
未读Mac下 安装 Docker,以docker desktop方式安装为例
Quick Start安装Docker前准备工作,以Mac为例Centos7 下 Docker 安装方式
首先,下载安装Docker Desktop for Mac[https://hub.docker.com/editions/community/docker-ce-desktop-mac](https://hub.docker.com/editions/community/docker-ce-desktop-mac 下载地址)
1234#查看当前内核版本uname -r
使用root登录系统,更新yum数据源为最新1234#更新yum源sudo yum update
卸载旧版本(如果安装过旧版本的话)12345678910111213#卸载sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ ...


