Skip to main content

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.

Zur Installation springen

Quellinformationen

Repository
nduckmink/arkon
Letzte Quellaktivität
19. Mai 2026 um 05:50
Erkannte Sprache von SKILL.md
Englisch
Sterne
1.448
Forks
291

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
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 page** — `search_wiki(query)` or `read_wiki_index()` to locate the slug. 2. **Read current content** — `read_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. **Submit** — `propose_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: 5. **Submit** — `edit_wiki_page(slug, content_md, change_note="one-line explanation")`. 6. 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_type` — `global` | `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.
Auf GitHub ansehen