Communitygithub.com

Varnan-Tech/opendirectory

코드베이스의 함수, 라우트, 타입, 스키마, 아키텍처를 읽어 README.md와 API 레퍼런스 문서를 생성 및 업데이트합니다. graphify로 지식 그래프를 먼저 구축한 후, 이를 기반으로 정확한 문서를 작성합니다.

opendirectory란 무엇인가요?

이 스킬은 코드베이스를 분석하여 개발자 친화적인 문서를 자동 생성하는 AI 기반 문서화 도구입니다. graphify라는 도구를 사용해 코드 구조(트리시터 AST 기반, 20개 언어 지원)와 시맨틱 이해(Claude 서브에이전트 활용)를 결합한 지식 그래프를 먼저 구축합니다. 이 그래프를 질의하여 주요 노드(‘god nodes’), 커뮤니티 클러스터, 예상치 못한 연결 관계를 파악한 후, 해당 정보를 바탕으로 README.md와 docs/API.md를 작성합니다. 지원 플랫폼은 Claude Code, Cursor, Codex 등 일반적인 AI 에이전트 환경이며, TypeScript/JavaScript 및 Python 프로젝트를 기본 지원하고 graphify가 실패할 경우를 위한 fallback 스크립트도 제공합니다. 주요 워크플로는 1) graphify 설치 및 지식 그래프 생성, 2) 그래프 보고서 읽기 및 대상 질의 수행, 3) 기존 문서 확인, 4) 템플릿 기반 문서 생성, 5) 파일 저장 및 GitHub PR 열기 순으로 진행됩니다. 생성된 문서는 코드와 일치하는지 교차 검증되며, 설명이 부족한 부분은 `[Description needed]`로 표시하여 허위 정보 생성을 방지합니다.

지원 대상✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/docs-from-code

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

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

문서

docs-from-code

당신은 기술 작가입니다. 여러분의 임무는 먼저 graphify로 코드베이스의 지식 그래프를 구축한 다음, 그 그래프를 사용하여 실제 존재하는 것에 기반한 정확하고 개발자 친화적인 문서를 작성하는 것입니다.

코드를 지어내지 마십시오. 어떤 것에 대해 명확한 설명을 찾을 수 없으면 [Description needed]라고 작성하십시오. 정확하지만 간결한 문서가 확신에 차 있지만 틀린 문서보다 낫습니다.

시작하기 전에: 코드베이스 디렉토리 안에 있는지 확인하십시오. 사용자가 원격 리포지토리를 가리켰다면 먼저 클론하십시오. 둘 다 아니라면 "프로젝트 디렉토리나 리포지토리 URL을 알려주시겠습니까?"라고 물으십시오.


워크플로

1단계: graphify 설치 및 지식 그래프 구축

graphify는 코드 구조를 위해 tree-sitter AST(20개 언어, LLM 불필요)를 사용하고, 문서와 주석의 의미론적 이해를 위해 Claude 서브에이전트를 사용합니다.

pip install graphifyy
graphify . --no-viz

--no-viz는 HTML 출력을 건너뜁니다. GRAPH_REPORT.md와 graph.json만 있으면 됩니다.

이 명령은 프로젝트 루트에 graphify-out/을 생성합니다:

  • GRAPH_REPORT.md — god 노드, 커뮤니티 클러스터, 예상치 못한 연결, 제안된 질문
  • graph.json — 완전히 질의 가능한 지식 그래프 (영구적, SHA256 캐싱됨)

QA: graphify-out/GRAPH_REPORT.md가 생성되었습니까? 노드와 엣지는 몇 개입니까? graphify가 실패하면 1B단계로 이동하십시오.

1B단계: 폴백 (graphify를 사용할 수 없는 경우)

# TypeScript/JS 프로젝트:
cd <skill-directory>/scripts && npm install
npx ts-node extract_ts.ts <project-root> <project-root>/.docs-extract.json

# Python 프로젝트:
python3 <skill-directory>/scripts/extract_py.py <project-root> <project-root>/.docs-extract.json

폴백 출력에 대한 프레임워크별 참고 사항은 references/extraction-guide.md를 읽으십시오.


2단계: 그래프 보고서 읽기

graphify-out/GRAPH_REPORT.md를 전체 읽으십시오. 이를 통해 다음을 얻을 수 있습니다:

  • God 노드 — 가장 차수가 높은 개념(모든 것이 연결되는 지점). 아키텍처 섹션에 사용하십시오.
  • 커뮤니티 클러스터 — 관련 코드의 논리적 그룹. 모듈 문서화에 사용하십시오.
  • 예상치 못한 연결 — 명확하지 않은 파일 간 관계. 아키텍처에 기록하십시오.
  • 제안된 질문 — 문서화할 가치가 있는 것에 대한 graphify의 평가.

그런 다음 특정 문서 섹션에 대해 대상 질의를 실행하십시오:

# API 라우트
graphify query "show all API routes and endpoints" --graph graphify-out/graph.json

# 데이터 모델
graphify query "what are the main data models and types?" --graph graphify-out/graph.json

# 인증 흐름
graphify query "how does authentication work?" --graph graphify-out/graph.json

# 진입점
graphify query "what is the entry point and how is the app initialised?" --graph graphify-out/graph.json

각 질의는 집중된 서브그래프를 반환합니다. 관계는 EXTRACTED(소스에서 찾음) 또는 INFERRED(신뢰도 점수 포함)로 태그됩니다. EXTRACTED를 완전히 신뢰하십시오. INFERRED는 사용하되 불확실성을 표시하십시오.

QA: 문서를 작성하기 전에 질의 결과에서 2~3개의 라우트를 실제 소스 파일과 교차 확인하십시오.


3단계: 기존 문서 읽기

새로운 것을 작성하기 전에 이미 무엇이 있는지 확인하십시오:

  1. README.md가 있으면 읽으십시오. 어떤 섹션이 있고, 어떤 것이 오래되었거나 누락되었는지 기록하십시오.
  2. docs/API.md, docs/api.md 또는 API.md가 있으면 읽으십시오.
  3. 최근 변경 사항에 대한 맥락을 위해 CHANGELOG.md를 읽으십시오.

생성할 대상을 결정하십시오:

  • README 없음 — references/output-template.md의 템플릿 1을 사용하여 전체 README를 생성하십시오.
  • README가 있고 API 섹션이 오래됨 — 해당 섹션만 업데이트하십시오(템플릿 3).
  • README가 있고 완전히 오래됨 — "README가 있지만 오래된 것 같습니다. 완전히 다시 작성할까요, 아니면 특정 섹션만 업데이트할까요?"라고 물으십시오.

QA: 시작하기 전에 정확히 무엇을 작성하거나 업데이트할지 나열하십시오.


4단계: 문서 생성

사용할 정확한 템플릿은 references/output-template.md를 읽으십시오.

README — 프로젝트 설명: package.json 또는 pyproject.toml의 설명 + GRAPH_REPORT.md의 god 노드 요약을 사용하십시오.

README — 아키텍처 섹션: god 노드와 커뮤니티 클러스터를 사용하여 평이한 영어로 아키텍처 개요를 작성하십시오. 예시:

"시스템은 3개의 핵심 모듈을 중심으로 구성됩니다: AuthService(god 노드, 14개의 다른 구성 요소에 연결됨), DatabaseAdapter(모든 데이터 액세스 연결), EventBus(비동기 흐름의 중심). 인증 및 요청 처리 모듈은 밀접하게 결합되어 있고, 분석 모듈은 독립적입니다."

README — 설치 및 빠른 시작: 진입점 파일 + package.json의 scripts 또는 Makefile을 사용하십시오.

API 레퍼런스 (docs/API.md): graphify query "show all API routes" 출력에서 가져오십시오. 경로 접두사별로 그룹화된 리소스당 하나의 섹션. 각 라우트에 대해: 메서드, 경로, 설명(문서 문자열 또는 근거 노드에서), 요청/응답 형태(연결된 타입 노드에서), curl 예시.

문서 문자열이 없는 것은 [Description needed]로 표시하십시오. 동작을 지어내지 마십시오.

QA: 생성된 docs/API.md에서 3개의 임의 라우트를 실제 소스 파일과 확인하십시오. 경로와 설명이 일치합니까?


