harness-export SKILL.md skillA
harness-export from this-hw/claude-code-kit is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add this-hw/claude-code-kit/harness-export@git:20260827.d054723Pins git:20260827.d054723 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- this-hw/claude-code-kit
- Path
plugins/common/skills/harness-export/SKILL.md- Versions recorded
- 4
- Latest version
- git:20260827.d054723, committed Aug 27, 2026
- First version recorded
- Aug 23, 2026
- Size
- 8,384 bytes
- Repository stars
- 4
- License
- MIT
Export the kit's host-neutral rules to AGENTS.md so non-Claude-Code harnesses (Codex, OpenCode, Copilot, Pi, Hermes) follow the same discipline. Use when a repo is worked by more than one agent harness, or after changing rules/. Trigger with /harness-export.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Harness Export — 규범을 하네스 중립으로 내보내기
CCK의 규범(`rules/*.md`)은 **Claude Code의 SessionStart 훅으로만** 주입된다.
그런데 Orca·Paseo 같은 ADE에서는 한 레포에 Claude Code와 Codex·OpenCode·Pi를
**동시에** 붙여 굴린다. 그 순간 레포의 절반은 CCK 규율 밖에서 동작한다.
이 스킬은 규범을 `AGENTS.md`(Codex·OpenCode·Copilot CLI·Cursor가 공통으로 읽는 사실상
표준)로 내보내 그 구멍을 메운다.
## 사용 시점
| 상황 | 실행 |
| --- | --- |
| 레포를 두 개 이상의 하네스가 만진다 | `/harness-export` 1회 → `AGENTS.md` 커밋 |
| `rules/*.md`를 고쳤다 | 재생성 (안 하면 다른 하네스가 옛 규범을 읽는다) |
| CI/게이트에서 최신 여부만 확인 | `--check` |
## 절차
### 소비자(플러그인 설치) 환경 — 기본 경로
구현은 **플러그인 안**에 있다(`<플러그인 루트>/hooks/export_harness.py`).
설치한 프로젝트에는 이 kit의 `scripts/`가 없으므로 이 경로를 쓴다.
> **`$CLAUDE_PLUGIN_ROOT`를 그대로 신뢰하지 마라.** 이 변수는 스킬의 Bash 컨텍스트에
> **설정돼 있지 않을 수 있다**(kit의 `feedback.sh`·`auto-dev`가 같은 이유로 의존을
> 제거했다). 빈 값이면 `python3 "/hooks/export_harness.py"`가 되어 파일 없음으로
> **종료코드 2**가 나고, exit 표상 2는 "SKIPPED"라서 **원인을 오보고**하게 된다.
> 아래처럼 먼저 해석하라.
```bash
# 1) 구현 위치 해석 — 변수가 비면 캐시에서 찾는다
EH="${CLAUDE_PLUGIN_ROOT:-}/hooks/export_harness.py"
[ -f "$EH" ] || EH=$(ls -1 ~/.claude/plugins/cache/*/claude-code-kit/*/hooks/export_harness.py 2>/dev/null | sort -V | tail -1)
[ -f "$EH" ] || { echo "export_harness.py를 찾지 못했다 — 플러그인 설치 확인"; exit 2; }
…Read the whole file at its exact version.
How to install
mdr add this-hw/claude-code-kit/harness-export@sha256:0296df436a11c47aThe line at the top of this page pins the label git:20260827.d054723, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_xk37sgqcq3ta346v)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 4 versions of this file, between Aug 23, 2026 and Aug 27, 2026, about one every day.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260827.d054723 latest | 2026-08-27 | d054723 | 8,384 B | A | view · diff |
| git:20260826.3fe03c2 | 2026-08-26 | 3fe03c2 | 8,585 B | A | view · diff |
| git:20260823.60b71af | 2026-08-23 | 60b71af | 7,263 B | A | view · diff |
| git:20260823.eb757c9 | 2026-08-23 | eb757c9 | 5,809 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (8384 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
this-hw/claude-code-kit · 4 stars · license MIT · pushed 2026-09-09 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_xk37sgqcq3ta346v GET https://markdownregistry.com/api/v1/resolve?ref=this-hw/claude-code-kit/harness-export GET https://markdownregistry.com/api/v1/blob/0296df436a11c47aadfe6f9331c12bd6271b946edc922bb61804123b1af76f64
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from this-hw/claude-code-kit
Every file in this-hw/claude-code-kit