在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用lisp-brackets
星标4
分支0
更新时间2026年6月9日 20:25
生成 Meta-lisp 代码时保证括号正确匹配的技术 + 验证脚本
安装
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
文件资源管理器
14 个文件SKILL.md
readonly菜单
生成 Meta-lisp 代码时保证括号正确匹配的技术 + 验证脚本
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
本项目 Scalable C 编码风格的 skill
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication and to surface assumptions.
基于 Polya《How to Solve It》的通用解题方法论。遇到复杂问题时使用。
OOP 思考框架——用自然语言的名词/动词组织代码,与点语法无关。提炼自 Sandi Metz 的 POOD 与 99 Bottles of OOP
基于 SOC 职业分类
| name | lisp-brackets |
| description | 生成 Meta-lisp 代码时保证括号正确匹配的技术 + 验证脚本 |
写出每个表达式之前,脑中确认它的括号结构属于哪种模板:
define → (define (<name> <parameter> ...) <body>),函数名和参数在同一个 () 内let / let* → 双括号绑定 ((name <exp>) ...),绑定列表外层有 ()match → 每个子句 (<pattern> <body>),pattern 自身带括号cond → 每个分支 (<question> <answer>),question 自身带括号;else 无括号begin / lambda → 单层括号包裹 bodydefine-enum → 字段列表无外层括号,每个构造器自带 ()写完后运行验证:
python3 .agents/skills/lisp-brackets/check-brackets.py <file.meta>
(define (<name> <parameter> ...)
<body>)
;; 两个开括号:define + (name parameters)
(let ((<name> <exp>) ...)
<body>)
;; 两个开括号:let + binding-list
(if <condition> <consequent> <alternative>)
;; 条件、真分支、假分支各一个表达式
(cond
(<question> <answer>)
...)
;; 每个分支是一个表达式对,没有额外双括号
;; else 是特殊 keyword,不需要包装
(match <target>
(<pattern> <body>)
...)
;; 每个子句两个表达式:pattern(自带括号)+ body
(begin
<exp> ...)
;; begin 本身不引入额外括号层级
(lambda (<parameter> ...)
<body>)
;; 两个开括号:lambda + (parameters)
(claim <name> <type>)
;; 类型为 (-> A B) 时有两层括号
(define-enum (<type-name> <type-parameter> ...)
(<constructor-name> (<field-name> <type>) ...)
...)
;; 字段列表没有外层括号
优先级策略:Lisp 代码在表达式块末尾常有大量连续闭括号(如 )))))),
括号不匹配(偏移1)的最常见原因就是末尾这些连续闭括号多一个或少一个。
收到括号错误时,首先定位到错误所在表达式块的末尾,数清楚末尾闭括号
与块首开括号是否数量对应,再按以下方式修复:
))check-brackets.py 通过let/let* 绑定列表是 ((... ...)) 双括号match 子句是 ((pattern) body)cond 的 else 没有多余括号