Token导航 LogoToken导航

Agent Skill · 研究检索

revision(revision 搜索)

revision 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

revision 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为接触敏感数据;许可证信息还不明确,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 62,819。

总安装 326周安装 14GitHub Stars 781下载 114核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:revision(revision 搜索)
来源仓库:https://github.com/juliusbrussee/cavekit
仓库路径:skills/revision
安装命令:
npx skills add https://github.com/juliusbrussee/cavekit --skill revision
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/juliusbrussee/cavekit --skill revision

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

revision 用于查找、检索和筛选相关信息,支持基于关键词的任务定位。适用于在开发流程中快速获取相关线索或技术资料。通过 npx skills add 命令从指定 GitHub 仓库安装并使用该技能。安装前需确认权限范围和维护状态,避免触发联网或文件读写操作。

revision 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/revision

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/juliusbrussee/cavekit --skill revision;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

revision 怎么安装?

在终端执行 npx skills add https://github.com/juliusbrussee/cavekit --skill revision。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

revision 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

revision 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

revision 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

revision 用的人多吗?

公开数据是累计安装 326 次,近一周安装 14 次,下载 114 次,GitHub 781 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

revision 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
revision

revision 搜索 · 本页

326781接触敏感数据未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Revision: Tracing Bugs Back to Kits

In Cavekit, revision means tracing a production defect upstream through the cavekit chain until you find the gap that allowed it. In practice, when the built software has bugs or gaps, you trace the issue back to the kits and prompts and fix at the source -- not just in code.

Key insight: When a fix lives only in code with no corresponding cavekit update, the next iteration loop may reintroduce the same defect. The goal is that kits plus the iteration loop can reproduce any fix autonomously.


1. Why Revision Matters

Without revision, every bug fix is a one-off patch. The next time the iteration loop runs, it may reintroduce the bug because nothing in the kits or plans prevents it.

With revision:

  • Bug fixes become cavekit improvements that persist across all future iterations
  • The iteration loop becomes self-correcting -- it learns from every manual intervention
  • Kits become progressively more complete over time
  • The gap between "what kits describe" and "what works" shrinks monotonically
Without revision:
  Bug found -> Fix code -> Bug may return next iteration

With revision:
  Bug found -> Fix code -> Update cavekit -> Re-run iteration loop -> Fix emerges from kits alone

2. The 6-Step Revision Process

This is the complete process for tracing a bug back to its cavekit-level root cause and closing the loop.

Step 1: Identify and Fix the Defect

Locate the bug -- whether through manual testing, automated failures, user reports, or monitoring alerts -- and resolve it through normal debugging. This produces a working code change, but the job is far from done: until the underlying cavekit gap is closed, this fix is fragile.

# The fix produces commits that we will analyze
git log --oneline -5
# a1b2c3d Fix: connection pool exhaustion under concurrent load
# e4f5g6h Fix: missing rate limit headers in API responses

Step 2: Analyze What the Cavekit Missed

This is the pivotal step. Ask: "Where in the cavekit chain did this requirement slip through?"

Break the analysis into five dimensions:

  • WHAT changed (files, functions, observable behavior)
  • WHY it was wrong (which assumption proved false)
  • VISUAL — does this fix change visual appearance (CSS, styling, layout)? If yes, check whether DESIGN.md covers the pattern. A missing design pattern is a design system gap that should be fixed alongside the cavekit gap.
  • The RULE (the invariant that should have been stated)
  • The LAYER (which cavekit, plan, or prompt should have contained this)

Example analysis:

## Revision Analysis: Database Connection Pooling

**WHAT changed:** Added pool size limits and idle timeout in `src/db/pool.ts`
**WHY:** The data layer cavekit assumed unlimited connections; under load the database
         rejected new connections once the server-side limit was reached
**RULE:** "The database module MUST configure a bounded connection pool with
          idle timeout and max-connection limits matching the deployment target"
**LAYER:** cavekit-data.md (no mention of pool configuration), plan-data.md (no task for pool tuning)
**Cavekit implications:** Add requirement R5 to cavekit-data.md covering connection pool settings

Step 3: Update the Cavekit

Add the missing requirement or constraint to the appropriate cavekit file. Focus on acceptance criteria that are concrete enough for the iteration loop to act on:

# In context/kits/cavekit-data.md, add:

