MCPcopy
hub / github.com/epoko77-ai/im-not-ai

github.com/epoko77-ai/im-not-ai @v2.0.0 sqlite

repository ↗ · DeepWiki ↗ · release v2.0.0 ↗
74 symbols 113 edges 4 files 8 documented · 11%
README

im-not-ai — 한글 AI 티 제거기

Humanize KR — 한글 AI 티 제거기 v1.6.1

AI(ChatGPT · Claude · Gemini 등)가 쓴 한글 글을 내용은 한 글자도 건드리지 않고 문체 · 리듬 · 표현만 자연스러운 한국어로 되돌리는 Claude Code 스킬입니다.

번역투, 과도한 영어 인용, 기계적 병렬 ("첫째 · 둘째 · 셋째"), "결론적으로 / 시사하는 바가 크다" 같은 AI 특유 관용구, 피동태 남용, 문두 접속사 남발, 이모지·불릿 남용 등 10대 카테고리 × 40+ 서브 패턴을 심각도(S1/S2/S3)로 분류해 스팬 단위로 탐지한 뒤, 윤문합니다.

왜 한글 특화인가

영어권 humanizer(QuillBot · Hix · Undetectable AI)는 한국어에 약합니다. 한글 AI 글의 티는 대부분 영어 번역투에서 나옵니다.

  • "AI 기술을 통해 효율을 높일 수 있다" → "AI로 효율을 높인다"
  • "이에 있어서 중요한 점은" → "여기서 중요한 건"
  • "~에 의해 생성된" → "~가 만든"
  • "결론적으로, 이는 시사하는 바가 크다" → (삭제)

이 하네스는 그 한글 고유 패턴을 SSOT로 정리하고, 탐지·윤문·내용 감사·자연스러움 검증을 분리된 에이전트로 수행합니다.

4대 철칙

  1. 의미 불변 — 사실 · 주장 · 수치 · 고유명사 · 직접 인용은 100% 원문 보존.
  2. 근거 기반 — 탐지된 span에만 수술적 수정. 탐지 없는 구간은 건드리지 않음.
  3. 장르 유지 — 칼럼을 문학으로, 리포트를 에세이로 옮기지 않음.
  4. 과윤문 금지 — 변경률 30% 초과 시 경고, 50% 초과 시 강제 중단.

아키텍처 (v1.6)

Fast 모드 (디폴트, 5,000자 이하)

입력 텍스트
    ↓
[humanize-monolith]   ── 한 콜 안에서 탐지 → 윤문 → 자체검증 일괄
    ↓                     (도구 호출 4~5회 캡, opus, ~3분)
final.md + summary.md

Strict 모드 (--strict 또는 8,000자+ 자동 승급)

입력 텍스트
    ↓
[ai-tell-detector]        ── 탐지 (span · category · severity)
    ↓
[korean-style-rewriter]   ── finding 기반 수술적 윤문
    ↓
[병렬 검증 팀]
    ├─ [content-fidelity-auditor]  ── 13항 체크리스트로 의미 동등성 감사
    └─ [naturalness-reviewer]      ── 탐지 재실행으로 잔존·과윤문 판정
    ↓
[오케스트레이터 종합]
    ├─ accept              → final.md + summary.md
    ├─ rewrite_round_2     → 2차 윤문 (최대 3회)
    ├─ rollback_and_rewrite → 문제 edit 롤백
    └─ hold_and_report     → 사람 검토 권고

7인 에이전트

에이전트 모드 역할
humanize-monolith Fast 디폴트 단일 호출 윤문 (탐지·윤문·자체검증 일괄, 도구 호출 4~5회 캡)
ai-tell-detector Strict span 단위 JSON 탐지 리포트 생성
korean-style-rewriter Strict finding 기반 수술적 윤문, 변경률 모니터링
content-fidelity-auditor Strict 의미 동등성 감사 (13항), 훼손 시 롤백 지시
naturalness-reviewer Strict 잔존 AI 티 · 과윤문 · 자연도 판정, 품질 등급 A~D
korean-ai-tell-taxonomist 별도 명령 분류 체계(SSOT) 관리, 신규 패턴 심사 승격
humanize-web-architect 옵션 Next.js 15 + Vercel 웹 서비스 확장 설계

AI 티 분류 체계 (요약)

