Community라이팅 & 에디팅github.com

trailofbits/goal-prompt

Claude Code 및 Codex에서 복사하여 붙여넣기 가능한 /goal 명령어를 초안합니다. 사용자가 목표 프롬프트, 조건, 명령어, 또는 장기 실행 작업 목적을 생성하거나 개선하려 할 때 유용합니다.

goal-prompt란 무엇인가요?

이 스킬은 Claude Code와 Codex의 Goal Mode에서 사용자가 장기 실행 과제를 종료 조건(base: completion condition)과 함께 설정할 수 있도록 도와주는 전문 프롬프트 공학 도구입니다. 사용자가 "목표 작성", "/goal 명령어 생성", "조건 개선" 등을 요청할 때, 종료 가능하고 검증 가능한 조건을 초안하고 한 줄의 /goal 명령어로 포맷팅합니다. 특히, 최대 4,000자의 제한 내에서 조건을 종료 상태(end state) 중심으로 작성하며, 빈번한 우회(easy-out)를 차단하기 위한 검증 체계를 포함합니다. 또한, 보안 연구 목적의 감사(audit) 목표를 위해 최소 검증 기준과 위협 모델을 참조하는 기능도 제공합니다. 포맷팅 시에는 전용 Python 스크립트로 공백을 정규화하고 누락된 중지 절을 경고하며, 4,000자를 초과할 경우 파일로 분리하도록 안내합니다. 결과물은 오직 하나의 fenced `text` 블록으로만 반환되며, 누락된 항목은 'Missing:' 리스트로 표시됩니다.

지원 대상✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/trailofbits/skills/tree/main/plugins/goal-prompt/skills/goal-prompt

Installed? Explore more 라이팅 & 에디팅 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Goal Prompt

/goal은 에이전트가 완료 조건이 충족될 때까지 작업을 계속 유지합니다. Claude Code와 Codex 모두 한 줄로 받아들이며 최대 4,000자입니다. Claude Code에서는 작은 모델이 각 턴 후에 대화 기록만으로 조건을 다시 평가합니다. 명령어를 실행할 수 없습니다.

종료 가능한 조건을 초안한 다음 포맷팅합니다. 하나의 턴보다 큰 작업에는 종료 지점을 확인할 수 있는 조건이 맞습니다. 하나의 거대한 목표를 작성하는 대신, 작은 목표를 검토와 함께 연결하세요.

초안

AND로 연결하여 포함합니다. "또는(or)"은 절대 사용하지 마십시오. 루프가 더 저렴한 분기를 선택합니다.

  1. 종료 상태, 활동이 아님 — "인증 코드 마이그레이션"이 아니라 "모든 legacyAuth() 호출 지점이 auth.verify()를 사용함". 활동은 주장될 수 있지만 종료 상태는 참 또는 거짓입니다.
  2. 먼저 읽을 범위 — 작업 전에 읽을 파일, 이슈, 로그 또는 계획.
  3. 명시된 확인 — 정확한 명령어와 관찰 가능한 결과("npm test가 0으로 종료됨"), 그리고 이를 실행하고 출력을 보여주라는 지시. 대화 기록에 남지 않은 결과는 평가자에게 존재하지 않습니다.
  4. 불변 조건 — 변경되지 않아야 할 사항("vendor/ 수정 없이"), 항상 "검사 자체를 약화시키거나, 건너뛰거나, 편집하지 마십시오"를 포함합니다.
  5. 중지 제한 또는 차단 절 — "또는 20턴 후 중지", "차단되면 중지하고 차단 요인 보고". 이것이 없으면 잘못 작성된 조건이 영원히 반복됩니다. 포맷터가 누락 시 경고합니다. (Claude Code는 세션 재개 시 턴 카운터를 초기화하므로 턴 제한이 조용히 연장됩니다.)

작게 유지하십시오. 모든 제약 조건은 모델이 탐색할 수 있는 상태 공간을 좁힙니다. 가능한 경우 하나의 종료 기준으로 축소하고, 범위와 정의를 참조 파일로 이동하며, 비목표를 제거하십시오. 제약 조건은 실제 쉬운 탈출구를 막을 때만 자리를 차지합니다.

긴 목표의 경우 최종 증거(diff, 보고서, 아티팩트)의 이름을 지정하고 진행 로그 파일을 요구하십시오. 압축 및 재개 시 지속적인 상태를 유지합니다. 요약이 4,000자를 초과하면 세부 사항을 GOAL.md에 넣고 목표에서 해당 파일을 참조하십시오.

누락된 요소를 절대 발명하지 마십시오. 모든 요소를 사용자의 요청, 대화 또는 저장소에 근거하십시오. 추측하지 말고 조회하십시오. 사용 가능한 정보에서 요소를 채울 수 없는 경우에도 사용자가 제공한 내용을 최적화하고 포맷팅한 후, 요소를 생략하고 누락으로 표시하십시오(형식 참조). 발명된 성공 조건이 있는 목표는 잘못된 계약에서 종료됩니다.

쉬운 탈출구 차단

