Jev-호환 제공업체 기반의 다음 단계에 적합한 스킬 선택기
요약
SkillRanker는 Jev-호환 제공업체를 활용하여 에이전트가 다음 단계에 가장 적합한 스킬을 선택하도록 돕는 독립형 Rust CLI 도구입니다. 이 도구는 실시간 컨텍스트 평가, 사용 가능한 스킬 비교 및 추정을 통해 에이전트의 의사결정 과정을 지원합니다. SkillRanker는 로컬 안전장치와 검사 가능한 피드백을 제공하며, 대규모 스킬 라이브러리에서 후보군을 좁히고 Jev를 통해 의미적 적합성을 평가하는 것이 핵심입니다.
핵심 포인트
- Jev-호환 제공업체를 중심으로 스킬 선택 과정을 최적화합니다.
- Rust CLI 기반으로 구현되어 로컬 안전장치와 독립적인 사용이 가능합니다.
- 실시간 컨텍스트, 작업 공간 신호 등을 결합하여 스킬의 적합성을 평가합니다.
- 대규모 라이브러리에서는 후보군을 좁히는 과정(Quill)과 Jev 평가가 순차적으로 작동합니다.
다음 단계를 위한 올바른 스킬을 Jev-호환 제공업체의 힘으로 구현합니다.
SkillRanker는 Jev-호환 제공업체를 스킬 선택의 중심에 두는 독립형 Rust CLI입니다. Jev는 에이전트의 실시간 컨텍스트를 평가하고, 사용 가능한 스킬들을 비교하며, 다음 단계에 가장 적합한 스킬을 추정합니다. SkillRanker는 세션 통합, 로컬 안전장치(safeguards), 그리고 이를 둘러싼 검사 가능한 피드백을 제공합니다.
새로운 순위 지정에는 선택된 제공업체의 자체 자격 증명이 필요합니다. TypeSafe.ai가 기본값이며, Cloudflare에서 호스팅되는 TypeSafe Jev도 지원됩니다.
sr capabilities --json # 빌드에서 구현된 명령어와 통합 확인
sr demo --case useful # 세션 연결 전에 오프라인 고정 데이터를 검사합니다
sr rank --allow-network # 선택된 세션에 대한 스킬 순위 지정```
- TL;DR
- 빠른 예제
- 설계 철학
- 비교 방법
- 설치
- 빠른 시작
- 명령어 참조
- 구성
- 순위 지정 작동 방식
- 결과 설명 및 재생
- 로컬 피드백 및 보정
- 평가, 샘플링 및 위험 모니터링
- 제어 요청 및 중단
- 에이전트 훅(Agent Hooks)
- 인라인 TUI
- 아키텍처
- 개인 정보 보호 및 로컬 상태
- 성능
- 문제 해결
- 제한 사항
- FAQ
- 기여에 대하여
- 라이선스
**문제.** 방대한 스킬 라이브러리는 에이전트에게 선택할 수 있는 많은 절차를 제공하지만, '선택하는 것' 자체가 하나의 작업입니다. 유사한 설명들은 유용한 구분을 모호하게 만듭니다. 대화 초기에 도움이 되었던 스킬은 세 턴 후에는 관련성이 없을 수 있습니다. 그럴듯하지만 부적절한 스킬을 로드하는 것은 컨텍스트를 소모하고, 그렇지 않으면 합리적이었을 작업을 잘못된 방향으로 유도할 수 있습니다.
**해결책.** SkillRanker (`sr`)
)"은 최근 대화 내용, 현재 요청, 작업 공간 신호(workspace signals), 그리고 선택된 하네스(harness)의 가시적인 스킬 인벤토리(skill inventory)를 결합합니다.
**선택된 제공업체(provider)의 Jev 구현이 시스템의 핵심 활성화 요소입니다.**
먼저 후보군들을 광범위하게 비교한 다음, 단축 목록(shortlist)에서 더 풍부한 발췌문(excerpts)을 읽고 각각이 적합한지 평가합니다. 두 비교 모두 실제 '없음(none of these)' 옵션을 포함합니다. 그 결과는 자문적입니다: 에이전트(agent)는 사용자의 지침을 따르고 무엇을 참고할지 결정합니다.
254개 이상의 적격 스킬을 가진 라이브러리의 경우, **FrankenSearch의 Quill**이 Jev가 평가하기 전에 후보군들을 로컬에서 좁힙니다. 규모가 작은 목록은 전체가 Jev에 전달됩니다. 명시적인 스킬 요청은 어느 단계보다 먼저 로컬에서 해결됩니다.
SkillRanker는 로컬 모델을 포함하지 않습니다. 순위 지정 워크플로우(ranking workflow)를 위해서는 선택된 제공업체에 대한 자체 계정과 자격 증명(credential)이 필요합니다. 로컬 검색(Local retrieval)은 후보군들을 준비하고, **Jev가 추천을 가능하게 하는 평가를 제공합니다**.
| 필요성 | SkillRanker가 제공하는 것 |
|---|---|
| 의미 및 작업 적합성 평가 | 선택된 제공업체의 타입 지정 Jev Choice와 Noul 평가가 두 순위 통과(ranking passes) 모두에 힘을 실어줍니다 |
| ... |
접근 방식은 TypeSafe 스킬 제안 레시피를 기반으로 합니다. SkillRanker는 세션 식별자(session identity), 하네스 가시성(harness visibility), 제한된 실행(bounded execution), 그리고 로컬 평가 루프를 추가합니다. 포괄적인 계획은 전체 설계와 수용 기준(acceptance criteria)을 설명합니다.
키, 네트워크 또는 비공개 세션 없이 레이블이 지정된 피처 결과 보기.
sr demo --case useful
로컬 구성 및 사용 가능한 어댑터 검사.
...
**다음 행동을 선택하세요.** 현재 요청뿐만 아니라 최근 실패, 작업 컨텍스트, 이미 로드된 지침도 중요합니다.**권한 해결은 로컬에서 수행하세요.** 사용자가 무엇이 필요하거나 제외되는지를 결정합니다. 하네스(harness)가 무엇을 로드할 수 있는지를 결정합니다. 모델의 답변으로는 어느 쪽도 바꿀 수 없습니다.**선호와 적용 가능성을 분리하세요.** 비교에서 이기는 것만으로는 충분하지 않습니다. 추천은 적합성, 가시성, 로드 상태, 그리고 '없음' 옵션 검사를 통과해야 합니다.**증거를 검사 가능하게 유지하세요.** 제공업체의 추정치와 로컬 산술을 보존합니다.`--explain`
모델이 생성한 이유를 지어내지 않고 계산을 노출합니다.**채택과 유용성을 분리하세요.** 로드를 관찰하는 것은 유용한 원격 측정(telemetry)입니다. 더 나은 정책을 학습하려면 독립적으로 판단된 예시와 홀드아웃(holdout)이 필요합니다.**각 평가에 경계를 설정하세요.** 입력, 검색, 하위 프로세스, 네트워킹, 재시도, 영속성 및 정리 작업은 하나의 순위 결정 기한을 소모합니다. 배치 평가 역시 명시적인 요청과 총 실행 시간 제한이 있습니다.**독립적으로 유지하세요.** 검색(Discovery), 구문 분석(parsing), 비식별화(redaction), 검색(retrieval), 피드백은 `sr`에 존재합니다.
스킬 관리 서비스나 개인 데이터베이스가 필요하지 않습니다.
이것들은 벤치마크 순위가 아니라 워크플로우 선택지입니다.
| 접근 방식 | 선택을 위한 입력 | 강점 | 트레이드오프 |
|---|---|---|---|
| 수동 선택 | 작업 및 라이브러리에 대한 지식 | 순위 결정 서비스 없이 직접 제어 가능 | 각 스킬의 커버리지를 기억해야 함 |
| ... |
It requires Bash, Python 3, `curl`, 그리고 `sha256sum` 또는 `shasum`을 필요로 합니다; source builds는 또한 Git과 Rust를 요구합니다. RCH가 설치된 경우, 컴파일은 원격으로 실행되며 원격 실패가 로컬 빌드를 유발하지 않습니다. macOS의 소스 빌드는 macOS RCH 워커가 필요합니다. 기존 바이너리는 교체 전에 백업됩니다. `--easy-mode`는 또한 설치 디렉터리를 현재 셸 설정에 백업과 함께 추가합니다.
신뢰할 수 있는 로컬 체크아웃에서 설치합니다.
bash install.sh --source . --verify
인접한 .sha256 파일이 있는 에어갭 아카이브를 설치합니다.
...
감지된 Claude Code 및 Codex 설치는 작은 SkillRanker 사용 스킬을 받습니다. 서브커맨드 자동 완성은 Bash, Zsh, Fish용으로 설치됩니다. 기존 사용자 정의 통합 파일은 보존되며, `--no-configure`는 이러한 단계를 건너뜁니다.
설치기는 자격 증명과 네트워크 동의를 사용자에게 맡기고 훅(hooks)을 미구성 상태로 보고합니다. **라이브 랭킹 전에 선택한 제공업체에 대한 자체 자격 증명을 확보하십시오.** 설치기 옵션, 검증 및 롤백을 참조하십시오.
저장소에 고정된 Rust 툴체인과 잠금 파일을 사용하여 `sr` 바이너리를 빌드합니다:
git clone https://github.com/Dicklesworthstone/skillranker.git
cd skillranker
cargo install --locked --path . --bin sr
체크아웃 로컬 바이너리의 경우:
cargo build --locked --release --bin sr
./target/release/sr --help
**제공업체를 선택하고 자체 자격 증명을 생성하십시오.** TypeSafe.ai가 기본 제공업체이며, `SR_PROVIDER=cloudflare`를 사용하여 Cloudflare 호스팅 TypeSafe Jev를 선택할 수 있습니다.
모든 사용자는 자신의 자격 증명을 공급하며, SkillRanker는 공유 키를 배포하지 않습니다.
기본 TypeSafe 제공업체의 경우, `TYPESAFE_API_KEY`를 설정하십시오. Cloudflare의 경우, `SR_PROVIDER=cloudflare`, `CLOUDFLARE_ACCOUNT_ID`, 및 `CLOUDFLARE_API_TOKEN`을 설정하십시오. 환경 변수 예시에는 서비스 설정이 나열되어 있습니다. 로컬 체크아웃의 경우, `.env`를 생성하십시오.
예시가 이미 존재하지 않을 경우에만 사용하고
접근을 `chmod 600 .env`로 제한하세요.
**본인의 API 키를 입력하기 전에.**
`.env` 파일은 Git에서 무시됩니다. 따라서 `sr`을 실행하거나, 후크(hooks)가 키를 필요로 하는 에이전트를 시작하기 전에 그 값을 프로세스 환경 변수로 내보내세요:
본인이 신뢰하는 .env 파일을 채운 후 체크아웃 디렉토리에서 실행하세요.
set +x
set -a
...
`.env`를 로컬 셸 설정 파일로 취급하고, 신뢰할 수 있는 내용만 소싱(source)하세요. 키는 셸 히스토리, 로그, 추적되는 파일에 노출시키지 마세요. 자격 증명만으로는 원격 전송이 가능해지지 않습니다.
| 구성 요소 | 역할 |
|---|---|
| Provider credential | 신선한 Jev 호환 평가(`TYPESAFE_API_KEY` 또는 Cloudflare 계정/토큰) 인증 |
| ... |
`sr`은 로컬 추론 서버인 `ms`나 임베딩 모델을 필요로 하지 않습니다. 지원되는 로컬 플랫폼은 Linux입니다. 빌드에 포함된 어댑터, 이벤트 및 선택적 기능은 `sr capabilities --json`을 참조하세요.
**오프라인 테스트를 시도해 보세요.** `sr demo --case useful`를 실행한 다음, `none`, `explicit`, 또는 `unavailable`를 시도해 보세요. 이 레이블이 지정된 예제들은 개인 세션을 읽거나 Jev에 연락하지 않고 로컬 파이프라인을 연습합니다. 출력 결과는 조치가 불가능하며 실시간 제공업체 상태를 확립하지 않습니다.**제공업체를 선택하고 자체 자격 증명을 구성하세요.** TypeSafe가 기본값이며, Cloudflare에서 호스팅하는 TypeSafe Jev도 지원됩니다. 선택한 제공업체의 런타임 설정 지침을 따르세요. SkillRanker는 순위 평가를 위해 Jev에 의존합니다.**환경과 명단을 확인하세요.** 에이전트의 작업 공간에서 `sr doctor --json`, `sr capabilities --json`, 및 `sr roster --json`을 실행하세요. 후보자들이 단순히 디스크 어딘가에 존재하는 것이 아니라 로드 가능한지 확인하세요.**세션을 선택하세요.** cass용으로 `--context FILE`, `--transcript FILE --harness claude_code`, 또는 `--session PATH`를 제공하세요. 자동 검색은 모호하지 않은 하나의 세션을 해결해야 합니다.**미리보기 및 순위 매기기.** `--dry-run`을 사용하세요.
제거된 광범위한 페이로드 및 공개 영수증을 검사하려면 `to inspect the redacted wide payload and disclosure receipt, then`--allow-network --json`
새로운 평가를 위해 **녹화된 섀도우 트라이얼(recorded shadow trial)을 준비**합니다. 선택적 기록은 `sr ledger init`으로 초기화하고, 라이브 후크 평가를 원한다면 신뢰 사용자 설정에서 명시적으로 `network.enabled = true`로 설정합니다. 이전의 `--allow-network` 플래그는 해당 CLI 실행만 승인했습니다. 조언을 주입하지 않고 섀도우 모드로 평가하고 적용하려면 `sr install-hook claude`를 사용합니다. 준비된 원장(ledger)이 없으면 후크가 순위를 매길 수는 있지만 녹화된 트라이얼 증거를 약속할 수 없습니다. 네트워크 동의가 없으면 최신 Jev 답변을 얻을 수 없습니다.**조언 출력을 의도적으로 활성화**하려면 통합 및 그 동작을 검토한 후 신뢰 사용자 설정에서 `hook.mode = "advisory"`로 설정합니다.
`sr doctor`는 각 전제 조건을 별도로 보고하고, 실패한 확인에 대한 다음 구체적인 단계를 명시하며, 여전히 유용한 로컬 명령 목록을 제공합니다:
| 체크 | 확립하는 것 |
|---|---|
| Input and roster | 사용 가능한 소스 및 로드 가능한 후보가 있음 |
| ... |
`Doctor`는 기본적으로 로컬에서 실행되며, 테스트 요청 전송, 후크 설치, 스토리지 마이그레이션 또는 구성 변경을 암묵적으로 수행하지 않습니다. 데모는 사용자 설정이나 상태를 건드리지 않고 번들된 합성 컨텍스트 및 레이블링된 합성 또는 녹화된 응답을 사용합니다. 두 명령어 모두 Jev의 대체품을 제공하지 않습니다.
이전 전송 체크에는 시간, 범위 및 런타임/엔드포인트/구성 ID가 포함됩니다. 호환되지 않는 변경 사항은 이를 무효화하며, 저장된 체크는 현재 공급자 가용성을 확립하지 않습니다.
`sr capabilities --json`
구현된 어댑터와 테스트된 하네스(harness) 버전/기능 및 검증되지 않은 버전을 분리합니다. 어댑터 준수성(conformance)은 프롬프트 타이밍, 브랜치 식별자(branch identity), 가시성(visibility), 제한 사항(restrictions), 압축(compaction), 로드 증거(load evidence), 그리고 훅 출력(hook output), 마감일(deadlines), 전달을 다룹니다. 네이티브 조언(Native advice)은 설치된 버전의 모든 차원에 대해 실제 하네스 증거를 통과해야 합니다. 프로토콜 고정 장치(protocol fixtures)와 공식 스키마 문서만으로는 이를 인증할 수 없습니다. Cass는 명시적인 아카이브 소스로 남아 있습니다. Native Codex, omp/pi, 그리고 Grok 통합 각각은 자체 지원 기록이 필요합니다. 호환되지 않는 식별자 또는 가시성 의미론(semantics)은 조언을 비활성화합니다. 어댑터 계약(adapter contract)이 이러한 검사를 정의합니다.
Bare `sr`는 `sr rank`와 동일하며, TTY에서는 테이블 형태로, 그렇지 않으면 JSON 형태로 출력됩니다. 이는 TUI를 시작하지 않습니다. 소스 플래그는 상호 배타적이며, 파이프된 stdin은 명시적인 입력 모드에 의해서만 소비됩니다. `sr capabilities --json`은 설치된 빌드에서 사용 가능한 명령어, 스키마 및 선택적 기능을 나열합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기