Skip to content
Back to skills

Feed Curator

ASecurity

Fetch raw feed items from feed-server to Inbox/feeds/raw/ with dedupe and noise filter. Does NOT summarize, classify P0-P3, write knowledge notes, or update daily note — those steps are removed (2026-05-01 redesign: AI no longer authors substance into knowledge/). Trigger on: /feed-curator, "fetch feeds", "pull feeds", scheduled cron. Skip when: user wants summaries or analysis (use /knowledge after triage instead).

  • 4 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 12, 2026
content-marketingrustbash

Security analysis

A96/100
  • mediumUses curl or wget to download content

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill feed-curator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Feed Curator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Feed Curator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-feed-curator/badge)](https://www.skillsdirectory.com/skills/aibot88-feed-curator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: feed-curator
description: |
  Fetch raw feed items from feed-server to Inbox/feeds/raw/ with dedupe and noise filter.
  Does NOT summarize, classify P0-P3, write knowledge notes, or update daily note — those steps are removed (2026-05-01 redesign: AI no longer authors substance into knowledge/).

  Trigger on: /feed-curator, "fetch feeds", "pull feeds", scheduled cron.
  Skip when: user wants summaries or analysis (use /knowledge after triage instead).
---

# Feed Curator (raw-fetch only)

Pull unprocessed items from feed-server, write raw markdown to `Inbox/feeds/raw/`, mark processed. **No AI summarization.** Panda triages himself.

## Why this skill is thin

Earlier versions scored items P0-P3, deep-read articles, wrote knowledge notes, and appended digests to the daily note. That generated AI-authored substance into `knowledge/` and polluted Panda's brain layer.

New scope: **fetch-only**. The skill is the pipe; Panda is the editor.

If you want summaries, after fetch run `/knowledge backfill` (structural) or read items individually and use `/knowledge promote` to graduate worthwhile items.

## Prerequisites

- Feed server running at `localhost:3456`
- Personal vault at `<personal-vault>` (resolved from session env)

## Step 1: Fetch unprocessed items

```bash
curl -s http://localhost:3456/items?unprocessed=1
```

Returns JSON array: `id`, `title`, `url`, `description`, `source_type`, `source_name`, `pub_date`, `first_seen_at`.

If empty → report "nothing to process" and stop.
If >100 items → process oldest 100, note remainder for next run.

## Step 2: Filter noise

Skip items matching:
- coupon / promo code / discount code / `% off` / "deal" patterns
- single-word titles
- already-exists path (filename collision in `Inbox/feeds/raw/<date>/`)

No P0-P3 scoring. No "trusted source" promotion. Filter is binary: noise or not.

## Step 3: Write raw items

For each non-noise item:

**Path**: `<personal-vault>/Inbox/feeds/raw/YYYY-MM-DD/{slug}.md`

**Slug**: lowercase, non-alphanumeric → hyphens, max 60 chars.

**Template**:
```markdown
---
date: YYYY-MM-DD
type: feed-raw
source: {url}
source_name: {source_name}
pub_date: {pub_date}
fetched_at: {ISO8601}
origin: ai-fetched
---

# {title}

{description}

[Source]({url})
```

Create date directory if missing. Skip if file already exists (dedup).

**Do NOT**:
- Run `bird read` / `defuddle parse` / `summarize` for full content (Panda triggers per-item if interested)
- Write to `knowledge/`
- Append to daily note
- Write `source-quality.json` signals (knowledge-ship handles signal generation now)

## Step 4: Mark processed

```bash
curl -s -X POST http://localhost:3456/items/processed \
  -H "Content-Type: application/json" \
  -d '{"ids": ["id1", "id2", ...]}'
```

Include all fetched IDs (raw-written and noise-skipped).

## Step 5: Report

```
[feed-curator] fetched N items, wrote M raw, skipped N-M as noise
[feed-curator] Inbox/feeds/raw/YYYY-MM-DD/ now has M new items
[feed-curator] next: Panda triages → /knowledge promote <path> for keepers
```

## Anti-scope-creep notes

If you find yourself wanting to:
- Score items by priority → STOP. Panda scores at triage time.
- Deep-read articles → STOP. Panda triggers per-item.
- Write digest to daily note → STOP. Daily note is Panda's capture, not AI's report.
- Update `knowledge/` notes → STOP. AI never writes substance to `knowledge/`.

If any of these feels needed, the request belongs in a different skill (`/knowledge`, `daily-distill` — which is paused), not here.

Files in this skill

  • SKILL.md3.5 KB
  • source.json767 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.