Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo.

MITAuto-check passedKnowledge Management

Install Okf Wiki

skills CLI
$ npx skills add jamditis/claude-skills-journalism --skill okf-wiki -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jamditis/claude-skills-journalism okf-wiki --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jamditis/claude-skills-journalism.git skills-src && mkdir -p .claude/skills && cp -r skills-src/okf-wiki .claude/skills/okf-wiki && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
okf-wiki
GitHub stars
416
Token cost
~4.7k tokens
SKILL.md length
2,632 words
Files
132 (incl. scripts)
Skills in repo
53
Repo updated
First seen
Licence
MIT

At a glance

Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo.

  • Works in 4 steps: Audience, who reads this wiki? This… → Title and sections, the knowledge-base… → Populate now or later, author concepts… → …
  • Scaffold an OKF wiki
  • SKILL.md covers When to use, Start here: scope the wiki…, What gets created and How to run it, plus 5 more sections
  • Runs Python scripts from its folder; calls python3, pip and playwright; reaches github.com

What it does

Okf Wiki is an agent skill from jamditis/claude-skills-journalism. Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo. Use to scaffold an OKF wiki.

Its SKILL.md is about 4.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 138 other files, including scripts (for example `.claude-plugin/plugin.json`, `agents/openai.yaml` and `example/.claude/hooks/okf-anchor.py`).

It sits in Knowledge Management, covering Knowledge bases. The repository describes itself as: Claude Code skills for journalism, media, and academia - verification, FOIA, data journalism, academic writing, and more. The licence is MIT.

When your agent uses it

  • Scaffold an OKF wiki
  • Tasks that involve Knowledge bases

