尧图精选

Context7 CLI skills 子命令详解:AI 编码技能的安装、搜索、推荐与 AI 生成

🕒 发布时间:2026/9/5 16:22:42 📁 来源:尧图网络
Context7 CLI skills 子命令详解AI 编码技能的安装、搜索、推荐与 AI 生成【免费下载链接】context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors项目地址: https://gitcode.com/gh_mirrors/co/context7Context7 CLIctx7除了拉取最新的库文档之外还内置了一组skills子命令用于从 Context7 注册表或任意 GitHub 仓库中发现、安装、推荐和生成 AI 编码技能Skills。本文基于仓库内的官方参考文档 skills.md 和 CLI 源码 skill.ts 展开覆盖install、search、suggest、generate、list、remove、info全部子命令的用法与标志位并结合源码剖析技能解析、提示注入防护、符号链接安装机制与配额控制等底层实现。读完本文你可以熟练使用ctx7 skills管理面向 Claude Code、Cursor、Amp、Codex 等编码代理的技能库并理解其内部工作流程。需要先说明一个仓库当前代码中的事实skill.ts 顶部定义了弃用警告SKILL_HUB_DEPRECATION_WARNING Warning: Skill commands are deprecated and will stop working in the next major release.且该命令树注册为hidden。也就是说ctx7 skills ...目前处于兼容窗口期仍可使用但将在下一个大版本停止工作。文中所有用法以当前仓库代码为准。Skill 是什么Skill 是一组 Markdown 文件用来教会 AI 编码代理针对特定库或任务的最佳实践、模式和流程。每个技能通常是一个目录核心是SKILL.md——本仓库自身就内置了多个技能作为范例如 context7-cli、context7-mcp 等。技能安装到编码代理约定的目录后代理在会话中会自动加载它们从而获得关于特定技术栈的领域专家能力。skills命令家族一览均来自 skill.ts 的命令注册代码ctx7 skills install /owner/repo # 从仓库安装别名: si, i, add ctx7 skills search keywords # 搜索注册表别名: ss, s ctx7 skills suggest # 基于项目依赖推荐别名: ssg ctx7 skills generate # AI 生成自定义技能别名: gen, g需登录 ctx7 skills list # 查看已安装技能别名: ls支持 --json ctx7 skills remove name # 卸载技能别名: rm, delete ctx7 skills info /owner/repo # 预览仓库中的技能Install从 GitHub 仓库安装技能仓库格式固定为/owner/repo源码 parse-input.ts 也接受完整 GitHub URL。三种基本用法ctx7 skills install /anthropics/skills # 交互式——从列表中选择 ctx7 skills install /anthropics/skills pdf # 按名称安装指定技能 ctx7 skills install /anthropics/skills --all # 不提示全部安装安装流程的源码行为skill.tsinstallCommand比文档描述更细致两级解析先调用getSkill/listProjectSkills从 Context7 注册表拉取如果注册表里没有结果自动降级为从 GitHub 直接抓取getSkillFromGitHub/listSkillsFromGitHub因此未索引的公开仓库同样可以安装。提示注入防护注册表在索引时会做安全检查。若某个技能命中prompt_injection_detectedCLI 会直接拒绝安装并提示contains potentially malicious content批量拉取时被拦截的技能以blockedSkillsCount汇总提示X skill(s) blocked due to prompt injection and not shown。交互式选择不指定技能名且未加--all时CLI 渲染一个带悬停预览的复选框列表每个条目展示 Popularity安装量区间、Trust信任分trustScore保留一位小数、描述以及可点击的终端超链接OSC 8。列表按installCount降序排列——从源码排序逻辑(b.installCount ?? 0) - (a.installCount ?? 0)可以看出安装量最高的技能排最前。选择安装目标确认技能后promptForInstallTargets会询问写入哪些代理目录、项目级还是全局除非已通过 IDE 标志显式指定。指向特定 IDE 与全局安装ctx7 skills install /anthropics/skills pdf --claude # 仅 Claude Code ctx7 skills install /anthropics/skills pdf --cursor # 仅 Cursor ctx7 skills install /anthropics/skills pdf --universal # 通用目录 .agents/skills/ ctx7 skills install /anthropics/skills --all --global # 全部技能全局安装安装后的落盘方式值得注意installer.ts第一个目标目录写入真实文件installSkillFiles逐个写入技能包含的每个文件并做了目录穿越防护——任何解析后跳出技能目录的file.path会直接抛错其余目标目录则通过symlinkSkill创建符号链接指向主目录避免同一技能多份拷贝且卸载时只删主目录即可。此外--global会把基础目录从process.cwd()切换为主目录全局模式权限不足EACCES/EPERM时 CLI 会捕获错误并提示用sudo chown -R $(whoami)修复对应父目录。install还支持文档未展开的两个标志--all-agents安装到所有受支持的代理位置和-y, --yes跳过确认提示。Search按关键词搜索整个注册表ctx7 skills search pdf ctx7 skills search typescript testing ctx7 skills search react nextjs搜索跨整个注册表索引的仓库展示带安装量与信任分的交互列表选中后直接进入安装流程选择目标目录 → 下载 → 落盘与 install 共用同一套逻辑。结果条目中的Installs列使用formatInstallRange渲染为区间值Trust列低于 0 或无值时显示为-。搜索结果为空时提示No skills found matching query网络失败时给出连接错误信息。Suggest基于项目依赖自动推荐ctx7 skills suggest # 扫描当前项目安装到项目 ctx7 skills suggest --global # 安装建议到全局 ctx7 skills suggest --claude # 仅面向 Claude Code官方文档说明会读取package.json、requirements.txt、pyproject.toml、Cargo.toml、go.mod、Gemfile。从源码结构看客户端本地解析实现在 deps.ts 的detectProjectDependencies目前确认覆盖三种生态package.json合并dependencies与devDependencies本地过滤掉types/前缀的包注释标明完整的 SKIP_SET 在后台requirements.txt跳过空行、注释与-开头的行按版本约束符!~;\s[等切分出包名pyproject.toml同时支持 PEP 621 的[project] dependencies数组与 Poetry 的[tool.poetry.dependencies]段并排除python本身。其他生态Rust/Go/Ruby的文件按文档描述在建议链路中生效——suggest命令会把本地检测到的依赖列表连同访问令牌一起发送给后台suggestSkills(deps, accessToken)由服务端完成匹配。推荐结果列表除了 Popularity/Trust 外还多出一列RelevantmatchedDep高亮展示该技能匹配到的具体依赖项。若本地未检测到任何依赖命令会提示No dependencies detected并回退建议ctx7 skills search keyword。值得注意的是源码中suggest会先调用getValidAccessToken()获取令牌即使未登录也会尝试匿名令牌请求。GenerateAI 生成自定义技能需要登录ctx7 skills generate # 生成并交互式安装 ctx7 skills generate --claude # 直接装入 Claude Code ctx7 skills generate --global # 装入全局技能目录 ctx7 skills generate -o dir # 指定输出目录源码支持generate是唯一的强制登录子命令完整交互流程源码见 generate.tsgenerateCommand登录与配额检查无有效令牌时自动触发 OAuth 登录performLogin。随后调用getSkillQuota检查周配额若quota.remaining 1则显示Weekly skill generation limit reached、已用量used/limit、重置日期免费账户会提示升级 Pro10 次/周。官方配额为免费账户 6 次/周Pro 账户 10 次/周后台还可能出现unlimited层级。描述专长input提示输入例如 OAuth authentication with NextAuth.js。CLI 会现场给出正反示例——Skill 应编码最佳实践、约束与决策而不是逐步教程或一次性任务如 ✕ Deploy a Next.js app to Vercel / ✓ Best practices and constraints for deploying Next.js apps to Vercel。选择来源searchLibraries用描述检索 Context7 库展示最多前 5 个结果含来源仓库、Snippets 数量、GitHub 来源的 Star 数多选确认。若团队空间配置了库过滤策略会提示结果已按 filter 收窄并指引到 dashboard 调整。回答 3 个澄清问题getSkillQuestions基于所选库和描述生成带选项的问题selectOrInput支持点选推荐项或自由输入逐题作答并回显。预览与迭代generateSkillStructured流式返回进度事件终端实时展示正在读取的 Context7 文档片段最多 3 条、每条截断 400 字符。生成后预览前 20 行随后进入循环Install skill/Edit skill in editor用$EDITOR打开预览文件并同步修改/Request changes输入反馈连同previousContent重新生成/Cancel。落盘最终把内容写入各目标目录的skillName/SKILL.md技能名由libraryName转小写并清理为[a-z0-9-]字符。List 与 Info查看已安装与仓库内容List展示当前项目或全局范围内已安装的技能ctx7 skills list # 当前项目自动检测所有 IDE 目录 ctx7 skills list --claude # 仅 Claude Code ctx7 skills list --global # 全局技能 ctx7 skills list --global --claude # 全局 Claude Code 技能 ctx7 skills list --json # JSON 输出源码支持便于脚本消费无 IDE 标志时CLI 依次扫描.agents/skillsUniversal与VENDOR_SPECIFIC_AGENTSclaude、cursor、antigravity下的子目录显式传标志时只扫描对应路径。--json输出结构为{ skills: [{ name, path, source }] }source标识技能来自哪个代理目录方便脚本化审计。Info在不安装的情况下浏览某仓库的全部技能ctx7 skills info /anthropics/skills输出每个技能的名字、描述与 URL并在末尾附上 Quick commandsInstall all/Install one的现成命令适合安装前预览仓库里有什么可用。Remove卸载技能ctx7 skills remove pdf # 从当前项目移除 ctx7 skills remove pdf --claude # 仅从 Claude Code 移除 ctx7 skills remove pdf --global # 从全局技能移除移除前先通过promptForSingleTarget确定单个目标除非显式指定 IDE 作用域assertSkillNameInRoot校验技能名不越过技能根目录防止../../类路径注入然后递归删除该技能目录。目录不存在时报Skill not found权限不足时提示sudo rm -rf path。IDE 标志与安装位置所有 skills 子命令都接受统一的 IDE 目标标志映射关系由 types.ts 中的IDE_PATHS/IDE_GLOBAL_PATHS定义标志目录服务的代理--universal.agents/skills/Amp、Codex、Gemini CLI、OpenCode、GitHub Copilot 等读取.agents/skills/标准的代理--claude.claude/skills/Claude Code--cursor.cursor/skills/Cursor--antigravity.agent/skills/Antigravity几个源码可确认的细节不加标志时CLI 进入交互式多选promptForInstallTargets可一次勾选多个代理目录多目标时首个目录写实体文件、其余符号链接。--global可与任意标志组合基础目录切换为家目录~/.claude/skills等。Universal 定位的默认值DEFAULT_CONFIG.defaultIde为universal——从源码结构看这是 CLI 的默认偏好配置一次安装即可覆盖所有读取.agents/skills/的代理这也是源码注释中强调的 one install covers all of them。配置载体为context7.json仓库根目录即有一份从C7Config类型看它还记录defaultScopeproject/global用于减少重复提示。行为验证与延伸阅读技能列表扫描逻辑只统计子目录与符号链接、--json输出有对应测试 skill-list.test.ts安装与路径处理由 installer.test.ts、remove.test.ts 覆盖可作为实现行为的权威参照。本仓库的 context7-cli 技能 本身就是一个 Skill 实例其中 Quick Reference 一节汇总了 docs/skills/setup 三大类命令配套参考文档还有 docs.md拉取库文档与 setup.md配置 Context7 MCP。所有 skills 操作都会通过trackEvent上报使用事件如install、search_query、suggest_install、gen_feedback便于理解各命令与后台的交互点。总结ctx7 skills子命令族提供了发现 → 验证 → 安装 → 管理的完整技能生命周期用info/search预览与检索注册表用install从仓库落盘注册表优先、GitHub 兜底、注入检测用suggest按项目依赖自动匹配用generate消耗周配额让 AI 基于 Context7 文档定制私有技能再用list/remove做日常维护。结合 IDE 标志与--global同一套命令能同时服务于单代理和多代理的工作环境。【免费下载链接】context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors项目地址: https://gitcode.com/gh_mirrors/co/context7创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →