Agent Skillsnduckmink/arkon › arkon-edit

arkon-edit

GitHub

用于编辑知识库页面,支持贡献者提交草稿或编辑/管理员直接修改。涵盖权限分级、内容规则及草稿修订流程,确保变更经确认且符合规范。

skills/arkon-edit/SKILL.md nduckmink/arkon

Trigger Scenarios

更新 wiki 修复此页面 提议编辑 编辑 wiki 页面 纠正知识库 改进 wiki 重新提交草稿 撤回草稿 创建新 wiki 页面 提议新页面

Install

npx skills add nduckmink/arkon --skill arkon-edit -g -y
More Options

Use without installing

npx skills use nduckmink/arkon@arkon-edit

指定 Agent (Claude Code)

npx skills add nduckmink/arkon --skill arkon-edit -a claude-code -g -y

安装 repo 全部 skill

npx skills add nduckmink/arkon --all -g -y

预览 repo 内 skill

npx skills add nduckmink/arkon --list

SKILL.md

Frontmatter
{
    "name": "arkon-edit",
    "description": "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.",
    "allowed-tools": "mcp__arkon__search_wiki mcp__arkon__read_wiki_index mcp__arkon__read_wiki_page mcp__arkon__propose_wiki_edit mcp__arkon__edit_wiki_page mcp__arkon__propose_wiki_create mcp__arkon__create_wiki_page mcp__arkon__resubmit_draft mcp__arkon__withdraw_draft"
}

arkon-edit: Edit the Knowledge Base

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


Permission Tiers

Role Tool to use Review required
Contributor propose_wiki_edit Yes — goes to editor queue
Editor edit_wiki_page No — writes directly
Admin edit_wiki_page No — 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.

Role Tool What happens
Contributor+ propose_wiki_create Draft enters reviewer queue; page materialised on approve
Editor+ (workspace) or wiki:write:all (global) create_wiki_page Page 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:

<!-- 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.

Version History

  • 5e4069d Current 2026-07-24 16:10

Same Skill Collection

skills/arkon-query/SKILL.md
skills/arkon-review/SKILL.md

Metadata

Files
0
Version
5e4069d
Hash
1e0b1b7c
Indexed
2026-07-24 16:10

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-18 05:41
浙ICP备14020137号-1 $mapa de visitantes$