포맷팅하기 전에 작성된 조건을 게으른 모델이 읽는 것처럼 다시 읽으십시오. 의도된 작업을 수행하지 않고 모든 검사를 통과시키는 가장 저렴한 방법은 무엇입니까? 가장 저렴한 방법을 차단하십시오. 이미 가지고 있는 검사를 쌍으로 연결하는 것이 제약 조건을 추가하는 것보다 낫습니다. 가능한 모든 탈출구를 비목표 목록으로 열거하지 마십시오. 반복되는 탈출구:

  • 수정 대신 삭제 또는 스텁 — "검색 결과 출력 없음"은 호출자가 사라진 경우에도 참입니다. 이러한 검사를 기능이 여전히 작동한다는 검사와 쌍으로 연결하십시오.
  • 하위 집합에서 통과 — 하나의 테스트 파일만 실행, 검색 경로 좁히기, 검사에서 디렉토리 제외.
  • 게이트 속이기 — 테스트 건너뛰기/xfail, 예상 출력 하드코딩, 테스트 입력 특수 처리, 검사 편집(불변 조건 규칙).
  • 실행하지 않고 주장 — 대화 기록에 검사 출력 없이 완료 또는 차단 선언(출력 표시 규칙).

위와 동일한 규율: 사용 가능한 정보에서 차단할 수 없는 탈출구는 경고로 Missing: 목록에 넣으십시오. 발명되거나 터무니없는 제약 조건은 표시된 격차보다 나쁩니다.

보안 연구 목표

감사 목표를 하나의 종료 기준으로 축소하십시오. 예를 들어, 참조된 위협 모델 파일에서 유효한 고심각도 취약점 하나를 식별, 트리거 및 검증하는 것입니다. 해당 파일은 목표가 아니라 범위, 공격자 능력, 심각도 기준선 및 건너뛸 알려진 결과를 전달합니다. 중립적인 표현을 사용하고("트리거 및 검증", "이것이 악용 가능하다는 증명"이 아님), 입증된 전제 조건을 요구하십시오. 가정된 공격자 접근이 가장 흔한 오탐입니다. 각 결과 후에 검토를 위해 중지하고, 분류되지 않은 보고서를 쌓지 마십시오. 결과를 단독 발견자가 아닌 새로운 에이전트의 두 번째 패스로 검증하십시오.

형식

초안(파일 또는 stdin)에 대해 uv run --no-project {baseDir}/scripts/format_goal_prompt.py --fenced를 실행하십시오. 공백을 한 줄로 축소하고, /goal 접두사, 따옴표 및 펜스를 제거하고, 누락된 중지 절에 대해 경고하며, 4,000자를 초과하는 출력을 거부합니다. 세부 사항을 파일로 줄이거나 이동하고 다시 실행하십시오.

정확히 하나의 펜스 처리된 text 블록, 한 줄을 반환하십시오.

/goal <단일 정규화된 목표>

주변에 산문을 추가하지 마십시오. 단, 체크리스트 요소를 근거할 수 없는 경우는 예외입니다. 그런 다음 블록 뒤에 Missing: 목록을 추가하고, 각 격차당 한 줄씩 사용자에게 무엇을 제공해야 하는지 알려주십시오.

예시

초안:

/goal 인증 모듈 마이그레이션:
  - legacyAuth()를 auth.verify()로 교체
  - 테스트가 여전히 작동하는지 확인

재초안 및 포맷팅:

/goal 모든 legacyAuth() 호출 지점이 auth.verify()를 사용함: `rg "legacyAuth\(" -t ts` 출력 없음 AND `npm test` 0으로 종료 (둘 다 실행하고 출력 표시), vendor/ 수정 또는 테스트 약화 없이. 차단되면 시도한 경로와 차단 요인을 보고하고 중지하거나 20턴 후 중지.

여기서 npm test는 저장소의 package.json에서 가져온 것이지 추측이 아닙니다. 그리고 이를 일치 항목 없음 검사와 쌍으로 연결하여 가장 저렴한 탈출구인 호출 지점을 마이그레이션 대신 삭제하는 것을 차단합니다. 어떤 요소도 근거할 수 없으면 존재하는 것을 포맷팅하고 격차를 표시하십시오:

초안: 체크아웃 속도 향상, 컨텍스트에 메트릭이나 벤치마크 없음:

/goal 체크아웃 속도 향상

누락:

  • 측정 가능한 종료 상태 — 어떤 메트릭과 임계값이 "더 빠름"을 의미하는지
  • 검증 — 이를 증명하는 벤치마크 또는 명령어
  • 중지 제한 — 예: "또는 20턴 후 중지"

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

trailofbits/address-sanitizer

AddressSanitizer detects memory errors during fuzzing. Use when fuzzing C/C++ code to find buffer overflows and use-after-free bugs.

trailofbits/aflpp

AFL++ is a fork of AFL with better fuzzing performance and advanced features. Use for multi-core fuzzing of C/C++ projects.

trailofbits/agentic-actions-auditor

