Community라이팅 & 에디팅github.com

pablodiazjorge/prompt-forge

AI 코딩 에이전트에 지속적인 메모리를 제공하는 드롭인 툴킷입니다. 에이전트 스킬, 세션 간 학습 루프, 지식 지속성을 지원하며 제로 종속성, 백엔드 불필요.

prompt-forge란 무엇인가요?

이 스킬은 AI 코딩 에이전트가 세션 간 학습하고 지식을 지속적으로 유지할 수 있도록 하는 종합적인 툴킷입니다. `pablodiazjorge/prompt-forge`라는 이름으로 알려져 있으며, 주로 개발자 경험 향상과 반복적인 문제 해결에 초점을 맞춥니다. 주 기능으로는 각 코딩 이터레이션 종료 시 자동으로 문제를 감지하고, 기존 문제와 비교하여 새로운 이슈를 생성하거나 업데이트하는 '지속적 이슈 추적(Continuous Issue Tracking)'이 있습니다. 이 스킬은 자체적인 `knowledge/issues/` 디렉토리에 파일만을 생성하므로 안전하고 비파괴적입니다. 또한, 이슈가 3회 이상 발생하면 `ai-engineer` 스킬로 핸드오프되어 이슈 승격을 처리하며, 여러 개발자가 동시에 작업할 때도 UUID 기반 ID 생성으로 충돌 위험이 없습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add pablodiazjorge/prompt-forge

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

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

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

문서

개발자: 지속적 이슈 추적

트리거

모든 중요한 코딩 이터레이션의 끝 또는 사용자가 명시적으로 요청할 때 실행합니다. 작업 중간에는 실행하지 말고 자연스러운 중단 지점을 기다리세요.

이 스킬은 세션 시작 시 기본적으로 로드됩니다. 안전하고 비파괴적이며 knowledge/issues/open/ 및 knowledge/issues/INDEX.md에만 기록합니다.

알고리즘

1단계 — 현재 채팅 스캔

현재 대화에서 다음 신호 유형을 검토합니다.

신호예시우선순위
수정된 오류"PowerShell이 {{ }}를 잘못 해석했습니다", "ngx-translate v18에 forRoot()가 없습니다"높음
API 발견"linkedSignal은 Node ≥22가 필요합니다", "Angular 22에서 provideZonelessChangeDetection()이 안정적입니다"높음
찾은 해결 방법"템플릿의 경우 Set-Content 대신 create_file을 사용하세요"중간
반복된 패턴이 세션에서만 동일한 오류가 2회 이상 발생했습니다높음
프로젝트 특성"이 모노레포는 npm 워크스페이스를 사용합니다", ".gitignore가 .github/를 제외합니다"중간
도구 제한 사항"Copilot이 usage.prompt_tokens를 직접 노출하지 않습니다"낮음
사용자 선호도"&&가 아닌 ;로 명령어를 구분하는 것을 선호합니다"중간

2단계 — 이슈 레지스트리와 교차 참조

  1. knowledge/issues/INDEX.md를 읽습니다 — 모든 기존 이슈 ID, 제목, 카테고리를 가져옵니다.
  2. 1단계의 각 신호에 대해 기존 이슈와 일치하는지 시도합니다:
    • 키워드 중복(제목 + 설명)으로 일치
    • 카테고리 + 유사한 오류 패턴으로 일치
    • grep_search를 사용하여 knowledge/issues/open/에서 관련 내용 검색

3단계 — 이슈 생성 또는 업데이트

새 이슈 (일치하는 항목 없음)

ID 생성: ISSUE-YYYYMMDD-XXXX (여기서 XXXX = UUID의 처음 4자리 16진수)
  PowerShell: [guid]::NewGuid().ToString().Substring(0, 4)
  예시: ISSUE-20260624-a1b2
TEMPLATE.md를 사용하여 knowledge/issues/open/ISSUE-YYYYMMDD-XXXX.md 생성
occurrences=1, certainty=low, status=open 설정
created_by를 "developer"(또는 현재 에이전트 식별자)로 설정
INDEX.md → 열린 이슈 테이블에 새 행 삽입
세션 토큰 데이터가 있으면 증거 섹션에 선택적으로 추가

ID는 UUID 기반이므로 INDEX.md를 먼저 읽을 필요가 없습니다. 여러 개발자가 동시에 작업할 때 충돌 위험이 없습니다.

기존 이슈 업데이트 (일치하는 항목 발견)

발생 횟수(occurrences)를 1 증가
last_seen을 오늘 날짜로 업데이트
현재 세션 정보를 sessions 배열에 추가
확실성(certainty) 재평가:
  - 1회 발생 → low
  - 2회 발생 → medium
  - 3회 이상 발생 → high
replace_string_in_file을 사용하여 open/의 이슈 파일 업데이트
INDEX.md의 개수 및 행 데이터 업데이트

INDEX.md 병합 충돌

두 개발자가 동시에 INDEX.md에 행을 추가하면 Git 병합 충돌이 테이블 본문에서 발생할 수 있습니다. 해결 방법: 두 브랜치의 모든 행을 유지하고 요약 숫자를 업데이트하기 위해 디렉토리를 다시 계산합니다.

보고서

요약 테이블을 출력합니다:

## 개발자 보고서 — YYYY-MM-DD

| 작업 | ID | 제목 | 카테고리 | 세부 내용 |
|--------|----|-------|----------|--------|
| 🆕 새로 생성됨 | ISSUE-001 | ... | ... | open/에 생성됨 |
| 📈 업데이트됨 | ISSUE-002 | ... | ... | 1→2회 발생, 확실성 low→medium |

중요한 규칙

  1. 이슈를 승격하지 마십시오. 승격은 ai-engineer 스킬의 책임입니다. 당신의 유일한 출력은 open/의 이슈 파일과 INDEX.md 업데이트입니다.

  2. 스킬이나 메모리 파일을 수정하지 마십시오. 당신은 .github/skills/ 및 /memories/의 읽기 전용 관찰자입니다. 이들을 건드리지 마십시오.

  3. 모델이 이미 알고 있는 내용에 대해 스킬을 생성하지 마십시오. (예: "var 대신 const를 사용하세요"와 같은 상식) 해당 내용은 완전히 건너뛰십시오.

  4. 이슈 파일을 간결하게 유지하십시오. TEMPLATE.md 형식이 최대이며 최소가 아닙니다. 에세이를 쓰지 마십시오.

  5. 세션 격리. 머리말의 sessions 배열은 세션 UUID를 저장합니다. session_store_sql을 사용하여 사용 가능한 경우 현재 세션 UUID를 찾고, 그렇지 않으면 날짜 기반 식별자를 사용하십시오.

  6. 항상 created_by를 채우십시오. 에이전트 이름 또는 세션 식별자로 설정하여 ai-engineer가 검토 중에 이슈 출처를 추적할 수 있도록 하십시오.

AI 엔지니어에게 전달

이슈가 확실성: 높음(3회 이상 발생)에 도달하면 ai-engineer 스킬이 승격을 처리합니다. developer 스킬은 무엇을 승격할지 또는 어디로 할지 결정하지 않습니다. 신호 강도만 기록합니다. 사용자가 지식을 정리하거나 이슈를 정리하거나 패턴을 승격하도록 요청할 때 하위 에이전트로 ai-engineer 스킬을 실행하십시오.

파일 경로 참조

리소스경로
이슈 레지스트리 인덱스knowledge/issues/INDEX.md
이슈 템플릿knowledge/issues/TEMPLATE.md
열린 이슈knowledge/issues/open/ISSUE-XXX.md
승격된 이슈knowledge/issues/promoted/ISSUE-XXX.md
폐기된 이슈knowledge/issues/discarded/ISSUE-XXX.md

관련 스킬