ID 대분류 대표 서브 패턴
A 번역투 "~를 통해", "~에 대해", "~에 있어서", 이중 피동 "~되어진다", "가지고 있다"
B 영어 인용·용어 과다 과도한 괄호 병기, 번역 가능한 영어 그대로
C 구조적 AI 패턴 기계적 "첫째/둘째/셋째", 과도한 불릿·헤딩·이모지
D AI 특유 관용구 "결론적으로", "시사하는 바가 크다", "주목할 만하다", "혁신적인"
E 리듬 균일성 문장 길이 표준편차 낮음, 동일 종결어미 반복
F 수식·중복 "매우", "정말", 동의어 이중 수식, "~적/~성/~화" 남발
G Hedging 남용 "~할 수 있을 것으로 보인다" 다중 완곡
H 접속사 남발 문두 "또한/따라서/즉/나아가" 연속
I 형식명사 과다 "것이다", "점", "수", "바", "~할 필요가 있다"
J 시각 장식 남용 과도한 볼드, "따옴표", 대시(—) 남발

전체 40+ 서브 패턴과 처방: ai-tell-taxonomy.md · rewriting-playbook.md

심각도 & 품질 등급

심각도 - S1 결정적: 한 번만 나와도 AI 확신. 무조건 제거. - S2 강함: 1~2회 허용, 3회+ 반복 시 제거. - S3 약함: 다른 패턴과 중첩될 때만 문제.

품질 등급 (윤문 후) - A: S1 0건, S2 ≤2건, 점수 개선 70%+ - B: S1 0건, S2 ≤4건, 개선 50%+ - C: S1 1~2건 or 과윤문 시그널 2개 → 2차 윤문 - D: S1 3건+ or 심각한 과윤문 → 사람 검토

사용법 — 5분이면 따라합니다

0. 전제

Claude Code가 설치돼 있어야 합니다. Mac · Windows · Linux 모두 지원합니다.

설치 확인:

claude --version

Claude Code는 터미널에서 Claude(Anthropic의 AI)와 대화하며 파일을 같이 편집하는 CLI입니다. 이 리포의 스킬·에이전트는 Claude Code에서만 작동합니다. (웹 버전 Claude.ai나 일반 ChatGPT에서는 안 됩니다.)

1. 리포 받기

git clone https://github.com/epoko77-ai/im-not-ai.git
cd im-not-ai

2. 이 폴더 안에서 Claude Code 켜기

claude

중요:im-not-ai 폴더 안에서 실행하세요. 다른 위치에서 켜면 이 리포의 스킬이 로드되지 않아 일반 Claude Code처럼 동작합니다.

3. AI가 쓴 한글 글 붙여넣고 부탁하기

Claude Code에서는 세 가지 방법 중 편한 쪽으로 사용합니다. Codex 사용자는 아래 방법 D의 community port를 참고하세요.

방법 A — 자연어 한 문장 (가장 쉬움)

평소 말투 그대로 쓰면 됩니다:

이 AI 글 자연스럽게 윤문해줘:

[ChatGPT / Claude / Gemini 초안 여기에 붙여넣기]

아래 표현 중 아무거나 쓰면 스킬이 자동 발동합니다: - "AI 티 없애줘" - "GPT 문체 제거해줘" - "사람이 쓴 것처럼 윤문해줘" - "번역투 제거" - "한글 AI 윤문"

방법 B — 슬래시 커맨드 (v1.2~)

/humanize [윤문할 텍스트 또는 파일 경로]

옵션을 인자 끝에 자연어로 적을 수 있습니다: 장르: 칼럼, 강도: 적극, 최소심각도: S1. 결과가 마음에 안 들면 /humanize-redo "번역투만 다시" 같은 식으로 재실행. 두 커맨드 정의: commands/

방법 C — Plugin / 자동 설치기 (@gaebalai 포크)

gaebalai/im-not-ai 포크가 Claude Code Plugin/Marketplace 규격으로 패키징되어 있습니다. /plugin install humanize-korean@epoko77-ai-plugins 또는 ./scripts/install.sh --target ~/my-project 한 줄로 설치 가능합니다. 본체 정식 Plugin 지원은 v1.6 검토 중입니다 (Issue 추적 예정).

방법 D — Codex Plugin (community)

Squirbie/im-not-ai-codex에서 Codex Desktop/CLI용 community plugin 포트를 제공합니다. 원본 taxonomy/playbook을 유지하고 Codex plugin/skill 구조에 맞게 어댑터화한 별도 배포판이며, 공식 Claude Code 버전과 분리되어 관리됩니다.

설치:

codex plugin marketplace add Squirbie/im-not-ai-codex

