SuperAPI AI 工具集

file-handler

通用与其它

查看项目

更新于 10-16 03:16

技能介绍

用途:为仓库内各技能提供统一的本地产物存储约定,避免每个技能各自发明缓存目录。所有文件存放在 .skillz/<type>/<slug> 树下,<type> 按用途分组(如 note、plan、draft、log),<slug> 为文件名。

主要能力:通过 scripts/skillz.sh 提供三个子命令。save_file <type> <slug> [content] 写入文件,省略 content 时从 stdin 读取,自动创建父目录并打印解析后的路径;get_file <type> <slug> 输出文件内容;search_files <query> [--type <type>] 先按标题做不区分大小写的文件名匹配,再对正文做 grep 搜索,输出分节显示,正文命中为 <path>:<line>:<text> 格式。

使用方式:保存内容可写 scripts/skillz.sh save_file note todo "things to do",多行内容建议用管道 some_command | scripts/skillz.sh save_file plan release-cut,读取用 scripts/skillz.sh get_file note todo,搜索用 scripts/skillz.sh search_files todo 或 scripts/skillz.sh search_files release --type plan。默认存储根为 $PWD/.skillz,可用 SKILLZ_DIR 覆盖,例如 SKILLZ_DIR="$HOME/.local/share/skillz" scripts/skillz.sh save_file note hello "hi"。

限制:<type> 与 <slug> 会校验,不允许路径分隔符、.. 和前导点;slug 仅允许 [A-Za-z0-9._-],空格会被拒绝,非法参数退出码为 2。get_file 和 search_files 在目标或匹配不存在时退出码为 1。正文搜索使用固定字符串匹配,特殊字符按字面处理。无文件锁,并发写同一路径时后写覆盖先写。该技能仅用于技能临时空间,不应用于受版本控制的源码、配置或密钥,也不适合跨机器同步和大二进制文件。