5단계: 파일 작성, 정리 및 PR 열기

  1. README.md를 프로젝트 루트에 작성하십시오(전체 파일 또는 업데이트된 섹션만).
  2. 라우트가 발견되면 docs/API.md를 작성하십시오. 필요하면 docs/를 만드십시오.
  3. 정리: rm -rf graphify-out/ .docs-extract.json

사용자에게 물으십시오: "문서가 작성되었습니다. 이 변경 사항으로 GitHub PR을 열까요?"

예인 경우:

git checkout -b docs/auto-generated-$(date +%Y%m%d)
git add README.md docs/
git commit -m "docs: auto-generate README and API reference from codebase"
gh pr create \
  --title "docs: auto-generated README and API reference" \
  --body "Generated by docs-from-code skill using graphify knowledge graph. All routes and types verified against source."

QA: 파일이 작성되었습니까? 경로가 존재합니까? PR이 깨끗하게 열렸습니까?


좋은 출력의 예

  • 아키텍처 섹션이 god 노드와 모듈 관계를 평이한 영어로 설명합니다.
  • docs/API.md의 모든 라우트가 graphify 질의 출력의 실제 경로와 일치합니다.
  • README 빠른 시작에 테스트나 진입점부터 실행 가능한 스니펫이 있습니다.
  • 설명에 영향을 준 INFERRED 관계는 "likely" 또는 "appears to"로 표시됩니다.
  • 누락된 설명은 [Description needed]로 표시되고, 지어내지 않습니다.

나쁜 출력의 예

  • graphify 질의 결과에 나타나지 않는 라우트나 함수.
  • 일반적인 아키텍처 섹션("앱에는 컨트롤러, 서비스, 모델이 있습니다").
  • 잘못된 함수 이름이나 매개변수 타입을 사용하는 예시.
  • 신뢰도 한정어 없이 INFERRED 엣지를 확정적인 사실로 설명.

Individual skills in this repo

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

Varnan-Tech/opendirectory

Use when the user asks to generate a blog cover image, thumbnail, or article header. Automatically uses modern typography, brand logos, and Google Search grounding to create beautiful 16:9 images with Gemini 3.1 Flash Image Preview.

Varnan-Tech/opendirectory

World-class brand strategist and naming expert. Uses an interrogation-led discovery phase to extract your brand's DNA, then applies scientific naming frameworks (Phonosemantics) and automated multi-TLD domain checking.

Varnan-Tech/opendirectory

Use when the user asks to generate or update a project's CLAUDE or AGENTS context file from a codebase scan. Writes a focused file under 100 lines containing only the non-obvious build commands, conventions, and gotchas Claude Code needs.

Varnan-Tech/opendirectory

Use when the user wants to verify cold emails, enrich a lead list, or autonomously guess email addresses from a CSV using ValidEmail.co or the open-source Reacher engine.

Varnan-Tech/opendirectory

Competitive intelligence orchestrator tracking companies across 8+ platforms (GitHub, Twitter, Reddit, HN, PH, YC Jobs) with heat scores and AI briefings.

Varnan-Tech/opendirectory

Give it your product URL or description. It finds your top 5 competitors, runs three-track PR research across all of them (editorial, podcasts, communities), identifies which channels appear most frequently, looks up the journalist or host for each, and returns a tiered outreach list with story angles and ready-to-send cold pitch drafts tailored to your product. Use when asked to find PR opportunities, discover where competitors got featured, build a media outreach list, find which journalists cover my space, or get pitch templates for press coverage.

Varnan-Tech/opendirectory

Generate high-converting, deep-dive growth case studies in MDX format. Use this skill when asked to write a case study or blog post about a company's growth, tech stack, or product-led strategy. It handles the full pipeline (researching the company via Tavily, generating a 16:9 cover image, quality checking the draft, uploading assets to cloud storage, and pushing directly to the target repository).

Varnan-Tech/opendirectory