방법 E — Web UI (비공식)

opencode 로 윤문하는 커뮤니티 제작 포트입니다. - 접속: im-not-ai-ocx.illuwa.click

4. 결과 확인

Claude Code가 입력 길이·옵션에 따라 두 모드 중 하나로 처리합니다.

Fast 모드 (디폴트, 5,000자 이하 · ~3분)humanize-monolith 한 콜이 메모리 안에서 탐지·윤문·자체검증을 모두 끝냅니다. 산출물은 _workspace/{실행날짜-번호}/에 두 파일:

파일 내용
01_input.txt 원문 그대로
final.md 윤문본 + 본문 끝 `` 주석 블록(메트릭·카테고리 탐지 before/after·자체검증 6항·등급·주요 변경 하이라이트). HTML 주석이라 마크다운 뷰어·웹 게시·복사 시 본문에만 노출

Strict 모드 (--strict 또는 8,000자+ 자동 승급 · 더 정밀) — 5인 파이프라인이 단계별 산출물을 분리해 저장합니다:

파일 내용
01_input.txt 원문 그대로
02_detection.json AI 티 탐지 리포트 (위치·종류·심각도)
03_rewrite.md 윤문본
04_fidelity_audit.json 내용 훼손 감사 결과
05_naturalness_review.json 자연도 재측정 결과
final.md + summary.md 최종 윤문본 + 점수·주요 변경·등급 요약

부분 재실행("이 카테고리만 다시"·"2차 윤문")은 strict 모드로 자동 전환됩니다.

5. 결과가 맘에 안 들면

그대로 말씀하시면 됩니다. 재실행·수정 명령을 따로 외울 필요 없습니다:

  • "이 문단만 다시 윤문해줘" — 해당 구간만 재시도
  • "번역투만 더 손봐줘" (또는 "관용구만 다시") — 특정 카테고리만 재처리
  • "윤문 강도 낮춰줘" — 보수적 윤문 (결정적 패턴만 제거)
  • "원문 톤을 더 살려줘" — 변경률 상한을 낮춰 원문 유지
  • "2차 윤문해줘" — 현재 결과를 한 번 더 다듬기

6. 다른 글로 또 돌리고 싶을 때

Claude Code 세션 안에서 새 글을 붙여넣고 똑같이 부탁하면 됩니다. 실행마다 새 _workspace/{날짜-번호}/ 폴더가 만들어져 이전 결과와 섞이지 않습니다.

Do-NOT List (탐지·윤문 대상 제외)

  • 수치 · 단위 · 날짜
  • 고유명사 · 인명 · 제품명 · 모델명
  • 큰따옴표 내부 직접 인용
  • 법률 · 규정 조문
  • 학술 개념어 (불가피한 경우)

웹 서비스 확장 (옵션)

humanize-web-architect 에이전트가 Next.js 15 App Router + Vercel Fluid Compute + AI Gateway 기반 웹앱 설계를 담당한다. UX는 4화면(입력 → 탐지 하이라이트 → 좌우 diff → 윤문본 복사). 상세: web-service-spec.md.

로드맵: v0 MVP(익명·단일 호출) → v1(로그인·히스토리) → v2(Pro/Team · API · 웹훅) → v3(Chrome Extension) → v4(일본어·중국어 확장).

v1.6 — KatFish·LREAD 외부 연구 통합 + 정량 점수 레이어 (2026-05-07)

v1.5 fast path가 사람 판정 등급 A를 통과해도 연결어미 뒤 쉼표(C-11) 같은 한국어 특이 신호를 일관되게 못 잡는 잔존 약점이 있음을 정량으로 확인했습니다. 외부 연구 KatFish(Park et al., 2,094편 코퍼스)와 LREAD(인간 판독 60% → 루브릭 90%)를 검토한 결과, 한국어에서 가장 강한 단일 분리도 신호가 연결어미 뒤 쉼표 4.84배(에세이)였습니다.

v1.6은 monolith·5인 에이전트 정의를 무수정한 채 본진 분류 체계 + 룰북 + 외부 정량 점수 레이어만 보강한 설계입니다.