### R5: Database Connection Pool Configuration
**Description:** The database module must use a bounded connection pool
with configurable limits to prevent resource exhaustion under load.
**Acceptance Criteria:**
- [ ] Maximum pool size is configurable and defaults to a sensible value
- [ ] Idle connections are reaped after a configurable timeout
- [ ] Pool exhaustion returns a clear error rather than hanging indefinitely
- [ ] Connection health checks run before returning a connection from the pool
**Dependencies:** R1 (database client setup), R2 (environment configuration)

Step 4: Propagate Changes to Plans and Tracking

Trace the cavekit update through every downstream context file:

  1. Identify affected plan files: Which plans govern the changed source paths?
  2. Update plans: Add or close tasks reflecting the new requirement.
  3. Update impl tracking: Record the revision event and its root cause.
  4. Annotate: Mark updated sections with revision metadata so future reviews can trace lineage.
# In context/plans/plan-data.md, add:

### T-DATA-005: Configure bounded connection pool
- **Status:** DONE (revised from manual fix a1b2c3d)
- **Cavekit:** R5 in cavekit-data.md
- **Files:** src/db/pool.ts
- **Acceptance criteria:**
  - [ ] Max pool size enforced
  - [ ] Idle timeout configured
  - [ ] Exhaustion handled gracefully

Step 5: Apply Systemic Prompt Improvements (If Pattern Detected)

When the defect represents a recurring class of problem rather than a one-off, elevate the fix to the prompt level so it applies across all domains:

Signs you are looking at a pattern:

  • The same category of bug has surfaced in more than one module
  • The gap is structural (e.g., no specs anywhere address resource limits)
  • A missing validation gate allowed the issue through

Example systemic fix:

# In prompt 003, add to the validation section:

## Resource Management Validation
For every external resource integration, verify:
- [ ] Connection or handle limits are bounded and configurable
- [ ] Idle resources are cleaned up on a timeout
- [ ] Exhaustion scenarios return actionable errors
- [ ] Resource lifecycle is covered by tests under load

Step 6: Verify and Lock In

Run the iteration loop against the updated kits to prove the fix emerges from kits alone, then generate regression tests to prevent future recurrence:

# Proof step: remove the manual fix and re-run from specs
git stash  # temporarily remove the manual fix
iteration-loop context/prompts/003-generate-impl-from-plans.md -n 5 -t 1h
# Verify the fix appears in the generated implementation

# If it does NOT, the cavekit update is insufficient -- return to Step 3

Once verified, create regression tests:

# Generate tests targeting the updated cavekit
{TEST_COMMAND} --cavekit context/kits/cavekit-data.md

# Or manually create a regression test
# tests/db/connection-pool-limits.test.ts

The regression tests should:

  • Map directly to the acceptance criteria from Step 3
  • Fail if the fix is reverted
  • Run as part of the standard test suite going forward

3. Revision Analysis (Automated)

The revision analysis automates Steps 2-4 by examining recent git history.

3.1 Classify Commits

Analyze recent commits and classify each as:

ClassificationMeaningAction
Manual fixHuman or interactive agent fixed a bugTrace back to cavekit -- this is a revision target
Iteration loopAutomated iteration loop made the changeNo action -- this is the system working as intended
InfrastructureBuild config, CI, tooling changesNo action -- not cavekit-related

How to classify:

  • Commits from iteration loop sessions have predictable patterns (automated commit messages, batch changes)
  • Manual fixes are typically single-issue, focused commits with descriptive messages
  • Infrastructure changes touch config files, build scripts, CI pipelines

3.2 Analyze Each Manual Fix

For each commit classified as a manual fix, determine:

## Commit: abc1234 "Fix: auth token not refreshing on 401"

### WHAT changed
- File: src/auth/client.ts
- Function: handleApiResponse()
- Behavior: Added 401 detection and token refresh logic

### WHY it was wrong
- The auth module did not handle 401 responses
- Tokens would expire and never refresh, causing cascading auth failures

### RULE (invariant that should have been specified)
- "Authentication tokens must be refreshed automatically on 401 responses"

### LAYER (which context file should have caught this)
- cavekit-auth.md: Missing requirement for error-based token refresh
- plan-auth.md: No task for 401 handling

### Cavekit Implications
- Add R7 to cavekit-auth.md: Token Refresh on Authentication Failure
- Add T-AUTH-007 to plan-auth.md: Implement token refresh on 401

3.3 Discover Affected Plan Files

Dynamically discover which plan files govern the changed source paths:

Changed file: src/auth/client.ts
  -> Matches pattern: src/auth/*
  -> Governed by: plan-auth.md
  -> Cavekit: cavekit-auth.md

Changed file: src/data/api.ts
  -> Matches pattern: src/data/*
  -> Governed by: plan-data.md
  -> Cavekit: cavekit-data.md

Use file ownership tables (from prompts) or directory conventions to map source files to plan/cavekit files.

3.4 Update Context Files

For each revision target, update:

  1. Cavekit file: Add missing requirement with acceptance criteria
  2. Plan file: Add task referencing the new requirement
  3. Impl tracking: Record the revision event
# In context/impl/impl-auth.md, add:

## Revision Log
| Date | Commit | Issue | Cavekit Update | Plan Update |
|------|--------|-------|-------------|-------------|
| 2026-03-14 | abc1234 | 401 not handled | R7 added to cavekit-auth.md | T-AUTH-007 added |

3.5 Run Tests

After updating context files, run the test suite to verify nothing broke:

{BUILD_COMMAND}
{TEST_COMMAND}

3.6 Generate Regression Tests

For each revision target, generate a regression test that:

  • Tests the specific acceptance criteria from the new cavekit requirement
  • Would fail if the fix were reverted
  • Is included in the standard test suite going forward

4. Patterns and Anti-Patterns

Signs the process is working

PatternWhat You Observe
Declining manual interventionEach iteration cycle requires fewer hand-applied fixes because kits capture more of the ground truth
Broader cavekit coverage per fixA single revision event adds constraints that block an entire family of related defects, not just one
Cross-domain preventionPrompt-level adjustments made after a bug in one module prevent analogous bugs from appearing in other modules
Autonomous reproducibilityAfter a cavekit update, the iteration loop independently produces the same correction that a human applied manually

Warning signs and remedies

Anti-PatternSymptomRemedy
Code-only patchesThe same category of defect resurfaces across iterationsFollow the full 6-step process; never stop after the code fix in Step 1
Overly specific cavekit additionsEach revision prevents only the exact bug encountered, while slight variations slip throughFormulate the RULE as a general invariant, not a narrow patch
Skipping verificationKits are updated but nobody confirms the iteration loop can reproduce the fix independentlyAlways execute Step 6; a cavekit that does not drive correct generation is incomplete
Brittle over-specificationKits dictate implementation minutiae, causing breakage on minor refactorsConstrain the WHAT and WHY; leave the HOW to the implementation
Accumulated revision debtA backlog of manual fixes sits un-traced, growing with each sprintSet a cadence (e.g., end of each iteration) to clear the backlog; debt compounds quickly

5. When NOT to Revise

Not every code fix needs revision:

  • One-off environment issues (wrong config, missing dependency) -- these are infrastructure, not cavekit gaps
  • Typos and formatting -- trivial fixes that do not reflect missing requirements
  • Exploratory changes during prototyping -- kits are still being formed
  • Performance optimizations that do not change behavior -- unless performance is a cavekit requirement

Rule of thumb: If the iteration loop could plausibly reintroduce the bug, revise. If not, skip it.


6. Revision and Convergence

Revision directly improves convergence:

Iteration 1: 350 lines changed, 8 manual fixes needed
  -> Revise all 8 fixes into kits
Iteration 2: 140 lines changed, 3 manual fixes needed
  -> Revise 3 fixes
Iteration 3: 30 lines changed, 1 manual fix needed
  -> Revise 1 fix
Iteration 4: 10 lines changed, 0 manual fixes needed
  -> Convergence achieved

Every revision cycle tightens the kits, so the iteration loop settles into a stable solution in fewer passes. If convergence is not improving, the most likely cause is that manual fixes are being applied without tracing them back to kits.

Stalled convergence paired with ongoing manual fixes is a clear sign of revision debt. The kits have not absorbed the lessons from past corrections, so the loop keeps regenerating flawed output that demands human repair.


7. Integration with Other Cavekit Skills

  • Convergence monitoring: Use ck:convergence-monitoring to detect when manual fixes are decreasing (good) or increasing (revision debt).
  • Prompt pipeline: Revision may trigger changes to prompts (Step 6), which affects the ck:prompt-pipeline design.
  • Validation-first design: Stronger validation gates catch issues earlier, reducing the need for revision.
  • Gap analysis: Systematic gap analysis (/ck:review --mode gap) identifies revision targets proactively, rather than waiting for bugs.

Cross-References

  • Convergence patterns: See references/convergence-patterns.md for how revision drives convergence.
  • Prompt pipeline: See ck:prompt-pipeline skill for how prompt 006 (rewrite pattern) implements automated revision.
  • Impl tracking: See ck:impl-tracking skill for the revision log format in implementation tracking documents.
  • Validation gates: See ck:validation-first skill for validation layers that catch issues before they require revision.

8. Automated Backpropagation (Single-Failure Trace)

The revision skill also handles the single-failure backpropagation protocol — invoked automatically when a test command fails during /ck:make, or manually via /ck:revise --trace. Where Sections 1–7 describe the multi-commit revision sweep, this section describes the single-failure trace with a tighter six-step procedure and an explicit audit log.

Principle: Bugs are spec bugs until proven otherwise. Before patching code, verify the kit actually covered the failing behavior. If it did not, the fix is a kit amendment plus a regression test — not just a patch.

Six-Step Procedure

1. TRACE — match failure to a requirement

Read the failure output. Find the single acceptance criterion (or gap of one) that, if asserted, would have caught this. Identify the kit and R-ID:

Kit: cavekit-auth.md
Requirement: R004 (rate-limit middleware)
Closest AC: AC2 ("returns 429 when limit exceeded")
Missing coverage: 429 header case sensitivity not asserted

If no requirement fits, the bug is in a dimension the kit never addressed — this is a missing requirement (case D below).

2. ANALYZE — classify the gap

One of:

  • A. missing_criterion — the requirement exists but the acceptance criteria do not cover this case. Add an AC.
  • B. incomplete_criterion — an AC partially covers it but is too vague to catch the failure. Tighten the AC.
  • C. wrong_criterion — an AC asserts the wrong thing. Correct it.
  • D. missing_requirement — no requirement addresses this dimension at all. Add a new R.
3. PROPOSE — draft the spec change

Write the exact amendment. Required fields:

Classification: missing_criterion
Kit: cavekit-auth.md
Change: R004 append AC5
Proposed AC: "AC5 — Rate-limit headers (X-RateLimit-*, Retry-After) are
  returned with canonical lowercase casing per RFC 7230 §3.2."
Trace: auth.test.ts → 429 path → header casing mismatch

Show the proposed change to the user. Wait for explicit approval before writing to the kit. Do not silently amend specs.

4. GENERATE — regression test

Before fixing the bug, write a test that asserts the new AC and currently fails. This locks in the requirement in executable form.

Commit the failing test separately from the fix:

git commit -m "test: add regression for rate-limit header casing (cavekit-auth.md R004 AC5)"
5. VERIFY — fix until the test passes

Patch the code. Run the full test suite. Confirm the new regression test passes and nothing else regresses. Commit the fix referencing the AC.

6. LOG — write a trace entry

Append to .cavekit/history/backprop-log.md:

## Entry {n}

- id: 12
- date: 2026-04-17T14:22Z
- classification: missing_criterion
- kit: cavekit-auth.md
- requirement: R004
- ac_added: AC5
- failing_test_before_fix: auth.test.ts::rate-limit headers casing
- fix_commit: abc1234
- pattern_category: input_validation

Pattern Detection

The log is a corpus. If the same pattern_category appears 3+ times in one project, the issue is systemic and belongs one layer up — at the brainstorming / kit-writing layer, not per-requirement. Categories:

  • input_validation — unvalidated / mis-cased / range-unchecked input.
  • concurrency — races, missed locks, stale reads.
  • error_handling — swallowed exceptions, missing retries, partial rollbacks.
  • integration — contract drift between services, missing end-to-end tests.
  • observability — silent failures, missing logs/metrics.

When a threshold hits, propose a cross-kit amendment (e.g., a validation rule added to every input-accepting kit). Announce this to the user.

Auto-Backprop Hook Integration

The auto-backprop.js hook writes .cavekit/.auto-backprop-pending.json when a test command fails during /ck:make. The stop hook reads this flag and prepends a trace directive to the next iteration's prompt, which tells the agent to run the six steps above before resuming normal task execution. Once the directive fires, the flag is atomically deleted.

Disable via auto_backprop = false in .cavekit/config.json if you need to run /ck:make without this safety net (e.g., during exploratory spikes).

Anti-Patterns

  • Patch first, spec later — fixes that never make it back to the kit. Every rerun of the loop may re-introduce the bug.
  • Silent amendment — updating a kit without user approval. The spec is the contract; amendments are a negotiation, not a refactor.
  • Per-bug regression test with no spec change — the test passes, but the next reader of the kit still will not know why. The AC must be written down.
  • Bulk backprop — rolling up N failures into one spec change. Each failure gets its own entry. Patterns emerge only if each is logged separately.

平台分布

Codex

37.1%
按下载量换算42

Claude

31.9%
按下载量换算36

Cursor

17.5%
按下载量换算20

Gemini CLI

10.86%
按下载量换算12

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills