wiki-activity-review
๐Ÿ’ฌ Sample prompts Paste any of these into Claude Code to use this skill
Recap what did I post on the wiki last week?
Window give me a wiki activity review for the last 2 weeks
Author what has Drew shipped on the wikis this month?
โšก Install this skill

Paste this into Claude Code (VS Code panel, Adom editor, or terminal) to install:

Search the Adom Wiki for the skill "wiki-activity-review" (slug: wiki-activity-review) at https://wiki-ufypy5dpx93o.adom.cloud/wiki/skills/wiki-activity-review and install it into my local ~/.claude/skills/wiki-activity-review/ directory. Fetch the skill_source content from the wiki page and save it as SKILL.md. Then confirm it's installed by showing the first 5 lines.
?
What is a skill? Skills are instructions that teach AI assistants like Claude Code how to perform specific tasks. The description below is loaded into the AI as context when you invoke this skill. Well-written skills make the AI significantly more effective. Like Wikipedia, anyone can improve a skill by clicking Edit AI Skill — or have your AI submit an edit on your behalf.

Description

Edit AI Skill

wiki-activity-review

Produce a digest of an author's wiki contributions over a recent window. Default window is week-to-date โ€” from the most recent Monday (00:00 local) through end of today, inclusive. Examples:

  • run on Sat โ†’ window = Mon-Sat of the current week (6 days)
  • run on Wed โ†’ window = Mon-Wed of the current week (3 days)
  • run on Mon โ†’ window = just today (1 day; falls back to previous Mon-Sun if the user asked for a retrospective)

The caller can override with phrases like "last week" (preceding Mon-Sun), "last 2 weeks" (preceding 14 days), "since May 10" (anchored), or "this month" (from the 1st).

This skill covers both wikis. Skip neither โ€” contributors typically have pages on both, and a digest that only covers one is incomplete.

WikiURLCLIAuth
v1https://wiki-ufypy5dpx93o.adom.cloudadom-wikiresolved by the CLI; for raw HTTP use $ADOM_WIKI_TOKEN
v2https://git-wiki-ktqxite5iglh.adom.cloudadompkg (or raw REST)adompkg login once, or $ADOM_WIKI_TOKEN as a bearer for raw HTTP

Workflow

Step 1 โ€” Resolve identity

adom-wiki whoami | python3 -c "import sys,json; u=json.load(sys.stdin)['user']; print(u['display_name'], u['id'], u.get('email',''))"

That gives you the v1 pub_author_id / pub_author_name and the v2 author_id / author_name (same Carbon user id across both wikis). Match against author fields case-insensitively on display name AND exact match on id โ€” author records sometimes carry only one or the other.

If whoami returns the shared Developer identity, fall back to adom-cli carbon user get to surface the caller's platform profile and warn that v1 attribution may be missing.

Step 2 โ€” Enumerate pages on Wiki v1

The CLI caps each page list call at 200 results. Pull each type separately and concatenate. Types: skill, molecule, library, footprint, symbol, 3dcomp, app, datasheet, agent, scaffold.

python3 - <<'PY'
import subprocess, json
types = ['skill','molecule','library','footprint','symbol','3dcomp','app','datasheet','agent','scaffold']
all_pages = []
for t in types:
    r = subprocess.run(['adom-wiki','page','list','--type',t,'--limit','500'],
                       capture_output=True, text=True)
    d = json.loads(r.stdout)
    all_pages.extend(d.get('pages', []))
    if d.get('total', 0) > len(d.get('pages', [])):
        print(f"WARN: {t} truncated ({len(d['pages'])} of {d['total']})", flush=True)
json.dump({'pages': all_pages}, open('/tmp/v1_pages.json','w'))
print(f"v1: {len(all_pages)} pages")
PY

If any type warns "truncated", paginate via raw HTTP: GET https://wiki-ufypy5dpx93o.adom.cloud/api/v1/pages?type=<t>&limit=200&offset=200.

Step 3 โ€” Enumerate pages on Wiki v2

curl -fsS "https://git-wiki-ktqxite5iglh.adom.cloud/api/v1/pages?limit=500" \
  -H "Authorization: Bearer $ADOM_WIKI_TOKEN" > /tmp/v2_pages.json

If total > returned, paginate with &offset=500.

Step 4 โ€” Narrow to candidate pages

A page is a candidate for the window if (a) the author matches AND (b) its updated_at (v1) or last_commit_at/updated_at (v2) falls inside the window.

Critical gotcha โ€” updated_at is a poor proxy for "the user did something". A page may have its updated_at bumped by backend re-stamps with no logged activity. After narrowing by updated_at, always confirm with the activity log in step 5. Pages with no in-window log entries get demoted to a "Quiet touches" footnote in the output โ€” don't drop them silently, the user may want to investigate.

Step 5 โ€” Pull the activity log for each candidate (Wiki v1)

adom-wiki page log <type>/<slug> --limit 100

Returns {activity: [{created_at, kind, author_name, author_id, changelog, metadata, ...}]}. kind is one of: publish, edit, asset_upload, asset_delete, video_add, video_delete, skill_add, skill_remove. Filter to entries where:

  • author_id or author_name matches the resolved identity
  • created_at is inside the window

Group consecutive entries by date for a cleaner digest.

Step 6 โ€” Pull the git log for each candidate (Wiki v2)

curl -fsS "https://git-wiki-ktqxite5iglh.adom.cloud/api/v1/pages/<slug>/log?limit=100" \
  -H "Authorization: Bearer $ADOM_WIKI_TOKEN"

Filter to commits by the user inside the window. Note v2 commits don't have kind โ€” they're just git commits with messages. Surface the commit message as the changelog.

Step 7 โ€” Compose the digest

Output structure:

# Weekly Wiki Digest โ€” week of <YYYY-MM-DD>

## Wiki v1 โ€” <N> active pages

### 1. [<title>](https://wiki-ufypy5dpx93o.adom.cloud/<type>s/<slug>) โ€” `<type>` ยท v<version>
**<DayOfWeek MM/DD>** โ€” <one-line summary of what changed>
- <changelog 1>
- <changelog 2>

(repeat per page, newest first)

## Wiki v2 โ€” <N> active pages

### 1. [<title>](https://git-wiki-ktqxite5iglh.adom.cloud/<type>/<slug>) โ€” `<type>` ยท v<version>
(same shape; commit messages instead of typed activities)

## Quiet touches (no logged content changes)
- [<title>](url) โ€” `updated_at` advanced into the window but `page log` shows no activity from you. Backend touch.

---
**Theme of the week:** <1-2 sentences capturing the throughline you noticed across the week's work>

URL pluralization on Wiki v1 takes the type plural (apps, skills, molecules). Wiki v2 uses singular (/app/..., /skill/...). Get this right โ€” broken links in a digest are the most common bug.

Rules

  1. Always check both wikis. If you only ran one, say so explicitly and rerun.
  2. Match the window to the user's ask. Default is week-to-date (most recent Monday through today). "Last week" โ†’ preceding Mon-Sun; "last 2 weeks" โ†’ preceding 14 days; "this month" โ†’ from the 1st of the current month; "since Tuesday" โ†’ from that Tuesday. Convert relative phrases to absolute dates in the digest header.
  3. Cite changelogs verbatim when they exist โ€” they're the truest source of "what shipped". Don't paraphrase what the user wrote in the publish message.
  4. Never invent activity. If page log returns 0 entries in the window, the page goes under "Quiet touches", not the main digest.
  5. End with a theme sentence, not a bare list. The point of a digest is connective tissue, not a changelog dump. Read the week's pages and surface what they have in common (a focus area, a customer, an internal tool, a recurring fix).
  6. No emoji. Plain markdown headings, tables, and links only.

Output length

A typical week has 3-6 active pages. Aim for ~30-60 lines of markdown. If the window spans several weeks with 20+ pages, suggest the user narrow the window rather than producing a 300-line wall.

Skill Source

Edit AI Skill
---
name: wiki-activity-review
user-invocable: true
description: Produce a digest-style summary of an author's recent contributions to the Adom wikis. Default window is week-to-date (most recent Monday through today). Checks both Wiki v1 (via `adom-wiki` CLI) and Wiki v2 (via REST API). Groups output by wiki, then by page, with publish/edit/asset/commit changelogs from the activity log. Trigger words โ€” wiki activity review, wiki review, week review, weekly update, wiki digest, wiki weekly, what did I post, what did I publish, what did I ship, what did I do last week, weekly recap, weekly summary, my wiki activity, my wiki contributions, my commits, my changes, recap my week.
---

# wiki-activity-review

Produce a digest of an author's wiki contributions over a recent window. Default window is **week-to-date** โ€” from the most recent Monday (00:00 local) through end of today, inclusive. Examples:

- run on **Sat** โ†’ window = Mon-Sat of the current week (6 days)
- run on **Wed** โ†’ window = Mon-Wed of the current week (3 days)
- run on **Mon** โ†’ window = just today (1 day; falls back to previous Mon-Sun if the user asked for a retrospective)

The caller can override with phrases like "last week" (preceding Mon-Sun), "last 2 weeks" (preceding 14 days), "since May 10" (anchored), or "this month" (from the 1st).

This skill covers **both wikis**. Skip neither โ€” contributors typically have pages on both, and a digest that only covers one is incomplete.

| Wiki | URL | CLI | Auth |
|---|---|---|---|
| v1 | `https://wiki-ufypy5dpx93o.adom.cloud` | `adom-wiki` | resolved by the CLI; for raw HTTP use `$ADOM_WIKI_TOKEN` |
| v2 | `https://git-wiki-ktqxite5iglh.adom.cloud` | `adompkg` (or raw REST) | `adompkg login` once, or `$ADOM_WIKI_TOKEN` as a bearer for raw HTTP |

## Workflow

### Step 1 โ€” Resolve identity

```bash
adom-wiki whoami | python3 -c "import sys,json; u=json.load(sys.stdin)['user']; print(u['display_name'], u['id'], u.get('email',''))"
```

That gives you the v1 `pub_author_id` / `pub_author_name` and the v2 `author_id` / `author_name` (same Carbon user id across both wikis). Match against author fields case-insensitively on display name AND exact match on id โ€” author records sometimes carry only one or the other.

If `whoami` returns the shared `Developer` identity, fall back to `adom-cli carbon user get` to surface the caller's platform profile and warn that v1 attribution may be missing.

### Step 2 โ€” Enumerate pages on Wiki v1

The CLI caps each `page list` call at 200 results. Pull each type separately and concatenate. Types: `skill, molecule, library, footprint, symbol, 3dcomp, app, datasheet, agent, scaffold`.

```bash
python3 - <<'PY'
import subprocess, json
types = ['skill','molecule','library','footprint','symbol','3dcomp','app','datasheet','agent','scaffold']
all_pages = []
for t in types:
    r = subprocess.run(['adom-wiki','page','list','--type',t,'--limit','500'],
                       capture_output=True, text=True)
    d = json.loads(r.stdout)
    all_pages.extend(d.get('pages', []))
    if d.get('total', 0) > len(d.get('pages', [])):
        print(f"WARN: {t} truncated ({len(d['pages'])} of {d['total']})", flush=True)
json.dump({'pages': all_pages}, open('/tmp/v1_pages.json','w'))
print(f"v1: {len(all_pages)} pages")
PY
```

If any type warns "truncated", paginate via raw HTTP: `GET https://wiki-ufypy5dpx93o.adom.cloud/api/v1/pages?type=<t>&limit=200&offset=200`.

### Step 3 โ€” Enumerate pages on Wiki v2

```bash
curl -fsS "https://git-wiki-ktqxite5iglh.adom.cloud/api/v1/pages?limit=500" \
  -H "Authorization: Bearer $ADOM_WIKI_TOKEN" > /tmp/v2_pages.json
```

If `total > returned`, paginate with `&offset=500`.

### Step 4 โ€” Narrow to candidate pages

A page is a **candidate** for the window if (a) the author matches AND (b) its `updated_at` (v1) or `last_commit_at`/`updated_at` (v2) falls inside the window.

**Critical gotcha** โ€” `updated_at` is a poor proxy for "the user did something". A page may have its `updated_at` bumped by backend re-stamps with no logged activity. After narrowing by `updated_at`, **always confirm with the activity log** in step 5. Pages with no in-window log entries get demoted to a "Quiet touches" footnote in the output โ€” don't drop them silently, the user may want to investigate.

### Step 5 โ€” Pull the activity log for each candidate (Wiki v1)

```bash
adom-wiki page log <type>/<slug> --limit 100
```

