Fetch and summarize the latest developments in the Claude Code ecosystem.
news/state.json)news/{YYYY-MM-DD}_pulse.md--force - Regenerate digest even if today's already exists--days N - Look back N days instead of 1 (default: 1)--dry-run - Show sources that would be fetched without actually fetching[
{"name": "Anthropic Engineering", "url": "https://www.anthropic.com/engineering", "type": "blog"},
{"name": "Claude Blog", "url": "https://claude.com/blog", "type": "blog"},
{"name": "Claude Code Docs", "url": "https://code.claude.com", "type": "docs"},
{"name": "anthropics/claude-code", "url": "https://github.com/anthropics/claude-code", "type": "repo"},
{"name": "anthropics/skills", "url": "https://github.com/anthropics/skills", "type": "repo"},
{"name": "anthropics/claude-code-action", "url": "https://github.com/anthropics/claude-code-action", "type": "repo"},
{"name": "anthropics/claude-agent-sdk-demos", "url": "https://github.com/anthropics/claude-agent-sdk-demos", "type": "repo"}
]
[
{"name": "Simon Willison", "url": "https://simonwillison.net", "type": "blog"},
{"name": "Every", "url": "https://every.to", "type": "blog"},
{"name": "SSHH Blog", "url": "https://blog.sshh.io", "type": "blog"},
{"name": "Lee Han Chung", "url": "https://leehanchung.github.io", "type": "blog"},
{"name": "Nick Nisi", "url": "https://nicknisi.com", "type": "blog"},
{"name": "HumanLayer", "url": "https://www.humanlayer.dev/blog", "type": "blog"},
{"name": "Chris Dzombak", "url": "https://www.dzombak.com/blog", "type": "blog"},
{"name": "GitButler", "url": "https://blog.gitbutler.com", "type": "blog"},
{"name": "Docker Blog", "url": "https://www.docker.com/blog", "type": "blog"},
{"name": "Nx Blog", "url": "https://nx.dev/blog", "type": "blog"},
{"name": "Yee Fei Ooi", "url": "https://medium.com/@ooi_yee_fei", "type": "blog"}
]
[
{"name": "Awesome Claude Skills", "url": "https://github.com/travisvn/awesome-claude-skills", "type": "repo"},
{"name": "Awesome Claude Code", "url": "https://github.com/hesreallyhim/awesome-claude-code", "type": "repo"},
{"name": "Awesome Claude", "url": "https://github.com/alvinunreal/awesome-claude", "type": "repo"},
{"name": "SkillsMP", "url": "https://skillsmp.com", "type": "marketplace"},
{"name": "Awesome Claude AI", "url": "https://awesomeclaude.ai", "type": "directory"}
]
[
{"name": "Worktree", "url": "https://github.com/agenttools/worktree", "type": "repo"}
]
Use gh search repos and gh search code for discovery:
# Repos with recent Claude Code activity (last 7 days)
gh search repos "claude code" --pushed=">$(date -d '7 days ago' +%Y-%m-%d)" --sort=updated --limit=10
# Hooks and skills hotspots
gh search repos "claude code hooks" --pushed=">$(date -d '7 days ago' +%Y-%m-%d)" --sort=updated
gh search repos "claude code skills" --pushed=">$(date -d '7 days ago' +%Y-%m-%d)" --sort=updated
gh search repos "CLAUDE.md agent" --pushed=">$(date -d '7 days ago' +%Y-%m-%d)" --sort=updated
# Topic-based discovery (often better signal)
gh search repos --topic=claude-code --sort=updated --limit=10
gh search repos --topic=model-context-protocol --sort=updated --limit=10
# Code search for specific patterns
gh search code "PreToolUse" --language=json --limit=5
gh search code "PostToolUse" --language=json --limit=5
Use Firecrawl or web search for Reddit threads:
site:reddit.com/r/ClaudeAI "Claude Code" (hooks OR skills OR worktree OR tmux)
Check for documentation updates:
site:code.claude.com hooks
site:code.claude.com skills
site:code.claude.com github-actions
site:code.claude.com mcp
Read news/state.json to get:
last_run timestampseen_urls array for deduplicationseen_commits object for repo trackingIf today's digest exists AND --force not specified:
Pulse digest already exists for today: news/2025-12-12_pulse.md
Use --force to regenerate.
For Blogs - Use Firecrawl to fetch and extract recent articles:
# Fetch blog content via firecrawl
firecrawl https://simonwillison.net --format markdown
Look for articles with dates in the last N days (default 1).
For GitHub Repos - Use gh CLI:
# Get latest release
gh api repos/anthropics/claude-code/releases/latest --jq '.tag_name, .published_at, .body'
# Get recent commits
gh api repos/anthropics/claude-code/commits --jq '.[:5] | .[] | {sha: .sha[:7], message: .commit.message, date: .commit.author.date}'
# Get recent discussions (if enabled)
gh api repos/anthropics/claude-code/discussions --jq '.[:3]'
For Marketplaces/Directories - Use Firecrawl:
firecrawl https://skillsmp.com --format markdown
firecrawl https://awesomeclaude.ai --format markdown
For each item found:
seen_urls - skip if yesseen_commits[repo] - skip if sameFor each new item, generate:
Precis (2-3 sentences):
Engaging summary that captures the key points and why someone would want to read this.
Relevance (1 sentence):
How this specifically relates to or could improve our claude-mods project.
Use this prompt pattern for each item:
Article: [title]
URL: [url]
Content: [extracted content]
Generate:
1. A 2-3 sentence engaging summary (precis)
2. A 1-sentence assessment of relevance to "claude-mods" (a collection of Claude Code extensions including agents, skills, and commands)
Format:
PRECIS: [summary]
RELEVANCE: [assessment]
Create news/{YYYY-MM-DD}_pulse.md with format:
# Pulse: {date}
> Claude Code ecosystem digest
**Generated**: {timestamp} | **Sources**: {count} | **New Items**: {count}
---
## Critical Updates
[Items from official Anthropic sources - releases, major announcements]
### [{title}]({url})
**Source**: {source_name} | **Type**: {release/post/commit}
> {precis}
**Why it matters**: {relevance}
---
## Official
[Other items from official sources]
---
## Community
[Items from community blogs and indexes]
---
## Stats
| Category | Items |
|----------|-------|
| Official releases | {n} |
| Blog posts | {n} |
| Repo updates | {n} |
| Community | {n} |
---
*Generated by `/pulse`*
Update news/state.json:
{
"version": "1.0",
"last_run": "{ISO timestamp}",
"seen_urls": [
"...existing...",
"...new urls from this run..."
],
"seen_commits": {
"anthropics/claude-code": "{latest_sha}",
"anthropics/skills": "{latest_sha}",
...
}
}
Keep only last 30 days of URLs to prevent unbounded growth.
Pulse: 2025-12-12
Fetched 23 sources
Found 8 new items (15 deduplicated)
Critical:
- anthropics/claude-code v1.2.0 released
Digest written to: news/2025-12-12_pulse.md
Priority Order:
WebFetch first (fastest, built-in)gh CLIParallel Fetching:
[====------] 12/23 sourcesError Handling:
# Pulse: 2025-12-12
> Claude Code ecosystem digest
**Generated**: 2025-12-12 08:00 UTC | **Sources**: 23 | **New Items**: 8
---
## Critical Updates
### [Claude Code 1.2.0 Released](https://github.com/anthropics/claude-code/releases/tag/v1.2.0)
**Source**: anthropics/claude-code | **Type**: Release
> New MCP server auto-discovery feature enables Claude to find and connect to local MCP servers without manual configuration. Also includes 40% faster tool execution and improved subagent context handling.
**Why it matters**: May require updates to our hook patterns; the MCP auto-discovery could simplify our tool-discovery skill.
---
## Official
### [Building Production Skills](https://claude.com/blog/production-skills)
**Source**: Claude Blog | **Type**: Post
> Comprehensive guide to designing skills that scale, including caching strategies, permission scoping, and testing patterns. Covers common pitfalls and performance optimization.
**Why it matters**: Validates our skill structure; consider adding the caching patterns to tool-discovery.
---
## Community
### [Multi-Agent Orchestration Patterns](https://blog.sshh.io/p/multi-agent-patterns)
**Source**: SSHH Blog | **Type**: Post
> Practical patterns for coordinating multiple Claude instances on complex tasks, including the "conductor" pattern and parallel execution strategies.
**Why it matters**: Could inform improvements to our firecrawl-expert parallel processing approach.
### [15 New Skills Added to Awesome Claude Skills](https://github.com/travisvn/awesome-claude-skills/commits/main)
**Source**: travisvn/awesome-claude-skills | **Type**: Commits
> Batch of community-contributed skills covering Docker, Kubernetes, and database management. Notable additions include a Postgres optimizer and K8s deployment helper.
**Why it matters**: Review for quality patterns; potential additions to our agent roster.
---
## Stats
| Category | Items |
|----------|-------|
| Official releases | 1 |
| Blog posts | 4 |
| Repo updates | 2 |
| Community | 1 |
---
*Generated by `/pulse`*
Pulse: 2025-12-12
Fetched 23 sources
No new items found (all 12 items already seen)
Last digest: news/2025-12-11_pulse.md
Pulse: 2025-12-12
Fetched 23 sources (2 failed)
Found 6 new items
Failed sources:
- skillsmp.com (timeout after 4 retries)
- every.to (403 Forbidden)
Digest written to: news/2025-12-12_pulse.md
Initialize state.json with empty arrays/objects before proceeding.
The /pulse command is standalone but integrates with:
/pulse--force to regenerate today's digest with fresh data--days 7 for weekly catchup after vacation