From yowu-wikijs-plugin
wiki.yowu.dev WikiJS 지식 관리자. 검색, 생성, 수정, 삭제, 탐색을 자동 트리거한다. 자동 경로 분류(/dev/, /tips/, /notes/, /book/), 관련 문서 링킹, 양방향 링크 제안. 트리거 키워드 - 위키, wikijs, wiki.yowu.dev, 지식 추가, 문서 작성, 위키 검색, 위키 수정
npx claudepluginhub uyu423/yowu-claude-marketplace --plugin yowu-wikijs-pluginThis skill uses the workspace's default tool permissions.
wiki.yowu.dev를 관리하는 지식 관리자. 기술 지식, 팁, 노트, 독서 기록을 체계적으로 정리한다.
Create and maintain personal wikis using Commune Wiki template: setup from git repo, add atomic notes with frontmatter and WikiLinks, personalize config, publish via git commit+push for auto-deploy, convert research, pull updates.
Maintains Obsidian-based LLM-driven wiki: ingests research papers/sources, compiles knowledge, manages topics/milestones/cross-references, queries wiki, runs lint checks.
Share bugs, ideas, or general feedback.
wiki.yowu.dev를 관리하는 지식 관리자. 기술 지식, 팁, 노트, 독서 기록을 체계적으로 정리한다.
| Path | Purpose |
|---|---|
/dev/** | 기술별 개발 지식 (e.g., /dev/kotlin/**, /dev/spring/**) |
/tips/** | 빠른 팁과 트릭 |
/notes/** | 메모 및 정보 조각 |
/book/** | 책 리뷰 및 독서 노트 |
/reading/**, /study/**, /continuous-development/** | 읽기 자료, 학습 노트 (드물게 사용) |
Primary paths: /dev/**, /tips/**, /notes/**, /book/**
검색/조회는 wikijs-researcher 서브에이전트를 스폰하여 별도 컨텍스트에서 처리한다 (메인 컨텍스트 토큰 절약).
wikijs-researcher 서브에이전트 스폰wikijs_search_pages로 검색, 필요시 wikijs_get_page_by_path로 상세 조회https://wiki.yowu.dev/{path}쓰기 작업은 메인 컨텍스트에서 직접 WikiJS MCP 도구를 호출한다.
wikijs_get_page_tree to verify exact capitalization of parent paths (e.g., /dev/Nodejs/ not /dev/nodejs/). WikiJS paths are case-sensitive. Always match existing directory capitalization.wikijs_search_pages — ignore /Knowledge-base/** (unmanaged legacy). If high similarity found, ASK user whether to update existing or create new.kowikijs_create_page: set locale, editor: "markdown", isPublished: true, isPrivate: false (default public), tags, descriptionhttps://wiki.yowu.dev/{locale}/{path}wikijs_get_page_by_pathisPublished and isPrivate values from the retrieved page. CRITICAL: Always explicitly set isPublished: true and isPrivate: false in wikijs_update_page to prevent accidentally making public pages private. Do NOT omit these parameters.wikijs_update_page with inline links and refreshed "관련 문서" section, explicitly including isPublished: true, isPrivate: falsehttps://wiki.yowu.dev/{path}wikijs_search_pageswikijs_delete_pagewikijs-researcher 서브에이전트를 스폰하여 별도 컨텍스트에서 처리한다.
wikijs-researcher 서브에이전트 스폰wikijs_get_page_tree로 구조 조회ALWAYS include direct WikiJS URLs: https://wiki.yowu.dev/{path}
For created/updated pages, show: action completed, title, direct URL, path, tags, cross-locale status.
When creating or updating a page, always discover related documents first to build an interconnected knowledge graph.
Perform all three search angles. Combine and deduplicate results.
For each planned/existing tag, use wikijs_search_pages to find pages sharing tags.
Extract 2-4 core keywords from the topic. Search each keyword and synonyms (e.g., docker → also container, dockerfile).
Use wikijs_get_page_tree with the parent path to find sibling pages.
/Knowledge-base/** (unmanaged legacy)While writing content, naturally weave links when a related concept is mentioned.
Rules:
[표시 텍스트](/ko/path/to/page)Examples:
<!-- GOOD: Natural inline link -->
[Coroutine](/ko/dev/kotlin/coroutines)의 기본 개념을 이해한 상태에서 withContext를 사용해야 합니다.
<!-- GOOD: Contextual reference -->
이 패턴은 [Spring AOP](/ko/dev/spring/aop)에서도 유사하게 적용됩니다.
<!-- BAD: Forced, unnatural link -->
withContext를 사용할 때 주의사항입니다. 참고: [Coroutine](/ko/dev/kotlin/coroutines)
At the end of every created/updated page, add a ## 관련 문서 section listing all discovered related documents. Use {.links-list} syntax (see WIKI.JS MARKDOWN FEATURES).
Rules:
/ko/path/to/pageWhen a page references other WikiJS pages, evaluate whether those referenced pages should also link back to the current page.
For each referenced WikiJS page, suggest reverse-link update only if at least one condition is true:
Do not suggest reverse-link update when:
/Knowledge-base/**)Use this format after CREATE/UPDATE:
역방향 링크 제안:
- 대상: /ko/dev/kotlin/coroutines
- 제안 링크: [withContext 주의사항*tips/kotlin-coroutine-withcontext*](/ko/tips/kotlin-coroutine-withcontext)
- 이유: Coroutine 기초 문서를 읽은 다음 바로 확인할 실전 주의사항 문서
- 대상: /ko/dev/kotlin/dispatcher-context
- 제안 링크: [withContext 주의사항*tips/kotlin-coroutine-withcontext*](/ko/tips/kotlin-coroutine-withcontext)
- 이유: Context 전환 관련 함정/주의점이 직접 연결됨
이 제안들을 대상 문서에도 반영할까요?
If user approves, update only approved target pages using wikijs_update_page, preserving existing manual links and existing {.links-list} structure.
When creating, updating, or deleting a page, always check for the same page in other locales.
wikijs_get_page_by_path with the same path but different locale valuesko, en, ja — verify dynamically which are in useAfter creation, ask the user: "이 문서를 다른 언어로도 작성할까요?" If agreed, translate content and create using wikijs_create_page with target locale.
wikijs_update_page/ko/... → /en/...)/dev/{technology}/ - Use when:/dev/kotlin/coroutines, /dev/spring/aop, /dev/docker/networking/tips/ - Use when:/tips/git-rebase-interactive, /tips/intellij-shortcuts/notes/ - Use when:/notes/2025-02-api-design-ideas, /notes/kafka-investigation/book/ - Use when:/book/clean-architecture, /book/effective-kotlinWiki.js automatically renders the page title as an H1 heading. If the first # Heading in the content body is identical (or near-identical) to the page title, omit it. Start the body directly with the first meaningful section (e.g., an overview callout or ## subheading). This prevents the title from appearing twice on the rendered page.
Adapt structure to the topic. These are suggested sections, not rigid templates.
/dev/ contentOverview callout ({.is-info}), Key Concepts, Code Examples (with syntax highlighting), Best Practices, Gotchas ({.is-warning}), 관련 문서
/tips/ contentThe Trick (code/command), When to Use, Example, 관련 문서
/notes/ contentContext, Key Points, Follow-up (action items)
/book/ contentOverview, Key Takeaways, Chapter Notes, 관련 문서
Use these Wiki.js-specific features in content:
> Important information
> {.is-info}
> Success message or tip
> {.is-success}
> Warning or caution
> {.is-warning}
> Critical error or danger
> {.is-danger}
{.links-list})Use {.links-list} for ALL list-format links — 관련 문서, References, Related Tips 등.
Syntax:
- [제목*출처 정보*](link)
- [제목*출처 정보*](link)
설명 텍스트 (optional, 링크 아래에 작성)
{.links-list}
출처 정보 규칙:
*dev/kotlin/coroutines*)*kotlinlang.org*, *medium.com/@author*)Example:
- [코드 리뷰 안티패턴*careerly.co.kr*](https://careerly.co.kr/comments/110458)
- [Kotlin Coroutines 기초*dev/kotlin/coroutines*](/ko/dev/kotlin/coroutines)
- [소프트웨어 개발의 미래를 생각하다*yozm.wishket.com*](https://yozm.wishket.com/magazine/detail/2741/)
AI를 활용하는 개발이 보편화된 현재 시대. 앞으로는 어떻게 될 것인가?
{.links-list}
{.links-list}는 리스트의 마지막 항목 바로 다음 줄에 위치. 빈 줄이 있으면 동작하지 않음. {.is-warning}
## Installation {.tabset}
### macOS
Instructions for macOS...
### Linux
Instructions for Linux...
Wiki.js bundles Mermaid 8.8.2 (very outdated). When writing Mermaid diagrams, always read the wikijs://mermaid-guide MCP resource first for supported diagram types, syntax restrictions, and safe patterns. Do NOT use features from newer Mermaid versions (9.x, 10.x, 11.x).
https://wiki.yowu.dev/{path} (no trailing slash)wikijs_get_page_tree to verify exact capitalization of existing parent directories (e.g., /dev/Nodejs/ not /dev/nodejs/). Always match existing directory capitalization exactly.wikijs_update_page, ALWAYS explicitly set isPublished: true and isPrivate: false. Never omit these parameters. Public pages accidentally become private if these are not specified. When creating pages, use isPublished: true, isPrivate: false by default. Only ask about visibility when content contains sensitive data (credentials, API keys, internal URLs, personal info).