Returns `{activity: [{created_at, kind, author_name, author_id, changelog, metadata, ...}]}`. `kind` is one of: `publish, edit, asset_upload, asset_delete, video_add, video_delete, skill_add, skill_remove`. Filter to entries where:
- `author_id` or `author_name` matches the resolved identity
- `created_at` is inside the window

Group consecutive entries by date for a cleaner digest.

### Step 6 โ€” Pull the git log for each candidate (Wiki v2)

```bash
curl -fsS "https://git-wiki-ktqxite5iglh.adom.cloud/api/v1/pages/<slug>/log?limit=100" \
  -H "Authorization: Bearer $ADOM_WIKI_TOKEN"
```

Filter to commits by the user inside the window. Note v2 commits don't have `kind` โ€” they're just git commits with messages. Surface the commit message as the changelog.

### Step 7 โ€” Compose the digest

Output structure:

```markdown
# Weekly Wiki Digest โ€” week of <YYYY-MM-DD>

## Wiki v1 โ€” <N> active pages

### 1. [<title>](https://wiki-ufypy5dpx93o.adom.cloud/<type>s/<slug>) โ€” `<type>` ยท v<version>
**<DayOfWeek MM/DD>** โ€” <one-line summary of what changed>
- <changelog 1>
- <changelog 2>

(repeat per page, newest first)

## Wiki v2 โ€” <N> active pages

### 1. [<title>](https://git-wiki-ktqxite5iglh.adom.cloud/<type>/<slug>) โ€” `<type>` ยท v<version>
(same shape; commit messages instead of typed activities)

## Quiet touches (no logged content changes)
- [<title>](url) โ€” `updated_at` advanced into the window but `page log` shows no activity from you. Backend touch.

---
**Theme of the week:** <1-2 sentences capturing the throughline you noticed across the week's work>
```

URL pluralization on Wiki v1 takes the type plural (`apps`, `skills`, `molecules`). Wiki v2 uses singular (`/app/...`, `/skill/...`). Get this right โ€” broken links in a digest are the most common bug.

## Rules

1. **Always check both wikis.** If you only ran one, say so explicitly and rerun.
2. **Match the window to the user's ask.** Default is **week-to-date** (most recent Monday through today). "Last week" โ†’ preceding Mon-Sun; "last 2 weeks" โ†’ preceding 14 days; "this month" โ†’ from the 1st of the current month; "since Tuesday" โ†’ from that Tuesday. Convert relative phrases to absolute dates in the digest header.
3. **Cite changelogs verbatim** when they exist โ€” they're the truest source of "what shipped". Don't paraphrase what the user wrote in the publish message.
4. **Never invent activity.** If `page log` returns 0 entries in the window, the page goes under "Quiet touches", not the main digest.
5. **End with a theme sentence**, not a bare list. The point of a digest is connective tissue, not a changelog dump. Read the week's pages and surface what they have in common (a focus area, a customer, an internal tool, a recurring fix).
6. **No emoji.** Plain markdown headings, tables, and links only.

## Output length

A typical week has 3-6 active pages. Aim for ~30-60 lines of markdown. If the window spans several weeks with 20+ pages, suggest the user narrow the window rather than producing a 300-line wall.

Sub-Skills
?
What are Sub-Skills?

Sub-skills are community-contributed AI skill extensions for this component. They teach AI assistants about specific tools, configurators, or workflows.

Examples:

  • A manufacturer’s configuration tool for a motor controller
  • A community-written design guide for an amplifier circuit
  • An automated test/validation script for a sensor module

How to add one: Click Add Sub-Skill, provide the URL to your skill and a brief description. Submissions are reviewed by the Adom team before going live.

No sub-skills yet. Be the first to contribute one!

Recent activity

3 commits
  • โฌ†
    Asset uploaded Drew Owens 2 days ago
    Add hero image: rendered example of the digest output
  • โœŽ
    Edit v1.0.0 Drew Owens 2 days ago
    Set discovery triggers and pitch for skill routing
  • ๐Ÿท
    Release v1.0.0 Drew Owens 2 days ago
    Initial publish โ€” wiki-activity-review skill: enumerates pages on both Wiki v1 and v2, narrows by author+date, pulls per-page activity logs, composes digest grouped by wiki
0 revisions · Updated 2026-05-25 20:26:32