핵심 변경

  • 본진 분류 체계 v1.5.1 → v1.6 — 신규 5건(C-11 연결어미 뒤 쉼표 [S1] · C-12 쉼표 포함률 [S2] · E-5 쉼표 분절 평균 길이 [S2] · E-6 쉼표 전후 POS 다양성 [S2, 에세이·뉴스 한정] · G-3 안전 균형 lexicon [S2]) + 보강 2건(D-1 결산 lexicon 4종 정식 인용 / F-4 한자어 명사화 -성·-적·-화 명시)
  • quick-rules.md 보강 — C-11·G-3·F-4·D-1 lexicon 4건을 monolith 슬림 룰북에 박아 윤문 단계에서 직접 처방. 123줄 → 126줄 (+3, +200 토큰)
  • metrics.py 신설 — KatFish baseline 기반 8개 정량 지표(쉼표 포함률·연결어미 쉼표·분절 길이·POS 다양성·결산 lexicon·균형 lexicon·한자어 밀도·어휘 다양성) 표준 라이브러리만으로 계산. z-score + risk_band(low/medium/high) 출력
  • prepare_monolith_input.py 신설 — monolith 호출 외부 사전처리로 점수 산출, 결합 입력 파일에 prepend. monolith 도구 호출 4회 캡 그대로 보존(v1.5 1번 철칙)
  • 5인 strict 파이프라인 그대로 유지 — voice profile·candidate pool 재도입 없음

검증 결과 (run 003~007 5편 일괄, 같은 입력에 v1.5 vs v1.6 두 번 윤문)

지표 v1.5 v1.6 개선
ending_comma 평균 z +3.40 +0.67 −2.73 (인간 baseline 근접)
risk_band low 도달 0/5 3/5 +3
input 대비 risk_score 감소 2/5 4/5 +2
등급 A 유지 5/5 5/5 회귀 없음
도구 호출 4회 캡 5/5 5/5 보존

가장 심한 케이스(run 006 교육 블로그)는 ending_comma_rate 0.500 → 0.120(76% 감소), z=+5.84 → +1.00로 정상 구간에 들어왔습니다. v1.5 회귀에서 5편 중 4편이 악화했던 자리에서 v1.6은 5편 전수 개선했습니다.

한계 — 다음 회차 과제

  • baseline의 lexical_diversity·hanja placeholder는 KatFish 미공개 셀로 보수적 추정값. 한국어 essay 실측 교정 필요
  • 정책·공적 문서(run 007)는 ending_comma z=+2.47 잔존. 장르별 baseline 별도 카탈로그 필요
  • 일부 케이스에서 char_count 증가(쉼표 제거 부작용으로 분절 길이 증가). 룰북에 분절 재조정 가이드 추가 검토

상세 산출물: _workspace/v1.6-2026-05-06/01_pattern_candidates.md · 02_katfish_baseline.json(references/baseline.json로 정식 배치) · 03_taxonomy_diff.md · 04_input_shim_spec.md · 05_regression_report.md.

v1.6.1 hotfix — final.md 통합 산출물 (2026-05-07)

v1.6 5편 일괄 검증 중 sub-agent가 두 번째 Write를 자체 보수 룰로 회피하는 패턴이 5/5 재현됨을 확인했습니다(권한 차단 아닌 self-imposed). v1.5 시점에도 같은 현상이 있었고, summary 메타가 응답 인라인으로 전달되어 디스크 산출물에서 누락되는 회귀 위험이 있었습니다.

해결 — monolith 산출물을 final.md 1개로 통합:

  • final.md 본문 끝에 `` HTML 주석 블록 1개로 메트릭·카테고리 탐지·자체검증·등급·하이라이트·잔존 finding을 함께 박아 단일 Write로 끝
  • HTML 주석이라 마크다운 뷰어·웹 게시·복사 시 본문에만 노출. 메타 추출은 grep -A 30 "HUMANIZE-SUMMARY" 또는 간단한 파서로
  • monolith 도구 호출 캡 4회 → 3회로 자연 절감 (Read 입력 + Read 룰북 + Write final). v1.4 함정 회피 마진 확대
  • summary.md(v1.6.0 이전 산출물 또는 외부 도구 산출물)는 그대로 보존, 삭제·갱신 금지

본 변경은 monolith 정의 파일만 수술하고, 5인 strict 파이프라인·metrics.py·prepare_monolith_input.py·분류 체계는 모두 무수정.


v1.5 — v1.1 베이스라인 + Monolith Fast Path (2026-04-26)

v1.2(voice profile)·v1.3(candidate pool)·v1.4(역할별 모델 분산)이 모두 핫패스 비용을 잡지 못했음이 검증으로 확인됐습니다. 5,000자 입력 윤문 wall-clock이 25분까지 늘어났고, v1.4의 모델 다운그레이드로도 detector 1콜이 8분이었습니다. 진단 결과 진범은 모델이 아니라 에이전트 간 컨텍스트 재로드 + 에이전트 내부 도구 호출 chain 누적이었습니다.