Audits GitHub Actions workflows for security vulnerabilities in AI agent integrations including Claude Code Action, Gemini CLI, OpenAI Codex, and GitHub AI Inference. Detects attack vectors where attacker-controlled input reaches AI agents running in CI/CD pipelines, including env var intermediary patterns, direct expression injection, dangerous sandbox configurations, and wildcard user allowlists. Use when reviewing workflow files that invoke AI coding agents, auditing CI/CD pipeline security for prompt injection risks, or evaluating agentic action configurations.

trailofbits/algorand-vulnerability-scanner

Scans Algorand smart contracts for 11 common vulnerabilities including rekeying attacks, unchecked transaction fees, missing field validations, and access control issues. Use when auditing Algorand projects (TEAL/PyTeal).

trailofbits/ask-questions-if-underspecified

Clarify requirements before implementing. Use when serious doubts arise.

trailofbits/atheris

Atheris is a coverage-guided Python fuzzer based on libFuzzer. Use for fuzzing pure Python code and Python C extensions.

trailofbits/audit-augmentation

Augments Trailmark code graphs with external audit findings from SARIF static analysis results and weAudit annotation files. Maps findings to graph nodes by file and line overlap, creates severity-based subgraphs, and enables cross-referencing findings with pre-analysis data (blast radius, taint, etc.). Use when projecting SARIF results onto a code graph, overlaying weAudit annotations, cross-referencing Semgrep or CodeQL findings with call graph data, or visualizing audit findings in the context of code structure.

trailofbits/audit-context-building

Enables ultra-granular, line-by-line code analysis to build deep architectural context before vulnerability or bug finding.

trailofbits/audit-prep-assistant

Prepares codebases for security review using Trail of Bits' checklist. Helps set review goals, runs static analysis tools, increases test coverage, removes dead code, ensures accessibility, and generates documentation (flowcharts, user stories, inline comments).

trailofbits/burpsuite-project-parser

Searches and explores Burp Suite project files (.burp) from the command line. Use when searching response headers or bodies with regex patterns, extracting security audit findings, dumping proxy history or site map data, or analyzing HTTP traffic captured in a Burp project.

trailofbits/cairo-vulnerability-scanner

Scans Cairo/StarkNet smart contracts for 6 critical vulnerabilities including felt252 arithmetic overflow, L1-L2 messaging issues, address conversion problems, and signature replay. Use when auditing StarkNet projects.

trailofbits/cargo-fuzz

cargo-fuzz is the de facto fuzzing tool for Rust projects using Cargo. Use for fuzzing Rust code with libFuzzer backend.

trailofbits/chrome-mcp-troubleshooting

Diagnose and fix Claude in Chrome MCP extension connectivity issues. Use when mcp__claude-in-chrome__* tools fail, return "Browser extension is not connected", or behave erratically.

trailofbits/claude-in-chrome-troubleshooting

Diagnose and fix Claude in Chrome MCP extension connectivity issues. Use when mcp__claude-in-chrome__* tools fail, return "Browser extension is not connected", or behave erratically.

trailofbits/code-improver

Runs an autonomous review-and-fix improvement loop over any code target — a skill, plugin, module, or directory — using a reviewer the user names: any installed skill or agent. Keeps a cross-round findings ledger, escalates when fixes stop converging, and guards scope mechanically. Use when asked to 'improve this code until review passes', 'run an improvement loop with <reviewer>', or to iterate review-and-fix with a specific reviewer. For skills prefer the skill-improver entry; for a branch prefer pr-improver.

trailofbits/code-maturity-assessor

Systematic code maturity assessment using Trail of Bits' 9-category framework. Analyzes codebase for arithmetic safety, auditing practices, access controls, complexity, decentralization, documentation, MEV risks, low-level code, and testing. Produces professional scorecard with evidence-based ratings and actionable recommendations.

trailofbits/codeql

Scans a codebase for security vulnerabilities using CodeQL's interprocedural data flow and taint tracking analysis. Triggers on "run codeql", "codeql scan", "codeql analysis", "build codeql database", or "find vulnerabilities with codeql". Supports "run all" (security-and-quality + security-experimental suites) and "important only" (high-precision security findings) scan modes. Also handles creating data extension models and processing CodeQL SARIF output.

trailofbits/constant-time-analysis

Detects timing side-channel vulnerabilities in cryptographic code. Use when implementing or reviewing crypto code, encountering division on secrets, secret-dependent branches, or constant-time programming questions in C, C++, Go, Rust, Swift, Java, Kotlin, C#, PHP, JavaScript, TypeScript, Python, or Ruby.

trailofbits/constant-time-testing

Constant-time testing detects timing side channels in cryptographic code. Use when auditing crypto implementations for timing vulnerabilities.

trailofbits/cosmos-vulnerability-scanner

Scans Cosmos SDK blockchain modules and CosmWasm contracts for consensus-critical vulnerabilities — chain halts, fund loss, state divergence. 25 core + 16 IBC + 10 EVM + 3 CosmWasm patterns. Use when auditing custom x/ modules, reviewing IBC integrations, or assessing pre-launch chain security. Updated for SDK v0.53.x.

관련 스킬