Arkon Edit logo

Arkon Edit

CommunityPopular
nduckmink
arkon-edit

Propose or directly apply edits to Arkon wiki pages, including proposing brand new pages. Contributors create drafts for review; editors/admins can edit/create directly. Triggers on: update wiki, fix this page, propose edit, edit wiki page, correct the KB, improve wiki, resubmit my draft, withdraw my draft, create new wiki page, propose new page.

Overview

Publishernduckmink
Repositoryarkon
Skill namearkon-edit
Stars
1.4K
Forks
291
Bundled files
Instructions only
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by nduckmink on GitHub. Read the source before you install it.

Installation

Install the Arkon Edit AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/nduckmink/arkon.git /tmp/arkon
mkdir -p .claude/skills
cp -r /tmp/arkon/skills/arkon-edit .claude/skills/arkon-edit
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Arkon Edit in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Arkon Edit on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Arkon Edit is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

arkon-edit: Edit the Knowledge Base

Always read the current page before proposing changes. Always confirm with the user before submitting.


Permission Tiers

RoleTool to useReview required
Contributorpropose_wiki_editYes — goes to editor queue
Editoredit_wiki_pageNo — writes directly
Adminedit_wiki_pageNo — writes directly

If you try edit_wiki_page and get a permission error, fall back to propose_wiki_edit.


Workflow: Propose an Edit (Contributor)

  1. Find the pagesearch_wiki(query) or read_wiki_index() to locate the slug.
  2. Read current contentread_wiki_page(slug). Never propose without reading first.
  3. Draft the edit — produce the full updated Markdown (not a diff — the tool takes full content).
  4. Confirm with user — show the diff or summary of changes. Get explicit approval.
  5. Submitpropose_wiki_edit(slug, content_md, note="one-line explanation").
  6. Report the draft ID to the user so they can track it.

Do not submit a draft without user confirmation. The note field is important — editors need context.


Workflow: Direct Edit (Editor/Admin)

Same steps 1-4 above, then:

  1. Submitedit_wiki_page(slug, content_md, change_note="one-line explanation").
  2. Report the new version number returned.

Content Rules

  • Submit full page content — these tools replace, not patch.
  • Max 50,000 characters per submission.
  • Cannot edit reserved pages: _index, _log.
  • Preserve existing wikilinks [[slug]] unless intentionally removing them.
  • Keep the page's existing frontmatter fields (title, type, knowledge_type_slugs, etc.) unless the change specifically needs to update them.

When NOT to edit

  • Do not edit without user instruction — even if you spot an error while querying.
  • Do not create new pages via these tools (they only update existing pages).
  • If the target slug doesn't exist, tell the user — new page creation is an admin/pipeline operation.

Iteration loop: when a reviewer sends changes back

If a reviewer used request_changes_on_draft, the draft moves to status needs_revision. The original draft is preserved; you (or the user) can fix it without creating a fresh proposal.

  1. read_wiki_page(slug) — make sure the page hasn't moved on while you waited.
  2. Read the reviewer note attached to the draft (visible in the in-app notification). Address every point they raised.
  3. Confirm the rewrite with the user.
  4. resubmit_draft(draft_id, content_md, note="what I changed in this round").
    • Bumps revision_round and notifies reviewers.
    • The prior submission is snapshotted to history (rounds) so the reviewer can diff your changes against the previous round.

Withdrawing your own draft

If you no longer want a pending or needs_revision draft to be reviewed:

withdraw_draft(draft_id)

Only the original author may withdraw (admins can override via the REST API). Withdrawn drafts are terminal and disappear from reviewer queues. Confirm with the user before withdrawing — it cannot be reversed via MCP.

Scope disambiguation

When propose_wiki_edit or edit_wiki_page finds the same slug in multiple scopes (global + project, for example), the call fails with a list of the candidate scopes. Re-call with scope_type and scope_id to target the specific page the user means.


Creating a brand-new page

First check whether one already exists. Always run search_wiki(query) and inspect the top hits before proposing a new page — duplicates waste reviewer time and trigger the AI duplicate check.

RoleToolWhat happens
Contributor+propose_wiki_createDraft enters reviewer queue; page materialised on approve
Editor+ (workspace) or wiki:write:all (global)create_wiki_pagePage created immediately

Required fields for both tools:

  • slug — unique inside the chosen scope, no whitespace, not _index/_log
  • title — display title
  • content_md — full Markdown
  • page_type — one of entity | concept | source | topic
  • scope_typeglobal | department | project (with scope_id for the latter two)
  • knowledge_type_slugs — taxonomy tags that drive RBAC visibility; ask the user which categories apply rather than guessing

Workflow:

  1. search_wiki to confirm nothing similar exists.
  2. Show the user the suggested slug, page_type, knowledge_type_slugs, scope and the full content. Confirm.
  3. Call the appropriate tool. Report the returned draft ID (propose path) or the created page version (direct path).

If approve later returns a slug conflict, the reviewer or the contributor must override final_slug (reviewer side) or rename and resubmit (contributor side).


AI pre-review

Every draft you submit is annotated by an AI pre-review layer that flags:

  • PII / secrets (emails, phone numbers, API keys, JWTs, ...)
  • Broken wikilinks to slugs that don't exist
  • Possible duplicates with existing pages (embedding similarity)
  • Tone / scope fit / factual concerns (LLM judgment)

The flags are advisory only — they do not block submission and reviewers make the final call. But: address obvious ones (broken links, accidental PII) before submitting to save the reviewer time.

If a regex flags a legitimate contact email or hotline that you intentionally included in the page, add a suppression comment on the line above:

markdown
<!-- pii-allow: contact-email -->
Email team: compliance@example.com

The marker covers regex matches on the same or next non-blank line. Choose a short, honest reason — it shows up in the reviewer's audit trail.

Frequently asked questions

What does the Arkon Edit AI skill do?

Propose or directly apply edits to Arkon wiki pages, including proposing brand new pages. Contributors create drafts for review; editors/admins can edit/create directly. Triggers on: update wiki, fix this page, propose edit, edit wiki page, correct the KB, improve wiki, resubmit my draft, withdraw my draft, create new wiki page, propose new page.

Why use Arkon Edit on TypingMind?

Because you install it once and use it with any model. Arkon Edit is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Arkon Edit in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/nduckmink/arkon/tree/main/skills/arkon-edit. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Arkon Edit?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Arkon Edit?

As many as you like. As long as a model supports skills, you can use Arkon Edit with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Arkon Edit AI skill free?

It is published on GitHub by nduckmink. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