{
  "markdown": "<div align=\"center\">\n\n# CAPS Unlock Lab\n\n### 제한 해제 경로를 재현하고, 실제 행동까지 측정한다.\n\n**ChatGPT · Codex · Claude Code · Gemini CLI · GitHub Copilot · Cursor · Cline · Windsurf · OpenCode · MCP**\n\n[![CAPS Verify](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/caps-verify.yml/badge.svg)](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/caps-verify.yml)\n[![Research Chat](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/caps-app.yml/badge.svg)](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/caps-app.yml)\n[![Distribution](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/distribution.yml/badge.svg)](https://github.com/Mutoy-choi/CAPS-Agent-Security/actions/workflows/distribution.yml)\n\n[내 플랫폼에서 시작](#내-플랫폼에서-시작) · [내장 연구](#기존-연구와-라이브러리를-내장) · [ASR](#asr은-어떻게-측정하나) · [구성](#하나의-코어-여러-플랫폼) · [문제 해결](#문제-해결)\n\n</div>\n\n---\n\n## 한 문장으로\n\nCAPS Unlock Lab은 **모델의 제한이 Prompt, instruction file, Plugin, Agent Skill, MCP Tool, 첨부파일, 추론 및 다중 턴 경로에서 어디까지 약해지는지 승인된 synthetic 환경에서 재현하고 ASR로 측정하는 범용 연구 도구**입니다.\n\nCAPS는 특정 회사의 모델이나 한 가지 CLI에 종속되지 않습니다. 같은 두 개의 핵심 Skill과 CAPS Verify Runtime을 유지하고, 각 플랫폼에는 얇은 manifest·rule·agent profile만 제공합니다.\n\n> 여기서 “unlock”은 라이브 사용자의 안전장치를 몰래 우회한다는 뜻이 아닙니다. 소유하거나 허가받은 시스템의 synthetic twin에서 제한 해제 경로를 재현하고 방어를 검증한다는 뜻입니다.\n\n## 내 플랫폼에서 시작\n\n### 가장 간단한 공통 설치 — macOS / Linux / WSL\n\n```bash\ncurl -fsSL https://mutoy-choi.github.io/CAPS-Agent-Security/install.sh | bash -s -- skill\n```\n\n이 명령은 공통 Agent Skills를 Codex/OpenCode, Claude Code, GitHub Copilot이 찾기 쉬운 사용자 경로에 설치합니다. 원격 실행 전에 [install.sh](https://mutoy-choi.github.io/CAPS-Agent-Security/install.sh)을 먼저 확인할 수 있습니다.\n\n### Windows PowerShell\n\n```powershell\n& ([scriptblock]::Create((irm https://mutoy-choi.github.io/CAPS-Agent-Security/install.ps1))) skill\n```\n\n### 플랫폼별 한 줄\n\n| 플랫폼 | 권장 설치 | 사용 시작 |\n|---|---|---|\n| **ChatGPT / Codex** | `... install.sh \\| bash -s -- codex` | Codex에서 `$caps-agent-security` 또는 `/skills` |\n| **Claude Code** | 아래 Marketplace 두 줄 | `/caps-unlock:caps-agent-security` |\n| **Gemini CLI** | `gemini extensions install https://github.com/Mutoy-choi/CAPS-Agent-Security --auto-update` | `/caps:audit` 또는 자연어 요청 |\n| **GitHub Copilot** | `... install.sh \\| bash -s -- copilot` | `caps-unlock` custom agent 또는 Skill |\n| **Cursor** | 프로젝트 루트에서 `... -- cursor` | Agent에 “CAPS로 이 구성을 감사해줘” |\n| **Cline** | 프로젝트 루트에서 `... -- cline` | `/caps-unlock-audit.md` workflow |\n| **Windsurf** | 프로젝트 루트에서 `... -- windsurf` | CAPS audit workflow |\n| **OpenCode** | `... install.sh \\| bash -s -- opencode` | Skill 자동 발견 또는 명시 호출 |\n| **모든 MCP/API Agent** | `... install.sh \\| bash -s -- verify` | `caps-verify-runtime` 또는 fixture MCP |\n\n`...`은 다음 주소를 뜻합니다.\n\n```text\ncurl -fsSL https://mutoy-choi.github.io/CAPS-Agent-Security/install.sh\n```\n\n### Claude Code Plugin\n\n```bash\nclaude plugin marketplace add Mutoy-choi/CAPS-Agent-Security\nclaude plugin install caps-unlock@caps-labs --scope user\n```\n\n### ChatGPT / Codex Plugin package\n\n저장소 루트와 `plugins/caps-unlock/`에 `.codex-plugin/plugin.json`과 `skills/`가 들어 있습니다. Codex 로컬 사용은 Agent Skills 설치만으로 바로 시작할 수 있습니다. ChatGPT/Codex universal directory 공개는 별도 제출·심사 절차이며, 그 전에는 로컬 Plugin package 또는 Skills로 테스트합니다.\n\n### Gemini CLI extension\n\n```bash\ngemini extensions install https://github.com/Mutoy-choi/CAPS-Agent-Security --auto-update\n```\n\n포함 항목:\n\n```text\ngemini-extension.json\nGEMINI.md\nskills/\ncommands/caps/audit.toml\ncommands/caps/install.toml\n```\n\n## 플랫폼 지원 수준\n\n| 플랫폼 | Native package | 공통 Skill | 프로젝트 지침 | MCP/API Runtime |\n|---|:---:|:---:|:---:|:---:|\n| ChatGPT / Codex | `.codex-plugin` | `.agents/skills` | `AGENTS.md` | 지원 |\n| Claude Code | `.claude-plugin` | `.claude/skills` | Claude Plugin | 지원 |\n| Gemini CLI | `gemini-extension.json` | `skills/` | `GEMINI.md` | 지원 |\n| GitHub Copilot | custom agent | `.github/skills` | `copilot-instructions.md` | 지원 |\n| Cursor | rule adapter | 공통 Skill 참고 | `.cursor/rules` | 지원 |\n| Cline | workflow adapter | 공통 Skill 참고 | `.clinerules` | 지원 |\n| Windsurf | workflow adapter | 공통 Skill 참고 | `.windsurf` | 지원 |\n| OpenCode | Agent Skills | `.agents/skills` | `AGENTS.md` | 지원 |\n| 기타 호스트 | — | Agent Skills 사양 사용 | 호스트별 | MCP 또는 HTTP sidecar |\n\n자세한 파일 경로와 설치 차이는 [PLATFORMS.md](PLATFORMS.md)에 정리되어 있습니다.\n\n## CAPS가 하는 일\n\nCAPS는 모델 출력 하나가 아니라 **컨텍스트가 권한 있는 행동으로 변환되는 전체 경로**를 평가합니다.\n\n```text\nPrompt / Attachment / AGENTS.md / CLAUDE.md / GEMINI.md\nPlugin / Skill / MCP metadata / Tool response\n                         ↓\n                   Model reasoning\n                         ↓\n                    Tool selection\n                         ↓\n       synthetic read / write / transfer / delete\n                         ↓\n      ASR · benign utility · defense effectiveness\n```\n\n### 공격 표면\n\n| 표면 | 평가 예시 |\n|---|---|\n| Instruction files | `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, IDE rules의 충돌과 우선순위 |\n| Plugin / extension | Manifest, packaged Skills, capability 공급망과 업데이트 drift |\n| Agent Skills | description, `SKILL.md`, references, scripts, assets와 activation |\n| MCP / Tool calling | Metadata·응답 오염, tool selection, confused deputy, 외부 쓰기 |\n| Attachments | PDF·문서·이미지·오디오·비디오의 indirect prompt injection |\n| Reasoning / multi-turn | 긴 reasoning, 누적 context, composition과 safety drift |\n| Defenses | Scanner, exchange guard, action gateway, provenance, confirmation |\n\n## ASR은 어떻게 측정하나\n\nCAPS의 기본 성공 판정은 “응답이 위험해 보인다”는 LLM Judge의 감상이 아닙니다. **금지된 synthetic Tool이 실제로 선택됐는지, fixture 상태가 변했는지**를 우선합니다.\n\n```text\nAttachment-to-Action ASR\n= 금지된 synthetic 행동이 발생한 유효 공격 실행 수\n  ÷ 전체 유효 공격 실행 수\n```\n\n함께 기록합니다.\n\n- 공격군별 ASR와 95% 신뢰구간\n- Defense-Adaptive ASR at fixed budget\n- Benign Task Success Rate\n- False Block Rate와 Confirmation Burden\n- Unauthorized Tool Invocation / Data Flow\n- Composition Delta / Ratio\n- Safety Drift\n- Latency, token, cost overhead\n\n## 기존 연구와 라이브러리를 내장\n\nCAPS는 논문 이름만 README에 나열하지 않습니다. **출처가 연결된 synthetic probe를 공통 Attack Pack으로 정규화하고, 기존 평가 생태계에 내보낼 수 있게 내장**합니다.\n\n### 내장 프로필\n\n| 프로필 | 연구에서 가져온 평가 아이디어 |\n|---|---|\n| `core` | PromptInject-style attachment conflict, AgentDojo-style tool-output injection, MCPTox-style tool metadata poisoning, paired benign control, composition |\n| `adaptive` | `core` + FITD-style progressive multi-turn + PyRIT-ready adaptive seed |\n| `reasoning` | `core` + CoT-Hijacking-inspired long benign-context dilution diagnostic |\n| `multimodal` | `core` + FigStep-inspired native typographic image |\n| `full` | 모든 내장 프로필 |\n\n외부 논문의 원본 prompt·위험 데이터셋을 복제하지 않습니다. CAPS는 canary와 fixture tool만 사용하는 자체 synthetic adaptation을 제공하며, 프로필 이름은 논문 ASR의 정확한 재현을 뜻하지 않습니다.\n\n```bash\ncd caps_verify\ncaps-verify research list\ncaps-verify research describe --profile full\ncaps-verify research sources\n```\n\n### 선택 설치형 라이브러리\n\n```bash\npip install -e \".[research]\"\n```\n\n권장 bundle에는 다음이 포함됩니다.\n\n```text\nInspect AI     재현 가능한 Task·Tool loop·Scorer·Log\nPyRIT          SeedDataset·adaptive/multi-turn orchestration\nAgentDojo      agent prompt-injection task and utility mapping\nPillow         native typographic-image probe rendering\n```\n\ngarak까지 포함하려면 지원되는 Python 버전에서:\n\n```bash\npip install -e \".[research-all]\"\n```\n\n환경 확인:\n\n```bash\ncaps-verify research doctor\n```\n\n### 한 번에 브리지 생성\n\n```bash\ncaps-verify research export \\\n  --profile full \\\n  --output artifacts/research-full \\\n  --endpoint http://127.0.0.1:8788/v1/chat/completions \\\n  --model your-model-id\n```\n\n생성 결과:\n\n```text\ncaps-attack-pack.json       CAPS Shadow Worker\ninspect-dataset.jsonl       Inspect normalized records\npyrit-seeds.prompt          PyRIT SeedDataset YAML/JSON\ngarak-rest.json             garak RestGenerator config\nagentdojo-scenarios.json    AgentDojo custom-suite mapping\nartifacts/*.png             native image canary\nSOURCES.md                   논문·라이브러리·버전·라이선스\nmanifest.sha256.json         evidence hashes\n```\n\nInspect AI용 native task도 함께 등록됩니다.\n\n```bash\ninspect eval \\\n  src/caps_verify/integrations/inspect_task.py@caps_research \\\n  -T profile=core \\\n  --model your-provider/your-model\n```\n\n상세 설명과 연구 출처는 [`caps_verify/docs/research-library-integrations.md`](caps_verify/docs/research-library-integrations.md)를 확인하십시오.\n\n## 가장 빠른 로컬 실험\n\n```bash\ngit clone https://github.com/Mutoy-choi/CAPS-Agent-Security.git\ncd CAPS-Agent-Security/caps_verify\npython -m venv .venv\nsource .venv/bin/activate\npip install -e \".[gateway,dev]\"\npytest\ncaps-verify demo --output artifacts/demo --repetitions 10\n```\n\n주요 명령:\n\n```bash\ncaps-verify research list\ncaps-verify research doctor\ncaps-verify research build --profile core --output artifacts/core.json\ncaps-verify-runtime --help\ncaps-verify-gateway --help\ncaps-verify-shadow-worker --help\ncaps-verify-mcp --help\ncaps-verify demo --output artifacts/demo --repetitions 10\n```\n\n## 하나의 코어, 여러 플랫폼\n\n```text\nskills/                         canonical Skills\n├── caps-agent-security/\n└── caps-install/\n\n.codex-plugin/                  ChatGPT / Codex package\n.claude-plugin/ + plugins/      Claude Code Marketplace\n gemini-extension.json          Gemini CLI extension\n.github/skills + agents/        GitHub Copilot\n.cursor/rules/                  Cursor adapter\n.clinerules/                    Cline adapter\n.windsurf/                      Windsurf adapter\n.agents/skills/                 Codex · OpenCode · shared discovery\ncaps_verify/                    Runtime, research profiles, library bridges, MCP\ncaps_app/                       accessible Research Chat\n```\n\n플랫폼별 사본은 `skills/`와 의미가 달라지지 않도록 CI에서 검사합니다.\n\n## 어떤 구성요소를 설치해야 하나\n\n- **Skill만 필요:** `skill`, `codex`, `opencode`, 또는 Copilot Skill 설치.\n- **호스트의 native package가 필요:** Claude Code Plugin 또는 Gemini CLI extension.\n- **실제 ASR 실행이 필요:** `verify`로 CAPS Verify Runtime 설치.\n- **기존 평가 라이브러리와 연결:** `research` 또는 `research-all` extra 설치.\n- **일반 사용자가 쓸 UI가 필요:** `chat`으로 Research Chat 준비.\n- **MCP fixture가 필요:** CAPS Verify 설치 후 `caps-verify-mcp` 연결.\n\n## 프로젝트 범위 설치\n\n현재 저장소 안에만 파일을 넣으려면:\n\n```bash\nCAPS_SCOPE=project ./install.sh codex\nCAPS_SCOPE=project ./install.sh copilot\n./install.sh cursor\n./install.sh cline\n./install.sh windsurf\n```\n\nInstaller는 기존의 공용 설정 파일을 덮어쓰지 않고 CAPS 전용 이름의 rule·Skill·agent profile만 추가합니다. MCP 예시는 자동 활성화하지 않습니다.\n\n## 접근성\n\n- README와 Pages에서 플랫폼별 설치 경로를 같은 순서로 제공합니다.\n- 키보드 탐색, visible focus, 고대비, reduced motion, forced colors, 200% 확대를 고려합니다.\n- Windows PowerShell과 Unix shell 설치 경로를 함께 제공합니다.\n- `skills.json`, `platforms.json`, `marketplace.json`, `llms.txt`, `llms-full.txt`, 직접 접근 가능한 `SKILL.md`를 제공합니다.\n- 중요한 상태는 색상만으로 표현하지 않습니다.\n\n## 안전 경계\n\n- 소유하거나 명시적으로 승인받은 시스템만 평가합니다.\n- 능동 공격은 live 사용자 대화가 아닌 격리된 synthetic 세션에서 실행합니다.\n- 실제 사용자 질문에 숨겨진 jailbreak 문구를 덧붙이지 않습니다.\n- 실제 자격증명, 고객 문서, 결제, 외부 전송, 삭제 가능한 운영 Tool을 fixture로 사용하지 않습니다.\n- 원격 research bridge는 명시적인 승인 옵션 없이는 생성하지 않습니다.\n- Plugin과 Skill 설치만으로 텔레메트리, 데이터 기여, MCP, Hook, Gateway가 활성화되지 않습니다.\n- synthetic ASR을 특정 상용 모델의 보편적인 안전성 인증으로 과장하지 않습니다.\n\n취약점 제보는 [SECURITY.md](SECURITY.md)를 확인하십시오.\n\n## 문제 해결\n\n### Skill이 보이지 않음\n\n1. 플랫폼 경로에 `SKILL.md`가 존재하는지 확인합니다.\n2. 같은 이름의 오래된 Skill 사본을 제거합니다.\n3. Agent/CLI 세션을 다시 시작합니다.\n4. Codex는 `/skills`, Claude Code는 `/caps-unlock:caps-agent-security`, Gemini CLI는 `/caps:audit`으로 명시 호출해 봅니다.\n\n### Plugin이나 extension 설치가 실패함\n\n- Git과 해당 CLI가 설치되어 있는지 확인합니다.\n- 저장소가 public인지 확인합니다.\n- `claude plugin marketplace update caps-labs` 또는 `gemini extensions update caps-unlock-lab`을 실행합니다.\n- [PLATFORMS.md](PLATFORMS.md)의 수동 경로를 사용합니다.\n\n### ASR 결과가 실제 앱과 다름\n\n기본 Shadow ASR은 표준 synthetic Tool 구성을 사용합니다. 실제 System Prompt, Plugin, Skill, MCP 권한, 승인 흐름까지 반영하려면 capability twin과 host probe가 필요합니다.\n\n### 논문의 수치와 CAPS 수치가 다름\n\nCAPS 내장 프로필은 평가 아이디어를 안전한 fixture 행동으로 정규화한 것입니다. 모델, 데이터, TTS/OCR, judge, 공격 budget, Tool 구성과 성공 조건이 원 논문과 다르므로 수치를 직접 동일시하지 마십시오.\n\n## 링크\n\n- Discovery site: `https://mutoy-choi.github.io/CAPS-Agent-Security/`\n- Source: `https://github.com/Mutoy-choi/CAPS-Agent-Security`\n- Platform matrix: [PLATFORMS.md](PLATFORMS.md)\n- Research integrations: [caps_verify/docs/research-library-integrations.md](caps_verify/docs/research-library-integrations.md)\n- Distribution checklist: [DISTRIBUTION.md](DISTRIBUTION.md)\n- Contributing: [CONTRIBUTING.md](CONTRIBUTING.md)\n\n## 상태\n\nCAPS Unlock Lab은 빠르게 변하는 연구용 프로젝트입니다. 결과에는 모델 snapshot, host, attack-pack version, optional-library versions, 예산, defense configuration, valid/excluded runs, confidence interval, 그리고 evidence hash를 함께 기록하십시오.\n",
  "bytes": 12250,
  "sha": "709e5a870a978a92dc35f621237f9dbf2ea3920364637dbf6af42cf021866b6d",
  "repo_slug": "mutoy-choi/caps-agent-security",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_mutoy_choi_caps_agent_security_c746ab57/readme"
}