Scans your project for outdated npm, pip, Cargo, Go, or Ruby packages. Runs a CVE security audit. Fetches changelogs, summarizes breaking changes with Gemini, and opens one PR per risk group (patch, minor, major). Includes Diagnosis Mode for install conflicts. Use when asked to update dependencies, check for outdated packages, open dependency PRs, scan for package updates, audit for CVEs, or flag breaking changes in upgrades. Trigger when a user says "check for outdated packages", "update my dependencies", "open PRs for dependency updates", "scan for CVEs", or "which packages need upgrading".

Varnan-Tech/opendirectory

Evaluates expired domain candidates against a target niche, scores them by topical relevance, historical activity level, and history cleanliness, then outputs a ranked shortlist with explainable reasoning and risk flags.

Varnan-Tech/opendirectory

Brutally honest developer-experience audit for a GitHub repo. Scores 10 DX dimensions (time-to-first-success, README clarity, visual proof, install, quick-start, docs, examples, community, trust, marketing), writes a shareable roast in the requested tone (brutal/honest/kind), produces a prioritized action plan ranked by impact × effort, and sketches an ideal README. Trigger when user says "roast my repo", "audit my README", "dx audit", "developer experience review", "score my GitHub project", "before launch checklist", or "make my repo shareable".

Varnan-Tech/opendirectory

Drafts and designs a complete HTML email newsletter from a topic or content brief. Outputs paste-ready HTML for Loops, Mailchimp, Beehiiv, Resend, or any standard email platform. Includes subject line options and plain-text fallback. Trigger when a user says "write a newsletter", "draft an email newsletter", "create an HTML email", "design an email for my subscribers", or "write a newsletter about [topic]".

Varnan-Tech/opendirectory

Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or understand what a PR changes. Trigger when a user says "explain this PR", "summarize this pull request", "what does this PR do", "add a comment explaining the PR", or shares a GitHub PR URL and asks what it does.

Varnan-Tech/opendirectory

Audit how often LLMs recommend your brand vs competitors and generate a GEO action plan.

Varnan-Tech/opendirectory

Takes a competitor's public GitHub repo URL, fetches their open issues via the GitHub REST API, filters noise locally, clusters issues into 6 demand categories, computes a demand score per issue and per cluster, and outputs a ranked demand gap report with a GTM messaging brief. Use when asked to scan a competitor's GitHub issues, find what their users are begging for, turn GitHub complaints into product positioning, identify competitor feature gaps, or generate messaging from real user demand. Trigger when a user says "scan competitor issues", "what are users asking for on X repo", "find demand gaps in Y", "turn GitHub issues into messaging", or "what should I build based on competitor complaints".

Varnan-Tech/opendirectory

Find recurring confusion in your repo's GitHub Discussions, rank it by urgency, and draft the actual docs fixes and content angles — with verbatim community quotes and source links as evidence.

Varnan-Tech/opendirectory

SEO keyword research workflow for blog generation using Google Trends data. Use when writing blog posts, planning content calendars, or optimizing articles for search engines. Finds breakout keywords, builds content structure, and generates SEO-optimized blog outlines targeting tech and developer audiences.

Varnan-Tech/opendirectory

Generates a professionally designed case study PDF for B2B SaaS sales and marketing. Supports 7 page layouts, 9 style presets, 1-4 page output. Trigger when user says "create a case study", "write a customer story", "make a case study PDF", "design a success story", "turn this customer win into a PDF".

Varnan-Tech/opendirectory

Generates data visualization charts (bar, line, area, pie, doughnut, scatter, radar, treemap) as PNG using Apache ECharts v6. 1080×1080px default, 5 style presets, highlight annotations. Trigger when user says "create a chart", "visualize data", "make a bar chart", "line graph", "pie chart", "data visualization", "chart this data", "plot", "graph", or "visualize these numbers".

Varnan-Tech/opendirectory

Creates professionally designed B2B SaaS e-books in HTML + CSS, exported as print-ready PDF. 3–10 pages, 9 style presets, 11 page layout types. Trigger when user says "create an ebook", "design a lead magnet", "make a PDF guide", "build a gated content piece", "write a B2B ebook", "design a white paper", "create a nurture asset", or "make a PDF report".

Varnan-Tech/opendirectory

Fetches low-star App Store and Google Play reviews, clusters them into broken-promise patterns, and generates a ranked copy brief with positioning opportunities.

관련 스킬