v1.5는 v1.2~v1.4를 모두 폐기하고 v1.1 단순 구조로 롤백한 뒤 단일 호출 monolith fast path만 추가한 설계입니다.

핵심 변경

  • v1.2~v1.4 폐기 (롤백) — 5인 에이전트 정의를 v1.1 commit f25ee64 시점으로 복원, voice profile·candidate pool 관련 reference 4개 파일 삭제, 권한 위계 §1~§6 절 제거
  • Monolith Fast Path 신설 (디폴트)humanize-monolith 에이전트(opus): 한 콜 안에서 탐지·윤문·자체검증 일괄 처리, 도구 호출 4~5회 캡(Read 입력 + Read 룰북 + Write final + Write summary), 5,000자 이하 wall-clock 2~3분 목표
  • quick-rules.md 신설 (~150줄) — 본진 386줄에서 S1·S2 핵심 패턴만 추린 슬림 룰북. monolith 전용. 자체검증 6항 + 등급 기준 포함
  • Strict 모드 보존 — v1.1 5인 파이프라인을 --strict 또는 8,000자+ 자동 승급으로 그대로 유지. 부분 재실행("이 카테고리만 다시"·"2차 윤문")도 strict 자동 전환
  • 분류 체계 본진 보존ai-tell-taxonomy.md의 v1.2~v1.3.1 발굴 신규 패턴(C-9·C-10·D-7·H-3·I-3·I-4 보강 등) 모두 그대로 유지

검증 결과 (같은 칼럼 2,604자)

항목 v1.4 (detector haiku 1콜) v1.5 (monolith opus 1콜)
Wall-clock 7분 58초 3분 28초
도구 호출 12회 4회
토큰 113,621 68,045
윤문 등급 (단계 1만 끝, 미완) A (자체검증 6/6, 변경률 22%)

5인 파이프라인 25분 → monolith 3.5분, 약 86% 단축. opus로 격상하고도 도구 호출 chain을 압축한 게 결정적이었습니다.

호환성 안내

  • v1.3.1 사용자: author-context.yaml(voice profile)이 더 이상 작동하지 않습니다. 메인테이너 측 실전 사용 사례가 미확보였고, 필요 시 v1.6에서 monolith 옵션으로 재도입을 검토합니다.
  • 슬래시 커맨드 /humanize·/humanize-redo는 그대로. 내부에서 v1.5 fast/strict 분기 자동.

회고

v1.4 작업은 모델 다운그레이드를 진단의 1순위로 잡았으나, 실측이 그 가설을 부쉈습니다. opus로 격상하고도 도구 호출 chain을 압축하니 더 빨라졌어요 — 모델보다 에이전트 내부 도구 호출 횟수가 wall-clock의 진짜 변수였습니다. 이 교훈이 v1.6 이후 설계의 1번 원칙입니다.

본질 테스트 — 5편 다양성 검증 (2026-04-26)

v1.5 발행 직후, 메인테이너가 원래 계획했던 본질 테스트(원본 AI 글이 사람 글로 진짜 변하나)를 5편으로 진행했습니다. 회차 1 합성 제조업 칼럼 1편 + 회차 3 Gemini 직접 호출 4편(핀테크 칼럼·제조 리포트·교육 블로그·헬스케어 정책)으로 모델·장르·길이 다양성을 확보.

run 입력 길이 변경률 등급
003 합성 제조 칼럼 716자 14% A
004 Gemini 핀테크 칼럼 2,725자 18% A
005 Gemini 제조 리포트 2,572자 18% A
006 Gemini 교육 블로그 2,445자 22% A
007 Gemini 헬스케어 정책 2,316자 18% A

5편 모두 등급 A · 자체검증 6/6 통과 · 변경률 안전 구간(10~25%). Gemini 시그니처(C-10 콜론 헤딩 · D-7 변환 공식 · D-4 hype 어휘 · J-2 따옴표 강조 · J-1 마크다운 ** 강조 · G-1 미래 단정 · I-4 권고형 결말)가 4개 장르 모두에서 일관되게 제거됐고, 고유명사·수치·인용은 100% 보존됐습니다.

