一键导入
eigenfeed-explore
Discover candidate articles via web search. Used by /eigenfeed and /coldstart, also invocable directly.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Discover candidate articles via web search. Used by /eigenfeed and /coldstart, also invocable directly.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
First-time setup — build taste profile from sources, then discover and score articles. Run this once, then use /eigenfeed for regular use.
Run your daily recommendation pipeline — discover, score, and publish articles to your feed.
Clear all Eigenfeed state (vault, database, feed) and start fresh. Use when the user wants to rebuild from scratch.
Score candidates against taste profile, publish top picks, and generate feed. Used by /eigenfeed and /coldstart, also invocable directly.
Build or update taste profile and topics from configured sources. Used by /coldstart and /eigenfeed, also invocable directly.
Generate salient questions from topics, use them to create search queries and discover new topics. Used by /eigenfeed and /coldstart, also invocable directly.
| name | eigenfeed.explore |
| description | Discover candidate articles via web search. Used by /eigenfeed and /coldstart, also invocable directly. |
| allowed-tools | Agent, Bash(*), Read, Write, Glob, Grep, WebSearch |
Discover candidate articles using search queries. When invoked directly, runs reflect first to generate queries.
When invoked by a parent skill, the caller passes search queries from the reflect step.
Key principle: use subagents to parallelize web searches.
config.md to get picks_per_run. Target picks_per_run + 5 total candidates across all search queries — enough headroom for skips without over-searching.vault/profile.md for anti-preferences.local/eigenfeed.db for previously seen URLs (both recommended and skipped)vault/topics/*.md and extract domains from Sources sections (the user's own subscriptions — skip these)Spawn one subagent per search query (or group 2 related queries per agent). All agents run in parallel.
Before spawning, calculate each agent's candidate budget: divide (picks_per_run + 5) by the number of agents, rounding up. For example, with picks_per_run = 7 and 4 agents, each agent aims for ceil(12/4) = 3 candidates.
Security: discovery subagents only search — they never fetch full article content. This prevents prompt injection from malicious web pages reaching an LLM with tool access.
For each search task, spawn an Agent with this prompt:
You are searching the web to find candidate article URLs for Eigenfeed. You only discover URLs — do NOT fetch or read full article content.
Search query: Target topics: Candidate budget: — aim for this many candidates, don't over-collect Profile anti-preferences: URLs to skip: Feed domains to skip: <user's subscription domains>
Your task:
Return for each candidate:
Do NOT fetch, parse, or read full article content. Return only the URL and search metadata.
Collect URLs from all subagents. Deduplicate by URL. Then extract full article content by running defuddle directly on each URL:
npx defuddle parse "<url>" --json --markdown
Parse the JSON output for each URL to get title, author, publishedDate, wordCount, and content (markdown). Skip URLs where defuddle fails. Pass the enriched candidate list to the score step.
Report to the parent skill: