# Arkon Review

Review, approve, request changes on, or reject pending wiki edit drafts in Arkon.

- Repository: https://github.com/nduckmink/arkon (1515 stars)
- Category: Engineering
- License: see repository
- Last updated: 2026-06-03
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add nduckmink/arkon --skill arkon-review -g -a claude-code -y`
Codex: `npx skills add nduckmink/arkon --skill arkon-review -g -a codex -y`
Cursor: `npx skills add nduckmink/arkon --skill arkon-review -g -a cursor -y`
Gemini CLI: `npx skills add nduckmink/arkon --skill arkon-review -g -a gemini-cli -y`

## Description

Review, approve, request changes on, or reject pending wiki edit drafts in Arkon. Requires editor or admin role. Triggers on: review drafts, pending reviews, check draft queue, approve draft, reject draft, request changes, send draft back, review wiki changes.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# arkon-review: Review Wiki Drafts

Editor/admin only. If `list_pending_drafts` returns a permission error, you don't have the required role.

---

## Review Workflow

### 1. List pending drafts

```
list_pending_drafts()
```

Returns: draft ID, page slug, author, timestamp, note. Filter by workspace if needed:
```
list_pending_drafts(workspace_id="<uuid>")
```

### 2. Read a draft for review

```
review_draft(draft_id)
```

Returns side-by-side: **proposed content** and **current page content (vN)**. Read both carefully.

You may also call `read_wiki_page(slug)` independently for fuller backlink context.

### 3. Decide

**Approve as-is:**
```
approve_draft(draft_id, reviewer_note="optional feedback to author")
```

**Approve with your own edits** (you want to tweak before publishing):
```
approve_draft(draft_id, edited_content_md="...", reviewer_note="approved with minor edits")
```

**Request changes** (the draft is on the right track but needs fixes; preferred over reject when iteration is realistic):
```
request_changes_on_draft(draft_id, reviewer_note="20+ char explanation, what to change and why")
```
The draft moves to `needs_revision`; author can `resubmit_draft` after addressing the note. The original draft stays, `revision_round` increments each round and prior submissions are snapshotted for diffing.

**Reject** (only when the proposal is fundamentally wrong, out of scope, factually broken, or duplicates an existing page):
```
reject_draft(draft_id, reviewer_note="clear reason why, required")
```

`reviewer_note` is **required** for both reject and request_changes, the author needs to understand what to fix. **Prefer request_changes over reject** unless the proposal cannot be salvaged.

The rest: https://github.com/nduckmink/arkon/blob/HEAD/skills/arkon-review/SKILL.md