가속 효과 누적: v1.3.1로 5편 직렬 처리 추정 약 125분 → v1.5 monolith 병렬 약 7분(병렬 효과 포함). 94% 단축, 17~18배 가속. 메모리에 가설로 박아둔 "wall-clock 1/7로 줄어 7배 샘플 처리 가능"이 실측에서 18배로 확인됐습니다.

관련 PR: #13 · 태그: v1.5.0

v1.3.1 hotfix — 회차 3 Gemini 직접 호출 검증 + 본진 신규 2건·보강 3건 (2026-04-25)

v1.3 발행 직후, 사용자께서 직접 Gemini API 키를 제공해 회차 3 진짜 외부 데이터 검증을 진행했습니다. Gemini Pro 2.5 직접 호출 4편(약 10,058자, 자연 prompt만 사용)에서 본진 신규 2건과 보강 3건을 추가로 영구 반영하고, 회차 2 hold 후보의 모델 분산 검증을 마쳤습니다.

본진 신규 2건 (Gemini-우세 시그니처)

  • C-10 콜론 부제 헤딩 공식 "X: Y" 또는 "X: A에서 B로" — Gemini가 헤딩에 거의 자동으로 콜론을 사용하는 시그니처 (8회·3파일·3도메인 분산)
  • D-7 변환 공식 "X에서 Y로 / X을 넘어 Y로" — 패러다임 전환·진화·고도화를 표현할 때 자동 등장 (7회·2파일·2도메인)

본진 보강 3건

  • D-4 hype 어휘 셋 확장 — 본진 "혁신적·획기적·전례 없는"에 Gemini 어휘 추가: "압도적·막강한·폭발적·파격적·대대적·강력한·치열한·뜨거운"
  • J-2 빈도 임계 명시 — 한 문서에 따옴표 강조 어휘 5회 초과 시 S2 강화 (Gemini 한 문서 17~33회 사례)
  • I-4 권고형 결말 변종 추가 — 본진 "~할 필요가 있다"에 정책·보고서 결말 "~해야 한다·~해야 합니다" 변종 추가, 한 문서 5회 초과 임계

회차 2 hold 후보 검증 결과 — GPT vs Gemini 모델 시그니처 차이

회차 2 hold 후보 GPT 빈도 Gemini 빈도 결론
"결국" 문두 단언 9+ 1 GPT-우세 시그니처
"X은 A가 아니라 B다" 부정-긍정 대구 7+ 2 GPT-우세 시그니처
5~8개 영역 콤마 빠른 나열 4 0 GPT-특유 가능성 매우 강함

회차 2 hold 후보 3건이 Gemini에서 거의 재현되지 않았다는 사실은 분류 체계에 "모델 우세 분포" 메타데이터 차원 도입 필요성을 시사합니다(v1.4 검토 사항). 회차 4에서 국내 모델·Claude 데이터로 모델 분포를 확정한 뒤 결정합니다.

회차 1·2·3 누적 결과 — v1.2 신규 0건이 v1.3.1에서 신규 3·보강 6건으로

회차 데이터 본진 신규 본진 보강 누적 효과
1 Claude 합성 샘플 2건 C-9 (1) I-2 (1) 인프라 검증
2 뉴스핌 외부 GPT 2건 0 I-3·H-3 (2) Gate 1.3 보호장치 검증
3 Gemini 직접 호출 4건 C-10·D-7 (2) D-4·J-2·I-4 (3) 모델 분산 확보 + GPT/Gemini 차이 발견
합계 8건 (3 모델 × 다양 장르) 3건 6건 v1.2 멈춤 → v1.3.1 풍부

전체 v1.3.1 변경 이력:

Core symbols most depended-on inside this repo

F
called by 13
scripts/make_thumbnail.py
plain
called by 8
scripts/make_thumbnail.py
row
called by 6
scripts/prepare_monolith_input.py
strike_text
called by 4
scripts/make_thumbnail.py
_next_run_dir
called by 1
scripts/prepare_monolith_input.py
_resolve_run_dir
called by 1
scripts/prepare_monolith_input.py
_fmt_z
called by 1
scripts/prepare_monolith_input.py
_z_marker
called by 1
scripts/prepare_monolith_input.py

Shape

Method 57
Function 11
Class 6

Languages

Python100%

Modules by API surface

tests/test_metrics_v2.py49 symbols
tests/test_metrics.py14 symbols
scripts/prepare_monolith_input.py8 symbols
scripts/make_thumbnail.py3 symbols

For agents

$ claude mcp add im-not-ai \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact