MCP HubMCP Hub
SKILL·1D44F7

lean-ctx-review

yvgude
업데이트됨 7 days ago
1 조회
3,765
344
3,765
GitHub에서 보기
문서aimcp

정보

이 스킬은 Claude Code 세션 기록을 분석하여 lean-ctx MCP 도구의 성능을 감사합니다. ctx_* 도구가 실패하거나 네이티브 대안으로 대체된 사례를 식별하며, 상세한 호출 데이터를 추출하고 확인된 문제에 대해 상류 버그 보고서를 제출하기 위한 구조화된 분류 규칙을 제공합니다. 사용자가 도구 성능 검토를 요청하거나, ctx_* 도구 사용 중 실패를 경험하거나, lean-ctx 버그를 보고하려는 경우에 이 스킬을 사용하세요.

빠른 설치

Claude Code

추천
기본
npx skills add yvgude/lean-ctx -a claude-code
플러그인 명령대체
/plugin add https://github.com/yvgude/lean-ctx
Git 클론대체
git clone https://github.com/yvgude/lean-ctx.git ~/.claude/skills/lean-ctx-review

Claude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요

문서

lean-ctx session review

Upstream repo: yvgude/lean-ctx (https://github.com/yvgude/lean-ctx).

Reads a Claude Code session transcript, so it applies to agents that write ~/.claude/projects/*/*.jsonl. Other harnesses need their own extractor; the triage rules below are harness-independent.

1. Extract

Run from this skill's directory (needs python3):

python3 scripts/scan_session.py

Defaults to the newest transcript under ~/.claude/projects/*/ — the live Claude Code session. Pass a path to review a different one. -d N dumps call #N in full.

The script reports facts, not verdicts: every ctx_* call in order, which results the harness flagged is_error, which calls repeated identical arguments, which asked for raw/fresh output, and how many native Read/Grep/Bash calls happened. It deliberately does not guess which of those is a problem — that judgment is yours, below.

Transcripts run to megabytes, so read the table, not the raw JSONL.

2. Triage

Start from is_error. In practice every genuine tool failure carries it. Then read the call list for the softer signals: identical retries, raw/fresh re-reads, native calls clustered right after a ctx_* call, or a sequence that only completed once ctx_* was abandoned.

Before absolving anything, do these two things

Skipping them is how this review returns a false "nothing to report". Both cost one command each.

Search the tracker for the guard or tool you are about to excuse. Do this during triage, not at step 4. A closed issue defines intended behaviour: if a shipped fix says a form is supported and you just watched it fail, that is a regression and one of the most valuable things this review finds. It also stops you re-filing a settled design decision.

gh issue list --repo yvgude/lean-ctx --search "<guard or tool keyword>" --state all

Probe the stated rationale — never accept a message's self-description. An error explains itself, and that explanation can be wrong. Three checks, each one command:

  • Does the sanctioned alternative achieve the same thing? If the block is bypassable through a route the message itself recommends, it constrains syntax, not capability. Sometimes that is deliberate (structured input parses reliably where a shell string does not) — decide which, do not assume.
  • Does the stated reason match the observed rule? Vary one axis at a time. A guard blaming payload size that actually keys on path, or blaming a pipe on a command that is piped, is misdiagnosing itself.
  • Does the message contradict itself? A rejection that also states the rejected form is allowed is a finding on its own, whichever way the policy should go.

A wrong diagnostic is a real bug even when the block is correct: it sends the next caller down a route that cannot work.

Not a finding

  • Words inside returned content. A file containing http.StatusConflict, a git rebase printing CONFLICT (content):, gh returning "mergeable":"CONFLICTING", a test run printing not found. The tool returned exactly what was asked for. Judge the tool's own behaviour, never the payload's vocabulary.
  • Self-reference. Any result that quotes a previous scan, this skill, or a transcript will echo every error word in it.
  • Guard blocks — only after they survive the probe above. Inline env overrides (GIT_EDITOR=), shell redirects (>/>>), non-allowlisted commands, paths outside the project root. "It offered an alternative and the alternative worked" is not enough to clear one: that is true of a guard whose reason is wrong, whose rule is different from its description, or that contradicts itself. Clear it only once the stated rationale holds up.
  • Malformed tool input. InputValidationError on __unparsedToolInput is the caller's own JSON serialization — commonly a raw tab or newline inside a string — rejected before lean-ctx ever ran.
  • My own wrong arguments, a genuinely missing file, a failing build.

Confirmable

The tool did something wrong or unhelpful given correct input:

  • wrong, lossy, or truncated output where the mode promises otherwise
  • content injected into output documented as verbatim, or anything that breaks a documented output format (e.g. corrupting batch-read separators)
  • a crash, hang, or schema mismatch against the documented parameters
  • a documented mode behaving differently than described
  • a retry that only succeeded after dropping to native tools
  • a wrong or self-contradicting diagnostic, even where the block itself is right — naming the wrong cause sends the next caller down a route that cannot work, and costs more than the block did
  • a regression against a closed issue: a shipped fix says the form is supported, and it is not

3. Reproduce

No minimal repro, no issue. Re-run the exact tool and arguments. If it passes, try to isolate the trigger; if you cannot, do not file — report the observation to the user instead, saying plainly that it did not reproduce and what you tried. Guessing at internals is worse than silence.

lean-ctx --version for the version line.

Zero confirmed findings is a valid and common result. Say so and file nothing.

4. File

Only for confirmed findings, one issue per distinct problem. You searched the tracker during triage; widen it here if the finding shifted:

gh issue list --repo yvgude/lean-ctx --search "<keywords>" --state all

Skip if already reported — and read the close text before re-filing, since a closed issue may have already conceded the point you are about to raise. When a finding contradicts a closed fix, cite it and frame the issue as the gap in that fix. Otherwise:

gh issue create --repo yvgude/lean-ctx --title "..." --body-file <file>

Body: what happened, expected, minimal repro (exact tool + args), version, OS. No speculation about internals. End every issue body with the Claude Code attribution footer. Report the issue html_url back to the user.

GitHub 저장소

yvgude/lean-ctx
경로: skills/lean-ctx-review
0
agentic-codingaiai-agentsai-codingclaude-codecontext-engineering
FAQ

자주 묻는 질문

lean-ctx-review Skill이란 무엇인가요?

lean-ctx-review은(는) yvgude이(가) 만든 Claude Skill입니다. Skill은 Claude가 필요할 때 불러오는 지침과 리소스를 묶어 추가 프롬프트 없이 lean-ctx-review 관련 작업을 수행할 수 있게 합니다.

lean-ctx-review은(는) 어떻게 설치하나요?

이 페이지의 설치 명령을 사용하세요. lean-ctx-review을(를) Claude Code 플러그인으로 추가하거나 저장소를 skills 디렉터리에 복제한 다음 Claude를 다시 시작해 Skill을 불러옵니다.

lean-ctx-review은(는) 어떤 카테고리에 속하나요?

lean-ctx-review은(는) 문서 카테고리에 속합니다.

lean-ctx-review은(는) 무료로 사용할 수 있나요?

네. lean-ctx-review은(는) AIMCP에 등록되어 있으며 무료로 설치할 수 있습니다.

연관 스킬

railway-docs
문서

이 스킬은 Railway의 기능, 작동 방식 또는 특정 문서 URL에 대한 질문에 답하기 위해 최신 Railway 문서를 가져옵니다. 개발자들이 Railway의 공식 소스로부터 정확하고 최신 정보를 직접 받을 수 있도록 보장합니다. 사용자가 Railway의 작동 방식을 묻거나 Railway 문서를 참조할 때 사용하세요.

스킬 보기
n8n-code-python
문서

이 Claude Skill은 n8n의 Code 노드에서 Python 코드를 작성할 때 전문적인 지침을 제공하며, 특히 Python 표준 라이브러리 사용과 n8n의 특수 구문인 `_input`, `_json`, `_node` 작업에 중점을 둡니다. 이는 개발자가 n8n 내에서 Python의 제한 사항을 이해하도록 돕고, 대부분의 워크플로에는 JavaScript 사용을 권장하면서도 특정 데이터 변환 요구사항에 대한 Python 솔루션을 제안합니다.

스킬 보기
archon
문서

Archon 스킬은 REST API를 통해 RAG 기반 시맨틱 검색과 프로젝트 관리를 제공합니다. 이 스킬을 사용하여 문서 검색, 계층적 프로젝트/태스크 관리, 문서 업로드 기능을 갖춘 지식 검색을 수행할 수 있습니다. 외부 문서를 검색할 때는 다른 소스를 사용하기 전에 항상 Archon을 최우선으로 활용하세요.

스킬 보기
n8n-code-javascript
문서

이 Claude Skill은 n8n의 Code 노드에서 JavaScript 코드 작성에 대한 전문적인 지침을 제공합니다. `$input`/`$json` 변수, HTTP 헬퍼, DateTime 처리와 같은 필수적인 n8n 특정 구문을 다루며 일반적인 오류를 해결합니다. Code 노드에서 사용자 정의 JavaScript 처리가 필요한 n8n 워크플로우를 개발할 때 활용하세요.

스킬 보기