ljg-constraint
Agent skill fromlijigang/ljg-skills
给一个领域、专业、角色、产品或争论找出真正框住它的几条约束,判明它们属于世界/规则/解释(硬/软/自设),看这组约束如何定义身份、补全问题、框出解空间并解释实际行为;尤其用于区分目标相同但约束不同导致的方案分歧,识别被误当硬事实的旧解释。USE WHEN 用户说 '约束', '找约束', '这个领域的约束是什么', '本质约束', '什么框住了它', '硬约束还是自设约束', '边界在哪', '这行为什么这么做', 'constraint', '/ljg-constraint', or gives any domain/profession/role/product/debate and wants its defining constraints and solution space mapped. NOT FOR 往下挖生成器(用 ljg-rank,找的是生成力不是边界)、纵向深钻一个观点到底(用 ljg-think)、拆一本书(用 ljg-book)、一个概念解剖(用 ljg-learn)。
How to install ljg-constraint
install ljg-constraint
# install the ljg-skills pack with the skills CLI
npx skills add lijigang/ljg-skills# or add only this skill to Claude Code: copy the folder
skills/ljg-constraint/
# into
~/.claude/skills/ljg-constraint/ (all projects)
.claude/skills/ljg-constraint/ (one project)
1# 约束引擎23输入一个领域、一门专业、一个角色,找出框住它的那几条约束,看清这组约束框出的解空间——以及这个解空间怎么解释它的种种行为。45## Workflow Routing67| Trigger | Workflow |8|---|---|9| 给领域、专业、角色、产品找本质约束 | 执行本文工序,写成一篇中文散文分析,保存为 Markdown 文件 |10| 分析一场方案争论为什么说不清 | 先找各方默认约束,再说明他们其实是不是同一道题 |11| 判断某条边界是真硬约束还是旧解释 | 走三层硬度和真伪定性,不急着给突破方案 |1213## Gotchas1415- 不要把约束写成普通困难、缺点或建议。约束必须能改变解空间;拿掉它,允许的行为会变。16- 不要只盯目标。同一目标在不同约束下不是同一道题;先补全题面,再谈解法。17- 不要把共识、习惯、行业话术顺手归进硬约束。硬约束要经得起"违背它是否立刻崩"这一问。18- 不要急着写"如何突破约束"。先把当前约束的真实硬度、身份边界和行为解释力写准,松动只在结尾点一句。19- 不要把身份约束和策略约束混在一起。拿掉之后还成其为自己的,不是身份约束。2021## Examples2223**Example 1: 分析一个角色**24```25User: "投资经理的约束是什么?"26-> 找出资金期限、LP 信任、信息不对称、上行/下行分配等约束27-> 说明这些约束如何逼出追热点、重共识、怕错过等行为28-> 写入 notes 里的 Markdown 文件29```3031**Example 2: 分析一场争论**32```33User: "为什么产品和增长总吵架?"34-> 先拆出双方默认约束:不能打扰用户 vs 必须提高转化35-> 说明目标看似都是做好产品,其实题面不同36-> 再解释各自方案为什么在各自约束里是理性的37```3839**Example 3: 判断旧解释**40```41User: "这个行业必须重销售吗?"42-> 先问这是世界约束、规则约束,还是行业解释43-> 查有没有别的时代、地区、玩家已经活着跨过去44-> 若跨过去仍成立,把它降级为软约束或自设约束45```4647## 约束是什么4849日常语感里,约束是负面的——束缚、不自由、不能做什么。这个引擎不这么看。5051没有约束的东西没有形状。水没有约束时无形,给它一个杯子才有了形状;一道题没有约束条件时无解,给它约束,解才从无穷里浮出来。约束不是在减少可能性,是从无穷里生出特定性。没有约束等于什么都可以,等于什么都不是;有了约束,等于只有这些可以,等于这个东西是它自己。5253问题也一样。一个问题不是只由目标构成,也由约束构成。大家都说"做一个产品",但一个人默认不能增加复杂度,另一个人默认必须追求增长,他们其实已经不在同一道题里。目标相同,约束不同,解空间就不同;解空间不同,方法之争就常常只是错位。5455所以一个事物的约束条件,就是它的身份。**约束是把无限可能坍缩成"这一个"的那组方程。** 而这组方程一旦写全,它框出的解空间就出来了——这个角色能做什么、不能做什么、最优的选择落在哪里,全被这几条约束夹定。找约束的真正回报不在清单本身,在这个解空间:**它能把这个角色的实际行为一个个解释回来。**5657**这引擎首先是描述,不是改造。** 核心问的是"当前的本质约束是什么、框出什么解空间、解释了什么行为"。"怎么办更好、哪条能松动"是第二位的事,排在后面,而且不许反过来影响前面的诊断——一急着找出口,就会看不清墙。58…
Excerpt shown under the repository's MIT license.