Example prompts

  • “Use the okf-wiki skill to build an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo”
  • “/okf-wiki”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Audience, who reads this wiki? This answer sets the others
  2. Title and sections, the knowledge-base title (infer it, then confirm) and the starting
  3. Populate now or later, author concepts now from existing material (a repo, docs, notes, or a
  4. Publish target, a follow-up AskUserQuestion call, made only after the audience comes back

What it can do on your machine

Read from SKILL.md and the folder at commit e3e2172. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • pip
    • playwright

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Okf Wiki loads about 4.7k tokens when it runs. Until then it costs about 32 tokens; SKILL.md has 2,632 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~32
When it runs · the whole SKILL.md, loaded when a task matches
~4.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from jamditis/claude-skills-journalism at commit e3e2172, republished under its MIT licence (© jamditis). 2,632 words, ~4,699 tokens.

Download SKILL.mdSave it as .claude/skills/okf-wiki/SKILL.md (or your agent's skills folder). This skill also uses 131 other files; get the full folder from GitHub.
name
okf-wiki
description
Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo. Use to scaffold an OKF wiki.
license
MIT
metadata.author
jamditis
metadata.version
0.8.3
metadata.okf_spec
v1

okf-wiki: scaffold an Open Knowledge Format knowledge base

OKF (Open Knowledge Format) stores knowledge as small markdown files: one concept per file, each carrying its own provenance in YAML frontmatter, with directory index.md files for navigation and a validator that enforces the contract. It is built for knowledge bases that both people and agents read and edit, newsroom institutional memory, a research atlas, a team's decision log, an infrastructure map.

This skill scaffolds a conforming OKF project and validates it. The format contract is in spec/SPEC.md (in this skill's directory), read it before changing structure.

When to use

  • The user wants to start an OKF knowledge base, atlas, or wiki.
  • They want docs structured as one-concept-per-file with provenance, not prose pages.
  • They want to "initialize OKF" in a repo, optionally publishing into its GitHub wiki.

Start here: scope the wiki with the user

Before you scaffold anything, settle four things with the user. They shape what gets created and how it is published, and they are awkward to retrofit once concepts exist. Ask with AskUserQuestion rather than in prose, in two steps: the first three questions in one call, then the publish question as a follow-up call only if the audience came back public or both (it does not apply to an internal-only wiki, and its relevant options depend on that answer, so it cannot share the first batch). Infer the title from the repo or project and confirm it. Skip any question the user already answered in their request, do not re-ask what they have told you.

  1. Audience, who reads this wiki? This answer sets the others:
    • Internal (agents and teammates): the orientation hooks earn their keep, so keep them on. The bundle may hold infrastructure detail, so it usually lives in a private repo. The in-repo bundle/ is the source of truth.
    • Public (people browsing): readability and secret-scrubbing come first; the hooks matter less, since people read it and agents do not. Plan a published view (see Publish below).
    • Both: the in-repo bundle/ is the source of truth with hooks on for agents, plus a published view for people. Default here when the user is unsure.
  2. Title and sections, the knowledge-base title (infer it, then confirm) and the starting sections. Offer sections as a use-case preset, not a blank prompt:
    • Newsroom institutional memory: people, orgs, sources, decisions, beats
    • Research atlas: concepts, sources, methods, findings
    • Infrastructure or fleet map: machines, services, networks, credentials, processes
    • Decision log: decisions, context, events The chosen title and list feed --title and --sections below; the user can edit the list.
  3. Populate now or later, author concepts now from existing material (a repo, docs, notes, or a URL: gather it and enter the authoring loop after scaffolding), or scaffold an empty tree the user fills in later.
  4. Publish target, a follow-up AskUserQuestion call, made only after the audience comes back public or both (skip it entirely for an internal-only wiki):
    • In-repo bundle only (default): the validator and relative links work directly, with no extra surface to maintain. Right for most wikis.
    • GitHub wiki: an optional reading surface. Advanced and manual, see "Optional: publish into a GitHub wiki" below, bootstrapped with scripts/gh-wiki-bootstrap.py.
    • GitHub Pages: a browsable site rendered from the bundle. Not built yet, treat it as a goal and keep the in-repo bundle as the source of truth.

Carry the answers into the scaffold command (the title and sections, plus --no-hooks if the user opts out of the hooks for a public-only wiki) and into the populate step. The audience answer is also the visibility decision the "Before finishing" section asks you to make deliberately, you are making it here, up front, where it can steer the rest of the setup.

What gets created

scripts/scaffold.py writes a project that passes its own validator by construction:

<target>/
  SPEC.md                 the OKF format contract
  README.md               how to use and validate the bundle
  scripts/validate.py     the validator
  .claude/                Claude Code adapter: session-orientation hooks
    settings.json         registers the hooks (Claude Code approves them once)
    hooks/okf-anchor.py   SessionStart: load the index into context
    hooks/okf-orient.py   PreToolUse: gate the first action on orientation
  bundle/                 the OKF bundle (the validated tree)
    index.md              carries okf_version: "0.3" by default; "0.4" with --trust-signals
    <section>/
      index.md
      example-concept.md  a starter concept with full frontmatter

Docs and tooling sit at the project root; only bundle/ is validated. Keep them separate, the validator treats every non-reserved .md inside the bundle as a concept that needs frontmatter, so a stray SPEC.md inside bundle/ would fail. The .claude/ hooks sit outside bundle/, so they never trip the concept checks.

How to run it

${CLAUDE_SKILL_DIR} below is this skill's own directory (the folder holding this SKILL.md). Claude Code substitutes it with the real absolute path before you run the command, so it works regardless of the current directory. On Windows, use python instead of python3 (stock Windows has no python3). The --title and --sections come from the onboarding answers above, and --no-hooks only if the user opted out. Scaffold into a new directory; it validates automatically at the end:

bash
python3 "${CLAUDE_SKILL_DIR}/scripts/scaffold.py" ./my-knowledge-base \
  --title "Team knowledge base" \
  --sections concepts,services,decisions

Default section is concepts. Use --force to write into a non-empty directory, --no-validate to skip the validation run, and --date YYYY-MM-DD to set the sample frontmatter date. The session hooks are written by default; --no-hooks skips them and --hooks-os posix|windows overrides the auto-detected launch command (see below).

Validate any time, from the scaffolded project root (use python on Windows):

bash
python3 scripts/validate.py --bundle bundle    # must exit 0

Populate the bundle: author concepts from existing material

Scaffolding leaves an empty tree with one placeholder concept. The usual next request, "here are my docs / plans / notes / repo, build the wiki", has no importer script, and can't have one: deciding what counts as a single concept, writing its one-line description, choosing its type, and pointing source at real provenance is judgment work, not a mechanical transform. So you (Claude) author the concepts directly, in this loop:

  1. Gather the source. Read what the user pointed you at, a file, a folder, a repo, or a URL (fetch a URL first). Skim the whole thing before writing anything, so you can see the natural concept boundaries.
  2. Decide concept boundaries. One file is one concept: one thing a reader would look up on its own (a service, a decision, a path, a person, an event). Split a doc that covers five things into five concepts; merge fragments that only mean something together into one. A heading is a hint, not a rule, do not blindly map one ## to one file.
  3. Draft each concept at bundle/<section>/<slug>.md with the full frontmatter. Read the bundle-root index.md before writing so the verification key matches its declared format: use verified for okf_version 0.1 through 0.3; use verified_on for okf_version 0.4. Emit that exact key with type, title, description, source, timestamp, tags:
    • type from the vocab. Infrastructure: Machine, Network, Service, Session, Project, Repo, Credential, Path, Process. Domain-neutral: Concept, Decision, Event, Person, Org, Source. Plus Reference (the catch-all). The set is closed; an unlisted type fails.
    • description is one line. source, quote every element, points at where the fact actually came from (the origin file path, URL, command, or event), not at this skill.
    • Set timestamp to today. verified/verified_on is the date the fact was last confirmed true, set it by how you came to know it, not reflexively to today:
      • You re-checked it against reality now, or the user is the authority for it (a decision, preference, or intent they state in this session): today.
      • The user is recalling external or system state (a spec, a path, a config): their memory is a source claim, not a re-check, so date it to when that state was last checked or to the recollection's own date, not today just because it came up now.
      • It was copied from a dated source without re-checking: the date it was last known true (the source's own date), not today.
      • It came from an undated record you cannot re-confirm (a memory file, an old conversation): the oldest date you can evidence, file timestamp, introducing commit, or the date it was said, never today. If you cannot evidence any date at all, it is not yet a verifiable fact; find a datable source or leave the concept out. When the date is uncertain, round it down: an older verified correctly reads as "may be stale, re-check," while today reads as "just confirmed." The frontmatter date is the contract; a caveat in the body does not undo an overstated value, because the validator and tools read only the date.
    • Strip secret values as you go: a credential concept names the key and its retrieval path, never the value. The validator fails the build on a leaked secret.
  4. Place and link. Put each concept in the right section (create sections as needed), add a bullet for it to that section's index.md, and cross-link related concepts with relative [text](path.md) links, not [[slug]] wikilinks. [[slug]] is the auto-memory idiom; the OKF validator rejects it and never resolves it, so a typo'd or deleted reference passes silently. When you create a new section, also link it from the bundle-root index.md, that root is the navigation map the session anchor loads, so a section missing from it is invisible to orientation even though validation still passes.
  5. Clear the placeholder. If you scaffolded fresh, delete the starter example-concept.md (and its bullet in the section index.md) once real concepts exist, otherwise the sample ships in the finished wiki and still passes validation.
  6. Validate in a loop. Run python3 scripts/validate.py --bundle bundle, fix what it reports, repeat until it exits 0. Unquoted source elements and missing frontmatter keys are the common failures. Author in batches and validate between them rather than writing fifty files and debugging the lot.
Show full SKILL.md (1,090 more words)Show less
When the source is already OKF

If the user points you at an existing OKF bundle (e.g. an upstream example: an index.md carrying okf_version plus concept files with frontmatter), you are adopting it, not importing it. Copy or clone the tree in, point the validator at the new root, and fix any links that broke in the move. To keep it as its own area beside other content, give it a uniquely named top directory, then create one combined-root index.md that carries okf_version and strip the frontmatter from each adopted bundle's own root index.md, turning it into a normal section index (the validator allows okf_version on the one combined root only; a nested index.md that still carries it fails validation). Write cross-links as relative paths and validate the combined root. Re-authoring an already-conforming bundle into your own concepts is wasted work; only reshape it if that is the actual goal.

The format, briefly

Full contract in spec/SPEC.md. This spec is a strict fork of Google's upstream OKF: it requires all seven frontmatter keys, uses a source list in place of upstream's resource and # Citations, adds a verification-date key, closes the type vocab, and enforces link resolution. spec/SPEC.md ("Relationship to upstream OKF") lists every difference. The load-bearing rules:

  • Required frontmatter on every concept: type, title, description, source, the version-specific verification key described above, timestamp, tags. type is one of: Machine, Network, Service, Session, Project, Repo, Credential, Path, Process (infrastructure); Concept, Decision, Event, Person, Org, Source (domain-neutral); or Reference (catch-all).
  • Quote every source element, source pointers carry # and : which break YAML if unquoted. source: ["README.md", "issue #445"].
  • verified/verified_on is the date the fact was last confirmed true, a re-check against reality, or the user stating a fact they are the authority for (a decision, a preference); a fact they merely recall about external state is a source claim, not a re-check. timestamp is when the concept was authored/updated. The verification date is ISO YYYY-MM-DD; timestamp may also be a full ISO 8601 datetime in 0.3 and 0.4. See the authoring loop above for the full date rules.
  • No secret values, ever. A credential concept documents the key name and retrieval path, never the value. The validator fails the build on a leaked secret.
  • index.md and log.md are reserved, no frontmatter (except the bundle-root index.md, which carries okf_version only).
Optional: upstream v0.2 trust/provenance signals

Upstream Google OKF v0.2 (July 2026) added an optional vocabulary for a consumer to judge a concept before reading it: generated (who/what produced it), verified (a list of independent confirmations, not this fork's own single-date field), sources (structured, per-pointer credibility signals), status (draft/stable/deprecated), stale_after (an absolute expiry date), and an Attested Computation type for a sanctioned, checkable computation. None of it is required, and a bundle that adopts none of it is unaffected.

Scaffold a project with these enabled, scaffold.py <target> --trust-signals, and the bundle declares okf_version: "0.4", with verified renamed to verified_on in the required set (freeing verified for the new shape; see spec/SPEC.md's "Trust and provenance" section for the full field contract and the reasoning behind the rename). Attested Computation is likewise a 0.4-only type. Without the flag, scaffolding is unchanged from before this vocabulary existed.

Session hooks

A scaffolded project ships a .claude/ with two hooks so any Claude session opened in it starts from the bundle, not from memory:

  • okf-anchor.py (SessionStart) prints the bundle's root index into the session context.
  • okf-orient.py (PreToolUse, no matcher) blocks the first action of the session once, until Claude confirms it read the index, then unblocks for the rest of the session. It is inert outside an OKF bundle and fails open on any error, so it never wedges a session.

Both are one cross-platform python3 script. The scripts are identical on every OS; only the interpreter in .claude/settings.json changes: python3 on macOS/Linux, python on Windows. scaffold.py auto-detects the OS; --hooks-os posix|windows forces it.

Claude Code treats a checked-in .claude/settings.json as untrusted, so the first time the project is opened it asks the user to approve the hooks; they run automatically after that. To turn them off, scaffold with --no-hooks, or delete .claude/ (or set disableAllHooks) in an existing project.

Client boundary

The portable OKF surface is SPEC.md, requirements.txt, scripts/validate.py, and the bundle/ tree. The generated README.md documents both that shared surface and any enabled client adapter. The three generated .claude/ files are a Claude Code adapter, not part of the OKF format and not shared Codex behavior. Codex does not read them as project configuration, and this skill must not claim that their SessionStart or PreToolUse lifecycle runs there.

The general onboarding route above still names Claude Code's AskUserQuestion and ${CLAUDE_SKILL_DIR} surfaces. The recorded Codex pilot pre-set every onboarding choice and used an explicit project-relative installed path; it does not establish that the unadapted general route is portable.

For a mixed Claude Code and Codex project, keep .claude/ so Claude Code can request trust and use the hooks; Codex leaves it inert. For a Codex-only project, pass --no-hooks while scaffolding or delete .claude/ afterward. Either choice leaves the portable bundle and validator unchanged.

Optional: publish into a GitHub wiki

OKF lives best as in-repo files (the validator and relative links work directly). A repo's GitHub wiki is an optional reading surface, and wiring it up is an advanced, manual step, most users should skip it and keep the bundle in-repo.

A wiki with zero pages has no git repo to push to and no API, so the very first page must be created through the web UI. scripts/gh-wiki-bootstrap.py automates that one step, but it drives a real logged-in browser, so it needs two things you provide yourself (a GitHub PAT does not work, wiki pages are a web-UI-only surface):

  • Playwright with Chromium installed: pip install playwright && playwright install chromium.
  • A saved GitHub web session: a Playwright storageState JSON, captured from a browser where you have already logged into GitHub. The script reuses that session; it does not log in for you. Pass its path with --state (default: ~/.cache/gh_state.json).
bash
python3 "${CLAUDE_SKILL_DIR}/scripts/gh-wiki-bootstrap.py" owner/repo --state path/to/gh_state.json
# then: git clone https://github.com/owner/repo.wiki.git and push your pages

Note the impedance: GitHub wikis are flatter than an OKF tree and use [[WikiLinks]], so OKF's nested directories and relative links need adapting for the wiki surface. Treat the wiki as a published view, not the source of truth. (v0.1 ships the bootstrap step; an automatic bundle-to-wiki sync is not built yet.)

Before finishing

  • Run the validator and confirm it exits 0.
  • Confirm the visibility you set during onboarding still fits what got authored: a bundle that ended up documenting real infrastructure is usually internal. OKF takes no position; you must.

© jamditis, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 131 other files (scripts) in okf-wiki of jamditis/claude-skills-journalism.

  • SKILL.md
  • .claude-plugin/plugin.json
  • agents/openai.yaml
  • example/.claude/hooks/okf-anchor.py
  • example/.claude/hooks/okf-orient.py
  • example/.claude/settings.json
  • example/README.md
  • example/SPEC.md
  • example/bundle/hooks/accessibility-check.md
  • example/bundle/hooks/ai-slop-detector.md
  • example/bundle/hooks/ap-style-check.md
  • example/bundle/hooks/archive-reminder.md
  • example/bundle/hooks/bug-report-detector.md
  • example/bundle/hooks/copywriting-preflight.md
  • … and 118 more

Open the folder on GitHubat commit e3e2172

Compare with similar skills

Okf Wiki next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Okf Wiki compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Okf Wiki this skilljamditis/claude-skills-journalism416—~4.7kAutomated safety check: PassMIT
Capture Conversationoutline/outline41k—~474Automated safety check: PassCustom licence
Project CairniBlinkQ/project-cairn2352 repos~861Automated safety check: PassMIT
LLM Wiki Knowledge GraphEgonex-AI/Understand-Anything86k1 repos~1.5kAutomated safety check: PassMIT
Find And Citeoutline/outline41k—~537Automated safety check: PassCustom licence
Xhs Virtual Productchenjin-cmd/xhs-virtual-product727—~862Automated safety check: PassMIT

Similar skills

  • Capture Conversation

    outline/outline

    Save the current conversation, a decision, or a set of notes as a document in an Outline collection; use when the user wants to keep what was discussed in their knowledge base.

    41k GitHub stars~474 tokensUpdated today
    Knowledge ManagementAuto-check passed
  • Project Cairn

    iBlinkQ/project-cairn

    Standardize how an AI-collaboration project turns work into reusable knowledge.

    235 GitHub starsUsed in 2 repos~861 tokens
    Knowledge ManagementAuto-check passed
  • LLM Wiki Knowledge Graph

    Egonex-AI/Understand-Anything

    Detects a Karpathy-pattern LLM wiki and builds an interactive knowledge graph with entities, implicit relationships and topic clusters.

    86k GitHub starsUsed in 1 repo~1.5k tokens
    Knowledge ManagementAuto-check passed
  • Find And Cite

    outline/outline

    Answer questions from the Outline knowledge base with quotes and links to the source documents; use when the user asks what the team knows, documented, or decided about a topic.

    41k GitHub stars~537 tokensUpdated today
    Knowledge ManagementAuto-check passed
  • Xhs Virtual Product

    chenjin-cmd/xhs-virtual-product

    This skill helps plan, select, produce, and market Xiaohongshu (RED) virtual/digital products — templates, knowledge bases, test tools, study materials.

    727 GitHub stars~862 tokensUpdated 8 days ago
    Knowledge ManagementAuto-check passed
  • Openkb

    VectifyAI/OpenKB

    A skill your agent uses when the user asks about content in their OpenKB knowledge base — research topics, concepts compiled from their documents, cross-document synthesis — or mentions openkb, an…

    4.7k GitHub starsUsed in 1 repo~2k tokens
    Knowledge ManagementAuto-check: warnings

More from jamditis/claude-skills-journalism

All 53 skills in this repo
  • Web Design Picker

    jamditis/claude-skills-journalism

    A skill your agent uses when creating distinct website directions, a client review picker, asset catalog, previews, and Cloudflare-ready handoffs.

    416 GitHub stars~3.1k tokensUpdated 4 days ago
    Auto-check passed
  • Private Secret Scanning

    jamditis/claude-skills-journalism

    Local Gitleaks scans for staged changes, push ranges, and full history in private repos, with redacted reports.

    416 GitHub stars~1.8k tokensUpdated 4 days ago
    Auto-check passed
  • Data Journalism

    jamditis/claude-skills-journalism

    Acquire, clean, analyze, verify, visualize, and explain data for journalism.

    416 GitHub stars~1.6k tokensUpdated 4 days ago
    Auto-check passed
  • Document Design

    jamditis/claude-skills-journalism

    Creates print-ready HTML that exports to PDF. An agent skill from jamditis/claude-skills-journalism.

    416 GitHub stars~1.9k tokensUpdated 4 days ago
    Auto-check passed
  • Using Superjawn

    jamditis/claude-skills-journalism

    Establishes how to find and use skills, requiring Skill tool invocation before any response.

    416 GitHub stars~1.5k tokensUpdated 4 days ago
    Auto-check passed
  • Zero Build Frontend

    jamditis/claude-skills-journalism

    Zero-build frontend development for static apps, browser extensions, maps, and lightweight data-backed interfaces.

    416 GitHub stars~1.5k tokensUpdated 4 days ago
    Auto-check passed

Questions about Okf Wiki

What does Okf Wiki do?

Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo. Okf Wiki is an agent skill from jamditis/claude-skills-journalism. Builds an Open Knowledge Format (OKF) knowledge base from existing docs, notes, or a repo.

When should I use Okf Wiki?

Okf Wiki fits situations like: scaffold an OKF wiki; tasks that involve Knowledge bases.

How do I install Okf Wiki in Claude Code?

Run `npx skills add jamditis/claude-skills-journalism --skill okf-wiki -a claude-code`. Or copy the skill folder (okf-wiki in jamditis/claude-skills-journalism) into .claude/skills/okf-wiki in your project. Claude Code loads it when a task matches its description.

How do I install Okf Wiki in Codex?

Run `npx skills add jamditis/claude-skills-journalism --skill okf-wiki -a codex`. Or copy the skill folder (okf-wiki in jamditis/claude-skills-journalism) into .agents/skills/okf-wiki in your project. Codex loads it when a task matches its description.

Can I use Okf Wiki in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jamditis/claude-skills-journalism --skill okf-wiki -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/okf-wiki, .gemini/skills/okf-wiki, .github/skills/okf-wiki and .opencode/skills/okf-wiki in your project.

What does Okf Wiki need to run?

Going by SKILL.md and its folder, Okf Wiki needs Python for the scripts in its folder and the command-line tools its instructions call (python3, pip and playwright). Our summary lists: Python 3.

Does Okf Wiki access the network?

SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Okf Wiki safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Okf Wiki use?

Okf Wiki is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Okf Wiki use?

About 4.7k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Okf Wiki?

Skills that share tags, products or a category with Okf Wiki: Capture Conversation (outline/outline, 41k stars), Project Cairn (iBlinkQ/project-cairn, 235 stars), LLM Wiki Knowledge Graph (Egonex-AI/Understand-Anything, 86k stars) and Find And Cite (outline/outline, 41k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Okf Wiki?

jamditis (a GitHub user) maintains it in jamditis/claude-skills-journalism, which has 416 GitHub stars. The repository holds 53 skills in this directory. The repository was last updated on October 4, 2026.

Source: jamditis/claude-skills-journalism on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.